Corruption Frame after decoding

Given two examples videos, after decoding  we will get frames with heavy lines.
https://github.com/user-attachments/assets/bd06074f-08f2-4340-8719-3b9d2f4c6d81
https://github.com/user-attachments/assets/f4f0c7b8-d85a-4adf-94b0-055a03f9b5a3
And the corrupted frames after decoding:

Hello, I had that kind of problem. The content of the resulting AVFrame may not be parsed right.
First, check the value in AVFrame.format after the call to receive_frame(), to see if it's the right format you are trying to display. Then see how the content of the frame is processed (frame.data).
Example:
if frame.format == AV_PIX_FMT_YUV420P {
    /// The frame is in YUV420P format
}

@SimonRacaud  Thanks for your reply. I tried your method before, which is not the root cause of this issue. Also, I uploaded the video which is YUV420P format for both 1.mp4 and 2.mp4. I also tried to use scaler to convert it to RGB24, and none of them work.

@Mon-ius , May I know how converted the frame which is YUV_420P format into RGB ?

@Codewithteju Yes, I found the rust based ffmpeg solutions all have this issue.

@Mon-ius, Actually I am trying to decode a input video and get the frames out of it for further modification such as converting them to grayscale, etc. With Rsmpeg I can only decode the video in raw format (.264), if i use the .mp4 video files, it\s saying there is -"No start codes found, NAL issues and something like this". Have you tried decoding the input video which is .mp4 format?
Is there any discord channel for the rsmpeg module? I have got some doubts regarding encoding too?

@Codewithteju
Hi, I uploaded these two video which are .mp4 format indeed, you can actually download them by clicking the dots and do more test 🤗

@Mon-ius , I have tried decoding with those videos, but getting the same error. How did you decode it, can you provide any code snippet of rsmpeg ?

@Codewithteju Yes, I found the rust based ffmpeg solutions all have this issue.

@Mon-ius  Could you provide a minimal reproducible example in Rust and C? It's pretty interesting that's Rust-related. I am happy to do some investigation.


Can not Get Ebay Selling

When i try to call get my active selling list flowing the sample code here ,
https://github.com/davidtsadler/ebay-sdk-examples/blob/master/trading/11-get-my-ebay-selling.php
i get an error like this ..
Error: Application name invalid. API application "202852" invalid.

got it working buy setting the sandbox to true

And how did you do that exactly? I changed the code in trading/02-get-category-hierarchy.php so that it says "sandbox" instead of "production" in both places where I found "production". I continue to get the error.


libimagequant: 2.13.0 -> 2.13.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/libimagequant/versions.
meta.description for libimagequant is: "Image quantization library"
meta.homepage for libimagequant is: "https://pngquant.org/lib/"
meta.changelog for libimagequant is: ""
Updates performed

Version update

To inspect upstream changes

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 2.13.1 with grep in /nix/store/l35zshflzbg5d19085gv4r6nfh7nwk87-libimagequant-2.13.1

directory tree listing: https://gist.github.com/01f2663ed21f2dd5d32247a013baa488

du listing: https://gist.github.com/3732c3de09866ee56eba2433d57d1bcd

Rebuild report (if merged into master) (click to expand)

3607 total rebuild path(s)

1089 package rebuild(s)

1065 x86_64-linux rebuild(s)
885 i686-linux rebuild(s)
670 x86_64-darwin rebuild(s)
987 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
DisnixWebService
R
abcl
actdiag
adapta-gtk-theme
adoptopenjdk-icedtea-web
alloy
alloy4
alloy5
almonds
anki
ankisyncd
antlr
antlr3
antlr3_4
antlr3_5
antlr4
antlr4_8
apache-airflow
apache-jena
apache-jena-fuseki
apacheKafka
apacheKafka_0_10
apacheKafka_0_11
apacheKafka_0_9
apacheKafka_1_0
apacheKafka_1_1
apacheKafka_2_0
apacheKafka_2_1
apacheKafka_2_2
apacheKafka_2_3
apacheKafka_2_4
apacheKafka_2_5
ape
apeClex
apktool
areca
asciidoc-full
asciidoc-full-with-plugins
avian
aws-google-auth
axoloti
azureus
bazel
bazel-remote
bazel-watcher
bazel_0
bazel_0_26
bazel_0_29
bazel_1

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/l35zshflzbg5d19085gv4r6nfh7nwk87-libimagequant-2.13.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A libimagequant https://github.com/r-ryantm/nixpkgs/archive/79a4662d4c5bb449cb59b2cce094cd4aee3ba009.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/l35zshflzbg5d19085gv4r6nfh7nwk87-libimagequant-2.13.1
ls -la /nix/store/l35zshflzbg5d19085gv4r6nfh7nwk87-libimagequant-2.13.1/bin

Pre-merge build results
NixPkgs review skipped

Maintainer pings
cc @furrycatherder @marsam for testing.

@GrahamcOfBorg build pythonPackages.pillow python3Packages.pillow


reintroduce swagger compatability

Description
Reintroduce swagger functionality that existed in v2.3.5 but was removed in v3.0.0. See<EMAIL_ADDRESS>Closes # (issue)
425
Type of change
Please delete options that are not relevant.

[ ] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] I have updated the CHANGELOG in the Unreleased section
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged and published in downstream modules

I get this when I try to load the basic playground example at localhost:8081/swagger-ui

Yes, you are right
It seems that it was in 4.16.0-alpha3, but for some reason it was not included in 4.16.0 and even 4.17.0, which was released yesterday
I will discuss this with the swagger-ui team

They'll introduce it in next major version, 5.x
https://github.com/swagger-api/swagger-ui/issues/8441

Cya in 2026 🫡

@unredundant future is here, they've released 5.0.0-alpha.0 version, my PR is working with it

Nice! Out of curiosity... is there a way to just get the latest swagger ui version? Would be nice if the default could just be the most recent version, and have users override if they want to change it.
Otherwise, we'll need to keep pushing PRs to bump the default version of the swagger client.

I think it will work for any latest version without @version addition in html template
So https://unpkg.com/swagger-ui-dist/index.js points to 4.18.1
Let me change PR a bit to support future releases by default, but keep opportunity to provide version
So with swagger(pageTitle = "Simple API Docs", swaggerVersion="5.0.0-alpha.0") it will work now, without version - in the bright future after swagger-ui release

Awesome 👍


cpackget doesn't download the latest pack version

Hi
In my CMSIS_PACK_ROOT, I have this pack installed:
|-- STMicroelectronics
|   `-- basic_trace
|       `-- 0.0.1

My index.pidx is correct I think:
$ grep basic_trace .Web/index.pidx
        <pdsc url="https://xxx/STMicroelectronics.basic_trace/" vendor="STMicroelectronics" name="basic_trace" version="0.1.0"/>

I think cpackget should install the new version, but it doesn't:
$ cpackget.exe -V
cpackget version 0.4.1

$ cpackget.exe pack add STMicroelectronics.basic_trace -v
D: Reading pidx from file "C:\xxx\.Web\index.pidx"
D: Registring "STMicroelectronics.basic_trace.0.1.0"
D: Specified packs [STMicroelectronics.basic_trace]
D: Extracting pack info from "STMicroelectronics.basic_trace"
D: Listing files and directories in "C:\xxx\.Web" that match "^.*\.pdsc$"
D: Found "STMicroelectronics.basic_trace.pdsc" in "C:\xxx\.Web"
D: Checking if STMicroelectronics.basic_trace. is installed
I: Adding pack "STMicroelectronics.basic_trace"
I: pack STMicroelectronics.basic_trace is already installed here: C:\xxx\STMicroelectronics\basic_trace

I would expect something like:
D: Found "STMicroelectronics.basic_trace.pdsc" in "C:\xxx\.Web"
D: Checking if STMicroelectronics.basic_trace.0.1.0 is installed
I: Adding pack "STMicroelectronics.basic_trace.0.1.0"

Hi @jeromecoutant could you please retry it by running
$ cpackget add STMicroelectronics.basic_trace@latest

From what I remember in previous discussions with @jkrech , if you don't specify the version then any installed version already satisfies the installer.

D: Registring "STMicroelectronics.basic_trace.0.1.0"
D: Specified packs [STMicroelectronics.basic_trace@latest]
D: Extracting pack info from "STMicroelectronics.basic_trace@latest"
E: bad pack name: it should be one of the following formats: Vendor.Pack, Vendor.Pack.x.y.z, Vendor.Pack.x.y.z.pack, or
Vendor.Pack.pdsc

if you don't specify the version then any installed version already satisfies the installer.

https://github.com/Open-CMSIS-Pack/cpackget/blob/main/README.md?plain=1#L77
=> Install the latest published version of a public package listed in the package index:

@chaws looks like you  first compute what "latest" resolves to (0.1.0) but then you keep that info and try to extract a pack that has the version "latest", which is not a valid version format.

Argh, sorry about that!
Jerome, the documentation is outdated. Please @jkrech correct me if I'm wrong, but once we added @, @~, and >= to cpackget, we decided that some behaviors would change. Before this feature, installing a pack with cpackget pack add ARM.CMSIS would always install the latest one. But after the new features kicked in, that syntax would be satisfied if any ARM.CMSIS pack was already installed. And to suppress the use case for adding the latest version, we added @latest.
I specified a wrong syntax for you @jeromecoutant ! The correct one should be:
$ cpackget pack add STMicroelectronics::basic_trace@latest

See an example I have tried locally:
$ cpackget --version
cpackget version v0.4.1

$ cpackget pack list
I: Using pack root: "../packroot"
I: Listing installed packs
I: ARM.CMSIS.4.3.0
I: ARM.CMSIS.4.4.0

$ cpackget pack add ARM::CMSIS
I: Using pack root: "../packroot"
I: Adding pack "ARM::CMSIS"
I: pack ARM::CMSIS is already installed here: ../packroot/ARM/CMSIS

$ cpackget pack add ARM::CMSIS@latest
I: Using pack root: "../packroot"
I: Adding pack "ARM::CMSIS@latest"
I: Extracting files to ../packroot/ARM/CMSIS/5.8.0 100% |█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| (8133/8133, 9821 it/s)

$ cpackget pack list
I: Using pack root: "../packroot"
I: Listing installed packs
I: ARM.CMSIS.4.3.0
I: ARM.CMSIS.4.4.0
I: ARM.CMSIS.5.8.0

$ cpackget pack add STMicroelectronics::basic_trace@latest

Yes, this command is working

