add init support

Add support for executing an init binary as PID 1 in a container to
forward signals and reap processes.  When the --init flag is set for
podman-create or podman-run, the init binary is bind-mounted to
/dev/init in the container and "/dev/init --" is prepended to the
container's command.
The default base path of the container-init binary is /usr/libexec/libpod
while the default binary is catatonit [1].  This default can be changed
permanently via the init_path field in the libpod.conf configuration
file or temporarily via the --init-path flag of podman-create and
podman-run.
[1] https://github.com/openSUSE/catatonit
Fixes: #1670
Signed-off-by: Valentin Rothberg<EMAIL_ADDRESS>

@rhatdan @mheon, the current state always fails with runc standard_init_linux.go:207: exec user process caused "no such file or directory".
/dev/init doesn't seem to be present when runc is trying to execute the container. It seems that the mounts are not present when runc is executing the container. Do we have a race condition here or is that intended?

/approve

@rhatdan @mheon, the current state always fails with runc standard_init_linux.go:207: exec user process caused "no such file or directory".
/dev/init doesn't seem to be present when runc is trying to execute the container. It seems that the mounts are not present when runc is executing the container. Do we have a race condition here or is that intended?

@giuseppe, do you know why?

Looks like that happens as well when I just try to --mount it and try to execute it manually in the shell...

Is the binary statically linked?  You can get that error also if linked libraries are not found by the dynamic loader

Is the binary statically linked? You can get that error also if linked libraries are not found by the dynamic loader

That's something I didn't consider at all given I installed the package. You are absolutely right ;-) Works like a charm.

Fixes: #1670

Needs integration tests and you need to expose this on the varlink api.  I can help with the latter if it isnt clear what to do.  Be sure to regenerate the API documentation when doing this.

@vrothberg @baude Working on Christmas Day.  :-1: :^)

Needs integration tests and you need to expose this on the varlink api. I can help with the latter if it isnt clear what to do. Be sure to regenerate the API documentation when doing this.

Done :heavy_check_mark:
Looks like I fought selinux successfully such that bind-mounting catatonit doesn't make issues in the CI anymore.

@mheon @baude @umohnani8 @giuseppe PTAL

Rebased. I also noted that we should use /usr/libexec/podman istead of .../libpod.

LGTM
@mheon @baude @umohnani8 @giuseppe PTAL

/lgtm

Now we need to work with @lsm5 how we can ship  https://github.com/openSUSE/catatonit

Now we need to work with @lsm5 how we can ship https://github.com/openSUSE/catatonit

Can we make it a subpackage of podman (e.g., podman-init)?

Here's the spec file from openSUSE which may help with the dependencies etc.

On Fri, Jan 04, 2019 at 09:32:18AM -0800, Valentin Rothberg wrote:

Now we need to work with @lsm5 how we can ship https://github.com/openSUSE/catatonit

Can we make it a subpackage of podman (e.g., podman-init)?

rather not if we can tolerate slightly more delay (maybe like couple days,
since this is a separate upstream),
but if it's needed right away then sure.

--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/containers/libpod/pull/2045#issuecomment-451512090

--
Lokesh
IRC, GitHub: lsm5
GPG: 0xC7C3A0DD
https://keybase.io/lsm5

I don't think that's a pressing issue, so we have enough time to make it an independent package. It's just important that the binary is installed at /usr/libexec/podman/catatonit.

On Fri, Jan 04, 2019 at 10:00:30AM -0800, Valentin Rothberg wrote:

I don't think that's a pressing issue, so we have enough time to make it an independent package. It's just important that the binary is installed at /usr/libexec/podman/catatonit.

sgtm.

--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/containers/libpod/pull/2045#issuecomment-451520081

--
Lokesh
IRC, GitHub: lsm5
GPG: 0xC7C3A0DD
https://keybase.io/lsm5


ci: Update codcov GH action to newest version

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 95.15%. Comparing base (5355f98) to head (e614198).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #219      +/-   ##
==========================================
- Coverage   95.79%   95.15%   -0.64%
==========================================
  Files          12       12
  Lines        1095     1095
==========================================
- Hits         1049     1042       -7
- Misses         46       53       +7

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Fix previous positioning

More coherent to always put the previous sign in the front, also when first page is enabled. This is in line with the behaviour of last and next.

Was it doing 1 << 2 3 4 5 before?

Yep
On Wed, 11 May 2016 at 17:46, Matt<EMAIL_ADDRESS>wrote:

Was it doing 1 << 2 3 4 5 before?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/mgwidmann/scrivener_html/pull/16#issuecomment-218501118

Version 1.0.10 released


add compose or make compose.py

add compose or make compose.py

https://githubfast.com/VMTask/EdgeGPT-Compose/

https://githubfast.com/VMTask/EdgeGPT-Compose/

403 Forbidden
nginx/1.23.2

Thank you very much for making it work so well. I am grateful for your efforts, and I would love to contribute to your projects.


Seeding without key?

I think there should be a way for a single gittorrentd instance to serve multiple repositories with multiple keys/signers.  The use case is as follows: let's say I want to seed the official gittorent gittorrent repository, to increase availability, download speed, and bandwidth.  I should be able to easily and through the provided tools clone and seed this repository to other peers, though obviously I will not be able to sign updates (due to not having the key).
This seems like something technically possible with the protocol that's not implemented in the tool.  If only people who have access to the mutable key can seed the repository, it places the burden on developers to either maintain a robust hosting infrastructure (at which point they may as well use a standard Git instance) or to trust external entities with their keys.

It would also be great to have an estimate of the number of unique hosts (likely IP-based) are mirroring the repository.  That would be a rough metric for how distributed the hosting for that particular project is, and would allow interested users to seed projects they're interested in supporting with computing resources/bandwidth.

This is a must.


[SDK] Add: Migrate /linodes services to SDK

Description
Migrates all /linodes services and types.
Sorry about the size 🙏

@Jskobos addressed


feat(Stream): add static from method to Stream

Adds from static method to the constructor for ES Observable compatibility

lgtm, thanks!


Expanded for new color palettes

Thanks for this awesome theme!
I saw that the iterm2 themes weren't updated for the new palettes, so I went ahead got the new themes written. All the colors are referenced from the listed palettes using the association table in the README.

Awesome! I hadn't gotten to it yet!


Modal for when a video cannot be found

Extra Metadata Loader
I am updating the videos for my games and if I select multiple at a time and pick Steam it does not tell me if it does not find a video. I have to look at each individually to see if the video tab (desktop) shows a video. At least with YouTube I can pick from the list.
Can a pop-up show when a video or the video tab was not added when applying to multiple games?

Yeah good idea. I'll add notifications in the future so it doesn't interrupt the download process and the user can know.


New version: Elliptic v1.0.1

Registering package: Elliptic
Repository: https://github.com/nolta/Elliptic.jl
Created by: @nolta
Version: v1.0.1
Commit: 53141c984ce294891feaf3b9aa2ca142d12514ea
Reviewed by: @nolta
Reference: https://github.com/nolta/Elliptic.jl/commit/53141c984ce294891feaf3b9aa2ca142d12514ea#commitcomment-37190921

@nolta Did you intend to skip a version?

Yes

Thanks for the quick response!


Toolhouse tool use cookbook

Tool use is really important for any LLM model that allows it.
This colab adds an introductory overview and use-case to tool calling with LLaMa 3.1 hosted on Together.
It tries to mimic a real world application: scraping data from a specific social media network and creating an artistic output image.
I've added as many details to make it newcomer proof and I appreciate any insight you might find to improve this work during review.

@zainhas

Updated as requested - running all code cells. @zainhas


[Bug]: Performance issue due to dependencyMap addNodes method

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Performance issues
Steps To Reproduce
User issues
Public Sample App
No response
Environment
Production
Issue video log
No response
Version
1.9.32

RCA for this issue has been published here


Activate "EEP Purpose and Guidelines" as EEP-1

Thanks. As we have basically agreed with it on emails, let me merge it, and start the EEP process!


Syntax error in foo.cr:5: unexpected token: DELIMITER_START

Works:
{1,2,3,4,5}.sum { |p| p } / 2

Does not work:
record A, v : Int64 do
  def c
    {1,2,3,4,5}.sum { |p| p } / 2
  end
end
p A.new(5).c

Output:
SyntaxSyntax error in foo.cr:5: unexpected token: DELIMITER_START

Seems to be a (late) followup to #628
Expected behaviour: Both should work.
Version:
Crystal 0.29.0 [fbfe8b62f] (2019-06-05)

It's probably caused by the code object's to_s - code is being rewritten to another form, for which there's a parser bug.
macro m
  {{yield}}
  {%debug%}
end
m do
  {1,2,3,4,5}.sum { |p| p } / 2
end

https://carc.in/#/r/71xt
Error in line 5: macro didn't expand to a valid program, it expanded to:

================================================================================
--------------------------------------------------------------------------------
   1.   begin {1, 2, 3, 4, 5}.sum do |p|
   2.   p
   3. end / 2 end
   4.
--------------------------------------------------------------------------------
Syntax error in eval:7: unexpected token: DELIMITER_START
================================================================================

{1, 2, 3, 4, 5}.sum do |p|
  p
end / 2

error in eval:3: unexpected token: DELIMITER_START

https://carc.in/#/r/71xv


AOT build broken after update to v4

Bug Report or Feature Request (mark with an x)
- [ x] bug report -> please search issues before submitting
- [ ] feature request

Versions.
@angular/cli: 1.0.0
node: 7.1.0
os: win32 x64
@angular/common: 4.0.0
@angular/compiler: 4.0.0
@angular/core: 4.0.0
@angular/forms: 4.0.0
@angular/http: 4.0.0
@angular/platform-browser: 4.0.0
@angular/platform-browser-dynamic: 4.0.0
@angular/router: 4.0.0
@angular/cli: 1.0.0
@angular/compiler-cli: 4.0.0
package.json:
{
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "pree2e": "webdriver-manager update --standalone false --gecko false",
    "e2e": "ng e2e",
    "test.coverage": "ng test --code-coverage --single-run"
  },
  "private": true,
  "license": "UNLICENSED",
  "dependencies": {
    "@angular/common": "4.0.0",
    "@angular/compiler": "4.0.0",
    "@angular/core": "4.0.0",
    "@angular/forms": "4.0.0",
    "@angular/http": "4.0.0",
    "@angular/platform-browser": "4.0.0",
    "@angular/platform-browser-dynamic": "4.0.0",
    "@angular/router": "4.0.0"
    "angular2-jwt": "0.1.28",
    "angular2-materialize": "6.7.2",
    "bootstrap": "3.3.7",
    "core-js": "2.4.1",
    "jquery": "3.2.1",
    "jsnlog": "2.22.1",
    "lodash": "4.17.4",
    "materialize-css": "0.98.0",
    "ng2-bs3-modal": "0.10.4",
    "reflect-metadata": "0.1.10",
    "rxjs": "5.2.0",
    "zone.js": "0.8.4"
  },
  "devDependencies": {
    "@angular/cli": "1.0.0",
    "@angular/compiler-cli": "4.0.0",
    "@types/jasmine": "2.5.38",
    "@types/jsnlog": "2.17.33",
    "@types/lodash": "4.14.55",
    "@types/node": "7.0.8",
    "blob-polyfill": "1.0.20150320",
    "codelyzer": "2.0.1",
    "jasmine-core": "2.5.2",
    "jasmine-reporters": "2.2.1",
    "jasmine-spec-reporter": "3.2.0",
    "karma": "1.5.0",
    "karma-chrome-launcher": "2.0.0",
    "karma-coverage": "1.1.1",
    "karma-jasmine": "1.1.0",
    "karma-jasmine-html-reporter": "0.2.2",
    "karma-junit-reporter": "1.2.0",
    "karma-coverage-istanbul-reporter": "1.0.0",
    "karma-remap-istanbul": "0.6.0",
    "protractor": "5.1.1",
    "sync-exec": "0.6.2",
    "ts-node": "3.0.0",
    "tslint": "4.5.1",
    "typescript": "2.2.1"
  }
}