More difficult use case :-)
My current tree:
|-- STMicroelectronics
|   |-- STM32U5xx_Drivers
|   |   `-- 2.0.0-alpha.0.5

My current pidx:
$ grep STM32U5xx_Drivers .Web/index.pidx
        <pdsc url="https://xxx/" vendor="STMicroelectronics" name="STM32U5xx_Drivers" version="2.0.0-alpha.0.6"/>

cpackget.exe pack add STMicroelectronics::STM32U5xx_Drivers@latest -v
D: Reading pidx from file "C:\xxx\.Web\index.pidx"
D: Registring "STMicroelectronics.STM32U5xx_Drivers.2.0.0-alpha.0.6"
D: Specified packs [STMicroelectronics::STM32U5xx_Drivers@latest]
D: Extracting pack info from "STMicroelectronics::STM32U5xx_Drivers@latest"
D: Listing files and directories in "C:\xxx\.Web" that match "^.*\.pdsc$"
D: Found "STMicroelectronics.STM32U5xx_Drivers.pdsc" in "C:\xxx\.Web"
D: Checking if STMicroelectronics.STM32U5xx_Drivers. is installed
D: Listing files and directories in "C:\xxx\STMicroelectronics\STM32U5xx_Drivers" that match ".*"
D: Checking if the latest version is installed
D: Initializing PdscXML object for "C:\xxx\.Web\STMicroelectronics.STM32U5xx_Drivers.pdsc"
D: Reading pdsc from file "C:\xxx\.Web\STMicroelectronics.STM32U5xx_Drivers.pdsc"
I: Adding pack "STMicroelectronics::STM32U5xx_Drivers@latest"
I: pack STMicroelectronics::STM32U5xx_Drivers@latest is already installed here: C:\xxx\STMicroelectronics\STM32U5xx_Drivers\2.0.0-alpha.0.5

Note I think you don't have to compare 2.0.0-alpha.0.5 with 2.0.0-alpha.0.6,
you just have to trust .Web/index.pidx information

Could you please past the debug part where it says
D: Resolving version modifier for ...
D: - resolved(@latest) as ...

?
I think this is because the index.pidx is more up-to-date if compared to the pack pdsc file within .Web/

I think the challenge here is:
a) for downloading a pack, cpackget must not rely on the information contained in the index.pidx, because a  tag may contain an explicit download link that overrides the url attribute from the index.pidx
b) as a consequence cpackget needs to ensure that the pdsc file for a pack is available in the .Web folder to read the  section
c) it looks like cpackget is currently not checking that the version attribute of the  tag in the index.pidx matches the most recent version (=  version attribute of the first  tag). If that is not the case, cpackget needs to download the pdsc file  (url/vendor.name.pdsc) to retrieve the latest public version of the pdsc.
I think this up-to-date check for the pdsc is currently missing.
If you would remove the pdsc file from the .Web folder cpackget already now will ensure that the pdsc file gets downloaded.

Yes, the feature is missing indeed. It is not taking into consideration that after index.pidx gets updated, the Vendor.Pack.pdsc might get outdated. So updating it after checking the version in index.pidx should be the best approach here.

Note that this is the "sparse" update mode.
The 'update' implemented in other tools like MDK or eclipse, where the UI displays packs, devices, boards and examples from all public packs require to download the latest version of the index.pidx and then check for each pdsc file in the .Web folder whether
a) it does not exist -> download
b) it is not the latest version -> download
c) it exists, but is not longer listed in the index.pidx -> remove

Perhaps all the three behaviors could be implemented and executed by default when updating the index?

Executing a full update versus a sparse check for updates shall be an option for the user.
Assuming a CI system running a full check for updates seems like a waste of time and resource.

@jeromecoutant thanks for following up. I believe in the meantime we had figured out the missing pdsc update step, which you confirmed with your manual step. Even though in your case just taking the information form the index.pidx file to construct the download link, this is not sufficient in the most general case.


New-SelfSignedCertificateEx fails to use ECDSA on Microsoft Smart Card KSP

I am trying to generate a self-signed certificate with ECDSA key pair on a smartcard by running this New-SelfSignedCertificateEx command on my Windows 10 machine:
New-SelfSignedCertificateEx -Subject "CN=John D" -AlgorithmName ECDSA_P256 -KeyLength 256 -ProviderName "Microsoft Smart Card Key Storage Provider"

I get this unexpected error:
New-SelfSignedCertificateEx : Exception calling "Build" with "1" argument(s): "This smart card does not support the
requested feature. (Exception from HRESULT: 0x80100022)"
At line:1 char:1
+ New-SelfSignedCertificateEx -Subject "CN=John D" -AlgorithmName ECDSA ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [New-SelfSignedCertificateEx], MethodInvocationException
    + FullyQualifiedErrorId : COMException,New-SelfSignedCertificateEx

I say unexpected because the "Microsoft Smart Card Key Storage Provider" supports ECDSA P256 according to this command:
> certutil -csptest -user -csp SC | Select-String ECDSA_P256

   ECDSA_P256
   ECDSA_P256
    NCryptCreatePersistedKey(Microsoft Smart Card Key Storage Provider, ECDSA_P256)
  Algorithm Name: ECDSA_P256
   ECDSA_P256
    ECDSA_P256
    ECDSA_P256
    ECDSA_P256

Could you tell what I am missing?

Have you tried to specify your smart card vendor KSP instead of Microsoft one?

Actually, I am using Windows-10-native Virtual Smart Cards, so Microsoft is the vendor I guess.

Have you tried this provider: Microsoft Platform Crypto Provider?
Unlike software KSP, Microsoft Smart Card Key Storage Provider is abstract provider and has no default implementation. On a system, you can use this provider to query from all providers that implement from Microsoft Smard Card KSP, but when writing, you have to specify particular Microsoft Smart Card KSP implementation.
For TPM you must use "Microsoft Platform Crypto Provider" provider when generating keys. When reading, you can use "Microsoft Platform Crypto Provider" to query only this provider, or "Microsoft Smart Card Key Storage Provider", which will query all providers that implement it.

Thanks for the tip. However, when I use "Microsoft Platform Crypto Provider" instead, the self-signed (and keypair) is generated without asking for the PIN that I set on the Virtual Smartcard (with tpmvscmgr command), which makes me think it is not using the virtual smartcard interface to do that.
For comparison, if I use "Microsoft Smart Card Key Storage Provider" but with RSA, the command works just fine and asks for the PIN:
New-SelfSignedCertificateEx -Subject "CN=John D" -AlgorithmName RSA -KeyLength 2048 -ProviderName "Microsoft Smart Card Key Storage Provider"

So let's say I want to use "Microsoft Platform Crypto Provider" anyway, how do I set a PIN with New-SelfSignedCertificateEx" to protect the generated keys ?

I've tried the Microsoft Platform Crypto Provider provider and indeed it writes to TPM and accessible from Microsoft Smart Card Key Storage Provider.

OK, so let's forget about the "Microsoft Smart card KSP" and "Virtual smartcard" for now, seems to be a dead end.
Now, if I use New-SelfSignedCertificateEx with "Microsoft Platform Crypto Provider", how do you set the  PIN/password for key protection with this command? or make it prompt to enter the PIN?

You could add the switch -KeyProtection ProtectHigh. (Source)
It would prompt for a password/pin when you interact with the certificate, some caching applies though, after that. (Adding this switch only makes sense for software-based-certs as far as I know.)
However, it would not provide you with the same level of protection if the certificate was saved inside the Virtual Smart Card on the TPM. From my understanding using Microsoft Platform Crypto Provider will use the TPM as a certificate generator, but the output is in the Windows certificate store, not the TPM. (Verified with command certutil -scinfo)
ECDSA Cert generated on TPM but saved in cert store:
For example, the following set-up for a signing cert will result in a cert in user certificate store, generated* by the TPM. The private key is present** in the store, but cannot be exported**.
New-SelfSignedCertificate -Type Custom -Subject "CN=Testing-Cert2" `
-TextExtension<EMAIL_ADDRESS>`
-KeyUsage DigitalSignature -KeyAlgorithm ECDSA_P256 -HashAlgorithm sha256 `
-CurveExport CurveName -CertStoreLocation "Cert:\CurrentUser\My" -NotAfter (Get-Date).AddDays(5) `
-Provider "Microsoft Platform Crypto Provider" -KeyProtection ProtectHigh

ECDSA Cert generated on and saved inside Virtual Smart Card:
What I was actually trying to achieve, simular to you, is generating it and saving it on the Virtual Smart Card / TPM, with Microsoft Smart Card Key Storage Provider:
New-SelfSignedCertificate -Type Custom -Subject "CN=Testing-Cert1" `
-TextExtension<EMAIL_ADDRESS>`
-KeyUsage DigitalSignature -KeyAlgorithm ECDSA_P256 -HashAlgorithm sha256 `
-CurveExport CurveName -CertStoreLocation "Cert:\CurrentUser\My" -NotAfter (Get-Date).AddDays(5) `
-Provider "Microsoft Smart Card Key Storage Provider"

⬆This unfortunatly does not work, I encounter the same error as you.
And like you experienced, RSA is not a problem: ⬇
RSA Cert generated on and saved inside Virtual Smart Card:
New-SelfSignedCertificate -Type CodeSigningCert -Subject "CN=Testing-Cert3" `
-TextExtension<EMAIL_ADDRESS>`
-KeyUsage DigitalSignature -KeyAlgorithm RSA -KeyLength 2048 -HashAlgorithm sha256 `
-CurveExport CurveName -CertStoreLocation "Cert:\CurrentUser\My" `
-NotAfter (Get-Date).AddDays(5) `
-Provider "Microsoft Smart Card Key Storage Provider"

This results in a certificate on/in my Virtual Smart Card which I can verify with certutil -scinfo and clean up with
certutil -delkey -csp “Microsoft Smart Card Key Storage Provider” “{key-container-id}”
Back to Virtual Smart Card:
Anyone any idea how to get ECC certs on the Virtual Smart Card is most welcome to speak up.
Why I/we think it should work.
I keep re-reading @Crypt32's remark:

Unlike software KSP, Microsoft Smart Card Key Storage Provider is abstract provider and has no default implementation. On a system, you can use this provider to query from all providers that implement from Microsoft Smard Card KSP, but when writing, you have to specify particular Microsoft Smart Card KSP implementation.

I wonder if there is a different provider besides the tested ones we have to address when generating ECC certs. However, when generating ECC certs on the TPM, but not saving in the Smart Card, it works, so it remains a mystery to me why this is not working in the first place.
* assumed
** validated by testing


fix-missing-technologies

Description
This PR fixes missing technologies in individual cards in catalog
Notes for Reviewers
Signed commits

[ ] Yes, I signed my commits.

@vishalvivekm merge conflicts..

@vishalvivekm this is still needed?

@vishalvivekm this is still needed?

Nope, Sudhanshu.
It's been implemented and merged  by @theBeginner86 : https://github.com/meshery/meshery.io/commit/d1f9406b2c978930cdf44a7e57ebdfe0b185275d


[YUNIKORN-159] Remove helm charts from the k8shim repo

Hey @kingamarton,
Your changes look good to me!
View build log
TravisBuddy Request Identifier: 673ad8e0-9b45-11ea-acf2-2540bfc6cd37

Codecov Report

Merging #155 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #155   +/-   ##
=======================================
  Coverage   58.06%   58.06%
=======================================
  Files          61       61
  Lines        5947     5947
=======================================
  Hits         3453     3453
  Misses       2357     2357
  Partials      137      137

Continue to review full report at Codecov.

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


3 FGL catalog

Hi,
Any idea regarding the time of release of 3 FGL catalog? Actually now a days referees have started asking to include unmodeled sources by generating TS maps. For one or two sources, this can be done, however, if someone wants to use a large sample (say 100 blazars), then generating TS map of 100 sources will be too time and memory consuming. So is there any alternate of searching unmodeled sources from TS maps or we need to wait till 3 FGL comes up?
Thanks.

@vaidehiratna - enrico is one of the "user contributions" (http://fermi.gsfc.nasa.gov/ssc/data/analysis/user/), it's not maintained by the Fermi LAT collaboration.
I'd suggest you ask your questions to the Fermi LAT collaboration:
http://fermi.gsfc.nasa.gov/ssc/help/
As far as I know there's no good automatic tool (in Enrico or anywhere) to model the sources that are not in 2FGL.

@vaidehiratna - Yesterday the release of the 3FGL catalog was announced on the fermi-news mailing list ... it's now available here: http://fermi.gsfc.nasa.gov/ssc/data/access/lat/4yr_catalog/
I'm re-opening this issue, because we should probably update and re-test enrico to use 3FGL:
https://github.com/gammapy/enrico/search?utf8=✓&q=2fgl

The 3FGL fits files is structured in the same way as the 2FGL. then I only change the downloading process.
the changes have been committed

@davidsanchez Can you also change the docs?

2FGL is currently mentioned in many places: https://github.com/gammapy/enrico/search?utf8=✓&q=2FGL&type=Code
3FGL is currently mentioned nowhere: https://github.com/gammapy/enrico/search?utf8=✓&q=3FGL

Should both 2FGL and 3FGL be downloaded and mentioned, or 3FGL only?

I have changed the doc
D


Trailing whitespace created with checkboxes

Hi! Thanks for creating this plugin.
I've noticed one issue that seems to be specific to using checkboxes.  The plugin seems to be automatically adding 1 character of whitespace at the end of each checkbox line.
For example this is what it looks like opening a new file and creating a list of checkboxes, and just hitting enter to get to the next one.  The first checkbox is okay but after that it will add the whitespace character to each line.  Also if I were to remove all those whitespace characters and then add an additional checkbox it would re-add the whitespace to all of those lines:

My configuration
  {
    "gaoDean/autolist.nvim",
    ft = { "markdown", "text", },
    config = function()
      local autolist = require("autolist")
      autolist.setup()
      autolist.create_mapping_hook("i", "<CR>", autolist.new)
      autolist.create_mapping_hook("i", "<Tab>", autolist.indent)
      autolist.create_mapping_hook("i", "<S-Tab>", autolist.indent, "<C-D>")
      autolist.create_mapping_hook("n", "o", autolist.new)
      autolist.create_mapping_hook("n", "O", autolist.new_before)
      autolist.create_mapping_hook("n", ">>", autolist.indent)
      autolist.create_mapping_hook("n", "<<", autolist.indent)
      autolist.create_mapping_hook("n", "<C-r>", autolist.force_recalculate)
      autolist.create_mapping_hook("n", ",x", autolist.invert_entry, "")
    end,
  },

Hi, sorry for the extra hassle but could you try switching to #72? (The branch name is refac)

Yes that fixed it! I'll use this branch till v3 is officially out.  Thank you.
Fyi I was doing some digging, and it was related to this line that you removed:
https://github.com/gaoDean/autolist.nvim/pull/72/files#diff-03e15a88f7edcacb502afdc15852f4229c33f5cfa064fd0116d1a9e4bc71bf44L83


regression with latest dart roll into flutter

The latest dart roll at revision e5d20a7749a15361ccfe47bc4c4e4becb88180b4 into flutter is causing a regression in some of the flutter tools tests
compiler message: file:///usr/local/google/home/asiva/.pub-cache/hosted/pub.dartlang.org/file-3.0.0/lib/src/backends/record_replay/recording_file_system_entity.dart: Error: Duplicated name: '_delete'.
compiler message: file:///usr/local/google/home/asiva/.pub-cache/hosted/pub.dartlang.org/file-3.0.0/lib/src/backends/record_replay/recording_file_system_entity.dart:104:3: Error: Duplicated name: _delete
compiler message:   Future _delete({bool recursive: false}) => delegate
compiler message:   ^
To reproduce run
/usr/local/google/home/asiva/workspace/flutter-roll/flutter/bin/flutter test --local-engine=host_release
in $FH/flutter/packages/flutter_tools directory.
The range of dart commits that are being used are from
c1432bf7a3669ab4484978a5ceaaf8ad16e459b5 to e5d20a7749a15361ccfe47bc4c4e4becb88180b4

A roll of Dart with this has landed, bots have cycled green, so closing this issue.


Can't log into Messenger

I just downloaded the app today, and the screen goes white after login. I tried reloading from the server a few times, which showed for a split second that I need to go to Facebook to continue login. Clicking the "continue" button doesn't go anywhere, and the screen goes white again before long. Everything, from moving the window to clicking the menu items, is super, super slow.
The only error I get in Console.app is that the process was caught burning CPU.

I also have this issue. Messenger used to work on my computer. Since I have a new MBP (running OS X 10.11.2) I cannot login. The progress bar loads, then the windows goes white and nothing happens.

Same issue here as well (OS X 10.11.4).

Having this problem, here is a very detailed example :trollface:
Might be worth noting i have 2FA enabled.

Ah, worth noting that I had to "allow this unrecognized device" to log in via the facebook web application.

#299 is a dupe but has more information and more conversation, so am closing this issue. Please refer to #299.


Under "Save the access token" the props variable is initialized but not used

The example where external login provider tokens are persisted in the application cookie does not work. The props variable of type AuthenticationProperties which is initialized in OnPostConfirmationAsync is not actually used, and the tokens are not added to the cookie.

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

ID: 64faf33b-2511-5e8f-c1b0-94f32dc07fa4
Version Independent ID: 2697abc8-7727-2eba-74a5-fbbc8a7c80ff
Content: Persist additional claims and tokens from external providers in ASP.NET Core
Content Source: aspnetcore/security/authentication/social/additional-claims.md
Product: aspnet-core
Technology: aspnetcore-security
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

Hello @paviad ... Thanks for the report. I see what you mean. Yeah, I think that's the wrong overload for SignInAsync. It probably should be the one that takes an auth properties (i.e., props) ... and you can see that the setting for props already sets IsPersistent.
Try that this way and see how it goes ...
await _signInManager.SignInAsync(user, props, info.LoginProvider);

That is 100% correct, a fix to the documentation here is simple.
Note however, that there is no suitable overload when using external login, see https://github.com/dotnet/aspnetcore/issues/12047
I've submitted a PR for it https://github.com/dotnet/aspnetcore/pull/43132

That is 100% correct, a fix to the documentation here is simple.

@paviad
Any chance you could PR this? At the top right of the article, select the Edit pen icon:

Select the pen icon again. Save.

I'd love to but how do I access the code snippets? They appear as
[!code-csharp[](additional-claims/samples/6.x/ClaimsSample/Program.cs?name=snippet_AddGoogle2&highlight=9)]

and
[!code-csharp[](additional-claims/samples/6.x/ClaimsSample/Areas/Identity/Pages/Account/ExternalLogin.cshtml.cs?name=snippet_OnPostConfirmationAsync&highlight=49-53)]

https://github.com/dotnet/AspNetCore.Docs/blob/main/aspnetcore/security/authentication/social/additional-claims/samples/6.x/ClaimsSample/Program.cs

Hmm, I might have submitted an incomplete PR, the highlight should be added to that modified line too, shouldn't it?

I could not verify that the highlight change actually hits the desired line, but the numeric calculations check out :)


Ditch WebView2 in Widgets panel and use native WinUI

Describe the bug
The widgets board currently uses Edge's WebView2 to render content and host widget content. This should be dropped and instead a native WinUI 2/3 based interface should be used. Using WebView2 is essentially running a web browser in the background constantly and this results in (more than) a few problems:

Widget board hangs and crashes
These hangs slow down the entire windows explorer interface
Very poor performance: constant laggy scrolling, blank widget content, delayed feedback from widget interaction.
Unnecessary CPU usage and very high memory usage
Inconsistent theming across UI elements

Even something as simple as toggling the full screen widgets panel makes the entire UI freeze and flash multiple times while displaying no content for about 5 seconds before it slowly loads in.

Even this repository states that "WinUI is the native UI layer for Windows that embodies Fluent Design and delivers modern, performant, and polished user experiences..." so using WinUI for a native windows component is a no brainer.
The same could be said for other windows components as well, such as the search box experience. While it does not use WebView2, it is still a web-based experience that has the same problems listed above; WinUI would fix it too.
Steps to reproduce the bug

Open the Widgets panel (Win+W)
Mess around with it
Notice the slow performance
Open task manager
Notice how WebView2 is consuming lots of memory and other system resources

Expected behavior
Native XAML/WinUI based Widgets board that works smoothly and has a consistent theming with other windows components.
Screenshots
No response
NuGet package version
None
Packaging type
Packaged (MSIX), Unpackaged
Windows version
Insider Build (xxxxx), Windows 11 version 22H2 (22621, 2022 Update), Windows 11 version 21H2 (22000)
IDE
Visual Studio 2022-preview, Visual Studio 2022, Visual Studio 2019, Other
Additional context
No response

The widget panel is a joke. It's not even as helpful as widgets on iOS, despite Microsoft having live tiles 12 years ago, and only exists to push MSN content and other web based services. I strongly recommend bringing back live tiles and adding interactivity to it, rather than make something completely new.

Maybe live tile content can be brought out of a "tile" and be displayed as a "widget-like" experience, but something similar to tiles? Like this image:

It can have all the same traditional live tile functionality but as you mentioned it can have the interactivity that widgets have now. And of course the native WinUI experience powers it.

I would also prefer the tiles/widgets be always on the desktop and shown on sign-in, instead of a separate flyout.

So something like how the UWP Notes app's window?

Honestly, I think having that Widgets side pane like Windows Vista had won't be a bad idea... so the user can either put them anywhere they want to on the desktop or can automatically arrange them in a pane.


Use module-federation-runtime in module-federation-tools

Hello :)
We are using @angular-architects/module-federation-runtime for utilities to load remote modules/components, but we don't use package @angular-architects/module-federation as we don't need architect.
Currently @angular-architects/module-federation-tools requires in peerDependencies usage of @angular-architects/module-federation, but it uses functions that are avaiable in @angular-architects/module-federation-runtime.
It would be great to have a chance to use @angular-architects/module-federation-tools with installing only @angular-architects/module-federation-runtime. Maybe this should even be not peer by regular dependency?
Are there any plans to improve that support?