Repro steps.
ng build -prod
The log given by the failure.

C:\work\git\bcm\bcm-webfrontend>ng build -prod
Hash: 27cc5b4b00deeeca54ac
Time: 64284ms
chunk    {0} 0.6cc43a7a9d7575bd3a5c.chunk.js 340 kB {1} {2} {3} {4} {6} [rendered]
chunk    {1} 1.ea9f1c9a3092086a9814.chunk.js 310 kB {0} {2} {3} {4} {6} [rendered]
chunk    {2} 2.480ee0d5ab0def742e6e.chunk.js 202 kB {0} {1} {3} {4} {6} [rendered]
chunk    {3} 3.b88833d0db40b5345333.chunk.js 111 kB {0} {1} {2} {4} {6} [rendered]
chunk    {4} 4.92817ddf4553c797ad31.chunk.js 24 kB {0} {1} {2} {3} {6} [rendered]
chunk    {5} polyfills.89ebf76438df8bd192bb.bundle.js (polyfills) 242 kB {10} [initial] [rendered]
chunk    {6} main.f91aeaa7d15f943c98d8.bundle.js (main) 580 kB {9} [initial] [rendered]
chunk    {7} scripts.14da069587b9dbbf7ab8.bundle.js (scripts) 588 kB {10} [initial] [rendered]
chunk    {8} styles.a6a49fb046e3800f8a30.bundle.css (styles) 440 bytes {10} [initial] [rendered]
chunk    {9} vendor.3aff78d4b4b99ad571d2.bundle.js (vendor) 2.53 MB [initial] [rendered]
chunk   {10} inline.c3759df51c430577157a.bundle.js (inline) 0 bytes [entry] [rendered]

ERROR in C:/<blabla>/src/$$_gendir/app/app.module.ngfactory.ts (1,1): Supplied parameters do not match any signature of call target.

ERROR in C:/<blabla>/src/$$_gendir/app/app.module.ngfactory.ts (1,1): Supplied parameters do not match any signature of call target.

Desired functionality.
successful production build
Mention any other details that might be useful.
error occured after upgrading from latest rc to final version (v4)
I already read some posts about problems with the aot build after upgrade, and I also had to fix some issues, even with non matching method signatures, but then, there always was a - to me, meaningful - error message mentioning the occurance in the code. But with the error message from above, I already spent hours trying to find anything that could help me and I'm really not lucky :( I'd be thankful for any hint on how to further dig into this and isolate the problem.
Kind regards,
Marc

I had a similar issue. I was passing a parameter to a function that did not take any arguments. For example, removing $event fixed my issue:
<button (click)="onClick($event)></button>
...

public onClick(): void {
  ...
}

Ok, but how is anyone supposed to use AoT in practical situations if you can't actually get a trace message with a line number?

Correct. That's exactly my problem. I don't want to check each and every method call from my templates.

Usually it gives you a line number. That how it was for me. You my try to publish your code here.

@ctrl-brk @brentchow's issue is in one of his templates. Did you actually get a line number for a template in your case, because you may be referring to something completely different.

I am also facing the same  problem.
In my case I did a script to make all my templateds empty and I am still facing the issue. Is that possible to be a 3rdparty library?

Sorry, it's a commercial project, so I cannot publish the code. At least not the whole code. If there were special places to look at, I could perhaps post some of it.
I also thought about it being a problem with 3rd party lib. Maybe I should take a further look at this.

Just a quick "me to" post. I also had strange issues with AOT / -prod builds, and also didn't get a line number and had to guess where the problem was. In my case it was circular dep. inj. and 2 template errors. Better error reporting would definitely be good

I had a number of these errors after updating to<EMAIL_ADDRESS>they were relatively easy for me to track down, but the line numbers shown were those of the generated file, not the original component files.
These errors are also not shown when using ng serve. It would be helpful if these types of errors were caught when using the dev server as well.

same problem boring me, error message too simple. Will spend hours to look for in templates.

@mwaltersva The problem is this one:
ERROR in C://src/$$_gendir/app/app.module.ngfactory.ts (1,1): Supplied parameters do not match any signature of call target.
Not showing any hint where the issue is

Check your @Hostbindings
Envoyé de mon iPhone

Le 29 mars 2017 à 17:05, Leonardo Bispo de Oliveira<EMAIL_ADDRESS>a écrit :
@mwaltersva The problem is this one:
ERROR in C://src/$$_gendir/app/app.module.ngfactory.ts (1,1): Supplied parameters do not match any signature of call target.
Not showing any hint where the issue is
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

@leobispo The issue is likely in the /src/app/app.module.ts file. You're calling a function without the correct number (or type) of arguments. In my case it ended up being functions I had defined with arguments, but never passed, or vice versa. It's definitely vague and confusing ;)

@mwaltersva Thanks a lot for your tip. Taking a look at the app.module.ts file, I was able to find the problem. And like your case, it was a factory function which had a wrong parameter list.

Hi guys, I found the issue. It was related to the provider. I was declaring a dependency but not receiving the dependency in the constructor.
Anyway, tnx for the help

I also have this issue. I understand that my files probably contain errors such as function calls with arguments that don't match the signature. However, that is still valid JavaScript. It works just fine when AoT is disabled so why are my AoT builds breaking?


Prime factorization using sieve

Have you read the Contributing Guidelines on Pull Requests?
Yes
Description
A program to find out the prime factors of a number
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[ ] I've edited the README.md and link to my code.

Related Issues or Pull Requests
#437

I would like to provide the solution for "Prime Sieve" in C++  @SKAUL05 @Kajol-Kumari @Abhijit2505 @plazzy99 @siddharth25pandey

I would like to provide the solution for "Prime Sieve" in C++ @SKAUL05 @Kajol-Kumari @Abhijit2505 @plazzy99 @siddharth25pandey

I would like to provide the solution for "Prime Sieve" in C++ @SKAUL05 @Kajol-Kumari @Abhijit2505 @plazzy99 @siddharth25pandey

@akanksha-saini @kashika3101  is still resolving issues related to current PR. I would request you to keep an eye on this PR if it's not merged and closed then u can provide your solution.
Meanwhile, head over to the Issues section to know about currently open issues.

@plazzy99 I have updated the Readme.
@HarshCasper I have resolved all the issue as per recommendations.


integ-security-k8s-presubmit-tests-master reachability test failures

The reachability tests have had a major regression in test flakiness. See testgrid: https://testgrid.k8s.io/istio-presubmits-master#integ-security-k8s-presubmit-tests-master&exclude-non-failed-tests=&width=20
The tests were pretty green for a while, up until about August 13. Since then they have a roughly 50% pass rate

@JimmyCYJ this seems to have started with #16114, is it maybe related?

Also impacting https://testgrid.k8s.io/istio-presubmits-master#integ-new-install-k8s-presubmit-tests-master, https://testgrid.k8s.io/istio-postsubmits-master#integ-k8s-113-postsubmit-master, and https://testgrid.k8s.io/istio-postsubmits-master#integ-k8s-112-postsubmit-master

@howardjohn Thanks for catching this. The reachability test failures are not relevant to #16114, my PR made changes to pkg/test/framework/components/ingress/ingress.go to get external IP and port, and send request to that IP. Ingress is not created or used in the reachability tests. Those tests use Echo to make requests between workloads. https://github.com/istio/istio/blob/979015470fc1612a658f9ccb5f42c0ce976531b3/pkg/test/framework/components/echo/echo.go#L56

@incfly Do we have any change to permissive mode recently?

Thanks Jimmy. maybe just a coincidence they started failing in your change, I didn't think it could cause it but it did change a similar area.
I wonder if its possible that when you added those new tests somehow there is interference between the tests causing failures? Not sure..

Shot in the dark, but maybe some change elsewhere made it so that this sleep isn't always enough time to let config propagate?

@Monkeyanator That is also possible. We need to try reproducing this first and figure out the root cause.

Do we not have retries in the reachability test? maybe we just need to wrap
in retry.UntilSuccess
On Thu, Aug 15, 2019 at 10:30 AM Jimmy Chen<EMAIL_ADDRESS>wrote:

@Monkeyanator https://github.com/Monkeyanator That is also possible. We
need to try reproducing this first and figure out the root cause.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/issues/16287?email_source=notifications&email_token=AAEYGXPEVJHYCDKEQ4RLCSDQEWHDRA5CNFSM4IL2EI4KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4MOTVQ#issuecomment-521726422,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAEYGXNV7Y7VLSXPT6D7SX3QEWHDRANCNFSM4IL2EI4A
.


How to remove the check from Github?

I'm now using another build system and would like to manage just one.
But I could not find the documentation how to remove the check.
Is it possible to remove the check from Github?
I disabled the build on jenkins but Github still showing the check on PR without 'detail' link.

That is part of GitHub.


Add cron job to A&R export report

Description
As a A&R sys admin user, I want to be able to export ALL (or close to all) A&R data quickly and without error so that I can use it in my analysis that helps determine things like APA calculations, province wide totals for capital investment team to divy up bugdet, decision making on allocating infrastructure improvements.
Currently the export report is timing out because there is too much data. With the addition of historical data it will get worse. This ticket is to create an automatic cron job that runs every evening to create the exported report that can be used for the next day.
Doing this means data in report may not be 100% up-to-date.

[!NOTE]
Will need to determine timing of this (thinking 12am every evening? then report will reflect previous days values)

Acceptance Criteria

cron job runs to export full A&R report at …. each day
will all export reports respect this? ie. a seymour operator will use the same data from the cron job or real time if they are only exporting seymour? (my hunch is use same cron job?)

Notes

@Dianadec - I think this is one is done?


[Bug/Glitch] Menu SFX