I also faced this problem. it would be great if you could improve this support

Seems to be resolved by 544607fd7a8b127d1a02b4b7ea9afd48f49e4961


pkg/report: expose 'Report'

For https://github.com/coreos/dbtester/issues/52.
dbtester needs a way to programmatically aggregate multiple benchmark results.
Current pkg/report does not expose any raw data.

Can this not do the rename to Reporter? The diff is huge.

@heyitsanthony Yeah... Any suggestion on naming on type report struct? It collides with interface Report when exposed...

Current coverage is 64.14% (diff: 6.89%)

No coverage report found for master at 432bda4.

Powered by Codecov. Last update 432bda4...d6cdb4b

How are you planning to aggregate the results?

@heyitsanthony PTAL. Thanks.

lgtm


Unsafe attribute with custom validator which every time executes

Is there is a simply way to use unsafe attribute in default scenario with custom validator which executes every time?
public function rules()
{
	return [
		['photo', CmFileValidator::className(), 'skipOnEmpty' => false],
		....
	];
}

Attribute "photo" sets by own logic in behaviour and it should has correct value from DB.
With rules above after $model->load() attribute "photo" sets as null.
If I add "!" before attribute in rules - validator doesnt runs.
I find only this way for unsafe attribute using with validator's running:
public function scenarios()
{
	$scenarios = parent::scenarios();
	$photoKey = array_search('photo', $scenarios['default']);
	$scenarios['default'][$photoKey] = '!photo';
	return $scenarios;
}

Is this the only solution?

:+1:
https://github.com/yiisoft/yii2/pull/10234

Fixed in https://github.com/yiisoft/yii2/commit/da82ff3fb1625597706d9da3c76ca5a0a1ee7ad5


Rollover asserts exact fees

Note that initially I tried to accumulate the rollover fees which lead me to open https://github.com/itchysats/itchysats/pull/2284
I had to use FundingFee::calculate to make the test pass. I find that a bit odd, but it could be expected behavior.

I am planning to now add tests using different event IDs to create a failing test on master that should then pass on #2272  . This will be a bit tricky, because the fees are always 24h at the moment given that we use events with outdated timestamps. I might touch on problems described in #2282

bors r+


[Feature request] JSON logs

It would be great to have the possibility to set the console log format as JSON.
Something like a new environment variable to set the usual format or JSON.

Hi @arturohu!
Thanks for your suggestion. At the moment, we have no resources to implement this feature but we welcome contribs!
Actually it shouldn't be too difficult to do, using e.g.

https://github.com/madzak/python-json-logger

to add a new formatter here:

https://github.com/orchestracities/ngsi-timeseries-api/blob/master/src/app.py

the JSON record should have the same content as that of the current formatter---i.e. it should be in line w/ the log content other FIWARE components output.


[wip] styling: creatibutors modal

can be merged even if usage will come up in the future (names)?

What specifically is being fixed? Can you add a screenshot before/after? If needs to be review the assign to the communities UX board perhaps?

@lnielsen its about the orcid logo in the creatibutors modal (on the search dropdown...) maybe alex/dimitris fixed it somehow else...
@slint @mitsosf is this still needed?


highlight not working by default

Here's my config with lazy:
  { 'ShinKage/idris2-nvim',
    dependencies = {'neovim/nvim-lspconfig', 'MunifTanjim/nui.nvim'},
    -- ft = 'idr',
    lazy = false,
    config = function()
      require('idris2').setup({})
      vim.cmd [[highlight link LspSemantic_type Include]]
    end
  },

Have you fixed it?

No

Does autocomplete or any of the features work for you? The plugin does nothing in my case. Neither syntax highlighting nor does it add any autocompletion features.
Both idris2 and idris2-lsp are on my path. And I have a ipkg file.

Nothing worked when I test it.

I've started to experience the same issue via the lazy installer. I think what's happening here is for some reason file type detection doesn't work. As soon as I manually set the filetype -- everything works as expected. I'll try to figure out why this happens and compile a fix.


Provide npm package via dnt

It is currently stuck in the "Print async filters" test of print.test.ts.
undici for node.js does not support file:// url, will get a "not implemented yet" error (https://github.com/nodejs/undici/issues/2144)
Run the dnt build: deno run -A scripts/build_npm.ts <version>

It looks like the vento package name is already in use. @oscarotero  what do you think?
Regarding testing, unfortunately I didn't find the node.js fetch polyfill with file:// support.

Hey, thanks for this.
Regarding the package name, maybe it can use ventojs or something similar. What do you think?
And about the test, I guess it can be disabled for Node environments.

Hey, thanks for this. Regarding the package name, maybe it can use ventojs or something similar. What do you think?

Okay, looks good.

Almost done.
I didn't add an Action, but the example at denoland/dnt should work.
(npm packages are untested)
btw, it might be possible to request a vento.js.org domain from js.org
also, can I join the lumeland org? 🥺

Sorry, I didn't explain well. I meant disable ONLY this test in Node (but run all other tests). You can use theignore option for that:
Deno.test({
  name: "Print async filters",
  ignore: typeof Deno === "undefined"
  fn: async () => {...}
});

btw, it might be possible to request a vento.js.org domain from js.org

That would be great. I'm a bit busy right now but feel free to request it.

also, can I join the lumeland org? 🥺

Yeah, sure! I just send you an invitation.

Sorry, I didn't explain well. I meant disable ONLY this test in Node (but run all other tests).

Ok, but typeof Deno is automatically replaced by dnt with typeof dntShim.Deno so it won't work. I replaced it with globalThis?.process?.release?.name === "node",.

That would be great. I'm a bit busy right now but feel free to request it.

Simply put, a CNAME file needs to be created to point to vento.js.org and I can do the rest.
The docs will be temporarily unavailable until it is approved.

Yeah, sure! I just send you an invitation.

thx!

thanks!
btw, I have added the CNAME file

btw, I have added the CNAME file

Hmmm... It looks like the github pages for this repository are not deployed in the same way.
The CNAME file needs to appear in the _site folder after the lume build, and the build command needs to be changed to deno task build --location=https://vento.js.org

Ok, done

Ref https://github.com/js-org/js.org/pull/8345


Multi-line Regex matching for command prompts

Hi, and thanks for providing this extension! :)
I was wondering whether it would be possible for you to add a feature that allows multi-line regex matching in the configuration for prompt identifiers.
Is your feature request related to a problem? Please describe.
My use case is the following: I maintain the DataLad handbook. Its a Sphinx-based Tutorial/User-documentation that contains a continuous, hands-on narrative, and it uses code snippets that readers are encouraged to copy-paste into their terminal to follow along to give a software demonstration for various workflows.
The code snippets are in some ways peculiar. For one, they can get quite complex because they are walk-throughs through actual, sometimes complex use cases. Second, they contain the output of each command (so that users know what to expect, or can chose to read the book without coding along). Third, the output of the commands comes from a recording of actual code execution, which we do using the autorunrecord Sphinx extension in order to automatically record the output of the most recent software release, and to have a "workflow test suite", as the entire 400 page book will fail to build if a software update breaks any of the documented workflows.
As an example: Here is how a code snippets looks in raw
.. runrecord:: _examples/DL-101-103-103
   :language: console
   :workdir: dl-101/DataLad-101
   :cast: 01_dataset_basics

   $ datalad save -m "Add notes on datalad create"

and here is how it ends up in the final document:

The copy-button extension would make it much easier for users to copy-paste code without output into their own terminals, and it works very well in many snippets. However, there are a number of edge cases where the copy button extension wouldn't succeed due to the way our project works.
One of them are here documents which we quite frequently used (the top of this page contains an example.
A standard here-doc looks like this in our code snippets:
   $ cat << EOT > notes.txt
   One can create a new dataset with 'datalad create [--description] PATH'.
   The dataset is created empty

   EOT

This allows copy-pasting it as is into a terminal for users, and executing it locally during the build of the book, but a copy-button configured to copy only lines that start with a $ wouldn't be able to catch anything from that here doc apart from the first line.
Describe the solution you'd like
If there would be an option for multi-line regex matching, so that we could for example match for the EOT at the end of the snippet, we could work around this. Unfortunately, I have no JS skills at all, so implementing this would be a tough and time-intensive endeavor for me. I was hoping that it may be easy for people with JS knowledge.
Describe alternatives you've considered
We're faced with a range of suboptimal choices without the feature. Using the copy-button in its current state means having it work for a subset of code snippets, and having user to realize that what gets copied is wrong or insufficient, and that is not a nice UX experience. Likewise, if we would write the heredocs with, e.g., command prompts, they become inexecutable for us during build, and fail to run if anyone would copy-paste them without the copy button.
Additional context
I guess I'm a bit sorry for the weird use case. I'm hoping that it may just be a trivial and easy addition for anyone who knows JS. Even if that feature wouldn't be desired in this extension, we would be happy to keep a fix in a fork.

I am also interesting in seeing a solution for this: I think the part where this could be relevant is this for-loop:
https://github.com/executablebooks/sphinx-copybutton/blob/d13f7d188b116b656b732bcdefd34e5d9900902e/sphinx_copybutton/_static/copybutton_funcs.js#L21-L35
I think one solution to this would be to built in some conditionals.
push_line = False
for line in lines:
    match = line.match(regexp)
    if match or push_line:
        output += line
        push_line = False
        if line.endswith("\"):
            push_line = True

The pseudocode above would support use cases like this one:
   $ datalad download-url http://www.tldp.org/LDP/Bash-Beginners-Guide/Bash-Beginners-Guide.pdf \
     --dataset . \
     -m "add beginners guide on bash" \
     -O books/bash_guide.pdf

where currently, only the first line would be copied, unfortunately.

A similar thing could be done for here documents:
push_line = False
eot_part = False
for line in lines:
    match = line.match(regexp)
    if match or push_line or eot_part:
        output += line
        push_line = False
        if line.endswith("\"):
            push_line = True
        if "EOT" in line:
            eot_part = not eot_part

Which would cover this one:
$ cat << EOT > notes.txt
   One can create a new dataset with 'datalad create [--description] PATH'.
   The dataset is created empty

   EOT

There are probably more elegant solutions, and I haven't tested mine (or translated it into proper JS), but I think when paired with some documentation, it could be a reasonable enhancement.
What do you think, dear maintainers and other readers? :-)


add ability to retrieve ROI names in a case insensitive way

issue targeted by the PR: link

@asim-shrestha thoughts on either merging this or closing?


add workflow to trigger container build

This is the workflow to trigger the container build workflow at https://github.com/SeisSCOPED/pysep/blob/main/.github/workflows/docker-publish.yml
Note that an admin of this repo will need to add a PAT and name it as PAT_TOKEN in this repository's secret to make it work. We also need to grant this admin write access to the pysep container repo.

It seems the workflow did not run. You may need to enable GitHub Action for this repo to make it run automatically. @bch0w

ooops... I know why it didn't run. I thought the branch's name is "main" where it is actually "master". Will need to change the names here to enable the run: https://github.com/uafgeotools/pysep/blob/81da8a2f51bdb43a10901fcbbb9d49555f7f7c57/.github/workflows/dispatch-container.yml#L5-L7

I directly changed it by committing to the master branch, and I can see that the container build is triggered properly here: https://github.com/SeisSCOPED/pysep/actions/runs/3024225388

Looks good! I also see that my latest PR (#28) triggered the action. Thanks, Ian!


Add support for ATmega162

It seems ATmega162 uses different Interrupt Control Register name, than the newer ATmega MCUs.

I assume you have tested this, so I can blindly merge it? GICR Also does not appear on any other MCU, but has the current registers defined?

New release is out!


Add  donation link and fiscal sponsorship information to footer

Thank you, if I want to contribute more, I will look for another issue to solve
happy hacking!


Add getRequest method to RequestFacade, to get the wrapped Request

For consistency with Request, and practically for external code that needs to integrate with Tomcat and e.g. needs access to the notes.
Signed-off-by: arjantijms<EMAIL_ADDRESS>

@arjantijms why not using a valve as most integrators?

@arjantijms why not using a valve as most integrators?

You can't add a valve from your war, so that puts additional constraints on the user. For a simple integration with Jakarta Security, not much is needed really, I only need to obtain the Subject which the Tomcat code sets via a note:
https://github.com/apache/tomcat/blob/master/java/org/apache/catalina/authenticator/AuthenticatorBase.java#L973
It's much easier to just include (say) Soteria in your war as a dependency, than it is to instruct the user to modify an existing Tomcat installation every time.
That said, for tighter integration, I need to go the Valve way and specifically install a custom Realm.
For the general utility of this PR, I think it's always a good idea to be able to access the object you're wrapping. Many other wrapper types have this in Tomcat, and all Servlet wrappers have this too.

@arjantijms I see, my point is that the facade is about preventing the user to access the internals (request here) or any API not from the spec so I don't think it should be broken. It is done for all servlet code (look for all *Facade instances) and it generally prevents to access any internal from a spec code (you see it the other way for your case but it is designed the other way). I see a few options to help - there are probably more:

Add an "app valve" in tomcat code, it would reuse tomcat reflection factory to instantiate lazily - when app loader exists - a valve. it is close to https://github.com/apache/tomee/blob/master/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/valve/LazyValve.java but only using tomcat internal. It enables you to write a valve in your war without tomcat tuning. Similar solution would enable a valve to fail to be created from the context.xml but it would be retried when the app loader exists (I prefer previous option which is clearer on when it must work). I know it is not tomcat habit to enable internals from the app but I agree it is not uncommon so having some wrappers enabling it can help - tomee also has the real wrapper since you mentionned it.
Use reflection as several other integrators
Drop jaspic from tomcat and use plain servlet filters (big +1 from me since it would also make jaspic optional for tomcat embed)
Use GenericPrincipal (or TomcatPrincipal/ a new JaspicWrappingPrincipal) to host the subject instead of a note
add in base authenticator an attribute to set it in a request attribute too (likely the easiest)

Valves can be installed via a WAR. You can specify an application specific Valve in a META-INF/context.xml file included in the WAR.
I share the concern that adding a getRequest() method may undermine the use of a facade.

I'll investigate the application specific Valve. Can META-INF/context.xml exist on the class path as well, or does it have to be inside [war root]/META-INF?

Use reflection as several other integrators

I'm now using reflection indeed:
    private static Subject getSubject(HttpServletRequest httpServletRequest) {
        return (Subject) getRequest(httpServletRequest).getNote(REQ_JASPIC_SUBJECT_NOTE);
    }

    private static Request getRequest(HttpServletRequest servletRequest) {
        return getRequest((RequestFacade) servletRequest);
    }

    private static Request getRequest(RequestFacade facade) {
        try {
            Field requestField = RequestFacade.class.getDeclaredField("request");
            requestField.setAccessible(true);

            return (Request) requestField.get(facade);
        } catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) {
            throw new IllegalStateException(e);
        }
    }

@markt-asf I'm working on a standalone implementation of Jakarta Authorization (JACC), and so far it works really well on Tomcat (and Piranha). It's actually interesting to see how the JACC way to match URL patterns and the Tomcat native way are really not that different.

I share the concern that adding a getRequest() method may undermine the use of a facade.

Isn't the facade intended as a service to the user to not accidentally access specifics? It's not a protection mechanism, is it? As with reflection one can get to the wrapped instance anyway.
With a getRequest() method, the user has to do 2 very specific actions: cast to RequestFacade and then call that method. Compare to e.g. JPA's EntityManager, which is a facade for (mainly) Hibernate, but still has a method to get the underlying Hibernate specific manager.

Guess a sane EE way to solve that is to propose to servlet spec to add an unwrap(Class type) method in most of its objects (or Unwrappable instance).
It would solve a lot of issues with such pattern - being said the getRequest() does not really work in all cases in your example - and enables to traverse proxies/wrappers.
Wdyt?

being said the getRequest() does not really work in all cases in your example

In what cases doesn't it work?

Guess a sane EE way to solve that is to propose to servlet spec to add an unwrap(Class type) method in most of its objects

Might not be a bad idea, thanks!

@arjantijms when you can't cast the request  because a filter/valve wrapped it (even if a bit nasty for valves it can happen) which is not uncommon for session distribution, security (potentially ran before jaspic) or framework (cdi for ex) setup. I know we are all tempated to say security first but actually it is common to put distribution and framework before just to ensure security context exists properly.

@rmannibucau oh yeah, of course, then it won't work. It'll throw an exception, so at least you know it won't work ;)
requestInitialized() is really early though, so in most cases should be early enough. Just to be sure I'll take your suggestion and add a default unwrapFully:
    @SuppressWarnings("unchecked")
    private <T extends ServletRequest> T unwrapFully(ServletRequest request) {
        ServletRequest currentRequest = request;
        while (currentRequest instanceof ServletRequestWrapper) {
            ServletRequestWrapper wrapper = (ServletRequestWrapper) currentRequest;
            currentRequest = wrapper.getRequest();
        }
        return (T) currentRequest;
    }

Thanks!

@arjantijms maybe test the type and throw an exception with the request type when it is not a wrapper, some people do it :angel: ;)

@markt-asf can we add a org.apache.catalina.api.Unwrappable and make the facade objects impl it? Would it be an option?

The plan was to keep the Servlet container implementation classes away from the webapps, so this is a request to do the opposite. It's hard to see how this concept can ever be a good idea.

It's hard to see how this concept can ever be a good idea.

I personally think it's a brilliant idea. Then again, I'm probably biased ;)

@rmaucher it is not about letting a webapp use internal and by default I agree it should stick to the spec API, but it is common to need to go further, in particular when combining some servlet with valves or realms, and in this case being able to link both is important and can need the request access (even potentially the coyote one!). Enabling it by allowing to cast to "unwrappable" is good enough IMHO. In any case it is not worse than today in terms of access since today you can do it using reflection, it is just about making it more fluent for end users IMO. In TomEE we do it in several places and even unwrap the request until the context, having an unwrappable would make it smoother for ex, without breaking the facade concept at all. Only constraint is to not add to facade API any method out of the spec but another interface implemented by the same object does not violate this rule.

I would be against exposing container internals via the Servlet API as it undermines portability.
What information, specifically, do you need to access and how (read, write)? I think I'd rather a solution that provided the specific access required. An added complication is that Tomcat has always aimed to support the use case of running "untrusted" apps. As such providing all apps with write access to anything considered security sensitive is going to be tricky and would probably require an configuration option to explicitly enable it.

@markt-asf requests notes. How adding RequestFacade implements HttpServletRequest, Unwrappable is less secure than current impl? if it helps I guess you can use the security manager if set un unwrap(), would be 1-1 in terms of security with current state where using reflection falls in the same bucket, no?

@markt-asf If you really want to encourage this, there is the privileged flag on the Context that allows using container servlets.
public Request getRequest() {
if (request.getContext().getPrivileged()) { return request; } else throw new SecurityException(); // :)
}

I would be against exposing container internals via the Servlet API as it undermines portability.

Well, actually it could be used by integration libraries to improve portability, the exact opposite. Integration libraries enumerate all known implementations, adapting the internals of each to some common functionality.
As an example, look at how Soteria is able to implement an SPI for Weld:
https://github.com/eclipse-ee4j/soteria/blob/master/spi/bean-decorator/weld/src/main/java/org/glassfish/soteria/spi/bean/decorator/weld/WeldBeanDecorator.java
It allows to get the Weld specific BeanManager from the spec compliant BeanManager:
BeanManagerProxy.unwrap(beanManager));

Another example, using enumeration of known implementations:
https://github.com/omnifaces/exousia/blob/master/src/main/java/org/omnifaces/exousia/spi/impl/DefaultRoleMapper.java#L374
It uses reflection, but you may get the idea.
Without using reflecting and specifically for Tomcat:
https://github.com/omnifaces/exousia/blob/master/src/main/java/org/omnifaces/exousia/spi/integration/IntegrationInitializer.java#L42
It now only has Tomcat, but I'm planning to add Jetty there later.
The internal APIs are kinda used for essentially a polyfill.

Yet another example, Weld is using similar tricks to integrate with Tomcat:
https://github.com/weld/core/blob/master/environments/servlet/core/src/main/java/org/jboss/weld/environment/tomcat/WeldForwardingInstanceManager.java#L97
  // Hack into Tomcat to replace the InstanceManager using
  // reflection to access private fields
  ApplicationContext appContext = (ApplicationContext) getContextFieldValue((ApplicationContextFacade) context, ApplicationContextFacade.class);

It's not the average application that needs this, but libs like Weld (CDI) or Soteria (Jakarta Security) definitely have a need for this.


[jvm-packages] sbt instead of Maven

Have you considered using sbt for building the JARs? It would allow to workaround Scala binary incompatibility issue and automatically  painlessly) build xgboost4j and other packages for multiple versions of Scala.

what's the concrete problem you met when using maven to build current code base?

I am currently working on automatically building JARs for xgboost. Since xgboost is a Scala project, the resulting JARs are tied to the Scala release they were built with (2.11 by default). Therefore, the artifact names should (by convention) have binary tag, e.g. xgboost4j_2.11 instead of just xgboost4j.
You can do that in Maven using some find/sed magic (Spark does exactly that). However, since xgboost4j is a relatively small project, it might be easier to switch to sbt and get the binary tag behaviour out of the box. Bonus: it would cross build the artifacts automatically.

I assume that using sbt to read pom.xml (like what Spark is doing) will achieve the same goal?
I do not want to change the build chain by replacing something regarding the existing users' convenience
if you are interested, would you mind giving it a try?

Yep, I think this should be possible. I'll have a look.