Legacy4J Version
Version 1.20.2
Mod Loader Version
Curseforge
Bug/Glitch Occurrence Context
in the menu, when clicking a button, it makes the modern click sound. is that a bug, or is it missing the old .ogg file?
Crash Report
No response
What happened wrong?
There is an old sound effect for a menu click, and this mod is missing it

Did you check if you had mod resources above the Default resources?

As Cjnator38 said, you need to have the mod resources above the vanilla resources for everything to work as it should


Add type information to collection types

Add Type(), GetTypes() and GetKinds() to all collection objects.
Fix bug with genny template generation

Codecov Report

Merging #94 into master will increase coverage by 0.42%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #94      +/-   ##
==========================================
+ Coverage   55.83%   56.25%   +0.42%
==========================================
  Files          62       62
  Lines        4673     4718      +45
==========================================
+ Hits         2609     2654      +45
  Misses       1878     1878
  Partials      186      186

Impacted Files
Coverage Δ

collections/dictionary.go
0% <ø> (ø)
:arrow_up:

json/generated_impl.go
97.53% <100%> (+0.19%)
:arrow_up:

collections/implementation/generic.go
96.15% <100%> (+0.32%)
:arrow_up:

xml/generated_impl.go
96.29% <100%> (+0.29%)
:arrow_up:

yaml/generated_impl.go
97.53% <100%> (+0.19%)
:arrow_up:

collections/implementation/list_helper.go
94.91% <100%> (+0.36%)
:arrow_up:

collections/implementation/dict_helper.go
93.43% <100%> (+0.35%)
:arrow_up:

hcl/generated_impl.go
97.53% <100%> (+0.19%)
:arrow_up:

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 a1130d3...72dbc91. Read the comment docs.


Update index.md

Yes....it was removed on purpose...will try to attach a simple program for
now, until after the course when we are no longer running the study. Will
try and attach a few lines from a word doc , simple program...see what it
looks like
On Fri, Oct 15, 2021 at 8:37 AM Saskia Hiltemann @.***>
wrote:

@.**** commented on this pull request.
In events/spanscriptomics/index.md
https://github.com/gallantries/galaxy-workshop/pull/3#discussion_r729587457
:

@@ -57,20 +72,15 @@ Recuerda que habrá un equipo capacitado y experto durante el curso dedicado a g

Completa el formulario de registro para inscribirte en este taller.
-## Program
So you don't want to link to the program pages yet, correct? (just
checking that this was removed op purpose)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/gallantries/galaxy-workshop/pull/3#pullrequestreview-780542671,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVFNVAPSOJT234CRGFW4MQTUG7K2RANCNFSM5GADY42A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


Don't use a symlink path for selecting current release notes

Symlinks created on *nix systems and commited into git won't work under windows and such will break building the windows distribution.
See related jenkins failure https://jenkins.crate.io/job/CrateDB/job/Release/job/tarball/job/release_crate_tarball_x64_windows/50/.

@mergifyio refresh

@mergifyio backport 5.3

@mergifyio backport 5.2


Mock an AbstractValidator ValidateAndThrow using NSubstitute

I am having some trouble trying to mock the call to ValidateAndThrow method using NSubstitute. I want to configure the call to throw an exception and my unit test looks like:
        [Test]
        [ExpectedException(typeof(ValidationException), ExpectedMessage = "Total Amount was invalid.")]
        public void SaleTest_SaleValidatorException()
        {
            var validatorMock = Substitute.For<IValidator<SaleRequestData>>();
            validatorMock.When(a => a.ValidateAndThrow(Arg.Any<SaleRequestData>())).Do(e =>
                {
                    throw new ValidationException("Total Amount was invalid.");
                });

            _payService.Sale(_merchantAccountData, _saleRequestData, _cardData, _order, null);
        }

The error I am getting is and happens on the " validatorMock.When" line in code above:

An unexpected exception type was thrown
Expected: FluentValidation.ValidationException
but was: System.NullReferenceException : Object reference not set to an instance of an object.
at FluentValidation.DefaultValidatorExtensions.ValidateAndThrow[T](IValidator1 validator, T instance, String ruleSet)    at Cayan.Core.Payments.Test.PayServiceTest.<SaleTest_SaleValidatorException>b__4(IValidator1 a) in c:\Git\cayan-main-payservice\Cayan.Core\Cayan.Core.Payments.Test\PayServiceTest.cs:line 104
at Cayan.Core.Payments.Test.PayServiceTest.SaleTest_SaleValidatorException() in c:\Git\cayan-main-payservice\Cayan.Core\Cayan.Core.Payments.Test\PayServiceTest.cs:line 104

The validator class I have is a singleton with no public parameter-less constructor:
   public class SaleRequestDataValidator : AbstractValidator<SaleRequestData>
    {
        private const string TotalAmountName = "Total Amount";
        private const string TaxAmountName = "Tax Amount";
         private static readonly Lazy<SaleRequestDataValidator> instance = new Lazy<SaleRequestDataValidator>(() => new SaleRequestDataValidator());

        public static SaleRequestDataValidator Instance
        {
            get
            {
                return instance.Value;
            }
        }

        private SaleRequestDataValidator()
        {
            // Check that network type is valid
            this.RuleFor(r => r.NetworkType)
                .Must(
                    networkType => (networkType == NetworkType.Credit || networkType == NetworkType.Debit || networkType == NetworkType.Gift))
                .WithMessage(networkType => string.Format(ValidationMessages.InvalidNetworkTypeMessage, networkType));

            // Check that transaction amount is valid money and greater than 0
            this.RuleFor(r => r.TotalAmount).MustBeValidMoney(TotalAmountName);
            this.RuleFor(r => r.TotalAmount.Amount).GreaterThan(decimal.Zero).WithName(TotalAmountName);

        }

The PayService class looks like:
public class PayService : TransactionServiceBase, IPayService
    {

        private IValidator<SaleRequestData> _saleValidator;
        private IValidator<CardData> _cardDataValidator;
        private ISmartPaymentsService _smartPaymentsService;
        private static ILog _logger = LogManager.GetLogger(typeof(PayService));
          public PayService(IValidator<SaleRequestData> validator, IValidator<CardData> cardData, ISmartPaymentsService smartPaymentsService)
        {
            _saleValidator = validator;
            _cardDataValidator = cardData;
            _smartPaymentsService = smartPaymentsService;
        }

        public GatewayResponse Sale(MerchantAccount merchantAccountData,
                                    SaleRequestData requestData,
                                    CardData cardData,
                                    Order orderData,
                                    string extraData)
        {
              GatewayResponse gatewayResponse = null;
                 // Some code
                 //Validate SaleRequestData
                _saleValidator.ValidateAndThrow(requestData);

                // Some code
            }
            catch (ValidationException validationEx)
            {
                // Log validation error
                _logger.Error(validationEx);
                throw;
            }

            return gatewayResponse;
        }

What am I missing here?

ValidateAndThrow is an extension method - you can't mock extension methods.

Thanks for quick turnaround Jeremy. So, I changed my code to mock the Validate method called by ValidateAndThrow and I still get the same error.
var validatorMock = Substitute.For<IValidator<SaleRequestData>>();
            ValidationResult result = new ValidationResult(new List<ValidationFailure>()
                                                               {
                                                                   new ValidationFailure("TotalAmount",
                                                                       "Total Amount was invalid.")
                                                               });

            validatorMock.Validate(_saleRequestData).Returns(result);

            _payService = new PayService(validatorMock, _cardDataValidatorMock, _smartPaymentsServiceMock);

            _payService.Sale(_merchantAccountData, _saleRequestData, _cardData, _order, null);
        }

My code does work, if I change the call from ValidateAndThrow to Validate. Does this mean there is no way no mock the call to ValidateAndThrow?

You're not mocking the right overload of Validate.

The overload of Validate called by ValidateAndThrow is the one that takes a ValidationContext[T]. See here: https://github.com/JeremySkinner/FluentValidation/blob/master/src/FluentValidation/DefaultValidatorExtensions.cs#L872

Ah yes, sorry missed that simple thing. It all works now.
 var validatorMock = Substitute.For<IValidator<SaleRequestData>>();
            ValidationResult result = new ValidationResult(new List<ValidationFailure>()
                                                               {
                                                                   new ValidationFailure("TotalAmount",
                                                                       "Total Amount was invalid.")
                                                               });

            validatorMock.Validate(Arg.Any<ValidationContext>()).Returns(result);

            _payService = new PayService(validatorMock, _cardDataValidatorMock, _smartPaymentsServiceMock);

            _payService.Sale(_merchantAccountData, _saleRequestData, _cardData, _order, null);

Thanks again for your help on this.


Update required checks for pulp collection and SKC

Add JohnGarbutt to Azimuth team
Update required checks for ansible-collection-pulp
Update required checks for SKC zed+ branches

Terraform Format and Style 🖌success
Terraform Initialization ⚙success
Terraform Validation 🤖success
Validation Output

Success! The configuration is valid.

Terraform Plan 📖success
Show Plan

undefined

Pusher: @markgoddard, Action: pull_request, Working Directory: ``, Workflow: Terraform GitHub


Fix a bug where the program process is not closed

When the ISO plugin is used to get a game code for example, it avoid the main program process to be closed. This must be analyzed and fixed.

The problem was the spdlog logger. Looks like is not correctly closed into a DLL library. Maybe a way to create an object and delete it when closed.


⚠ Bofrost.fr has degraded performance

In 4b9251a, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 993 ms

Resolved: Bofrost.fr performance has improved in 736617d after 34 minutes.


1.19.3?

Do you plan on updating the mod, and if it already works would you be able to mark it on modrinth/curseforge?

Yes please, what he said ^

The current version tooltiptweaks-1.1.0.jar works fine for me with 1.19.3 so yeh, just needs submitting/enabling in CurseForge.


Consider adding ref property overloads in structs for those who have a crippling fear of unsafe

I beg you use in/out over ref

For properties this isn't an option

I'm sorry, but if properties in the title refer to the language construct, what is the current way? Are pointer properties the current way of doing this? (I've never seed a C# property in Silk so far)

For example:
public struct InstanceCreateInfo
{
    public ApplicationInfo* PApplicationInfo;
    public ref ApplicationInfo => ...
}

However, now that I think about it, it may be better to generate alternative structs using this ref technique like ImGui.NET does instead of this.

I'd argue both should be a property with a shared underlying field, also, then a ref property seems very reasonable, my apologies

I'm pretty sure there's no good way to do this until dotnet/csharplang#1147 is in. Could compromise for Span overloads instead?
cc @JakenVeina

We could store a pointer and convert to a ref?

Ref properties can't have setters.

https://docs.microsoft.com/de-de/dotnet/api/system.runtime.compilerservices.unsafe.asref?view=netcore-3.1#System_Runtime_CompilerServices_Unsafe_AsRef__1_System_Void__

The problem isn't that we can't convert pointers to refs, it's that the property overloads will only work one-way. For example, you won't be able to:
applicationInfo.PNextRef = ref _nextThing;