In the end, I've convinced myself that the POM reader plugin (#2743) is just too much of a burden for a small project like XGBoost. I've ported all the POM files in <1 hour (#2767) and, while there a few rough edges, it is mostly compatible feature-wise with the Maven build.


keep consistent between the link "Choose Columns…" and the prompt dialog's title

Storage Explorer Version: 1.8.1_master_20190614.7
Platform/OS: Linux Ubuntu/macOS High Sierra/Windows 10
Architecture: ia32/x64
Commit: bc3a9ae7
Regression From: Not a regression
Steps to reproduce:

Expand a storage account -> Tables.
Select one table -> Select "Query" button -> Click "Advanced Options" -> Click "Choose Columns...".
Check the prompt dialog's title.

Expect Experience:
It is consistent between the link "Choose Columns…" and the prompt dialog's title.
Actual Experience:
It is inconsistent between the link "Choose Columns…" and the prompt dialog's title.

Go with select columns everywhere!

Package just needs updating.

Fix merged into master.


New lessons and UI updates

This PR includes a number of changes including new lessons:

New OTP Concurrency lesson
New OTP Supervisor lesson
New Executable lesson
Updates to the Erlang Interoperability lesson
Updates to the Ecto lesson (Closes #27)
Refactor generation of the sidebar
Add collapsible sections to the sidebar

@luizvarela here are some new lessons and updates to the Ecto lesson as you reported.  Let me know your thoughts.  If necessary I can deploy these changes to make it easier to go through the content, just let me know.
Thanks again for your feedback :+1:

Nice @doomspork, but I can't find the updates to the Ecto lesson, I saw that you created OTP Supervisors into a lesson, but would be better if you put the Supervisor configuration into the Ecto lesson.
This line here:
https://github.com/elixir-lang/ecto/blob/master/examples/simple/lib/simple.ex#L4

Sorry @luizvarela I missed a commit.  See the Ecto supervisor changes here: https://github.com/doomspork/elixir-school/blob/otp-and-escripts/lessons/specifics/ecto.md

:+1:  Nice @doomspork, now can be merged.

Glad you like the changes @luizvarela!  I'm going to give this all another once over and then get it published tonight.
Thanks again for your feedback. :+1:


Update the link to the official website.

In Readme.md, when click ofiical website, 404. was encountered.
⚡ Quick start
You can view samples here, or view offical website.

fixed


Incorrect Units for Standing Charge

Describe the bug
The standing charge is shown as GBP/kWh.
To Reproduce
Run the integration, and view the sensor
Expected behaviour
Units should be GBP
Version
What version of the integration and what version of Home Assistant are you running?

5.0

@HandyHat can the fix be implemented please?


Create EAFC

eafcevere.txt

EAFC Evere
https://eafcevere.eu/

@IbraYou Excuse me, it's not clear what is a domain you wish to add? Is it @eafcevere.eu?

@philipto
Yes, the domain that the school uses is :  @eafcevere.eu

@IbraYou lib/domains/eu/EAFC: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@IbraYou First stage of verification passed, official domain is eafcevere.eu as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@IbraYou Thank you for your patience while waiting for a review and processing your request. Pull request merged.


Dependency has issue with PHP < 5.3.9.

https://github.com/sabberworm/PHP-CSS-Parser/issues/83
The sabberworm/PHP-CSS-Parser has issues with PHP < 5.3.9, it will cause a fatal error which in turn causes Munee to not work with PHP < 5.3.9.
Although this issue has been fixed, the fix hasn't been released yet.
I'm currently using Munee with dev-master of sabberworm/PHP-CSS-Parser.

Well this sucks.... Hopefully they release a new version soon.  If it's a major problem, I could point Munee to dev-master, but I'd rather not because that could cause issues in the future.


istioctl gen-deploy: add common tag for all images

The build pushes all images with a common tag.
Currently istioctl gen-deploy allows to specify the hub for all images, but a separate tag must be provided for pilot, mixer, ca.
As a separate sub-task, it would be good to change the location where the command is looking for templates, from the current dir to "install/kubernetes/helm", so the command can be run from the root of istio.

Sorry, I am not 100% sure what work this task is describing, and I have a couple questions about the acceptance criteria of this.  Do you want to add an option to istioctl e.g. --tag=0.4.0?
Or do you want this to be a change to the behavior of the build per the first line of the task?

The build pushes all images with a common tag.

It looks like istioctl gen-deploy uses a common tag by default?
$ istioctl gen-deploy
global:
  namespace: istio-system
  sidecar-injector:
    enabled: false
  proxy:
    hub: gcr.io/istio-testing
    tag: 0.4.0
    debug: false
  pilot:
    enabled: true
    hub: gcr.io/istio-testing
    tag: 0.4.0
  security:
    enabled: true
    hub: gcr.io/istio-testing
    tag: 0.4.0
  mixer:
    enabled: true
    hub: gcr.io/istio-testing
    tag: 0.4.0
  ingress:
    use_nodeport: false
    nodeport_port: 0
  hyperkube_hub: quay.io/coreos/hyperkube
  hyperkube_tag: 0.4.0

and I see defaultInstallation() in pilot/cmd/istioctl/gendeployment/cmd.go uses this tag:
func defaultInstall() *installation {
    return &installation{
        Mixer:       true,
        Pilot:       true,
        CA:          true,
        Ingress:     true,
        Initializer: false,

        Namespace: "istio-system",
        Debug:     false,
        NodePort:  0,

        Hub:      "gcr.io/istio-testing",
        MixerTag: defaultTag,
        PilotTag: defaultTag,
        CaTag:    defaultTag,
        ProxyTag: defaultTag,

        HyperkubeHub: "quay.io/coreos/hyperkube",
        HyperkubeTag: defaultHyperkubeTag,
    }
}

I have a PR changing the helm templates to use a single tag, and I will propose we
stop generating helm values.yaml ( there is too much stuff in there, the simple config won't work ).
I think the main remaining issue for this issue is to make sure istioctl gen-deploy with hub/tag
parameters is putting the values in the right place.
Normally with helm template  we woud use a '--set' - it would be great if gen-deploy had ability
to also set/override arbitrary configs, not only the tag.

Closing it for now - we may reopen if the helm plan doesn't work out.


Feature/v0.2.1/oto code generation

In order to reduce writing of boilerplate for clients, endpoints and documentation, we will add oto code generation support.
We will add support an OTO RPC for namespace and an experimental svelte front-end client.

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


Unable to locate outlook executable on your system

I am getting this error. This has been a recent thing, I have had windows and BIOS updates. Not sure what went wrong.

Logs:
2022-09-19 20:50:57.3838 INFO Command Line Args:
2022-09-19 20:50:57.4378 INFO Found 15.0 key
2022-09-19 20:50:57.4378 INFO Found 16.0 key
2022-09-19 20:50:57.4378 INFO Found C2RSvcMgr key
2022-09-19 20:50:57.4378 INFO Found ClickToRun key
2022-09-19 20:50:57.4378 INFO Found Common key
2022-09-19 20:50:57.4378 INFO Found DmsClient key
2022-09-19 20:50:57.4378 INFO Found Outlook key
2022-09-19 20:50:57.4378 INFO Office version 16 detected
2022-09-19 20:50:57.4378 INFO Outlook path reported as  and Outlook.exe found in that path
2022-09-19 20:50:57.4378 ERROR Unable to find Outlook exe location in registry

This usually indicates something wrong with your office installation. Does outlook successfully launch for you? If you really want to try and get this to work, I would suggest reinstalling Office.


Need a way to define or alter the traefik service name based on consul tags

Welcome!

[X] Yes, I've searched similar issues on GitHub and didn't find any.
[X] Yes, I've searched similar issues on the Traefik community forum and didn't find any.

What did you expect to see?
This is a new description of an older problem originally discussed here: https://github.com/traefik/traefik/issues/3882
That issue was originally opened in such a way that it appeared related to Traefik v1 -- however the issue affects Traefik v2 as well and @ddtmachado requested a new issue be created to describe the problem.
Problem
When using the nomad <-> consul <-> traefik integration, it is not possible to use the canary deployment workflow that is supported by nomad.
An introduction to the nomad canary roll-out strategy can be found here.  The crux of the problem is that nomad will register the non-canary version of the service and the canary version of the service with the same consul service-name such that traefik routing policy cannot distinguish between the canary and non-canary instances of the service.  Both service types are presented in traefik as one 'service' representing a pool of instances of both instance types.  This means you can't use traefik routing policy to direct traffic to only one or the other instance type independently.
Background
Nomad supports a service deployment lifecycle that includes a canary deployment process.  When a new version of a service that uses the canary deployment feature is deployed, nomad will spin up n instances of the canary service 'alongside' the existing service instances and allow the canary instances to be health-checked and verified as desired before they are 'promoted'.  After promotion, the normal deployment process is followed and the running older instances are replaced with the new version.
Nomad supports defining consul parameters specific for the canary instances via the canary_tags and canary_meta nomad parameters.  These parameters parallel the tags and meta parameters that are used to populate consul for regular instances of the service.  When nomad spins up canary instances it populates consul based on canary_tags/canary_meta and when nomad spins up regular instances it populates consul based on tags/meta.
For both canary and non-canary instances, nomad registers the service with the same consul service-name.  Nomad only allows canary/non-canary instances to differ in their presentation to consul via the canary_tags and canary_meta parameters.
Traefik on the hand, considers all consul registrations with the same name to be the 'same service'.  Its not currently possible to define a traefik routing policy that will route traffic to canary only or non-canary only nomad instances.  As far as traefik is concerned the canary and non-canary instances are the same pool of instances and these instances can't be independently addressed..
If we could customize the presentation of the service in traefik via the nomad canary_tags or canary_meta properties in such a way as to persuade traefik to consider these instance types as two distinct services, then we would be able to take advantage of the full flexibility of traefik routing behaviors to decide how we would like to route to these now distinct-from-the-perspective-of-traefik services.
Possible Solution
I suggest allowing to define a consul parameter that represents either an alternative traefik service name or allows deriving an alternate name by combining with the base consul service name.
For example -- suppose support is added for a consul tag named traefik.service_name_suffix and suppose a nomad service declaration like this:
service {
  name = "health-check-tool"
  port = "http"

  tags = [
    "traefik.enable=true",
    "traefik.http.middlewares.strip_canary_header.headers.customrequestheaders.Canary=",
    "traefik.http.routers.deploy_automation_tester.rule=Host(`${var.domain}`)",
    "traefik.http.routers.deploy_automation_tester.tls=true",
    "traefik.http.routers.deploy_automation_tester.entrypoints=https",
    "traefik.http.routers.deploy_automation_tester.middlewares=strip_canary_header@consulcatalog"
  ]

  canary_tags = [
    "traefik.enable=true",
    "traefik.service_name_suffix=`-canary`",
    "traefik.http.routers.deploy_automation_tester_canary.rule=Host(`${var.domain}`) && Headers(`canary`, `true`)",
    "traefik.http.routers.deploy_automation_tester_canary.tls=true",
    "traefik.http.routers.deploy_automation_tester_canary.entrypoints=https",
  ]

  connect {
    sidecar_service {}
  }

  check {
    name     = "alive"
    type     = "http"
    path     = "/ping"
    interval = "10s"
    timeout  = "2s"
  }
}

While an active nomad deployment is in progress we would see two services in traefik -- a service named health-check-tool which would represent the 'old' version of the service and a service named health-check-tool-canary which would represent the 'new' desired version of the service that is being evaluated.  In this example, there would also be two traefik routers -- one named deploy_automation_tester  would route traffic for ${var.domain} to health-check-tool and one named deploy_automation_tester_canary which would route traffic for ${var.domain} that contains the canary: true header to the health-check-tool-canary service.
A mechanism like this would integrate well with the nomad deployment lifecycle and would allow using the normal traefik routing policy mechanisms to send traffic to the canary/non-canary instances of the service in whatever manner is desired during deployment of a new service version.

It is really nice idea to get final traefik service name by modifying consul service name with the suffix from the tag, or even replacing full service name with the value from the tag. This will simplify configuration. Also, please see my note about router names with similar configuration https://github.com/hashicorp/nomad/issues/8073#issuecomment-1119532106

Great write up @breathe, pretty much the same way that Fabio works basically.

Btw while I do agree that something like this would be nice you can achieve the same today by running two traefik instances/job and pointing them to different tag prefixes (https://doc.traefik.io/traefik/providers/consul-catalog/#prefix)
The service would then look like this:
service {
  name = "health-check-tool"
  port = "http"

  tags = [
    "traefik.enable=true",
    "traefik.http.routers.deploy_automation_tester.rule=Host(`${var.domain}`)",
    "traefik.http.routers.deploy_automation_tester.tls=true",
    "traefik.http.routers.deploy_automation_tester.entrypoints=https",
  ]

  canary_tags = [
    "traefik-canary.enable=true",
    "traefik-canary.http.routers.deploy_automation_tester.rule=Host(`${var.domain}`)"",
    "traefik-canary.http.routers.deploy_automation_tester.tls=true",
    "traefik-canary.http.routers.deploy_automation_tester.entrypoints=https",
  ]

  connect {
    sidecar_service {}
  }

  check {
    name     = "alive"
    type     = "http"
    path     = "/ping"
    interval = "10s"
    timeout  = "2s"
  }
}

While this might feel cumbersome it also prevents one from introducing invalid configuration into the system via canary tags :) [And one needs to route canary requests with yet another loadbalancer to traefik first, so might only be feasible if one has a canary domain or similar].


Wrong Links when you download PDF

Hello guys love the work on this documentation, I used to had a copy of this documentation, but lost that pdf, now that im trying to download again, the bookmark section all links takes you to the incorrect pages, anyway great material especially in pdf form where i can make annotations and whatnot.

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

ID: 3dff5a94-d9cd-e31b-4056-362abbe8d782
Version Independent ID: cfb1ad21-e822-4075-2726-bd130ec2358d
Content: C# Guide
Content Source: docs/csharp/index.md
Product: dotnet-csharp
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

@dend, can you help with this? The link downloads the .NET Guide, not the C# Guide.

Its actually the whole .net guide, 1 pdf file +2000 pages long, it used to have all links pointing to the right pages (my old copy months ago) but now the one I just downloaded, all links takes u to wrong pages, but if the guide is used in the browser (no pdf) then all links work fine, they take you to the proper pages.

Given this is a site feature and not a content issue, I've moved this feedback to https://github.com/MicrosoftDocs/feedback/issues/895.


[Demo]  React Native AWS S3 Todo App

This adds a demo project that is identical to the existing react-native-supabase-todolist demo app but uses AWS S3 to store attachments and not Supabase.
The README contains updated instructions on how to setup an S3 bucket.
Changes to focus on

demos/react-native-aws-s3-todolist/library/powersync/system.ts
demos/react-native-aws-s3-todolist/library/storage/AWSConfig.ts
demos/react-native-aws-s3-todolist/library/storage/S3StorageAdapter.ts

Questions/Concerns

It seems a bit excessive to create an entirely new demo just to change/add 3 files.
Should the additional demo be removed, and the react-native-supabase-todolist README be updated to include a section on swapping out storage options?
The demo directory might/will grow indefinitely if the approach used in this PR is taken.

Re: questions/concerns - my feeling is that it would be cleaner (less duplication and less to maintain) if we add the S3 implementation differences/instructions separately. README probably makes sense, because I assume the instructions are heavily tied to this implementation. Alternatively in docs, https://docs.powersync.com/usage/use-case-examples/attachments-files, but that might be difficult to remember to update if we update the example implementation.


feat: drop support for python 3.8

Python 3.8 is EOL since 07 Oct 2024.
https://devguide.python.org/versions/

Once we merge this, we might need to release a major version of the Ansible collection. I still need to check if this is a good timing.


Load sites with TFM_SITE.ISHISTORICSITE = N

Only sites where the ISHISTORICSITE is null are Arch sites. Need to load all records where ISHISTORICSITE = Y or N.

@TMcFarland-Heritage - There is a Registry Type of "TU" in these new values. Is this a valid value, or should they be changed to something else?

TU stands for traditional use. For now they can be included.


Missing file

Upload_ct.html is missing. Please upload the file.

Drive link no longer needed, added models to models folder.


HTML repr dark/light themes in Sphinx Furo

What is your issue?
The Xarray HTML repr assumes that light vs dark theming is stored in the html element's theme attribute (i.e., <html theme="dark"> or <html theme="light">).
However, the Sphinx Furo theme assumes that light vs dark theming is stored in the body element's data-theme attribute.  As a result, if you use the Sphinx Furo theme for documentation and use Xarray HTML reprs, the Xarray HTML reprs do not display properly.
In truth, it seems that this comes down to the light vs dark theming not being standardized, which presents a problem of how to support multiple (possibly innumerable) different ways of specifying light or dark themes.  That said, the Sphinx Furo theme has growing popularity, and I wonder if it could be supported as a special case (as is vscode dark themes).
To do this, one would need only modify one line of xarray/static/css/style.css:
https://github.com/pydata/xarray/blob/0db3440626721f8cdaf2f3e677d165061e870e26/xarray/static/css/style.css#L16-L17
to:
html[theme=dark],
body[data-theme=dark],
body.vscode-dark {

If this is something that the Xarray community would support, I'm happy to put together a PR to do this.

Sounds OK to me!


[analysis_server_client] make dartBinary as parameter for Server.start

Platform.executable != dartBinary for compiled executables.
This change allows package users to provide the path for the dartBinary if their app will be compiled.

Review is https://dart-review.googlesource.com/c/sdk/+/225700

Thanks for the contribution @osaxma !

Thanks @mit-mit for the updates 🙏🏽


feat: Update README

The RPi 4 (4GB) is the recommended minimum requirement.
It may work on a RPi 3B, but since the RPi 3B only has 1GB RAM, you may end in OOMs (especially if you try to run a Comnet node)


Wrong import in Angular for  "import { JSXInternal } from "preact/src/jsx";

Schedule-X version:
"@schedule-x/angular": "^2.3.1",
"@schedule-x/calendar": "^2.4.3",
"@schedule-x/calendar-controls": "^2.4.3",
"@schedule-x/events-service": "^2.4.3",
"@schedule-x/preact": "^2.3.2",
"@schedule-x/theme-default": "^2.4.3",

After importing calendar-controls and events-service i get the error:
"TS2307: Cannot find module 'preact/src/jsx' or its corresponding type declarations. "
for this line
"import { JSXInternal } from "preact/src/jsx"

Which package manager are you using?
Previously, a few users using pnpm or yarn had similar issues, because those package managers don't download peer dependencies per default.

Which package manager are you using?
Previously, a few users using pnpm or yarn had similar issues, because those package managers don't download peer dependencies per default.

Im using npm

I found the error, and now it’s working as it should! The problem was related to how my project was handling the modules. Sorry for the issue.


🚀 Not 🚀 fast 🚀 enough! 🚀

Add 🚀 more 🚀 rockets 🚀 to 🚀 make 🚀 faster!! 😁😁🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀

pr it in I suppose


StabilizerTask: Adds ZMPCC and improve GUI configuration

Major

[bugfix] Fix segfault when reloading the configuration after the task has been added to the solver
Restore ZMPCC implementation:
We have noticed in practice that the ZMPCC is in fact very useful, contrary to what @stephane-caron  suggested during the initial MR. Without it, it is impossible to walk with online footsteps plans, and only carefully hand-tuned ones marginally work. Furthermore, we have so far observed absolutely no noticeable shaking. Thus I have re-integrated it here. As a bonus it's now implemented as its own independent class.

Default weights unless specified otherwise in the robot module are:

comAdmittance = {0, 0}
integratorLeakRate = 0.1

It is recommended to tune it for each individual robot. For reference, on HRP-2Kai we currently use comAdmittance = {0.5, 0.5}.
Minor

Improve online configuration handling:

Prevent changing the configuration values while the stabilizer is disabled
Allow to commit the current configuration as the new default
Allows to re-enable the stabilizer from its current configuration or from the last committed configuration

Compute ZMP as free functions mc_rbdyn::zmp(...) implemented in mc_rbdyn/ZMP.h
Make sure the stabilizer behaves well when lifting and putting down the robot:

Disable stabilization gains
Leave tasks usable (allows to run controllers in mc_rtc_ticker without forces)

Tests
Tested all behaviours described above on the HRP-2Kai robot using the LIPMStabilizer default controller on 09/03/2020.

[x] Allow to lift the robot and keep controlling the tasks (allows to run in mc_rtc_ticker even with the stabilizer)

Thanks @gergondet for the review!
I've fixed the minor issues, and taken the liberty to split the implementation in two files:

StabilizerTask.cpp: contains the stabilizer task code
StabilizerTask_log_gui.cpp contains only the gui and logging code, as this is quite space-consuming (almost 400 lines).

Overall this makes the code more readable, and speeds up recompilation ;)

We have noticed in practice that the ZMPCC is in fact very useful, contrary to what @stephane-caron suggested during the initial MR

Hey, that's not the friendliest way to put it :stuck_out_tongue_winking_eye:
When is ZMPCC helpful?
Going back to what I wrote during the initial MR:

Historically, it has helped us (1) improve sagittal sway on HRP-4 while stair climbing (September 2018) and (2) improve lateral stepping with 0.7/0.1 phase durations. In my view, it only helps when the ZMP saturates the support area, which hopefully does not happen with a properly tuned walking pattern 😉

Note that "it only helps" is specific to LIPM stabilization, where we also have ankle- and leg-based admittance control. ZMPCC is a force control law, so in general it can be helpful in other contexts. I'm referring here to the improvement it brings on top of these two other force control laws.
The problem with ZMPCC is that it is more prone than the two other laws to pick up vibrations, especially on HRP-4 where the ankle flexibility is more rigid. I faced this issue in the VHIP stabilizer, which relies on ZMPCC as well, and reported it here (Section V.A of the paper). By the way I'll be presenting it at ICRA so if you guys are around we can continue the discussion there :wink:
One solution to get past these vibrations is to add a proper (not low-pass) signal filter, like Johannes did in his inverse-dynamics controller for TORO, but I didn't implement that on HRP-4.
At any rate, I was wrong to suggest removing ZMPCC for the sake of simpler code. If it can be useful, better keep it around disabled than deprive others of a potentially helpful tool.
Comments on your observations

Furthermore, we have so far observed absolutely no noticeable shaking.

Great! The more flexible ankle might help here. Also note that CoM admittances affect HRP-2 and HRP-4 differently, so marginally-shaking values for HRP-4 could be just safe for HRP-2. At any rate, you will want to make sure you evaluate the instability threshold for this admittance to make sure you don't run into it while walking.

Without it, it is impossible to walk with online footsteps plans

There are a lot of implementation-specific details that might slip behind this statement. I'm pretty sure the robot can do reactive stepping without ZMPCC in general (Morisawa-san will tell you more!). Maybe you are saturating ZMP support areas in your plans?
That would explain why ZMPCC helps, but then I'd rather improve the footstep plan than add ZMPCC (again if that's the reason for adding it) as it would be treating the root cause rather than making its symptoms disappear. In particular, you could look at adjusting phase timings in the footstep plan (Kajita-san will tell you more!). If you don't want to go for a full fledged SQD formulation, there is a nice heuristic in @Leph's PhD thesis (p. 66) that could help:

Il s'agit de "mettre en pause" le mouvement à certains points de la phase si la position du centre de pression latéral mesurée par les capteurs des pieds est en dehors d'un certain intervalle.

Here is an illustration of his point:

Hoping this helps! Good luck in your projects, and happy tuning :wink:

Thanks a lot for you comments.

Hey, that's not the friendliest way to put it stuck_out_tongue_winking_eye

Apologies if it sounded that way, this was not my intention. I was just meant to point out why ZMPCC was removed in the first place and why we decided to reintroduce it. I think it's important to keep a trace of the history behind the evolution of such important parts of the code ;)

The problem with ZMPCC is that it is more prone than the two other laws to pick up vibrations, especially on HRP-4 where the ankle flexibility is more rigid. [...] At any rate, you will want to make sure you evaluate the instability threshold for this admittance to make sure you don't run into it while walking.

I have noticed some vibration when moving slowly, like lifting the leg up and down quasi-statically. But for other dynamic motion, it seems perfectly stable. In addition it seems to allow a much larger margin to tune the other stabilization gains of the PID and various integrators.

Maybe you are saturating ZMP support areas in your plans?

That's likely. Unfortunately, we are no longer doing simple walking plans, and right now are generating the footstep plan online, which involves much more variety in the footstep lengths and rotations than we ever experimented together. So far, we've managed to execute such kind of random plans only with ZMPCC, and slowing down the double support phase significantly.
We haven't done any serious evaluation of what's going on yet though, it went more as these things often do, that we needed to make the robot walk an online footstep plan, and this solution worked. I'm not saying it's the best ;)
Anyway, thanks for your comments, and enjoy Switzerland and ICRA ;)