Because the C# language forbids ref properties having setters. However, this would work:
ref applicationInfo.PNextRef

But if you haven't assigned the pointer value already, this property would return Unsafe.NullRef

Methods, maybe?

Could do methods, yeah.

Oh wait no because there's no guarantee that the ref will be valid without it being within a fixed block. Unsafe.AsPointer isn't safe here.

To me, the concept of "unsafe" in this context means having to build the struct tree that the native APIs call for, because it has to be done via pointers. A "safe" mechanism should be doing this work for you, not just exposing the same work to be done, but without pointers.
E.G. if an outer struct requires a field that points to an inner struct, the outer struct should allocate both, and handle the pointer logic for connecting them together, and simply expose a ref of the inner struct, for the caller to manipulate. I suppose this would probably necessitate that this logic is done in a wrapper struct that manages BOTH different native structs.
I know most of the APIs are actually auto-generated, here, so I don't know how feasible this idea is. If there's an upcoming language mechanism that would solve this problem, you're free to wait for that as well. But to me, that' the kinda "safe" solution that I'd go for.

I can do just about anything with the generated APIs, so if you could propose what your idea would be in terms of the existing files (perhaps reuse the ApplicationInfo.gen.cs example) then that'd be great, I'm a lot better at reading code than I am English.

I would 100% agree with what @JakenVeina said.  Currently we are just looking into adding some save-ish overloads, but we could be looking into doing more then that.
Can ref properties have init things? That would somewhat solve the problem too.

Ref properties, unfortunately, are strictly get-only. If either of you have ideas please let me know as I'm really struggling to picture what Jake said in terms of code.

If I understand what he said correctly, this would mean a fully save wrapper. Ie, the constructor initializes all resources, handles updates, handle lifetime of underlying native resources, etc. etc.
With some performance loss we could probaby generate this too, but it would be a good amount of work.

If I had code I could probably fairly easily generate it, but I don't even know what the safe wrapper would look like atm.

Consider a current struct like:
public struct SomeNativeResource
{
    public byte* PApplicationName; // string
    public byte* PWindowTitle; // string
}

a new type like
public struct SomeNativeStructButManaged : IDisposable // idk maybe indicated by a namespace?
{
    public string ApplicationName { get { ... } set { ... } }
    public string WindowTitle { get { ... } set { ... } }

    public SomeNativeStructButManaged(string applicationName, string windowTitle) { ... allocate native strings and assign to some backing field

    public void Dispose() // dispose pattern, but I can't be bothered to type that out in the web browser...
    {
        ... dispose of backing native resources ...
    }
}

I mean that doesn't solve the ref problem, but I think that's what @JakenVeina ment? Am I correct here?
This would of course also work for other native resources. A difficult task. yeah...

Yeah. It's really just the ref problem I have no idea how to solve, but yeah that looks like something that I could do fairly easily (would require SilkTouch work, though)

I do think that's mostly a thing SilkTouch would handle? (with some BuildTools attribute backing)
Would move this into 3.0 if we choose this route.
A span compromise would be nice imo :)

For something like that, I don't see that needing to be disposable.
Lemme see if I can re-create a concrete example...
Right now Silk.NET has...
public struct InstanceCreateInfo
{
        public StructureType SType;
        public void* PNext;
        public uint Flags;
        public ApplicationInfo* PApplicationInfo;
        public uint EnabledLayerCount;
        public byte** PpEnabledLayerNames;
        public uint EnabledExtensionCount;
        public byte** PpEnabledExtensionNames;
}

public struct ApplicationInfo
    {
        public StructureType SType;
        public void* PNext;
        public byte* PApplicationName;
        public uint ApplicationVersion;
        public byte* PEngineName;
        public uint EngineVersion;
        public uint ApiVersion;
    }

A "safe wrapper" for this, in my mind (ignoring the strings and extension pointers), would look something like.....
public ref struct SafeInstanceCreateInfo
{
    public uint Flags
    {
        get => _instanceCreateInfo.Flags;
        set => _instanceCreateInfo.Flags = value;
    }

    public uint EnabledLayerCount
    {
        get => _instanceCreateInfo.EnabledLayerCount;
        set => _instanceCreateInfo.EnabledLayerCount = value;
    }

    public uint EnabledExtensionCount
    {
        get => _instanceCreateInfo.EnabledExtensionCount;
        set => _instanceCreateInfo.EnabledExtensionCount = value;
    }

    public SafeApplicationInfo ApplicationInfo
        => _applicationInfo;

    internal InstanceCreateInfo _instanceCreateInfo;
    internal SafeApplicationInfo _applicationInfo;
}

public ref struct SafeApplicationInfo
{
    public uint ApplicationVersion
    {
        get => _applicationInfo.ApplicationVersion;
        set => _applicationInfo.ApplicationVersion = value;
    }

    public uint EngineVersion
    {
        get => _applicationInfo.EngineVersion;
        set => _applicationInfo.EngineVersion = value;
    }

    public uint ApiVersion
    {
        get => _applicationInfo.ApiVersion;
        set => _applicationInfo.ApiVersion = value;
    }

    internal ApplicationInfo _applicationInfo;
}

I'm sure I've screwed up some of the technicals here, but that'd be the general idea.
Then, the CreateInstance() API method would accept a ref parameter of this struct, do a few quick finalization operations on the structs (which are already fully allocated) and pass them off to the native calls, as such...
safeCreateInstanceInfo._createInstanceInfo.SType = ...;
safeCreateInstanceInfo._createInstanceInfo.PApplicationInfo = &safeCreateInstanceInfo.ApplicationInfo._applicationInfo;
safeCreateInstanceInfo.ApplicationInfo._applicationInfo.SType = ...;

The currently approved model was making my cry so we need to take a step back and re-evaluate it. What I'm thinking is:

a Ptr<T> type so those really afraid of pointers can pretend they don't exist
similar to functions, we add property overloads with the S suffix with spans, strings, string arrays, and IntPtrs.

We should consider overloading existing ctors similar to how we overload methods already.

Provisionally moving this into 3.0.


make serve does not use new compiled module

when we run make serve, it uses docs/spin.toml, which points to the bartholomew.wasm under docs/modules/bartholomew.wasm
we should probably have it use target/wasm32-wasi/release/bartholomew.wasm

Agreed.
We can perhaps have the one of the make targets copy the binary in the right place?


Compound Interest rate issue

https://subgraphs.messari.io/graphs?subgraph=https://api.thegraph.com/subgraphs/name/messari/compound-ethereum

is this fixed? Seems like it is graphing supply and borrow rates on the same line... Doesn't seem to be a problem in the latest dashboard version

I take that back. now i see, it looks like the snapshots are actually storing a pointer to the InterestRate so they all have the current rates.. Will look at this more tomo

Also seems to be an issue with the compound-forks

is this fixed? Seems like it is graphing supply and borrow rates on the same line... Doesn't seem to be a problem in the latest dashboard version

This has been fixed

I take that back. now i see, it looks like the snapshots are actually storing a pointer to the InterestRate so they all have the current rates.. Will look at this more tomo

This is still an outstanding issue. It'll be great if you could look into it!

I see two options:
1- A new InterestRate entity is created for each MarketDailySnapshot / MarketHourlySnapshot
2- We fix on the data query side using https://thegraph.com/docs/en/developer/graphql-api/#time-travel-queries and a query similar to something like this:


Storing garth session in ./garmin_session causes problems when syncing multiple users

Commit 64d8ec1b31 introduced storing the garth session in the directory ./garmin_session which in principle is a nice addition. But sadly this causes problems in my setup. I'm syncing the measurements of all family members from Withings to Garmin by repeatedly calling withings-sync with changed environment variables WITHINGS_USER, GARMIN_USERNAME and GARMIN_PASSWORD.
By introducing the session saving all Withings data is pushed to the Garmin account that had the first successful login.
It would be nice if the session information is stored in the already existing json file specified with WITHINGS_USER using the dumps and loads functions of garth. Alternatively an extra environment variable and/or an argument could be introduced to specify the location of the session data.
FYI @jrast @matin

This:
garth.client.post('connect', '/upload-service/upload/.fit', files=files, api=True, headers={'di-backend': 'connectapi.garmin.com'})

Should be:
garth.client.post('connectapi', '/upload-service/upload/.fit', files=files, api=True)

Better yet, you can do:
garth.upload(fp)

Doh... Did not consider this...

Hi @embear thanks for raising this.
I also didn't consider that.
@jrast can you take this?

I need to take a look on how multiple users are handled for withings and come up with a nice solution.

Would it be acceptable to add an additional parameter / env-variable GARMIN_SESSION, which is used to set the directory in which the session data is stored?

So the workflow for multiple users would look something like this:

Initial login / sync for each account: The GARMIN_USERNAME, GARMIN_PASSWORD and GARMIN_SESSION variables / arguments must be provided
Later sync operations: Only the GARMIN_SESSION is required, the username and password are optional and only used if re-authentication is required.

How about storing it as ex. /root/{username}.session ?

What about the withings user info? do we need to describe which user matches with which login?
From this point I would suggest using a /root/.withings-sync/{user}/... approach

I created a quick draft for multiple garmin users, where the session storage location can be set by the GARMIN_SESSION environment variable.
Regarding multi-user support in general: In your approach the {user} in /root/.withings-sync/{user}/... seems to be handled by withings-sync. I don't know if this is the right approach. But placing all session information (withings & garmin) in a single folder sounds like a good idea. So a directory .withings-sync, defaulting to ~/.withings-sync and configurable by the environment variable WITHINGS_SYNC_SESSION (for example), would allready allow a clean multi-user experience.

I like the idea of having multi-user support by using different directories. Nowadays a lot of applications are using the XDG Base Directory Specification. So possibly $XDG_CONFIG_HOME/withings-sync/{user}/... (which defaults to $HOME/.config/withings-sync/{user}/...) would be a better location.
For {user} I don't understand what this would be. Is this the userid currently given in withings_user.json or will this be some additional parameter/environment variable that specifies a more useful name like "alice" or "bob"?

For {user} I don't understand what this would be. Is this the userid currently given in withings_user.json or will this be some additional parameter/environment variable that specifies a more useful name like "alice" or "bob"?

That's also my point with this naming schema. Is it the withings user id? Or the garmin / trainerroad id? Or is it something entierly different?
Otherwise I like the idea of the XDG directory.

TL;DR
With configurable directory, we would have an easy and simple approach to solve this issue.
Sorry for the long text, but I try to merge all the inputs. I really appreciate the efforts all you guys put in.
IMHO
We are mixing up two things, which are both achieving the same outcome (capability multi-user):

Configuration of withings-sync: the support of multiuser and where to store the settings for a single user in this case
Configuration of the config path: the option to configure and store the configuration other than in root

This is clearly because we can solve this issues with the one or other way.
Here is what i find looking into the /root/.withings_user.json file:
{
    "access_token": string,
    "authentification_code": string,
    "last_sync": int,
    "refresh_token": string,
    "userid": int
}

This userid is in my opinion the userid of withings.
Withings is the source of information and garmin and trainerroad are targets
We have this session created at the first run and then can ignore it when invoking withings-sync with garmin credentials.
Therefore, I see the only valid user the withings user, as it is the identifier of the source.

I like the approach of having everything configurable and flexibel.

@embear

I like the idea of having multi-user support by using different directories. Nowadays a lot of applications are using the XDG Base Directory Specification. So possibly $XDG_CONFIG_HOME/withings-sync/{user}/... (which defaults to $HOME/.config/withings-sync/{user}/...) would be a better location. For {user} I don't understand what this would be. Is this the userid currently given in withings_user.json or will this be some additional parameter/environment variable that specifies a more useful name like "alice" or "bob"?

@jrast

For {user} I don't understand what this would be. Is this the userid currently given in withings_user.json or will this be some additional parameter/environment variable that specifies a more useful name like "alice" or "bob"?

That's also my point with this naming schema. Is it the withings user id? Or the garmin / trainerroad id? Or is it something entierly different?
Otherwise I like the idea of the XDG directory.

As mentioned before, in my opinion the user should be the withings user. BUT if I want to sync for example only on user, it would mean we need the opportunity to have the knowledge wich user id we have to call.
Would $XDG_STATE_HOME be a better match, because we save state information (sessions).

My conclusion:

feature: Support multi user by using the XDG approach: introducing a configurable directory holding configuration
1.1 Backward compatibility: default will still be /root/
1.2 decide: $XDG_CONFIG_HOME vs  $XDG_STATE_HOME (I found this)
1.3 decide: if $XDG_STATE_HOME is used, should there be a $XDG_CONFIG_HOME to put the .env
how to determine how to define a {user} if needed
2.1 proposal: if a user identifier is needed we use the withings identifier

@embear @jrast @stynoo what do you think?

My conclusion:

feature: Support multi user by using the XDG approach: introducing a configurable directory holding configuration
1.1 Backward compatibility: default will still be /root/
1.2 decide: $XDG_CONFIG_HOME vs  $XDG_STATE_HOME (I found this)
1.3 decide: if $XDG_STATE_HOME is used, should there be a $XDG_CONFIG_HOME to put the .env
how to determine how to define a {user} if needed
2.1 proposal: if a user identifier is needed we use the withings identifier

@embear @jrast @stynoo what do you think?

I missed $XDG_STATE_HOME and I think this is a better match than $XDG_CONFIG_HOME. Also using /root/ as default for backward compatibility is good. It is not necessary to break backwards compatibility here.
For the definition of {user} have a different opinion. While it is true that the Withings userid might be a unique anchor point I'm not totally sure about this. There might be users, that would like to sync one Withings user to multiple Garmin or trainer road accounts. Not my use case but possibly useful for someone else.
Furthermore, although the userid is unique, it is difficult to identify which user is really behind it. I would prefer to use a descriptive {user}. As mentioned in the first description I currently use different values to WITHINGS_USER that point for example to withings_alice.json or withings_bob.json. This way it is easy to identify the configuration for a specific user, modify/delete the configuration and do an re-authentication on the Withings connection if something goes wrong.

I don't understand why you are all talking about keeping /root as a default. I think the only case where /root is actually used is in Docker Files where the USER seems to be root (which is bad practice by the way). Currently the location is always derived from the HOME variable.

How about storing it as ex. /root/{username}.session ?

It was an example, as this is (currently) the way the docker image is set up.  Imho the default should still be ~
As we support pip installs or direct git clones cross os path compatibility is an issue.  Platformdirs or python's own pathlib should idd solve this.  Additional dependencies should not be an issue.

From my point of view this issue can be closed. The introduced GARMIN_SESSION environment variable enables me to switch the session for the individual family members.
BTW: I'm so glad that the session is reused. I was forced to enabled 2FA because of ECG in my Garmin account. With 2FA each sync would require to provide a security code as part of the log in procedure.


Generate messages in downstream builds

🎉 New feature
Expose message generation functionality to downstream packages and remove message generation from the msgs package.
Summary
Background
Up until now, we have:

Distributed proto files - each describing a gz-msgs message
Generated .cc and .hh files in the gz-msgs package
The cc and hh files are compiled into a gz-msgs library that is also distributed in the binary package.

The issue with this approach is that it means that each change to a proto message will cause the ABI to break, which is inconvenient.  We have multiple issues addressing this in

https://github.com/gazebosim/gz-msgs/issues/113
https://github.com/gazebosim/gz-msgs/issues/45
https://github.com/gazebosim/gz-msgs/issues/36

New Approach
This new approach will now distribute the proto files, but will no longer distribute a binary library that downstream users will link against.  Instead, downstream users can generate the messages that they need themselves or add new message definitions in their own packages.
A summary of the changes required to make this happen:

Expose the mechanisms we use for message generation

This requires installing the protoc generator as well as our python script.
Add cmake functionality to let downstream users discover available messages and retrieve the installation path of the generator and python script (handled via cmake extras)

Create a core library that has the gz-msgs functionality minus the generated code.
Create a compiled library that maintains the CLI functionality.
Make conversions a header-only operation, so that the core library doesn't need to depend on the generated messages.

Downstream changes required:

gz-fuel-tools https://github.com/gazebosim/gz-fuel-tools/pull/354
gz-gui: https://github.com/gazebosim/gz-gui/pull/541
gz-sim: https://github.com/gazebosim/gz-sim/pull/2000
gz-sensors: https://github.com/gazebosim/gz-sensors/pull/349
gz-launch: https://github.com/gazebosim/gz-launch/pull/219

Checklist

[x] Signed all commits for DCO
[x] Added tests
[ ] Added example and/or tutorial
[x] Updated documentation (as needed)
[ ] Updated migration guide (as needed)

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

Just checking, we can't compile the whole harmonic yet with only this PR, right?

@osrf-jenkins retest this please

I'm compiling Harmonic with the understanding that it won't successfully compile all libraries. After running colcon I see generated .pb.h files under ./build/gz-msgs10/gz_msgs_gen/gz/msgs. Is that expected?

Yes, this is correct.  They are being generated to run the tests.

@caguero I have opened PRs for all downstream libraries and added examples/READMEs.

Still one more dll symbol visibility issue here on Windows.  Taking a look.

Still one more dll symbol visibility issue here on Windows. Taking a look.