Flex: Update missing_trip_edge rule to create exception

Describe the problem
In order to support Flex as a part of https://github.com/MobilityData/gtfs-validator/issues/1721, we need to create an exception for the missing_trip_edge rule.
Depends on #1749
Proposed solution

[ ] Add exception for missing_trip_edge rule:

File name

Spec language

Notice to update or add

Validator logic

Notice table columns

stop_times.txt

arrival_time, departure_time

Forbidden** when `start_pickup_drop_off_window` or `end_pickup_drop_off_window` are defined.

missing_trip_edge

If a trip has a start_pickup_dropoff_window or end_pickup_drop_off_window, do not trigger this error.

Test with https://data.trilliumtransit.com/gtfs/islandtransit-wa-us/islandtransit-wa-us--flex-v2-TEST.zip to make sure the error is not triggered.
Alternatives you've considered
No response
Additional context
No response

Tasks:

[ ] add the logic to make sure this error doesn't get triggered for flex feeds
[ ] add tests
[ ] review acceptance tests


Always use absolute paths for commonpath

Surprised that __file__ and __path__ for the same module aren't always both absolute or relative.

nice!


Update sample channel config to 2.0 channel

Signed-off-by: NIKHIL E GUPTA<EMAIL_ADDRESS>Type of change

Documentation update