Maybe not in this PR, but might be a good time to turn visibility off using HIDE_SYMBOLS_BY_DEFAULT (https://github.com/gazebosim/gz-cmake/blob/8a2a10d8b4a3957f67a1f2fa68f0e080a1e6b401/cmake/GzConfigureBuild.cmake#L32). This would make Linux and Windows behave a little more alike.

@osrf-jenkins retest this please

Okay, all feedback addressed and rebased to get DCO happy.  I think we are good here, and then a prerelease?


[HOLD for payment 2024-06-13] [Xero] [QBO] Inconsistencies with Add and Delete actions after disconnecting Xero or QBO

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number:
Reproducible in staging?: Y
Reproducible in production?:
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by:@trjexpensify
Slack conversation: https://expensify.slack.com/archives/C036QM0SLJK/p1716500227496579?thread_ts=1716238514.357639&cid=C036QM0SLJK
Action Performed:

Create a workspace
Connect to Xero
Enable Taxes
Sync the integration
Verify Categories, Tags and Taxes are enabled and there are menu items for each in the LHN of the workspace settings
Click into each of Categories, Tags and Taxes pages
Verify you can't Add or Delete a value manually
Disconnect from Xero
Click into each of Categories, Tags and Taxes pages
Observe the inconsistencies detailed in the "Actual results" section below
Repeat the steps above but this time for QBO
Refresh & sign-in/sign-out to verify there's no change and the bug is still present

Note: I've been using the latest Xero feature branch to test.
Expected Result:
After disconnecting from QBO or Xero you should be able to manually add or delete categories, tags and taxes.
Actual Result:
After disconnecting from Xero and QBO:
Xero
Can’t add categories (❌), but can delete them (✅).
Can’t add or delete tax rates (❌).
Can add or delete tags (✅).
QBO
Can’t add categories (❌), but can delete them (✅).
Can’t add or delete tax rates (❌).
Can add or delete tags (✅).
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
None
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
https://github.com/Expensify/App/assets/16232057/c33fb449-6129-49d1-9d31-78f737a93481
View all open jobs on GitHub
Issue OwnerCurrent Issue Owner: @trjExpensify

Offer for $250 has been sent in Upwork.

Paid!


[FR]: Add renamed symbols to the release snippets

What is the current behavior?
Today when you import any of the Aspect rules they usually have a LATEST_VERSION value:
load("@aspect_rules_ts//ts:repositories.bzl", "rules_ts_dependencies", "LATEST_VERSION")

Describe the feature
Super minor, but when you have multiple rules on the go you end up renaming LATEST_VERSION to something like TS_LATEST_VERSION in the WORKSPACE to avoid clashes with other LATEST_VERSIONs, i.e.,
load("@aspect_rules_ts//ts:repositories.bzl", "rules_ts_dependencies", TS_LATEST_VERSION = "LATEST_VERSION")

I wondered whether it would be worth either updating the snippet that folks copy-paste, or renaming LATEST_VERSION to be rules-specific.
Fund our work

[ ] Sponsor our open source work by donating a feature bounty

Thanks for the suggestion @paullewis. I think its a good idea to reduce friction.


Finalize sql support

provide docs
verify that sql migration in fact works as expected (see discussion https://github.com/salsita/node-pg-migrate/pull/530#issuecomment-564651446)

Also - do we actually need to support this?

I also don't directly know why we should support this.
TypeScript has already type support for various helpers from us.
And if someone just want plain SQL migrations, I think there are other tools that could do that.
So we could declare it as out of scope and add an alternative tool to the docs :thinking:

I think we could refactor the project to work with pluggable providers. A provider interface will provide an array of migrations. How this provider gets those migrations is up to the implementation.
This would allow:

Load migrations from .ts files from a dir
Load migrations from .sql files from a dir
Manually supply an array of migration instances (we have this use case; see: #651)

Further, decoupling each provider into a separate package. Right now, because this main package uses dynamic requires, some tools like esbuild and other bundlers complain about it.

@node-pg-migrate/runner
@node-pg-migrate/provider-ts
@node-pg-migrate/provider-sql

And node-pg-migrate simply combines @node-pg-migrate/runner with default provider @node-pg-migrate/provider-ts.

@moltar What would be the benefit of that?

What would be the benefit of that?

Of which part of my proposal?

refactor the project to work with pluggable providers

Benefits:

End users are able to implement their own providers, e.g. *.sql, if the core does not want to support it
Decouples runner from the obtainment of migrations, which helps with the dynamic require issue, describe above

Also - do we actually need to support this?

I would very much like to see it supported, because:

Even if the focus is on typescript some use cases are easier to handle in pure SQL files (see https://github.com/salsita/node-pg-migrate/issues/275#issuecomment-400278921)
The alternatives AFAIK don't match the feature set, documentation & popularity of this project

The main use case (and why it was originally supported) is to handle an initial schema dump as your first migration. This is super useful if you're migrating an existing project over to this tool. Additionally there are definitely awkward advanced use cases where it may just be a lot cleaner to use pure sql.
Even if you're not moving an existing project over, it can be very useful to start a project without using migrations. For example my usual workflow for new projects is to use sequelize's "sync" features to automatically sync the db schema to my models until the code is somewhat stable and I'm deploying to prod for the first time. At that point, the extra overhead of writing migrations rather than just wiping the db and resyncing becomes worth it. I do a sql schema-only dump as my first migration, and then I'm good to go.

I found this libraly for this purpose. I desired SQL file style migration tool on npm package like migr8 on Ruby,
Other node migration tools gives ORM style or run SQL on node code.
It is usefull too but some developer required to use as SQL. SQL can be written by pure DB developer and able to use about dumped file or other SQL generator tools output file.
Specially, some project does not allow use ORM on prj rule for some reasons. SQL file is able to continue using even if tool support is finished.
Some web topics/stackoverflow said this lib can use migration-file-language=sql option but document dose not have...
Almost simple DB-migration tools used Java or Ruby. I think because API server was written by Java or Ruby.
Today many user will use DB with api-framework by node. I think other developer wished simple sql node migration tool too.

hello, just FYI the "hidden feature" of raw sql migrations is the reason why I use node-pg-migrate :) more info in https://github.com/salsita/node-pg-migrate/discussions/937

3 years passed... and I understand today why plain SQL migrations are helpful
especially https://github.com/salsita/node-pg-migrate/issues/786#issuecomment-1140482660

handle an initial schema dump as your first migration

However, I (@Shinigami92) would like to take my focus currently into other features and bug fixes, so THIS issue is open for help-wanted! And I can do reviews.


SVN implementation

Is it possible to integrate the use of this extension also in SUBVERSION repositories?
Now i use "SVN" and "SVN Gutter" extensions but GitLens seems to be more powerful.

Not currently -- GitLens uses git directly to provide its feature set. In theory it could be possible to provide a different implementation of that but it would be a non-trivial amount of work (if it even could be adapted properly).


If the dialog open when pressing on back Android the dialog should be closed

If the dialog open when pressing on back Android the dialog should be closed instead of returning back from the page, how to achieve this?

@Jaafar-abusair
I think the logic could be implement by yourself.


JWT set up. POST/users and GET/user are working properly. To be teste…

…d: POST/users/login AND PUT/user.

Need to test POST/users/login and PUT/user before merging.


TimeoutError: Server did not start in 10 seconds

Hi,
I am trying to read the rst file with following commands:
from ansys.dpf import core as dpf
my_data_sources= dpf.DataSources()
my_data_sources.set_result_file_path("C:/Users/amd8kor/Desktop/ANSYS_DPF/WS031_file.rst")
I have installed the pip packages but not able to read the rst file as I am getting the following error :
File "C:\Users\amd8kor.conda\envs\py37\lib\site-packages\ansys\dpf\core\server.py", line 538, in launch_dpf
raise TimeoutError(f"Server did not start in {timeout} seconds")
TimeoutError: Server did not start in 10 seconds
I even tried to connect to dpf server with following command but I am getting the same error:

from ansys.dpf import core as dpf
dpf.connect_to_server(ip='<IP_ADDRESS>', port=50054)

Is there a work around for this problem? Thanks in advance
Regards,
Akshay

hi @settyakshay , please could you tell me what is the version of pyDPF that you are using (pip show ansys.dpf.core) and what is the version of the Ansys workbench that you installed?
Thanks
Ramdane

Hi..
Name: ansys-dpf-core
Version: 0.3.4
I have v2021R1 ANSYS installed. Thanks

@settyakshay is this possible for you to upgrade to v2021R2?

@rlagha I can but it might take sometime to download and install. I will do it in parallel. Is there any other work around to get this running for v2021R1?

then you will need to install previous version of ansys.dpf.core but I'd recommend you to install 2021R2

@rlagha I installed ANSYSv2021R2 and the issue is resolved. Thanks

Great thanks for the update @settyakshay.
Ramdane


remove deep_dup usage in tests, use helper methods instead

Coming from https://github.com/igrigorik/http-2/pull/116#issuecomment-362048852
The deep_dup method (the same as in ActiveSupport) shows some edge cases where it's mutating the hashes used in the tests. Whether this is a ruby bug or not is not the matter, but this could be fixed by relying on helper methods instead, which could be injected in the describe blocks where they are used.

I don't know the full context of this issue, but rather than using dup, why not just have separate specs?

I found a weird edge case when doing the mentioned PR, where an error would arise depending of the test order of interpretation, which was non-trivial. The main culprit was that all tests were using a deep_dup copy of those frame hashes, and these weren't really deep-dup'ed (because ruby :) ).
Long story short, one should be using fresh hashes for each test instead of relying on deep_dup quirks. And helper methods should be the way to go.

To be honest, the structure of this gem and the specs leaves a lot to be desired, I hope I can spend some time on improving it slowly with small steps.

As I'm sure you already are, I welcome you to improve the specs, as I have been doing recently.


PhoneGap Build Issue

I'm using Adobe's PhoneGap build service and getting the following error:
The following build commands failed:
CompileC build/PCNSelect.build/Release-iphoneos/PCNSelect.build/Objects-normal/armv7/AppVersion.o PCNSelect/Plugins/uk.co.whiteoctober.cordova.appversion/AppVersion.m normal armv7 objective-c com.apple.compilers.llvm.clang.1_0.compiler
This is referenced in my config.xml file as:
gap:plugin name="com.hutchind.cordova.plugins.streamingmedia"
I guess it looking by default at the old version in source="pgb"
Is it possible for someone to bundle it correctly and add it to npm, where all the other Cordova plugins have migrated to?

Ignore me!


Transifex issue

We got reports that several translations (e.g. Belarusian) are done and approved in Transifex, but aren't pulled into website. Can you check? Thanks

Can you check now? I just ran the updates. Please reopen this if its not working :)


what font library to use and where from

i dont know any font library can you add here the library you are using .
Thank you


Question: UI for list of events of the day

Hello,
currently calendar marks days where we have events with a red dot, but doesn't show any details of these events (screenshot is attached). So it's necessary to develop a separate ListView or whatever to let user see all cool events of the day.
Do you have in plans any default implementation of such list?
Many thanks in advance!

Hi @Rodionbar ,
There is already a list of events. It's just disabled by default.
Enable/Disable the visibility of the Events scrollview panel at the bottom Sample properties:
EventsScrollViewVisible="True"

Hi @Rodionbar ,
Would you be kind enough to tell us if @yurkinh's answer helped you?

Hi,
yes, it helped, and there are no more questions for now. The only suggestion is maybe to set EventsScrollViewVisible = "True" by default.

Hi @Rodionbar
Initially, it was set to "true" but somebody has asked how to disable it? And can we set it to "false" by default))
To avoid confusion and just to get plain calendar I have disabled it ))


Cannot wake up metamask when sending a transaction

Is there an existing issue for this?

[X] I have searched the existing issues

RainbowKit Version
"@rainbow-me/rainbowkit": "^0.2.2",
wagmi Version
"wagmi": "^0.4.5",

Current Behavior
After sending the transaction, I have to manually open metamask
Expected Behavior
After sending a transaction, Metamask opens automatically
Steps To Reproduce
https://rainbowkit-example-qjw5zn6d2-rainbowdotme.vercel.app/
safari mobilde open the website
connect with Metamsk
send transaction action
After sending the transaction, I have to manually open metamask
Link to Minimal Reproducible Example (CodeSandbox, StackBlitz, etc.)
No response
Anything else?
https://rainbowkit-example-qjw5zn6d2-rainbowdotme.vercel.app/

https://github.com/tmm/wagmi/issues/558
tmm : If you use WalletConnectConnector with qrcode: true, deeplinking works as expected.

it works？

tmm/wagmi#558 tmm : If you use WalletConnectConnector with qrcode: true, deeplinking works as expected.  it works？

https://github.com/rainbow-me/rainbowkit/blob/main/packages/rainbowkit/src/wallets/walletConnectors/metaMask/metaMask.ts

This should be fixed in RainbowKit >= 0.2.4.


feat: implement "+" register

Closes #35, #29.

This will not work correctly inside macros, or other places where several commands are chained, but implementation handling that will be too complex or will have t change too much code, so i think your solution is good enough for now.
Thank you!


feat: replay all regions in a batched manner

I hereby agree to the terms of the GreptimeDB CLA.
Refer to a related PR or issue link (optional)
What's changed and what's your intention?
When using Kafka WAL, the read amplification of region replay can become exceedingly high as multiple regions are assigned to a topic, requiring numerous WAL entries to be pulled repeatedly. This PR aims to remove the read amplification by performing region replay in a batched manner.
Specifically, each RegionOpenRequest now includes an optional WalReader field. This field serves as a mutable reference to the WalReader instance. If the WalReader is Some, region replay is bypassed, and essential information for replaying the region is stored within the WalReader.
Once the region server completes handling all RegionOpenRequests, the WalReader contains the necessary information for replaying all regions. This information enables replaying all regions in a batched manner without introducing any read amplification.
On the other hand, to support replaying regions by topic rather than by region, we have added the group_by_namespace interface to the LogStore. This interface will perform a group by operation on the input namespaces according to certain rules. For Kafka WAL, this interface will group namespaces by topic.
Once we obtain the streamlined namespaces, we then fetch logs from multiple namespaces, aka. topics,  in parallel. We parse data from each log, then insert it into a RegionPutRequest, which is then processed by the region server. Considering that replayed data should not be written to the WAL again, we have added an Option to the RegionPutRequest. If it is Some, it indicates that this is replayed data. If it is None, it indicates that this is newly written data.
This PR is still in its draft version. I will add necessary tests and refine the codes.
Checklist

[ ]  I have written the necessary rustdoc comments.
[ ]  I have added the necessary unit tests and integration tests.
[x]  This PR does not require documentation updates.

Closed as stale and conflict. Further pick-up should redo this patch.


Fix feature option defaults when already provided

This caused an issue with a few config options when feature option support (DUK_OPT_xxx) was enabled.  For example, DUK_USE_PACKED_TVAL is provided by platform detection; if neither DUK_OPT_PACKED_TVAL nor DUK_OPT_NO_PACKED_TVAL was defined, the default clause would #undef DUK_USE_PACKED_TVAL instead of keeping the platform detected value. Workaround is to use -DDUK_OPT_PACKED_TVAL.
Affected config options:

DUK_USE_PACKED_TVAL
DUK_USE_SETJMP
DUK_USE_UNDERSCORE_SETJMP

Example issue caused by not using packed duk_tval when pointer compression enabled:

http://stackoverflow.com/questions/34884143/porting-duktape-getting-duk-create-heap-error-during-js-compilation-of-builtin/34887806?noredirect=1#comment57519918_34887806

I'll add an #error in a later pull to check for pointer compression + unpacked duk_tval.

I don't understand why losing packed tval causes a bug--isn't the packing just an optimization?

It is "just" an optimization, but critical for low memory targets.

Also pointer compression without packed duk_tval is not currently supported, but there's no #error sanity check so it leads to difficult to diagnose issues.

Yeah, I knew it was critical for low-memory environments, by "just an optimization" I meant I didn't expect it to cause a change in behavior.  I don't doubt the existence of the bug of course, just curious is all.

Yeah, in this case unpacked duk_tval and compressed pointers don't currently work together (it's not well documented and there's no sanity check which I think is a bug).
But there are also some small differences in behavior between packed and unpacked duk_tvals, for example the handling of NaN normalization. Internal type tags, visible through Duktape.info(), will also differ. For the most part it is intended to be fully transparent, that's true.


HCE support

Hi All,
Can anyone please suggest me a plugin which has HCE support ,found these two plugins but looks like it does not have support.
https://pub.dev/packages/flutter_nfc_kit
https://pub.dev/packages/nfc_manager

Hi @KallepalliTirumalesh,
This issue doesn't seem to describe a bug or a feature request. Please see https://flutter.dev/community for resources and places where you can ask questions like this.
You may also get some help if you post it on Stack Overflow and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you


fix: [bevy_ggrs example] add tonemapping_luts bevy feature

fixes https://github.com/johanhelsing/matchbox/issues/398
With the fix

Without the fix

Important caveat
This fix is only for WASM. The native compilation is still broken as per https://github.com/johanhelsing/matchbox/issues/417
Extra context
Seems that this was forgotten, because the dependency was added for bevy_matchbox
https://github.com/AgustinRamiroDiaz/matchbox/blob/a70b27a5291cf0427e4312c75d6529625fe3e970/bevy_matchbox/Cargo.toml#L50

Thanks. We've had quite a few similar issues... wondering if perhaps it's less of a hassle to simply depend on bevy with default-features, even if it produces huge binaries and takes a while to build. Anyway, not for this PR. /rant
Thanks for the fix!

Thanks!


Style elements within text editors using the atom-text-editor::shadow selector or the .atom-text-editor.less file extension.If you want to target overlay elements, target them directly or as descendants of atom-overlay elements.

In styles/language-babel.less: Style elements within text editors using the atom-text-editor::shadow selector or the .atom-text-editor.less file extension.
If you want to target overlay elements, target them directly or as descendants of atom-overlay elements.

Atom 1.13 has been supported for months. Just update the language-babel package.


How to use nGraph with C API ?

Namespace
Description
Location in Repo
Docs

ngraph
The Intel nGraph C++ API
ngraph
Implicit namespace omitted from most API documentation

builder
Convenience functions that create additional graph nodes to implement commonly-used recipes; for example, auto-broadcast
builder
Coming Soon

Does the table means the API in builder namespace will export all C++ APIs defined in nGraph with C API? Some ops have wrapped such as split/reshape/matmul and so on, how to use Conv op that doesn't need to be quantized?

I think it means that the docs for the builder API are coming. I don't know of plans to make a C API for ngraph. Is there a need for such an API?

No plans.


ext_authz: Add matchers to skip buffering based on request headers

Commit Message: This patch adds the skip_buffering_matchers field to BufferSettings to skip request body buffering controlled by request headers matching. A sample use-case for this is to skip request body buffering when uploading data, which content-type is multipart/form-data.
Additional description: https://github.com/envoyproxy/envoy/issues/9822#issuecomment-696785057 cc. @klarose
Risk Level: Low
Testing: Added
Docs Changes: Updated
Release Notes: Added
Signed-off-by: Dhi Aurrahman<EMAIL_ADDRESS>

/retest

How urgently is this actually needed? This is another soon to be deprecated matching config that would be subsumed by the generic matcher config that @snowp is working on (@snowp maybe we should add extauth as one of the filter to do a POC on).
See also https://github.com/envoyproxy/envoy/pull/13404 cc @yangminzhu
/wait-any

@mattklein123 It's not terribly urgent for me. If it won't be long (e.g. less than a few months) until we get a more generic matcher, I'm willing to wait for the added flexibility.

OK thanks I think we can deliver something in less than that timeframe but will defer to @snowp on that.

Sure we can wait :)

OK let's close this for now!


User.Identity.Name is allways null

how can i add authentication like windows authentication ? (both wpf client and hub.)

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

ID: c9bc1072-be2c-94f6-49bf-daa9e97dff2d
Version Independent ID: 36052173-7061-6d01-8aed-915685cd7cf6
Content: ASP.NET Core SignalR .NET Client
Content Source: aspnetcore/signalr/dotnet-client.md
Product: aspnet-core
GitHub Login: @rachelappel
Microsoft Alias: rachelap

Hi @shlomitubul! Thanks for the question. Since you are using ASP.NET Core security, you can run with any of the existing methods of authentication that you would use without SignalR in a regular ASP.NET app and WPF client. When testing, if you log in, then you should get a non null value (when following what's in the doc below). This doc covers what's needed for ASP.NET Core.
https://docs.microsoft.com/en-us/aspnet/core/?view=aspnetcore-2.1
We expect to have a similar doc, but highlighting that it works the same in SignalR soon.


update ExistingVolume import

Small change. Noticed ExistingVolume no longer exists here

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Gentle reminder to sign the contributor agreement so we can merge! 🙂

signed the CLA


(GitHub indent comments) Not work on safari

Working well on chrome, but not working on safari

Hi @xiote!
Sorry, I keep meaning to test this, but I only have Safari on my work computer. I'll try to remember to test this again.

tampermonkey is not work on macos 10.15 safari


Transcendental exp with large input

Resolves #7421, see comment there.
I was only able to test this on CLANG and CUDA by the way.

see #7507, we ended up moving transcendental to the end of the rewrite and no rewrite to its order. Thanks for root causing this and I used your test cases

Ok thank you for the feedback


When using keyboard the Datepicker autocompletes with different date

Describe the bug
If you enter an 11 or any value below 13, the date picker generates a strange date. e.g. Enter 11 the value will change to 1100-01-01.
Installed libraries and their versions

"@adminjs/design-system": "^2.0.2",
"@adminjs/express": "^4.0.0",
"@adminjs/hapi": "^4.0.1",
"@adminjs/mongoose": "^2.0.0",
"@adminjs/passwords": "^2.0.0",
"@adminjs/sequelize": "^2.0.0",
"adminjs": "^5.2.2",
"argon2": "^0.26.2",
"axios": "^0.24.0",
"bcrypt": "^5.0.1",
"dotenv": "^10.0.0",
"express": "^4.17.1",
"express-formidable": "^1.2.0",
"express-session": "^1.17.2",
"html-to-text": "^8.1.0",
"jslinq": "^1.0.22",
"moment": "^2.29.1",
"mysql2": "^2.3.2",
"nodemon": "^2.0.14",
"react": "=16.13.1",
"react-dom": "=16.13.1",
"react-image": "^4.0.3",
"react-scripts": "4.0.3",
"sequelize": "^6.8.0",
"styled-components": "^5.3.3"

To Reproduce
Steps to reproduce the behavior:

Create a Resource with a Date Field
Edit or Filter using AdminJS ]

Current implementation of datepicker doesn't really allow you to choose a date using the text input. The whole datepicker component will have to be rewritten probably. I'll move this issue to adminjs-design-system repository


docs: Added default labels to TCP resource

Closes: #277

Hi @ptx96 could you please review this PR

Thank you @geoffrey1330 !
Now we have to make some arrangements:
I need you to amend your commits and rebase to the latest version of the code;
then, I’d like to see these changes in a single commit: docs: added default label to TCP resources

Thank you @geoffrey1330 !
Now we have to make some arrangements:
I need you to amend your commits and rebase to the latest version of the code; then, I’d like to see these changes in a single commit: docs: added default label to TCP resources

Hi @ptx96 I have completed all the requested change and all changes are in a single commit.

Thank you @geoffrey1330 !
Now we have to make some arrangements:
I need you to amend your commits and rebase to the latest version of the code; then, I’d like to see these changes in a single commit: docs: added default label to TCP resources

Hi @ptx96 I have completed all the requested change and all changes are in a single commit.

Unfortunately no, you’re ahead of 10 commits

I'm currently lost at this point.
could you please give me some direction on the action to take

I'm currently lost at this point. could you please give me some direction on the action to take

Sure, it will be like this:
# Clone repo and change branch
git clone https://github.com/geoffrey1330/kamaji
git checkout issues/277

# Go back with the commits without removing changes
git reset HEAD~10

# Save changed files for later
git stash

# Update your branch to the latest code
git rebase master

# Reload changed files
git stash pop

# Fix conflict
vim config/samples/kamaji_v1alpha1_tenantcontrolplane.yaml

# Add, commit and force-push
git add config/samples/kamaji_v1alpha1_tenantcontrolplane.yaml
git commit -m "docs: added default label to TCP resources"
git push --force

Hi @ptx96 could you please review my PR.

Hi @ptx96 could you please merge the PR if everything is now ok so i can pickup another issue to work on.


Init log writer as early as possible

What does this PR do?
Refs https://github.com/hellofresh/janus/issues/385

+1


[zglfw] vulkanSupported returns false on MacOS with MoltenVK

Code
pub extern fn glfwGetInstanceProcAddress(?*vk.Instance, [*:0]const u8) vk.PfnGetInstanceProcAddr;

pub fn main() !void {
    try glfw.init();
    defer glfw.terminate();
    log.debug("{}", .{&glfwGetInstanceProcAddress});
    if (glfw.isVulkanSupported()) {
        std.debug.panic("Vulkan not supported", .{});
    }
    const window = try glfw.Window.create(600, 600, "zig-gamedev: minimal_glfw_gl", null);
    defer window.destroy();
    while (!window.shouldClose()) {
        glfw.pollEvents();
        window.swapBuffers();
    }

}

Expected behaviour
No panic
Actual behaviour
Panic
debug(render_test): fn (?*vk.Instance, [*:0]const u8) callconv(.C) *const fn (vk.Instance, [*:0]const u8) callconv(.C) ?*const fn () callconv(.C) void@1040fecbc
thread 640392 panic: Vulkan not supported
src/Render/RenderTest.zig:29:24: 0x10416227f in main (renderer)
        std.debug.panic("Vulkan not supported", .{});
                       ^

Note that the glfwGetInstanceProcAddress address is actually being resolved.
Environment

0.13.0-dev.351+64ef45eb0
MacBook Pro Apple M3 Max MacOS 14.5
VulkanSDK 1.3.283.0 (with MoltenVK)

Additional Info
Note that the equivalent code using mach-glfw does not panic:
pub extern fn glfwGetInstanceProcAddress(?*vk.Instance, [*:0]const u8) vk.PfnGetInstanceProcAddr;
pub fn main() !void {
    if (!glfw.init(.{})) {
        std.log.err("failed to initialize GLFW: {?s}", .{glfw.getErrorString()});
        std.process.exit(1);
    }
    defer glfw.terminate();
    log.debug("{}", .{&glfwGetInstanceProcAddress});
    if (!glfw.vulkanSupported()) {
        @panic("Vulkan not supported");
    }
    const window = glfw.Window.create(640, 480, "Hello, mach-glfw!", null, null, .{}) orelse {
        std.log.err("failed to create GLFW window: {?s}", .{glfw.getErrorString()});
        std.process.exit(1);
    };
    defer window.destroy();
    while (!window.shouldClose()) {
        window.swapBuffers();
        glfw.pollEvents();
    }
}

There is a difference between the two code snippets
if (glfw.isVulkanSupported()) and if (!glfw.isVulkanSupported())

I'm assuming that this was the error. Feel free to reopen if it doesn't work with that line fixed.

@hazeycode , yes, that's correct, thank you...


lang: Add SystemAccount<'info> Account Type

Implements a new SystemAccount<'info> account address type for generic addresses owned by the system program to avoid having to use UncheckedAccount.
Resolves #953

@armaniferrante do you want a new one or just modify existing ones to use the new type

A new one would be great.

e2e passing now for the new type

Note that the alternative to this would be to introduce a new SystemAccount type that can be used via Account<'info, SystemAccount>, but given that Account is usually used for deserialization, I like the new type here. Am interested in other thoughts though.


Style changes

@charleslambert98 @MadeByAydin
Need review for implemented dropdown button

breaks the sorting display

included fixed jQuery import


[Decommission Hub, meom-ige] SWOT Ocean Pangeo Team

Summary
This hub should have been decommissioned July 2022. AirTable currently lists this hub as active. Not to be confused with the DRAKKAR workshop) in Feb 2023.
References:

https://2i2c.freshdesk.com/a/tickets/1726
https://github.com/2i2c-org/infrastructure/issues/1423

Info

Community Representative: @lesommer
Link to New Hub issue: https://github.com/2i2c-org/infrastructure/issues/207 (I think it's this one – the DRAKKAR workshop hub has already been torn down)
Proposed end date: 30 June – we have not been able to get a response from the hub champion through FreshDesk (since the contract finished in Jul 2022!), so this seems like a good enough buffer time

Very likely that we cannot complete Phase I below as a result.

Task List
Phase I

[ ] Confirm with Community Representative that the hub is no longer in use and it's safe to decommission
[ ] Confirm if there is any data to migrate from the hub before decommissioning

[ ] If yes, confirm where the data should be migrated to

[ ] Confirm a 2i2c Engineer has access to the destination in order to complete the data migration

[ ] If no, confirm it is ok to delete all the data stored in the user home directories

Phase II - Hub Removal
(These steps are described in more detail in the docs at https://infrastructure.2i2c.org/hub-deployment-guide/hubs/delete-hub/)

[ ] Manage existing home directory data (migrate data from the hub or delete it)
[ ] Manage existing cloud bucket data (migrate data, or delete it)
[ ] Delete the hub's authentication application on GitHub or CILogon (note CILogon removal requires the hub config in place)
[ ] Remove the appropriate config/clusters/<cluster_name>/<hub_name>.values.yaml files. A complete list of relevant files can be found under the appropriate entry in the associated cluster.yaml file.
[ ] Remove the associated hub entry from the config/clusters/<cluster_name>/cluster.yaml file.
[ ] Remove the hub deployment

helm --namespace HUB_NAME delete HUB_NAME
kubectl delete namespace HUB_NAME
TIP: Run deployer use-cluster-credentials <cluster_name> before running the above commands

Phase III - Cluster Removal
This phase is only necessary for single hub clusters.

[ ] Remove the cluster's datasource from the central Grafana with:

deployer grafana central-ds remove <cluster_name>

[ ] Run terraform plan -destroy and terraform apply from the appropriate workspace, to destroy the cluster
[ ] Delete the terraform workspace: terraform workspace delete <NAME>
[ ] Delete the terraform values file under the projects folder associated with the relevant cloud provider (e.g. terraform/gcp/projects/ for GCP)
[ ] Remove the associated config/clusters/<cluster_name> directory and all its contents
Remove the cluster from CI:

[ ] deploy-hubs.yaml
[ ] deploy-grafana-dashboards.yaml

[ ] Remove A record from Namecheap account

If I understand correctly, we will decommission the staging and prod hub and the cluster too, right?
I have this ERROR when I try to delete homes:
ERROR: (gcloud.container.clusters.get-credentials) ResponseError: code=403, message=This API method requires billing to be enabled. Please enable billing on project #meom-ige-cnrs by visiting https://console.developers.google.com/billing/enable?project=meom-ige-cnrs then retry. If you enabled billing for this project recently, wait a few minutes for the action to propagate to our systems and retry.
[...]
CalledProcessError: Command '['gcloud', 'container', 'clusters', '--zone=us-central1-b', '--project=meom-ige-cnrs', 'get-credentials', 'meom-ige-cluster']' returned non-zero exit status
1.

When I enter the GCP console, I see this:

It's okay if I select any option? I can't run deployer use-cluster-credentials $CLUSTER_NAME either.

@AIDEA775 reading the support ticket, it seems indeed that staging / prod representing "SWOT Ocean Pangeo Team ([staging|prod])" should be deleted, and that everything should go - especially considering now that the contract ended 2022.
I think the course of action is to attach it to our billing account and then proceed to tear down as you plan, and its OK to do so.

Note that deleting home directory data can be done as part of deleting all cloud infra provisioned as everything is to go, so you can ignore that for the step of deleting things for any individual hub.

@AIDEA775 I checked the checkboxes that I perceive to be irrelevant if we also will do phase 3 that deletes everything - not just an individual hub. In "Phase 2" there is only one left about Delete the hub's authentication application on GitHub or CILogon (note CILogon removal requires the hub config in place)

Okey, now when I run deployer cilogon-client delete --client-id cilogon:/client_id/... meom-ige staging I got:
CILogon records are different than the client app stored in the configuration file. Consider updating the file.

Okey, now when I run deployer cilogon-client delete --client-id cilogon:/client_id/... meom-ige staging I got:
CILogon records are different than the client app stored in the configuration file. Consider updating the file.

I have no knowledge on this :/ i think it could be ok to proceed, we may end up with a remnant thing, but it could be acceptable i think

@AIDEA775 You could also decrypt the secrets file for the staging hub, that will contain the Client ID too. Try providing that to the command and see if that gives you a different output?

Oh! Yes! In this commit https://github.com/consideRatio/pilot-hubs/commit/ee87fc7ff8322c9a27ab6e4302d7997ddd876958 the auth was migrated to GitHubOAuthenticator without removing the CILogon client. Rolling back to the old secrets did the trick.


added pycharm .idea and .iml files to python git ignore

Reasons for making this change:
There are missing files for PyCharm IDE: .idea and *.iml.
Links to documentation supporting these rule changes:
I couldn't find docs about why I should ignore these files, but here are two links with discussion about it.
https://intellij-support.jetbrains.com/hc/en-us/community/posts/115000154070-How-to-gitignore-idea-files
https://github.com/intellij-rust/intellij-rust/issues/1570
If this is a new template:

Link to application or project’s homepage:
https://www.jetbrains.com/pycharm/

We maintain a Global/JetBrains.gitignore template here that covers everything you should need.

But maybe it's worth to add it to assume that a lot of people want to use it ? there is no harm in it.

I don't manage this project, so I don't have an opinion.Here is similar PR about Python + VSCode: https://github.com/github/gitignore/pull/3317

I think it would be good to add it also to Golang .gitignore

The problem is, once you go down that road, you would have to add it to many more files...

WebStorm -> Node.gitignore
Rider -> VisualStudio.gitignore (that is actually more a DotNet.gitignore)
CLion -> C.gitignore, C++.gitignore, and probably more languages like Rust or D
Ruby -> Ruby.gitignore
AppCode -> Swift.gitignore, Objective-C.gitignore
GoLand -> Go.gitignore
PhpStorm -> to alle the PHP related gitignores (probably CakePHP, Composer, FuelPHP and many more...)
IntelliJ -> Java.gitignore - and all the other JVM-Languages...

And why not also add VSCode, or <nextGreatIdeOrEditor> ignores to all the files - because everybody uses it these day...? Same goes for the Operating System gitignore files...
But who is going to keep all of those in sync, when the new version of the tool is released?
... As you can see, just because 'a lot of people want to use it', doesn't mean it's a good idea, to mix it all together.
This repos is modular. There are small, maintainable gitignore files for Tools, Languages, BuildSystem, Editors, IDEs, OperatingSystems and probably more. And you can combine them, to tailor a custom gitignore specific for all your Projects needs (e.g. using gitignore.io).
I really like this principle, so I will continue to vote agains all the LetsCombineAllThingsTogether-PRs, popping up from time to time - because they will make it harder for us all in the long run...

So why don't we describe this principle and link to gihub.io prominently in the README ? That would save a lot of hassle and there will be far less LetsCombineAllThingsTogether-PRs, I created PR for that https://github.com/github/gitignore/pull/3348

Thanks everyone for the discussion on this. I've been meaning to rewrite the README for a while to address some things but it keeps getting bumped down my priority queue. Hearing this context from everyone helps me to understand what I need to communicate to everyone.
I'm going to close out this PR given we have #3348 open for improving the README and #3349 to improve how the JetBrains products are listed here, stay tuned!

See #3451 for an optional solution


Polish data has .hdf extension

@CeciliaNilsson709 @plieper I noticed the data from the Polish radars have a .hdf extension, rather than the expected .h5:

plbrz_vp_2016100100042700.hdf

As a result, the file_transfer does not recognize these files and they cannot be uploaded to the data repository... at least, that's what I think happens: I get an error. 🤷♂
Can those files be changed to .h5?

@peterdesmet yes you can change to .h5, the difference is because Anna Gorska processed these data herself, and chose her own filenames.

So, can I just replace the file extension or do I need to do something fancier?

Yes just change hdf into h5

Great! It's done, and the files are still readable by bioRad. 👌

Note to self: I used Automator, rather than figuring out a bash script.


Unable to give a small offset to markers

Red arrows indicate two markers ATH and ATL points. The ATL point (at the left which is 18.564) is cut. Is there any way to give an offset or gutter only to the marker but not the chart so that I can see the ATH point (price) whole without any cut?
a tiny note: The timescale props fixLeftEdge and fixRightEdge configurations in my chart are set to true (I want it that way :) ).
///Version
"lightweight-charts": "^4.1.3",

any luck with this? :)

Same question. Is it possible to support the display range limitation of text? which should only require adding a little bit of code for series-markers-renderer.ts.