Description
This tutorial currently uses a Fabric 1.4 channel config. Lets update it to use a 2.0 channel config. the differences are in the new lifecycle endorsement policies.

@jyellick Could you look at this one?

used a channel config from a test network application channel


Update SDK service methods to return SdkResult

Change existing service from returning anyhow::Result to return SdkResult.
This migration is completed when the trait
https://github.com/breez/breez-sdk/blob/b8f1c490d99df82f2fd3a5b4ef7fcf9d2908d488/libs/sdk-core/src/error.rs#L41-L48
is not needed anymore.
A good way to find which method to migrate next is therefore to comment out that trait implementation, then run cargo clippy in /libs/sdk-core to see which service methods cause errors.
When all service methods are migrated, the trait above should be deleted.
Partially addressed in #298

@dangeross can we close this?

I just checked and all exposed methods except prepare_refund return SdkResult or a Result with a method specific error. I will make a PR to change prepare_refund.


[WIP]fix two defects in adjust-cinder-backend.yml

create cinder volume type failed, because cinder service is not started. Fixed it by waiting for 30s for cinder service restarted.
ceph.bcache_ssd_device is defined as ceph_osds_hybrid group variable, while adjust-cinder-backend.yml is against controller nodes. So ceph.bcache_ssd_device is always undefined.

Can one of the admins verify this patch?

"ok to test" to accept this pull request for testing
"test this please" for a one time test run
"add to whitelist" to add the author to the whitelist

Have tested on hybrid env.
After adjust-cinder-backend.yml,

cinder.conf show right configuration
cinder type-list show CEPH_HYBRID
type of old volumes become CEPH_HYBRID
create a volume with openstack volume create --size 10 open_hybrid, it's type is CEPH_HYBRID
create a volume with cinder create --volume_type CEPH_HYBRID --display_name hybrid1 10, it's type is CEPH_HYBRID
all the volumes can be accessed in VM

@nirajdp These changes are tested in the dev environment and looks good.

ok to test

Per PR 2173, this playbook is outside of CI code path.


Add ScraperWorker class

Used by osp-deploy as of
opensyllabus/osp-deploy@9b4a1b7b1d30d32aca5467465b2e661b80a738cd.
From the deploy branch, and split off from https://github.com/opensyllabus/osp-scraper/pull/142.

@HarrisonGregg As far as I can tell there's no way to set a default worker class for rqworker.  We could create a custom config file that specifies it -- we already have the beginnings of that in some sense with osp_scraper.settings.rq -- but using that config would still require a command line argument for people not using osp-deploy.
I can look into the settings stuff some more, but I'm assuming @davidmcclure knows more than I do.

Hey @jodizzle and @HarrisonGregg,
Yeah, this is only relevant when a spider is getting run under RQ in production. Basically, RQ doesn't really anticipate that jobs will be as long-running as the crawls are, and, out of the box, doesn't handle the case where a job gets cut off half-way through in a way that makes sense in this context. In fact, in development, it should almost never be necessary to run spiders in the queue, as opposed to just firing off the crawls directly.

@davidmcclure Yep, that makes sense; doesn't seem like using the ScraperWorker is too necessary for development.  We should still probably add a note about it somewhere, though.
The reason we run a redis server for some of our development now is because currently, using the --local option is pretty broken, as per https://github.com/opensyllabus/osp-scraper/issues/149.


🐞 [Bug] TFRobot: fl isn't validated.

What happened?
I found that all the validation that is working on the flist doesn't work on fl.

which network/s did you face the problem on?
Dev
Twin ID/s
No response
Node ID/s
No response
Farm ID/s
No response
Contract ID/s
No response
Relevant log output
.

Verified, Dev branch.
11:22AM FTL error="failed to validate configuration file 'Downloads/config.yml' with error: vms group 'examplevm' flist: 't.fl' is invalid, failed to download flist"


Gitea over internet - Reverse proxy with Apache not working - https

Gitea version (or commit ref): gitea-1.13.2-linux-arm-6 (on Raspberry pi, ubuntu server 20.04.2 LTS)

Git version: 2.25.1

Operating system: Ubuntu Server 20.04.2 LTS x64 - for rpi 4

Database (use [x]):

[ ] PostgreSQL
[x] MySQL
[ ] MSSQL
[ ] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ ] No
[x] N. A

Description
Tried setting up https access to my gitea repo. But no chance it setting it up with Apache reverse proxy.  Below is the config files we used for to set it up. But never worked, tried combinations of local host and local ip for HTTP_ADDR in the app.ini file. Nothing worked. Please let us know, if its the config issue or not the way to do it!
Apache .conf file
<VirtualHost *:80>

  ServerAdmin ubuntu@localhost
  ServerName www.mysite.duckdns.org
  ServerAlias mysite.duckdns.org

  RewriteEngine on
  RewriteCond %{HTTPS} !=on
  RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [NE,R,L]

</VirtualHost>

<VirtualHost *:443>

    ServerAdmin ubuntu@localhost
    ServerName www.mysite.duckdns.org
    ServerAlias mysite.duckdns.org

    ProxyPreserveHost On
    ProxyRequests off
    AllowEncodedSlashes NoDecode
    ProxyPass / http://localhost:3006 nocanon
    ProxyPassReverse / http://localhost:3006

    <IfModule mod_headers.c>
       Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
    </IfModule>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/mysite.duckdns.org/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/mysite.duckdns.org/privkey.pem
    SSLCACertificateFile /etc/letsencrypt/live/mysite.duckdns.org/chain.pem

</VirtualHost>

Gitea config file - /etc/gitea/app.ini
APP_NAME = Gitea: Private code dump
RUN_USER = git
RUN_MODE = prod

[server]
PROTOCOL         = http
HTTP_PORT        = 3006
SSH_DOMAIN       = localhost
DOMAIN           = localhost
ROOT_URL         = https://mysite.duckdns.org/
HTTP_ADDR        =
DISABLE_SSH      = false
SSH_PORT         = 22
LFS_START_SERVER = true
LFS_CONTENT_PATH = /path/to/gitea/data_dir/data/lfs
LFS_JWT_SECRET   = *******
OFFLINE_MODE     = false

Screenshots

[x] N. A

Any help appreciated!! Is this the right settings?

@njarun we are all volunteers here, so if we can't always respond to tickets as quickly as 12hours opening them up. I'm going to close this however as it is better suited for our chatroom/forum: https://docs.gitea.io/en-us/seek-help/