[3.1] RND() not working properly on first call

The usage of rnd() when called for the first time leads to weird behaviour. All subsequent calls seem to be working fine though.
Tested with and without randomize ti().
print rnd()
print rnd()
print rnd()
print rnd()
print rnd()
print rnd()

Possible outputs:
.a70315
.972985
.841289
.556634
.663281
.42369

or
.@03247
.486737
.548671
.566067
.098523
.26513

or
.d29238
.441768
.0201512
.698348
.914749
.452402

There's a bug in the PRINT <float> command that outputs wrong characters at first call. Here's how to reproduce:
a = 0.12345
PRINT a
PRINT a
The second call to PRINT a works correctly.


TypeError after numerical overflow in solution checking

I have an SP that allegedly finds an optimal solution, but during solution checking I get the following warning
C:\Python27\lib\site-packages\gpkit\nomials\nomial_math.py:189: RuntimeWarning: overflow encountered in  double_scalars  m0 *= (x0[vk])**e

immediately followed by
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
C:\Users\philippe.kirschen\Documents\Optimization\HLopt\HLopt.py in <module>()
    113     m = Model(objective, constraints, substitutions)
    114
--> 115     m.localsolve(verbosity=5)

C:\Python27\lib\site-packages\gpkit\constraints\prog_factories.pyc in solvefn(self, solver, verbosity, skipsweepfailures,
)
     78         else:
     79             self.program, solvefn = genfunction(self, verbosity-1)
---> 80             result = solvefn(solver, verbosity-1, *args, **kwargs)
     81             solution.append(result)
     82         solution.program = self.program

C:\Python27\lib\site-packages\gpkit\constraints\signomial_program.pyc in localsolve(self, solver, verbosity, x0, rel_tol,
, **kwargs)
    103     appear to be converging, you may wish to increase the iteration limit by
    104     calling .localsolve(..., iteration_limit=NEWLIMIT).""" % len(self.gps))
--> 105             gp = self.gp(x0, verbosity=verbosity-1)
    106             self.gps.append(gp)  # NOTE: SIDE EFFECTS
    107             try:

C:\Python27\lib\site-packages\gpkit\constraints\signomial_program.pyc in gp(self, x0, verbosity)
    133     def gp(self, x0=None, verbosity=1):
    134         """Get a GP approximation of this SP at x0"""
--> 135         gpconstr = self.as_gpconstr(x0)
    136         return GeometricProgram(self.cost, gpconstr,
    137                                 self.substitutions, verbosity=verbosity)

C:\Python27\lib\site-packages\gpkit\constraints\set.pyc in as_gpconstr(self, x0)
    188
    189         When x0 is none, may return a default guess."""
--> 190         gpconstrs = [constr.as_gpconstr(x0) for constr in self]
    191         return ConstraintSet(gpconstrs,
    192                              self.substitutions, recursesubs=False)

C:\Python27\lib\site-packages\gpkit\constraints\set.pyc in as_gpconstr(self, x0)
    188
    189         When x0 is none, may return a default guess."""
--> 190         gpconstrs = [constr.as_gpconstr(x0) for constr in self]
    191         return ConstraintSet(gpconstrs,
    192                              self.substitutions, recursesubs=False)

C:\Python27\lib\site-packages\gpkit\nomials\nomial_math.pyc in as_gpconstr(self, x0)
    701         x0.update({var: 1 for var in negy.varlocs if var not in x0})
    702         x0.update(self.substitutions)
--> 703         pc = PosynomialInequality(posy, "<=", negy.mono_lower_bound(x0))
    704         pc.substitutions = self.substitutions
    705         return pc

C:\Python27\lib\site-packages\gpkit\nomials\nomial_math.pyc in __init__(self, left, oper, right)
    464         self.substitutions = dict(p_lt.values)
    465         self.substitutions.update(m_gt.values)
--> 466         self.unsubbed = self._gen_unsubbed()
    467         self.nomials = [self.left, self.right, self.p_lt, self.m_gt]
    468         self.nomials.extend(self.unsubbed)

C:\Python27\lib\site-packages\gpkit\nomials\nomial_math.pyc in _gen_unsubbed(self)
    499     def _gen_unsubbed(self):
    500         "Returns the unsubstituted posys <= 1."
--> 501         p = self.p_lt / self.m_gt
    502
    503         if isinstance(p.cs, Quantity):

TypeError: unsupported operand type(s) for /: 'Monomial' and 'Signomial'

I have a feeling that the numerical overflow is breaking something in a way that results in the TypeError (though I could easily be wrong).

commit hash and command to run to reproduce?

I tried making this into a MWE/making it generic, but I wasn't able to reproduce the error, so I'm going to close this for now.


Document CLI installation

cargo install schematools doesn't find a binary crate. cargo add schematools doesn't seem to install the CLI.

The cli is called schematools-cli , c.f. https://github.com/kstasik/schema-tools/blob/master/crates/cli/Cargo.toml
However @kstasik is only publishing the library to crates.io, not the CLI. c.f. https://github.com/kstasik/schema-tools/pull/77#discussion_r1125090300

This application is used for languages like rust, typescript, golang (contract first approach in case of REST apis). That is why it's published as a binary on github releases. Example of usage:
https://github.com/kstasik/schema-tools-templates/blob/master/tests/rust-axum/Makefile#L32-L44
But if you have a need to install it using cargo MR is welcomed.

It would be great if it could be published.  I currently have an entry like the following in my Makefile.toml
[tasks.resolve-yaml]
workspace = false
install_crate = { crate_name = "schematools", binary = "schematools-cli", test_arg = "--help" }
install_crate_args = ["--git", "https://github.com/kstasik/schema-tools/"]
command = "schematools-cli"
args = [
  "process",
  "dereference",
  "--create-internal-references",
  "--output",
  "yaml",
  "--to-file",
  "openapi/resolved.yaml",
  "openapi/input.yaml",
]

this is slow, because it uses git, and unstable because it uses git without a rev name because I do want updates.
I'll create a PR

https://crates.io/crates/schematools-cli
done in https://github.com/kstasik/schema-tools/pull/104


[question] How to install JupyterLab-desktop on FreeBSD?

I would like to create the FreeBSD port for JupyterLab-desktop.
The releases page offers binaries for several OSes, but we would like to build/install from source on FreeBSD.
Since this is an Electron-based program, shouldn't in be possible to run it using the Electron executable and a directory of platform-independent files?
electron30-30.5.0 is available on FreeBSD.
Thank you,
Yuri

@yurivict Thank you for opening this issue! You can find the dev documentation here: https://github.com/jupyterlab/jupyterlab-desktop/blob/master/dev.md
You should also be able to read (but not run) the workflows here: https://github.com/jupyterlab/jupyterlab-desktop/tree/master/.github/workflows
If you're able to create and maintain a FreeBSD port for JupyterLab Desktop, we would consider a pull request to add this OS as supported. Thanks again for your contribution!


Nebra disconnects / crashes after firmware update

Describe the bug
After every update my one particular Nebra out of 3 Nebra devices crashes all the time.
Last time we fixed this as we identified it was due to a  Corrupted Blockchain Cache. I think Salman did a clean install.
Now I get more errors after the recent update:

Region Plan: Node<EMAIL_ADDRESS>not responding to pings.

Miner Connected to Blockchain: False

ECC Detected: False (This happened once before it became truel

To Reproduce
Steps to reproduce the behavior:
Send a firmware update to reproduce the error.
Screenshots
Attached from the hotspot diagnostics
Desktop (please complete the following information):

OS: Windows
Browser Chrome
Version Latest

Smartphone (please complete the following information):

Device: Samsung
OS: Androis
Browser Chrome

Additional context
My Nebra has been offline for days. I have submitted a ticket but it has been pretty slow. Nebra needs more support workers please.

@Kayz86 Can you please share your previous ticket information? If you didn't have a ticket, please share the details with<EMAIL_ADDRESS>and share the ticket number here.
I'm closing this ticket since it's not created to documentation.

@Kayz86 Can you please share your previous ticket information? If you didn't have a ticket, please share the details with<EMAIL_ADDRESS>and share the ticket number here.
I'm closing this ticket since it's not created to documentation.

Hi Salman
I have been emailing all this time, the first ticket support email I sent did not give me a ticket number you just responded to my email. You have been referring to me as 'Kay'.
This email details were which does not have a ticket:
From: Nebra Support<EMAIL_ADDRESS>Sent: 18 August 2021 15:44
To: (REMOVED)
Subject: Re: Blockchain: False after firmware update
Please also see tickets:
#268592
#265033
My email address begins with 'kayz' if you need to find it.
Thank you

Guys Helium released a new firmware update to 2<IP_ADDRESS> yet again for the 5th or so time my Nebra ceases to function and it requires Salman to do a clean install to fix the problem. It appears to be related to a Corrupted Blockchain Cache which relates to https://github.com/helium/miner/issues/792 https://github.com/helium/miner/issues/978
I also saw an ECC error relating to the memory of my miner on the diagnostics page, ECC Detected was showing as False before it went back to ECC Detected True.
The other outdoor miners i have purchased are performing fine except for this 1 particular device. I am losing out on numerous days of mining clearly this one is defective and i cannot keep asking support to fix this which can take up to a few days for anybody to action or respond.
I have a defective miner which I need replacing as soon as possible please.

I have same problem

ticket ID #273555


Automate managing issue branch references in workflow files (OSOE-517)

When you're working on something related to GHA, you'll have to add issue branch references in workflow files when calling reusable workflows or actions, e.g. instead of @dev you use @issue/OSOE-123. It's painful to have to maintain these: You can forget to add them during development, and you can forget to remove them after a review. So, let's find a better way to do this. Ideally, we wouldn't need to think about managing these references for our own GHA code at all.

@DAud-IcI mentioned that validate-pull-request could check for issue branch references on pushes to the default branch and fail if founds one. While this doesn't solve the management issue, it at least will tell you if you forgot to switch back to @dev.
Automatically managing these would necessitate commits to the repos (including superprojects and submodules). This looks like an issue with submodules.
A pre-commit Git hook could solve this locally (replace references to ones matching the current branch) but that would need everyone to configure it.
Handle this in our checkout action: If the branch is not the default, replace all @<default branch> references with @<current branch> in all YML files. This might be a performance impact, we need to check. Also note that while this would cover projects like Lombiq GitHub Actions well (since when you open an issue branch in there, it's correct to point all internal references to that branch), it gets trickier with something like OSOCE: Should the workflows there, that call reusable workflows form LGHA, point to an issue branch? Those will only work if you have a corresponding branch in LGHA, so perhaps not (but handling this only in LGHA may be good enough as a start).
There doesn't seem to be a built-in way to do this, or a third-party solution.

Jira issue

validate-pull-request could check for issue branch references on pushes to the default branch and fail if founds one

I think this is a good compromise in terms of complexity vs. how much it achieves. I'd rather put this in a separate workflow, because you're not really validating the pull request anymore. Although it's important that whoever merged it (or contributed to the PR) is notified in case of a failure, but that's up to personal settings too.

Added some more notes about the checkout approach above.

PR submitted for this issue. Here are some notes about it.
A new reusable workflow named validate-gha-refs was created to search for GitHub Actions workflow and action files and check the references of any "called" workflows.
There are inputs for what paths to search for GHA files and what files to include. These default to .github and *.yml,*.yaml respectively.
There is an input for a list of owner/repository strings that are used to determine which uses: owners/repository/... lines should be considered when checking the version references. By default, it's the repository of the calling workflow. This is useful for the validate-this-gha-refs workflow that was added to run the resusable workflow on pushes to the dev branch. One important note here, is that it's possible for a consuming repository to check the version references of any/all called workflows they might be consuming from a different repository.
There is also an input for the expected version to reference by the GHA workflows and actions. By default, this value is the current branch but can be changed to fit the use case scenario.
The validate-this-gha-refs currently just runs the GHA Reference check on push to the dev branch, but more can be done here I think. Two use cases come to mind.
First, is to run this workflow when someone opens a pull request, we can check to make sure the LGHA references are all switched to their issues branch. But, this can be burdensome if there are only modifying one workflow or action file. Even worse, if there are just updating a README file. This leads to the second use case.
The second use case is to modify this workflow to further reduce the list of .yml/.yaml files to check, and specifically only check those files that are modified as part of the pull request. If this is solved, then it won't be a burden on the developer to change ALL the version references; they will only need to change the versions of those files they're working on.
Any and all feedback is welcome.

First of all, this works great, good job!
One small remark: the workflow summary is great.

However, please also add a message instructing the person to check it out when a step in the workflow fails, because looking at this was initially confusing:

Also, please add Names to all jobs and steps.

And in the human-readable strings use "GitHub Actions" instead of "GHA". We know it, but it might not be that obvious for everyone.


Documentation

Hi, I'm pretty new to Gulp tasks and I was wondering if you could provide some example on How-to-use-your-tasks.
Thanks

Thanks @Guibod.
It is relatively simple. only .attach() is used.
var gulp = require("gulp");
var Docker = require("gulp-docker-tasks");

var docker = new Docker();

docker.attach();

Also it was added to the current documentation.
91b9797b2dcaf3ddb41c16be6fc669da25fafb3b

91b9797b2dcaf3ddb41c16be6fc669da25fafb3b

#91b9797b2dcaf3ddb41c16be6fc669da25fafb3b

Thanks :)


letsencrypt wildcard certificates (without Cloudflare)

I would like to be able to use letsencrypt wildcard certificates without being limited to Cloudflare.

A temporary workaround is requesting a normal certificate domain.tld, then after a successful certificate, login to docker (docker exec -it {id} /bin/bash and do following:
certbot   --manual  -d domain.tld -d *.domain.tld --preferred-challenges=DNS
Follow the instructions, it will replace your certificate with the wildcard. An automatic way is not yet possible due to the lacking support of numerous DNS APIs. This is what I'm doing every now and then..
You have an existing certificate that contains a portion of the domains you
requested (ref: /etc/letsencrypt/renewal/npm-2.conf)

It contains these names: domain.tld

You requested these names for the new certificate: domain.tld, *.domain.tld.

Do you want to expand and replace this existing certificate with the new
certificate?
 If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.

Are you OK with your IP being logged?

Cleaning up challenges

I'm succesfully using wildcard host on noip.com with nginx-proxy-manager. I.e. on noip.com I have registered wildcard domain *.something.ddns.net, then in nginx-proxy-manager I have 11 proxy hosts using hostname.something.ddns.net and "it just works" (tm).

A temporary workaround is requesting a normal certificate domain.tld, then after a successful certificate, login to docker (docker exec -it {id} /bin/bash and do following:
certbot --manual -d domain.tld -d *.domain.tld --preferred-challenges=DNS
Follow the instructions, it will replace your certificate with the wildcard. An automatic way is not yet possible due to the lacking support of numerous DNS APIs. This is what I'm doing every now and then..
You have an existing certificate that contains a portion of the domains you
requested (ref: /etc/letsencrypt/renewal/npm-2.conf)

It contains these names: domain.tld

You requested these names for the new certificate: domain.tld, *.domain.tld.

Do you want to expand and replace this existing certificate with the new
certificate?
 If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.

Are you OK with your IP being logged?

Cleaning up challenges

Thanks, good to know that this would work (and how to do it). But, to be clear: You would have to repeat this every now and then? The automatic renewal of this "manual wildcard certificate" would not work?

I'm succesfully using wildcard host on noip.com with nginx-proxy-manager. I.e. on noip.com I have registered wildcard domain *.something.ddns.net, then in nginx-proxy-manager I have 11 proxy hosts using hostname.something.ddns.net and "it just works" (tm).

Well... it really shouldn't! The UI doesn't even let you go for wildcards unless you checked the cloudflare option. Also, both providers, cloudflare and noip, charge for wildcards afaik, so thats something Im not too thrilled about either. And the free noip does not seem to support IPv6, which I would like to use since it "is time" and I do not have to give too much thought to portforwarding and such.

A temporary workaround is requesting a normal certificate domain.tld, then after a successful certificate, login to docker (docker exec -it {id} /bin/bash and do following:
certbot --manual -d domain.tld -d *.domain.tld --preferred-challenges=DNS
Follow the instructions, it will replace your certificate with the wildcard. An automatic way is not yet possible due to the lacking support of numerous DNS APIs. This is what I'm doing every now and then..
You have an existing certificate that contains a portion of the domains you
requested (ref: /etc/letsencrypt/renewal/npm-2.conf)

It contains these names: domain.tld

You requested these names for the new certificate: domain.tld, *.domain.tld.

Do you want to expand and replace this existing certificate with the new
certificate?
 If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.

Are you OK with your IP being logged?

Cleaning up challenges

Thanks, good to know that this would work (and how to do it). But, to be clear: You would have to repeat this every now and then? The automatic renewal of this "manual wildcard certificate" would not work?

Yes, automatic renewal would require an API to your DNS and there are too many to support /implement this, I think.
I would like the output from the console on the webpage so I don't have to do this there. Then you only need to update your TXT record. Or just have a log page on the manager webpage.

@jc21 Implemented by PR #635, can be closed.
@rt87 To request wildcard certificates you need to request them via DNS challenge. If your DNS provider is not in the list of available DNS providers but you are sure they offer an API for this please open a new ticket.

Can you give a GUI option to request a manual DNS challenge?
Google domains doesn't allow DNS via api updates.

I don't think LetsEncrypt / Certbot is meant to issue certificates with a DNS challenge in a non-automated way. See the DNS challenge documentation, the second paragraph.

I'm succesfully using wildcard host on noip.com with nginx-proxy-manager. I.e. on noip.com I have registered wildcard domain *.something.ddns.net, then in nginx-proxy-manager I have 11 proxy hosts using hostname.something.ddns.net and "it just works" (tm).

@hugalafutro
Were you able to use a wildcard cert for all the subdomains/proxy hosts?
I have what you indicate working, but each subdomain is requireing its own certificate as npm does not list no-ip as a dnc challenge provider???

@bryanhunwardsen yes. Each whatever.something.ddns.net site has its own cert which npm renews whenever needed. Honestly I am a bit of a newb so I don't even understand the dns challenge stuff or it's advantage as it works just fine without.


Enable checkstyle for all tests in io.opencensus.*.

Codecov Report

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

@@            Coverage Diff            @@
##             master     #361   +/-   ##
=========================================
  Coverage     89.81%   89.81%
  Complexity      572      572
=========================================
  Files            94       94
  Lines          2189     2189
  Branches        176      176
=========================================
  Hits           1966     1966
  Misses          183      183
  Partials         40       40

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 082fae2...d99d889. Read the comment docs.


Feature request: An option to use LittleFS with no directories

It's not really a LFS issue. I am just on a microcontroller with very little memory, and I think eliminating the directory code would save on code size by a lot. I would like an option to use littlefs for file operations only. My use case is the following:
I have a few files I need to make a lot of reads and writes to. Since their names will always be known and I don't really need to look for fires, I have no need of a tree structure to hold files.
I actually tried adding my own LFS_NO_DIR and ifndef guarding the directory code out, but some file functions rely on directory functions currently so I bailed on that idea for now. This request may seem kind of unorthodox (from what I know about tiny filesystems), but I think it makes a lot of sense for systems with low low low memory requirements. I'd love to know what you think about it!

This is a good idea, and worth exploring. However I suspect it would provide a surprisingly low amount of savings.
You always need at least the root directory, since you need to keep track of files somewhere. And if the root directory is larger than a single block, littlefs stores the root directory in multiple blocks, creating a sort of tree structure internal to the directory. The extra cost to let the directory store references to other directories is not that much.
Most of the more complicated directory functions, lfs_mkdir/lfs_dir_read/etc are standalone functions that should be dropped at link time if you're compiling with --gc-sections.

Closing this because its been a while. If I ever revisit this idea, I'll reopen with a pr


Easing of theming for components without the use of !important

Bug, feature request, or proposal:
Theming using your css or scss in the themes folder
What is the expected behavior?
I want to import a theme like deeppurple-amber.scss into styles.scss of my Angular CLI project like:
/**
 * Angular Material Theme
 */
@import<EMAIL_ADDRESS>
/**
 * Angular MD2 Theme
 */
@import '~md2/core/theming/prebuilt/deeppurple-amber.scss';

What is the current behavior?
The color of a component remains using the default blue
What are the steps to reproduce?
Simply create an Angular cli project and configure it for use SCSS instead of CSS and include MD2
What is the use-case or motivation for changing an existing behavior?
For the easing of theming the use of the controls in real projects
Which versions of Angular, MD2, OS, browsers are affected?
MD2 v0.0.25
Is there anything else we should know?
Usability must be at the top of your work, this group of controls are great specially the datepicker.

Is there any way to change the color of the component as of now?

UP


ERROR with broadwalk

When I click launch minecraft it says it's downloading things then it says ERROR:java.lung.runtimexeption

Which version of Boardwalk. If its 1.1 try 1.0.7


PackageCode length

For some type of package (mainly IBC's) the character limit of 3 is not sufficient, I suggest it needs to be increased to 5.
I created the schema for the Shipping Instruction which highlighted this as below,
"packageCode":{
    "maxLength":3,
    "type":"string",
    "description":"The unique identifier for the package type"
},

Its in the IM sql
CREATE TABLE dcsa_im_v3_0.package_code (
    package_code varchar(3) PRIMARY KEY,
    package_code_description varchar(50) NOT NULL
);

The UN package type codes are ok under this, but in the chemical industry we often see package type codes for IBC that are 4-5 characters i.e. 13H3
An easy to digest reference point can be seen here:

https://www.c-point.be/file/downloads/packaging_codes_en.pdf

followed by a few more detailed descriptions:

https://unece.org/DAM/trans/danger/publi/adr/adr2005/English/Part6_ch6-5.pdf
https://shashikallada.com/imdg-code-awareness-series-3-use-of-packaging-and-ibcs/ (see section under Construction and testing of packagings and IBCS)

Im unsure where best to modify for a PR, as its in use in schemas and the db reference example, and probably needs some thought by DCSA members.

Hi @cmsdroff,
As always - thank you for the headsup - I will have our business experts look into this and get back to you as soon as I know something.
/Henrik

Hi again @cmsdroff,
Business agrees with you - and I have already updated the packageCode from 3 characters --> 5 characters. The update is visible in the EBL 3.0.0 Beta 1 API. Please be aware that the packageCode has been moved into the outerPacking object.
Thanks for your input - and I am sad we didn't meet up during the DCSA week - maybe next time ;-)

@HenrikHL

Thanks for your input - and I am sad we didn't meet up during the DCSA week - maybe next time ;-)

Apologies for not finding each other, I left Wednesday evening but next time for sure we will meet up!


Unauthorized error, scanjob pods can't connect to ACR

What steps did you take:
Installed the helm with Terraform (helm release resource) and checked if it's working. When the trivy-operator pods starts up I can see that the scan-vulnerabilityreport pods are trying to connect to the ACR to scan the images.
And what happened:
The scan pods fail.
What did you expect to happen:
The scan pods would scan the images.
Anything else you would like to add:
The service account is configured according to the documentation. The scan pods do have an azure-identity-token and the azure.workload.identity/use=true label.
Here is the error:
{     "level": "error",     "ts": "2023-10-10T06:53:43Z",     "logger": "reconciler.scan job",     "msg": "Scan job container",     "job": "monitoring/scan-vulnerabilityreport-69d869d787",     "container": "<IMAGE_NAME>",     "status.reason": "Error",     "status.message": "2023-10-10T06:53:38.907Z\t\u001b[31mFATAL\u001b[0m\timage scan error: scan error: unable to initialize a scanner: unable to initialize a docker scanner: 4 errors occurred:\n\t* unable to inspect the image (<IMAGE_REGISTRY>.azurecr.io/<IMAGE_NAME>:<IMAGE_TAG>): Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?\n\t* containerd socket not found: /run/containerd/containerd.sock\n\t* unable to initialize Podman client: no podman socket found: stat podman/podman.sock: no such file or directory\n\t* GET https://<IMAGE_REGISTRY>.azurecr.io/oauth2/token?scope=repository%3A<IMAGE_NAME>%3Apull&service=<IMAGE_REGISTRY>.azurecr.io: UNAUTHORIZED: authentication required, visit https://aka.ms/acr/authorization for more information.\n\n\n",     "stacktrace": "github.com/aquasecurity/trivy-operator/pkg/vulnerabilityreport/controller.(*ScanJobController).processFailedScanJob\n\t/home/runner/work/trivy-operator/trivy-operator/pkg/vulnerabilityreport/controller/scanjob.go:299\ngithub.com/aquasecurity/trivy-operator/pkg/vulnerabilityreport/controller.(*ScanJobController).reconcileJobs.func1\n\t/home/runner/work/trivy-operator/trivy-operator/pkg/vulnerabilityreport/controller/scanjob.go:81\nsigs.k8s.io/controller-runtime/pkg/reconcile.Func.Reconcile\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.2/pkg/reconcile/reconcile.go:111\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.2/pkg/internal/controller/controller.go:119\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.2/pkg/internal/controller/controller.go:316\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.2/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.2/pkg/internal/controller/controller.go:227" }
The  <IMAGE_REGISTRY>, <IMAGE_NAME> AND <IMAGE_TAG> had the correct values.

Trivy-Operator version (use 0.16.1):

@AndreiDoroftei have you installed the Mutating Admission Webhook ?

Yes, I have this workload-identity-addon-0.1.0-9db0aaa396c002128a1cc560f6544cd3b8eb2cf7 installed. When trying to install the helm chart I've got this:
Unable to continue with install: ClusterRole "azure-wi-webhook-manager-role" in namespace "" exists and cannot be imported into the current release.
I do have the client id and tenant id. I can't seem to find client secret. I have this instead.
AZURE_FEDERATED_TOKEN_FILE : /var/run/secrets/azure/tokens/azure-identity-token

@chen-keinan, Yes, I have this workload-identity-addon-0.1.0-9db0aaa396c002128a1cc560f6544cd3b8eb2cf7 installed. When trying to install the azure-workload-identity/workload-identity-webhook helm chart I've got this: Unable to continue with install: ClusterRole "azure-wi-webhook-manager-role" in namespace "" exists and cannot be imported into the current release.
I do have the client id and tenant id. I can't seem to find client secret. I have this instead. AZURE_FEDERATED_TOKEN_FILE : /var/run/secrets/azure/tokens/azure-identity-token

FYI.
the Azure Container Registry is still supported , if it worked for you before.

have you tried user our other options for private registries ?

I haven't tried them, I guess they could work, but I would appreciate a lot some info on how to debug this method..

I suggest to start with the private registies instruction to get operator working and then look as aks settings on parallel

@AndreiDoroftei any update on this issue? has you resolved it ?

@chen-keinan Nope, I am using this in the end:
operator:privateRegistryScanSecretsNames: { "monitoring": "trivy-auth" }

@AndreiDoroftei i use this method: operator:privateRegistryScanSecretsNames: { "monitoring": "trivy-auth" } but i am still having this issue.
This is my terraform helm:             serviceMonitor:
enabled: true
trivy:
ignoreUnfixed: true
operator:
privateRegistryScanSecretsNames: {"default":"my-docker-creds"}
I use this version:
repoURL        = "https://aquasecurity.github.io/helm-charts"
chart          = "trivy-operator"
targetRevision = "0.19.1"
And yes, i am having the same error of this post.

@dioni-dev can you please share logs with error if you have any and how you create the secret ?

@dioni-dev can you please share logs with error if you have any and how you create the secret ?

@chen-keinan
Sure:
{"level":"info","ts":1604949462.0904198,"logger":"controller","msg":"Starting Controller","reconcilerGroup":"batch","reconcilerKind":"Job","controller":"job"} {"level":"info","ts":1604949462.090432,"logger":"controller","msg":"Starting workers","reconcilerGroup":"batch","reconcilerKind":"Job","controller":"job","worker count":1} {"level":"error","ts":1604949471.7839265,"logger":"controller.job","msg":"Scan job container","job":"starboard-operator/2b1b65b9-e131-4e13-9601-68fa1eb3cab6","container":"platform-pnrhelperservice","status.reason":"Error","status.message":"2020-11-09T19:17:51.225Z\t\u001b[31mFATAL\u001b[0m\tunable to initialize a scanner: unable to initialize a docker scanner: 2 errors occurred:\n\t* unable to inspect the image (aagacr.azurecr.io/platform/pnrhelperservice:20201109.3): Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?\n\t* GET https://aagacr.azurecr.io/oauth2/token?scope=repository%3Aplatform%2Fpnrhelperservice%3Apull&service=aagacr.azurecr.io: UNAUTHORIZED: authentication required, visit https://aka.ms/acr/authorization for more information.\n\n\n","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\t/home/runner/go/pkg/mod/github.com/go-logr/zapr@v0.1.0/zapr.go:128\ngithub.com/aquasecurity/starboard/pkg/operator/controller/job.(*JobController).processFailedScanJob\n\t/home/runner/work/starboard/starboard/pkg/operator/controller/job/job_controller.go:163\ngithub.com/aquasecurity/starboard/pkg/operator/controller/job.(*JobController).Reconcile\n\t/home/runner/work/starboard/starboard/pkg/operator/controller/job/job_controller.go:69\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.6.3/pkg/internal/controller/controller.go:244\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(Controller).processNextWorkItem\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.6.3/pkg/internal/controller/controller.go:218\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(Controller).worker\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-
I create the secret like this: kubectl create secret docker-registry my-docker-creds
--docker-server=<REGISTRY_NAME>.azurecr.io
--docker-username=<REGISTRY_USERNAME>
--docker-password=<REGISTRY_PASSWORD>
--docker-email=<ANY_EMAIL>
My environment is Azure. I am running the last Trivy Operator Version

@chen-keinan Nope, I am using this in the end: operator:privateRegistryScanSecretsNames: { "monitoring": "trivy-auth" }

is this option works for you ?

@chen-keinan Nope, I am using this in the end: operator:privateRegistryScanSecretsNames: { "monitoring": "trivy-auth" }

is this option works for you ?

No, it doesn't work, i am having the same issue

I create the secret like this: kubectl create secret docker-registry my-docker-creds --docker-server=<REGISTRY_NAME>.azurecr.io --docker-username=<REGISTRY_USERNAME> --docker-password=<REGISTRY_PASSWORD> --docker-email=<ANY_EMAIL>
My environment is Azure. I am running the last Trivy Operator Version

I assume that for your example above. the create secret should be named trivy-auth and deployed into namespace monitoring can you confirm ?

I create the secret like this: kubectl create secret docker-registry my-docker-creds --docker-server=<REGISTRY_NAME>.azurecr.io --docker-username=<REGISTRY_USERNAME> --docker-password=<REGISTRY_PASSWORD> --docker-email=<ANY_EMAIL>
My environment is Azure. I am running the last Trivy Operator Version

I assume that for your example above. the create secret should be named trivy-auth and deployed into namespace monitoring can you confirm ?

Yes, i did, but the problem persists :(

@chen-keinan Nope, I am using this in the end: operator:privateRegistryScanSecretsNames: { "monitoring": "trivy-auth" }

is this option works for you ?

No, it doesn't work, i am having the same issue

@AndreiDoroftei ?

I create the secret like this: kubectl create secret docker-registry my-docker-creds --docker-server=<REGISTRY_NAME>.azurecr.io --docker-username=<REGISTRY_USERNAME> --docker-password=<REGISTRY_PASSWORD> --docker-email=<ANY_EMAIL>
My environment is Azure. I am running the last Trivy Operator Version

I assume that for your example above. the create secret should be named trivy-auth and deployed into namespace monitoring can you confirm ?

Yes, i did, but the problem persists :(

thanks , I'll try to reproduce it and update you.

@chen-keinan is there already a solution for this issue? Because we are facing the same issue if we want to use trivy operator in AKS with a private azure container registry (ACR) and managed identities/workload identities.
Further I guess the setting: operator:privateRegistryScanSecretsNames: { "monitoring": "trivy-auth" } references a secret for username and password authentication on the ACR. So for me this seems to be just a workaround and not a fix for the issue if we want to use workload identities.
Additionally I guess the installation of the workload Mutating Admission Webhook is replaced by enabling the workload identities directly via az aks (az aks update -g "${RESOURCE_GROUP}" -n myAKSCluster --enable-oidc-issuer --enable-workload-identity) and therefore not needed anymore, right?

@chen-keinan is there already a solution for this issue? Because we are facing the same issue if we want to use trivy operator in AKS with a private azure container registry (ACR) and managed identities/workload identities.
Further I guess the setting: operator:privateRegistryScanSecretsNames: { "monitoring": "trivy-auth" } references a secret for username and password authentication on the ACR. So for me this seems to be just a workaround and not a fix for the issue if we want to use workload identities.
Additionally I guess the installation of the workload Mutating Admission Webhook is replaced by enabling the workload identities directly via az aks (az aks update -g "${RESOURCE_GROUP}" -n myAKSCluster --enable-oidc-issuer --enable-workload-identity) and therefore not needed anymore, right?

yes , should be supported , check our docs for it

Thx for your fast response. Yes its supported but not working in our case. We get the same error as @dioni-dev
`{"level":"error","ts":"2024-01-17T09:50:16Z","logger":"reconciler.scan job","msg":"Scan job container","job":"trivy/scan-vulnerabilityreport-c54c7d7f7","container":"loki","status.reason":"Error","status.message":"2024-01-17T09:50:13.809Z
u001b[31mFATAL
u001b[0m	image scan error: scan error: unable to initialize a scanner: unable to initialize a docker scanner: 4 errors occurred:
* unable to inspect the image (.azurecr.io/grafana/loki:2.9.2): Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
* containerd socket not found: /run/containerd/containerd.sock
* unable to initialize Podman client: no podman socket found: stat podman/podman.sock: no such file or directory
* GET https://.azurecr.io/oauth2/token?scope=repository%3Agrafana%2Floki%3Apull&service=.azurecr.io: UNAUTHORIZED: authentication required, visit https://aka.ms/acr/authorization for more information.
","stacktrace":"github.com/aquasecurity/trivy-operator/pkg/vulnerabilityreport/controller.(*ScanJobController).processFailedScanJob
/home/runner/work/trivy-operator/trivy-operator/pkg/vulnerabilityreport/controller/scanjob.go:299
github.com/aquasecurity/trivy-operator/pkg/vulnerabilityreport/controller.(*ScanJobController).reconcileJobs.func1
/home/runner/work/trivy-operator/trivy-operator/pkg/vulnerabilityreport/controller/scanjob.go:81
sigs.k8s.io/controller-runtime/pkg/reconcile.Func.Reconcile
/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.2/pkg/reconcile/reconcile.go:111
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile
/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.2/pkg/internal/controller/controller.go:119
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler
/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.2/pkg/internal/controller/controller.go:316
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.2/pkg/internal/controller/controller.go:266
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2
/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.2/pkg/internal/controller/controller.go:227"}`
We enabled workload identities in our AKS cluster (ACR access to pull images works for all other services we deploy in the cluster). And we followed the instructions you mentioned.
We created a service account (via terraform/terragrunt):
apiVersion: v1 automountServiceAccountToken: true kind: ServiceAccount metadata:   annotations:     azure.workload.identity/client-id: <client id>     azure.workload.identity/tenant-id: <tenant id>   creationTimestamp: "2024-01-16T14:49:57Z"   labels:     app.kubernetes.io/instance: trivy-operator     app.kubernetes.io/managed-by: terragrunt     app.kubernetes.io/name: trivy-operator     azure.workload.identity/use: "true"   name: trivy-operator   namespace: trivy   resourceVersion: "68899"   uid: a9caf83e-74ff-4834-a28b-7a086b0b01a0
And we further set the scanJob.podTemplateLabels=azure.workload.identity/use=true label which is also reflected by our configmap:
apiVersion: v1 data:   compliance.failEntriesLimit: "10"   configAuditReports.scanner: Trivy   node.collector.imageRef: <privateacr>.azurecr.io/aquasecurity/node-collector:0.0.8   nodeCollector.volumeMounts: '[{"mountPath":"/var/lib/etcd","name":"var-lib-etcd","readOnly":true},{"mountPath":"/var/lib/kubelet","name":"var-lib-kubelet","readOnly":true},{"mountPath":"/var/lib/kube-scheduler","name":"var-lib-kube-scheduler","readOnly":true},{"mountPath":"/var/lib/kube-controller-manager","name":"var-lib-kube-controller-manager","readOnly":true},{"mountPath":"/etc/systemd","name":"etc-systemd","readOnly":true},{"mountPath":"/lib/systemd/","name":"lib-systemd","readOnly":true},{"mountPath":"/etc/kubernetes","name":"etc-kubernetes","readOnly":true},{"mountPath":"/etc/cni/net.d/","name":"etc-cni-netd","readOnly":true}]'   nodeCollector.volumes: '[{"hostPath":{"path":"/var/lib/etcd"},"name":"var-lib-etcd"},{"hostPath":{"path":"/var/lib/kubelet"},"name":"var-lib-kubelet"},{"hostPath":{"path":"/var/lib/kube-scheduler"},"name":"var-lib-kube-scheduler"},{"hostPath":{"path":"/var/lib/kube-controller-manager"},"name":"var-lib-kube-controller-manager"},{"hostPath":{"path":"/etc/systemd"},"name":"etc-systemd"},{"hostPath":{"path":"/lib/systemd"},"name":"lib-systemd"},{"hostPath":{"path":"/etc/kubernetes"},"name":"etc-kubernetes"},{"hostPath":{"path":"/etc/cni/net.d/"},"name":"etc-cni-netd"}]'   report.recordFailedChecksOnly: "true"   scanJob.annotations: serviceAccountName=trivy-operator   scanJob.compressLogs: "true"   scanJob.podTemplateContainerSecurityContext: '{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true}'   scanJob.podTemplateLabels: azure.workload.identity/use=true   vulnerabilityReports.scanner: Trivy kind: ConfigMap metadata:   annotations:     meta.helm.sh/release-name: trivy-operator     meta.helm.sh/release-namespace: trivy   creationTimestamp: "2024-01-16T14:50:05Z"   labels:     app.kubernetes.io/instance: trivy-operator     app.kubernetes.io/managed-by: Helm     app.kubernetes.io/name: trivy-operator     app.kubernetes.io/version: 0.16.1     helm.sh/chart: trivy-operator-0.18.1   name: trivy-operator   namespace: trivy   resourceVersion: "558824"   uid: 50a61a24-52bf-46d5-b261-4d2d55617b17
But we still get the UNAUTHORIZED issue. Is there anything wrong in our configuration?

@PhiRie  checkout with @dferri  he integrated trivy-operator with AKS cluster and updated the docs with this PR #1766 few days ago

@dferri I would appreciate if you could share your experience/feedback to our configuration.

@dferri Thx for your response. We found the issue today. In our case we had to additionally create azure federated identity credential with our managed identity.


ci: upgrade artifact action

Current dependencies on/for this PR:

main

PR #175   👈

This stack of pull requests is managed by Graphite.


Support for jdk 11

I was trying this exercise on jdk11 with no luck yet. Dealing with jaxb xml xsd soap is a complete mess now with 11.
Can you please us by updating this example with latest jdk

Since Spring is based on JDK 8, we aren’t quite ready to bump up all the guides to JDK 11.
But to assist you with Spring WS and JDK 11, please check out the project’s Pom.cml file. You’ll discover a profile used to add the proper dependencies that have seen been removed from JDK 11.

Now that we have Spring Boot 2.1.3.RELEASE are there any plans for JDK 11 now?


feature add check type in block data type and column

Proposed changes
mysql [test]>select cast(j as int ) from test_json_not_null;
ERROR 1105 (HY000): errCode = 2, detailMessage = (<IP_ADDRESS>)[INTERNAL_ERROR]error type in column , col name = (CAST j(JSONB) TO Int32) , expr expected type = Int32 , column expected type = Int32 , column is nullable = true , error type msg = check failed in data type = Int32

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

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall


docs: arabic translation

✅ Checklist

[x] I have followed every step in the contributing guide (updated 2022-10-06).
[x] The PR title follows the convention we established conventional-commit
[ ] I performed a functional test on my final commit

Changelog
Changelog

[ ] Arabic translation

[ ] deployment

[ ] docker.md
[ ] vercel.md

[ ] usage

[ ] env-variables.md
[ ] first-steps.md
[ ] next-auth.md
[ ] next-js.md
[ ] prisma.md
[ ] tailwind.md
[ ] trpc.md
[ ] typescript.md

[x] faq.md
[ ] folder-structure.md
[x] installation.md
[x] introduction.md
[ ] other-specs.md
[ ] t3-collection.md
[x] why.md

Your filenames shouldn't include .rtl, that messes up the url

Your filenames shouldn't include .rtl, that messes up the url

It's for vscode to be able to translate more comfortably and not meant to reach production

Your filenames shouldn't include .rtl, that messes up the url

It's for vscode to be able to translate more comfortably and not meant to reach production

Interesting, I'd imagine plugins like that would be able to read the frontmatter?

Your filenames shouldn't include .rtl, that messes up the url

It's for vscode to be able to translate more comfortably and not meant to reach production

Interesting, I'd imagine plugins like that would be able to read the frontmatter?

Exactly it's called RTL Markdown

Your filenames shouldn't include .rtl, that messes up the url

It's for vscode to be able to translate more comfortably and not meant to reach production

Interesting, I'd imagine plugins like that would be able to read the frontmatter?

Exactly it's called RTL Markdown

So does it parse correctly if you rename the file but keep the frontmatter? Just curious

So does it parse correctly if you rename the file but keep the frontmatter? Just curious

I was too, And found ou that vscode editor is Just Regular HTML, so the plugins checks if the file open ends with rtl.md and and dir:rtl ti the HTML tag

So does it parse correctly if you rename the file but keep the frontmatter? Just curious

I was too, And found out that vscode editor is Just Regular HTML, so the plugins checks if the file open ends with rtl.md and and dir:rtl ti the HTML tag

Aaah shame it needs both, cause setting the dir: rtl in frontmatter changes the output HTML to be rtl

btw, this is how it looks right now, imo very weird.
is it only the content, i.e. the actual doc-part that should be rtl or is it correct as it is now?
https://create-t3-app-git-fork-a4addel-next-t3-oss.vercel.app/ar/faq.rtl

btw, this is how it looks right now, imo very weird.
is it only the content, i.e. the actual doc-part that should be rtl or is it correct as it is now?
https://create-t3-app-git-fork-a4addel-next-t3-oss.vercel.app/ar/faq.rtl

It's the font, It is made for languages written in Latin script, that why it looks ugly in Arabic,
I would like to use the font on this page Here, It looks so elegant

Resolve conflicts please

Resolve conflicts please
👍🏼

Resolve conflicts please
👍🏼

I think you got a bad merge cause a lot of old changes got pulled in

I think you got a bad merge cause a lot of old changes got pulled in
I forgot to Sync the repo. check it now.

Great. Just needs some ✅ reviews now

Great. Just needs some ✅ reviews now

what kind of reviews ? Linguistic review ?

Great. Just needs some ✅ reviews now

what kind of reviews ? Linguistic review ?

Refer: https://github.com/t3-oss/create-t3-app/blob/next/www/TRANSLATIONS.md#reviewing

The translation I made was 2 phases, translation and revision I'm sure I didn't leave behind that require someone to review it.

All translation PRs require an external review. Not discounting your linguistics skills, it's just a requirement.

Yeah, we're absolutely requiring review on every PR. Every good author and journalist has an editor etc. No exceptions.

but there are no exceptions to this.

That's ok, however since the editor is always more experienced that the journalist please make sure that the one who is gonna review is more experienced than I am.
I have 3 years of experience as a translator.

LGM

but there are no exceptions to this.

That's ok, however since the editor is always more experienced that the journalist please make sure that the one who is gonna review is more experienced than I am.
I have 3 years of experience as a translator.

Hey @a4addel, no one wants to deal with drama and have their time wasted, so I am wondering if I am a fit to review this PR, or do you prefer a more fitting person than me?
I don't have 3 years of experiences as translator, tho. 😊
@Ayterx the PR isn't ready to merged as there is still note in Docker.md that isn't translated.

Neither do i,
Let's get this done and go our ways

I think the icons should be flipped in RTL
from
to

I think the icons should be flipped in RTL
from
to

good catch, will open a separate issue for this

I think the icons should be flipped in RTL
from
to

good catch, will open a separate issue for this

rtl:rotate-180 ;)

Lets go 🎉


Fix Alloy Errors

Due to recent analytics changes (including alloy),  alloy sendEvent is queued before configure if an error is logged before alloy configure is triggered. This Guards against that issue by waiting to run any events until configure has been queued. This does not affect perf or alloy functions, it just ensures proper order.
Test URLs:

Before: https://main--exlm--adobe-experience-league.hlx.page/docs/integrations-learn/experience-cloud/solution-categories/content-management
After: https://bugfix-fix-alloy-errors--exlm--adobe-experience-league.hlx.page/docs/integrations-learn/experience-cloud/solution-categories/content-management

@rogerblanton can you please take a look at this?
FYW this issue happens in any branch that  is not main because other branches have host names that are not whitelisted in IMS so IMS throws errors causing this issue.
This should not be invasive.

no longer needed


Feature/container events

Functions are added to subscribe to the Docker event stream filtered for each Container.
Currently this is used to detect if a container was started or stoped externally.
It is possible that this strategy will be used to support other features. For example to add support for native Docker Healthchecks.

Great implementation, way more elegant. I realized after submitting my PR that I needed to find a way to make it event-driven instead of timeout-driven. Glad you figured it out.


Improved Error Handling

The Rust Book describes best practices for working with errors.

[x] Implement a ProtocolError enum to unify io::Error, serde_json::Error and our own error messages. io::Error is more communication error than protocol but this can be revised later without problems.
[x] Adopt ProtocolError throughout PlayerConnection and PlayerConnections.
[x] Implement a MoveError enum to unify ProtocolError and the lack of any move.
[x] Adopt MoveError in GameEngine.
[x] Revise the protocol to emit MoveError to clients and implement.

Irritatingly I'm having to squash MoveError into String (using MoveError::description()) in order to serialise/deserialise CauseOfDeath to player clients.


Is it possible to reuse ReceivePort on Service restart?

I assume that when Flutter activity gets killed, all Dart side app state gets erased. The foreground service keeps running, and when activity gets opened again it reconnects with the ForegroundService via restarting it, geting a new ReceivePort.
Wouldn't be possible to not restart the Service and saving or rebuild the ReceivePort (saving info in the Service itself, or in the Android application, or iOS)?
Thank you

Use the FlutterForegroundTask.receivePort getter function.
https://github.com/Dev-hwang/flutter_foreground_task/issues/44


Add Safe app: Pangolin Dex

Name
Pangolin Dex
Type

New addition

Compatible Networks

Avalanche

Code for review
We have a pull request in progress with the code: https://github.com/pangolindex/interface/pull/257
IPFS hash
Latest release IPFS hash: QmUCGus7MoBpJJUTHNGnrKYzQw3H8LV88zqA55kKnLmwFG
Desired date
The app is working, swap, add/remove lp or stake, I'm adding this issue to be done more test on your side, I'm waiting for the review.

We have just added the app. What a great addition to the Safe on Avalanche on the last day of the year 🙂
Credits to @JagoFigueroa for testing the app


:pencil2: Fix link of sponsor doist

Corrects the link of the sponsor 'doist'.
Changes url: https://doist.com/careers/9B437B1615-wa-senior-backend-engineer-python to url: https://doist.com/careers
The current link redirect to a page like this

Thanks @lucasbalieiro! It seems that link was broken at some point, but it seems it is working now again.
So I'll close this one now. But thanks for the interest and effort! :cake:


added advanced usages of createManagedContext to the readme

coverage: 99.673%. remained the same when pulling 1c9b27b0e7500ec382ff9b325ca0a3785fa72482 on update-docs into c9e340fa77b55796a15e2fc167c7a2c5cee16821 on master.

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

Comparison is base (c9e340f) 100.00% compared to head (1c9b27b) 100.00%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff            @@
##            master      #177   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           10        10
  Lines          249       249
  Branches        94        94
=========================================
  Hits           249       249

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


Allow client certificate CN to be used for upgrade path

Adds the --http-upgrade-path-use-cert-cn flag. This causes the wstunnel client to use the common name (CN) of the client's certificate for the upgrade path.
This does not support changing the CN when reloading the certificate. However changing the CN of a client's certificate is un-common when "renewing" (i.e. issuing a new certificate with an extended expiry date) the certificate of a client. Which is the primary use case for the live reload of certificates.

As discussed the PR was modified to work without a flag.
Currently it still allows someone who is using mTLS to override the HTTP upgrade prefix with the --http-upgrade-path-prefix flag. I was a bit on the fence about this one. It might be easier to just always set prefix of the CN when mTLS is used. It's a trade-off between functionality and simplicity. I'm deferring to you on that one, since it's your project. Let me know if you want it changed!


Support for persistent credentials?

Hello!
Does this library support persistent credentials? My ideal workflow:

User sign-in and consent
Any other steps necessary to complete the auth flow
Insert refresh_token (or equivalent; user_secret, etc.) in secure storage
Pull user's refresh_token from secure storage to create credentials (and generate new access_token if necessary) without requiring new user auth

I can handle the secure storage manually, so my question is more scoped towards whether the library can construct credentials without requiring user sign-in every time.

@vsoraas , please run pip install git+https://github.com/rayluo/identity.git@renew-session to install a fix from its feature branch, and let me know how that works. Thanks.


merge package template from Kronos-Tools/npm-package-template

package.json

chore(devDependencies): update<EMAIL_ADDRESS>from template
chore(devDependencies): add<EMAIL_ADDRESS>from template
chore(devDependencies): add<EMAIL_ADDRESS>from template

Codecov Report

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

@@           Coverage Diff           @@
##           master     #164   +/-   ##
=======================================
  Coverage   86.59%   86.59%
=======================================
  Files           1        1
  Lines         194      194
=======================================
  Hits          168      168
  Misses         26       26

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 3f2c6ba...378912d. Read the comment docs.


wfreerdp not available after e375556 with Windows 11

VS2022 and nightly can successfully compile e375556
windows 10 run wfreerdp is ok
but  windows 11 ltsc run wfreerdp error,does not work properly.
It cannot connect to a session,  no response or error output
and it cannot even output the help information for wfreerdp /? in the command window.

@tsz8899 looks like a bug with getting the hostname.
work around with argument /client-hostname:yourname for the time being.
as for the terminal output, that did not change ;)
if you need output from wfreerdp you need to redirect to a file

The fix works for me both with /client-hostname: and without.
Version: This is FreeRDP version 3.10.2-dev0 (1b6fb6fd4)
Command i use: /opt/freerdp-nightly/bin/xfreerdp3 /d:XXX /u:XXX /v:XXXX /decorations /sound /clipboard /sec:tls /cert:ignore /fonts /dynamic-resolution +auto-reconnect /rfx


IVFPQ could inherit or use a PQ to avoid repeated codes

fgrep -xf IVFPQ.java PQ.java showed more than 400 common lines while IVFPQ had 700+ lines and PQ had 500+ lines. Using PQ as a member of IVFPQ will lead to much simpler implementation of IVFPQ.

IVFPQ.indexPQCode() is not used anywhere.

Indeed the two classes are highly overlapping and ideally IVFPQ should be a subclass of PQ.
IVFPQ.indexPQCode() was used in some experiments. Its purpose was to directly insert a PQ code in the disk-based index.


Get wrong root hash by cita-trie

When get the root hash from an empty trie, cita-trie might returns the wrong hash. See codes bellows:
use cita_trie::codec::RLPNodeCodec;
use cita_trie::db::MemoryDB;
use cita_trie::trie::{PatriciaTrie, Trie};
use hex::FromHex;

use ethereum_types::*;
use keccak_hasher::KeccakHasher;
use kvdb::DBValue;
use memorydb;
use patricia_trie::{TrieFactory, TrieSpec};
use patricia_trie_ethereum::RlpCodec;

fn cita_empty_trie_root() {
    let mut memdb = MemoryDB::new();
    let mut trie = PatriciaTrie::new(&mut memdb, RLPNodeCodec::default());
    println!("{:?}", hex::encode(trie.root().unwrap()));
}

fn parity_empty_trie_root() {
    let factory = TrieFactory::<_, RlpCodec>::new(TrieSpec::Generic);
    let mut memdb = memorydb::MemoryDB::<KeccakHasher, DBValue>::new();
    let mut root = H256::default();
    let mut t = factory.create(&mut memdb, &mut root);
    println!("{:?}", t.root());
}

fn main() {
    cita_empty_trie_root();
    parity_empty_trie_root();
}

outputs:
root_hash_by_cita_trie: 0xbc2071a4de846f285702447f2589dd163678e0972a8a1b0d28b04ed5c094547f
root_hash_by_parity: 0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421

The hash gives by parity equals with go-Ethereum: https://github.com/ethereum/go-ethereum/blob/master/trie/trie.go#L32, so I thought there are some bugs in cita-trie.

[dependencies]
cita_trie = { path = "/src/cita-trie" }
hex = "*"
# parity_ethereum = { path = "/src/parity-ethereum" }
patricia-trie = "0.3.0"
patricia-trie-ethereum = { path = "/src/parity-ethereum/util/patricia-trie-ethereum" }
memorydb = "*"
ethereum-types = "*"
keccak-hasher = { path = "/src/parity-ethereum/util/keccak-hasher" }
kvdb = "0.1"

Full tests should be added. See: https://github.com/ethereum/tests/blob/develop/TrieTests
I will push a PR contains the tests in the near future.

CITA-trie uses sha3 by default, and Keccak results are different.

I tested it with keccak and the results were correct.

OK.

I have switched to keccak and take a full test,
assert failed at: https://github.com/ethereum/tests/blob/develop/TrieTests/trieanyorder.json#L8
and paniced at https://github.com/ethereum/tests/blob/develop/TrieTests/trietest.json#L97.
thread 'main' panicked at 'index out of bounds: the len is 16 but the index is 16', C:\src\cita-trie\src\node.rs:71:10
note: Run with `RUST_BACKTRACE=1` for a backtrace.

The hash algorithm used by this branch https://github.com/cryptape/cita-trie/tree/keccak has been modified to keccak and full test have been added(tests will fail at now).

I have switched to keccak and take a full test,
assert failed at: https://github.com/ethereum/tests/blob/develop/TrieTests/trieanyorder.json#L8
and paniced at https://github.com/ethereum/tests/blob/develop/TrieTests/trietest.json#L97.
thread 'main' panicked at 'index out of bounds: the len is 16 but the index is 16', C:\src\cita-trie\src\node.rs:71:10
note: Run with `RUST_BACKTRACE=1` for a backtrace.

Found some implementation bugs:

For node where the child node's encoded bytes length is less than 32, the node should be encoded as a nested list other than treating the encoded child node as the value. For example, for node ExtentionNode(shared_nibbles, LeafNode(prefix, value)), the encode method now is RLP([HP(shared_nibbles), RLP([HP(prefix), value])]), which should be RLP([HP(shared_nibbles), [HP(prefix), value]])
The delete_at method does not reformat the trie when needed. For example, after the deletion, if a branch node only have one branch, the node should be deleted.

I fixed #1 and still working on #2.


get_earnings_dates slow

Describe bug
Beside the issue #1938 that I just reported, I found another issue that seldom occured in the past.
the get_earnings_dates() method return data apparently slower than before and because of that reason, the get_earnings_dates() method always raise exception for being not able to retrieve data successfully, but when I triger this method in the jupyter notebook, it did successfully retrieve the data after waiting for a long time.
Simple code that reproduces your problem
here is the exception raised by get_earnings_dates() method which catched by my code.
this attachment is the sourse code

this is the debug window showiing when the  code running the method 'controled_get_earnings_datas()':

Sorry the program notes writen in Chinese, in order to make it read easier I translate some key notes in English, here is the translation:
source code**
access the earnings data in a controled speed in order not to make the server overload
def controled_get_earnings_datas(stock,max_num):
global G_EARNINGS_DATA_ACCESS_NUM
try:
earnings = stock.get_earnings_dates(limit=max_num)
G_EARNINGS_DATA_ACCESS_NUM += 1
    # control API access rate
    if G_EARNINGS_DATA_ACCESS_NUM > 50:
        print(f"{BLUE}access get_earnings_dates method reach 50 times，program pause running 1 minute...{RESET}")
        time.sleep(1 * 60)
        G_EARNINGS_DATA_ACCESS_NUM = 0

    return earnings
except Exception as e:
    info=f"--{stock.ticker}--yfinance method get_earnings_dates() raise exception: {e}"
    add_to_logfile(info)
    print(f"{RED}{info}{RESET}")
    print(f"{BLUE}Program temporarily pause running 1 minutes{RESET}")
    time.sleep(1 * 60)
    return None

end code****************
Debug log
--EMR--yfinance 函数get_earnings_dates()抛异常: HTTPSConnectionPool(host='finance.yahoo.com', port=443): Read timed out.
Bad data proof
No response
yfinance version
0.2.38
Python version
No response
Operating system
No response

I do get this issue as well. It's consistently occurring even with rate limiting requests.


fix: iframe stats metabase

:tada: This PR is included in version 1.5.3 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


pub transformer does not get access to pubspec.yaml as an asset

This issue was originally filed by @paulevans

What steps will reproduce the problem?

Write a transformer that attempts to use information in pubspec.yaml

What is the expected output? What do you see instead?
pubspec.yaml appears as asset
Actual:
pubspec.yaml never processed as asset
What version of the product are you using?
1.7.2
On what operating system?
Mac OS X
Please provide any additional information below.
Some metadata provided in the pubspec.yaml file (e.g. version. name, description) would be useful to some pub transformers
Work around:
On transformer construction current working directory is project root - so path can be constructed to pubspec.yaml at that point and read.

This issue has been moved to dart-lang/pub#1191.


Quantity Available when fulfilling an order doesn't equal quantity available for the product

What I'm trying to achieve
Fulfill orders
Steps to reproduce the problem

Make any order
Proceed to fulfil order
For the respective warehouse it shows 1 less than the product that's actually available as shown in image

What I expected to happen
The quantities of the warehouse in the fulfilment view and product view to be equal

Screenshots

System information
Operating system:
Saleor Version 2.10

@ssaeed003 Hey! I think that we fixed it in Saleor 2.11. Can you check with the latest version? https://github.com/mirumee/saleor/pull/6333


X509_STORE_CTX_cleanup(): Use internally so no need to call explicitly

This is motivated by https://github.com/openssl/openssl/pull/14021#discussion_r571041958.
Make X509_STORE_CTX_init() call X509_STORE_CTX_cleanup() automatically,
such that users do not need to call both functions when they want to reuse the context.
This change is backward compatible because it should not hurt if X509_STORE_CTX_cleanup() is called in addition before X509_STORE_CTX_init() because it is idempotent.
Checklist

[x] documentation is added or updated
[x] tests are added or updated

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

Merged - thanks @t8m


ViewModel constructor cannot be overloaded

Hello,
Today it is not possible for your view model to have several constructor signature.
If you try to add to add a custom constructor in your view model source file, you cannot initialize commands:

You cannot directly call InitializeCommands() because the method is not marked as partial.
You cannot call the generated constructor because it is not marked as partial.

I wish for at least one of them to be partial so I can call it in my code.

Hi @Dragnalith ,
it is possible to have several constructors. You can just call the InitializeCommands method, as it is a method of the ViewModel class.
This here is a fully valid ViewModel:
[ViewModel]
public partial class MainViewModel
{
  public MainViewModel(string customerParameter)
  {
    this.InitializeCommands();
  }

  public MainViewModel(string customerParameter, int customParameter2)
  {
    this.InitializeCommands();
  }

  [Command]
  public void Save() { }
}

You can also call the generated constructor
  [ViewModel]
  public partial class MainViewModel
  {
    public MainViewModel(string customerParameter) : this()
    {

    }

    [Command]
    public void Save() { }
  }

There's no need to mark InitializeCommands nor the generated constructor as partial, because these members are already in your ViewModel class. The ViewModel class is just split across two files, the one you create, and the one generated.
Please provide a code example where you have problems, then I can take a look at it. But all the issues you described actually work with MvvmGen.
Hope this helps,
Thomas

I have tested again, and you're right it works. I am not sure what I did wrong before

No problem @Dragnalith, that's what I'm here for, to help if something does not work as expected.
Glad that it works now for you.
Thank you for the feedback,
Thomas


GMSMapView.h file not found

When I try to run on iOS I get this error message:

map_view-0.0.10/ios/Classes/MapViewController.h:10:9: fatal error: 'GoogleMaps/GoogleMaps/GMSMapView.h' file not found
#import <GoogleMaps/GoogleMaps/GMSMapView.h>

Any idea why is the file missing ?

Same here.
Anyone who could make it work?

Please, any fix for this?

Try running a flutter clean and flutter build. It looks like the pod install step did not install the google maps framework.

did not fixed the issue.  now, even removing map_view from dependencies, flutter/xcode failed to compile

Same here.
Anyone who could make it work?

Having same issue. Does anyone find solution for this problem?

try to remove use_frameworks! from your Podfile

@yabsi I can't find this use_frameworks in my Podfile !

same issue here

Hi people! Replace #import <GoogleMaps/GoogleMaps/GMSMapView.h> with #import <GoogleMaps/GoogleMaps.h> and it will work fine!
Thanks to my lovely boss.

Hi people! Replace #import <GoogleMaps/GoogleMaps/GMSMapView.h> with #import <GoogleMaps/GoogleMaps.h> and it will work fine!
Remember to update cocoapods with pod update. Also add "s.static_framework = true" to map_view.podspec file. I also added 'GoogleMaps' & 'GooglePlaces' pods to my Podfile (with source 'https://github.com/CocoaPods/Specs.git' on the top of file)
Hope it helped!

Thanks bro !!

Hi @matthewtsmith. Could you please take a look at this? I think the problem is that people are using this temporary fix: https://github.com/flutter/flutter/issues/16049 which allows swift written plugins to be used in Objective-C projects. But that results in the issue reported here. Is there any less "hacky" solution?
Thanks!

Hi people! Replace #import <GoogleMaps/GoogleMaps/GMSMapView.h> with #import <GoogleMaps/GoogleMaps.h> and it will work fine!
Remember to update cocoapods with pod update. Also add "s.static_framework = true" to map_view.podspec file. I also added 'GoogleMaps' & 'GooglePlaces' pods to my Podfile (with source 'https://github.com/CocoaPods/Specs.git' on the top of file)
Hope it helped!

This solution works If I am building manually on my Mac. but I can;t find a way around it when I am using some build automation platform like codemagic.io.
One alternate way is for me to for the repo, change the include path in MapViewController.h, and then use my own github repo path to import the package.
Can anyone please provide a solution?
Thanks!

Hi people! Replace #import <GoogleMaps/GoogleMaps/GMSMapView.h> with #import <GoogleMaps/GoogleMaps.h> and it will work fine!
Remember to update cocoapods with pod update. Also add "s.static_framework = true" to map_view.podspec file. I also added 'GoogleMaps' & 'GooglePlaces' pods to my Podfile (with source 'https://github.com/CocoaPods/Specs.git' on the top of file)
Hope it helped!

Works fine for me . I have to replace #import  <GoogleMaps/GoogleMaps/GMSMapView.h> with #import <GoogleMaps/GoogleMaps.h> and it works.


Reason For Nomination is limited to 300 characters instead of 300 words

Reason For Nomination is limited to 300 characters instead of 300 words

For Workplace Awards repository, we are currently only making changes to fix critical bugs or deployment failures. Please consider forking the repository to implement your improvement.
Thanks!

@v-smahaj
Thanks, we just deployed the app to our company with 3000+ employees with dynamic settings to add new employees and received a couple of issues.
The app response was 20+ seconds when loading the nomination card. The bot is double posting the in the channel.
https://user-images.githubusercontent.com/64561988/120555876-d16d6500-c44f-11eb-8b0e-5c7bf5ed20ce.mov
Endorsement issue: Unable to reach app 20+ seconds response
https://user-images.githubusercontent.com/64561988/120554669-214b2c80-c44e-11eb-8853-e167bcf0b6d3.mov
Random issue with the app: "Something went wrong try again in a few minutes"

@v-smahaj I opened another issue ticket for this


WIP: Make application routes usable on example views

If we want to have a component that works directly with a model object, Rails application returns an error.
With the following example.
# frontent/components/post_card/_examples.html.erb
<%= cdoc "post_card", post: Post.first %>

# frontent/components/post_card/_post_card.html.erb
<div class="post_card">
<%= link_to Post.name, post_path(post) %>
</div>

We have the following error:
undefined method `post_path' for #<#<Class:0x00007f579c3f6c90>:0x00007f579c36b668>

Explanation
The komponent gem is isolated so application routes are not available from Komponent::StyleguideController.
Proposal 1 (current code state of this PR)
The changes I did expose Rails application routes in Komponent::StyleguideController. And I named the engine to be able to access komponent application routes.
Proposal 2
Stop to isolate the engine. So routes are loaded in application. But helper will be loaded too.

I'm currently reading an article and some documentation to be sure of my proposal.

Pull Request Test Coverage Report for Build 815

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.003%) to 99.451%

Totals

Change from base Build 814:
0.003%

Covered Lines:
181

Relevant Lines:
182

💛  - Coveralls

Proposal 2
diff --git a/config/routes.rb b/config/routes.rb
index 7293246..cfa10cc 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -1,5 +1,5 @@
 # frozen_string_literal: true

 Komponent::Engine.routes.draw do
-  resources :styleguide, only: %i[index show]
+  resources :styleguide, only: %i[index show], module: :komponent
 end
diff --git a/lib/komponent/engine.rb b/lib/komponent/engine.rb
index 154a1ae..41c40da 100644
--- a/lib/komponent/engine.rb
+++ b/lib/komponent/engine.rb
@@ -10,7 +10,6 @@ require 'komponent/translation'
 module Komponent
   class Engine < Rails::Engine
     engine_name "komponent"
-    isolate_namespace Komponent

     rake_tasks do
       load 'komponent/rails/tasks/komponent.rake'

Since we don't have helper in app/helpers, I prefer proposal 2. Sounds more clean to me.
I don't think we really needs to isolate our engine.

Since we don't have helper in app/helpers, I prefer proposal 2. Sounds more clean to me.
I don't think we really needs to isolate our engine.

I agree. Can you implement solution #2 in your PR?

I'll try to found some time in the next days to rework on this.

I updated the code to implement proposal 2

NB: We will need to inform users that they need to replace styleguide_path by komponent.styleguide_path in styleguide/components/sidebar

Done


tests: drivers: move the espi test to new ztest API

Migrate the testsuite tests/drivers/espi to the new
ztest API.
Signed-off-by: Enjia Mai<EMAIL_ADDRESS>

Hi @albertofloyd , could you please help on reviewing this when you got a chance? thanks.


Default inverter no longer in CEC library

Need to check all Detailed PV configuration default inverters and modules and update any that are no longer in the new library.

https://www.woodmac.com/press-releases/global-top-10-solar-pv-inverter-vendors-account-for-82-of-market-share/
https://www.statista.com/statistics/1003705/global-pv-inverter-market-share-shipments/


As a developer, I want to run tests against a virtual merge of the pull request branch and the trunk branch so that I have more confidence that the change will not break anything

CircleCI don't offer this out of the box unfortunately.
So if we really want to implement this, can either:

move to a different solution e.g. a competitor to CircleCI or GitHub Actions
cobble something together in CircleCI
e.g. this Orb

As I am the only committer at present, this is not critical.  But it is still good to have as it is something a DevOps showcase workflow should have.


DateTimePicker update

Fixes #306
Pre-launch Checklist

[ ] I have updated CHANGELOG.md with my changes
[ ] I have run "dart format ." on the project
[ ] I have added/updated relevant documentation

The following translations were added
"hour": "hour",
  "minute": "minute",
  "am": "AM",
  "pm": "PM",
  "month": "month",
  "day": "day",
  "year": "year"

@WinXaito @henry2man @raitonoberu @larsb24 @alexmercerind @zacksleo @dmakwt @xmine64 @patricknicolosi
if you guys could send the translated version of these in your mother language, I'd be so grateful :)
They're basically used as a placeholder when the current selected date is not provided (null)

  "hour": "घंटा",
  "minute": "मिनट",
  "am": "AM",
  "pm": "PM",
  "month": "महीना",
  "day": "दिन",
  "year": "साल"

Thanks!

  "hour": "ore",
  "minute": "minuti",
  "am": "",
  "pm": "",
  "month": "mese",
  "day": "giorno",
  "year": "anno"

There is no translation for "PM" and "AM" because we use 24h format

  "hour": "ساعة",
  "minute": "دقيقة",
  "am": "AM",
  "pm": "PM",
  "month": "شهر",
  "day": "يوم",
  "year": "سنة"

"FA"
"hour": "ساعت",
"minute": "دقیقه",
"am": "ق.ظ.",
"pm": "ب.ظ.",
"month": "ماه",
"day": "روز",
"year": "سال"

Spanish localisation ES:
  "hour": "hora",
  "minute": "minuto",
  "am": "AM",
  "pm": "PM",
  "month": "mes",
  "day": "día",
  "year": "año"

@bdlukaa Relative to hours and minutes, should we use plural literals instead of singular ones?
Just in case, in Latin languages Spanish we just need to add a final s to the literal if needlessly.

Also, will 24h format be available? In Spanish is not usual to use the AM/PM format, so instead we use 24h one.

@henry2man

Relative to hours and minutes, should we use plural literals instead of singular ones?

Singular ones. The texts will be used here:

Also, will 24h format be available? In Spanish is not usual to use the AM/PM format, so instead we use 24h one.

It has been available since DateTime pickers were implemented.

Check the example app to play with it!

FR
  "hour": "heure",
  "minute": "minute",
  "am": "AM",
  "pm": "PM",
  "month": "mois",
  "day": "jour",
  "year": "année"

Note: AM and PM are not used in french, we use 24h format. Translation for AM/PM can be matin/après-midi, but I think it's preferable to keep AM/PM.
And the date in french is in format : DAY / MONTH / YEAR, so Day must be before month ;)


docs: Improve UX when running e2e as a dev

Simplify the export of the environment variables by providing a template file that is easy to modify and easy to source.
Description
The documentation would lead the user to perform many copy-paste to get the list of variables to export and set their value. This was tedious and error prone (as a variable could be missed).
The change makes it easy to create a custom file for the user that they can source.
Issue ticket number and link
N/A
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[X] This change requires a documentation update

How Has This Been Tested?
No test have been run. This is mostly a documentation change.
Checklist:

[X] I have performed a self-review of my code
[X] I have commented my code, particularly in hard-to-understand areas
[X] I have made corresponding changes to the documentation
[ ] I have added meaningful description with JIRA/GitHub issue key(if applicable), for example HASSuiteDescribe("STONE-123456789 devfile source")
[ ] I have updated labels (if needed)

/test redhat-appstudio-e2e

/retest

/test redhat-appstudio-e2e


now it mostly works.

 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.

Never didn't here, but still working :)


Automate reference docs for commandline flags and env vars

Problem: Currently we have hand written docs in every operator about commandline flags and environment variables read by the operators. This is difficult to maintain and in some places it is already out of date. Like the CRD references, it would be good to generate this to reduce maintenance burden.
Cheapo variant A: dump the help page
The help pages of the operators actually already reference all the flags (obviously) and also most env vars (some would need to be added through clap, that is easy though). We already do this for stackablectl. It isn't pretty, the formatting is actually quite ugly.
By default the help doesn't show help for subcommands. Maybe we have to call each subcommand individually (or maybe we just show the help for run).
Slightly more involved variant B: generate man page, convert to adoc
There is https://github.com/clap-rs/clap/tree/master/clap_mangen to generate man pages from clap.
We could use pandoc to convert the man page to an adoc file:
pandoc -s -t asciidoc example.man -o example.adoc

And use that as our reference page.
This is a bit annoying to implement because the build.rs file has to include the clap parser definition too. Also I am unsure about the pandoc converted adoc page, I am not sure if the styling can be changed or how easily it can be done.

Ok some new thoughts. We shouldn't document either of these things. We should document that some env vars are read by the operator and how to set these in Helm an with OpenShift, maybe? Or maybe a CRD read by the Operators?


Why does it bundle koichisasada.vscode-rdbg when Shopify.ruby-lsp supports debugging?

This is really unclear. Shopify.ruby-lsp supports debugging. And this extension pack depends on koichisasada.vscode-rdbg. So what should I use to debug? Shopify.ruby-lsp or koichisasada.vscode-rdbg? If the answer is Shopify.ruby-lsp, then this plugin should no longer bundle koichisasada.vscode-rdbg. And if the answer is koichisasada.vscode-rdbg, then why does Shopify.ruby-lsp support debugging?

Thank you for the question.
The Ruby LSP's debugger client doesn't yet support all features available in RDBG. We started out with some of the main debugging flows, especially so that we could connect the debug code lens that appear on tests to the debugger client.
Eventually, when the Ruby LSP matches feature parity, we can remove RDBG from the extension pack.
Meanwhile, if the Ruby LSP is sufficient for your needs and you haven't found an RDBG feature we don't support, you can uninstall RDBG and the extension pack will not automatically re-install it.

Thank you for your explanation, @vinistock. Perhaps this type of explanation could be included in the pack's description?
Also, since koichisasada.vscode-rdbg doesn't tap directly into Shopify.ruby-lsp's Ruby version manager detection system, bundler support etc, perhaps the readme of this plugin could include a launch.json example to use when coupled with Shopify.ruby-lsp?


feat: secp256k1 support in agent js

[SDK-81], references [483]

I've made changes to use the existing DER machinery in https://github.com/krpeacock/agent-js/pull/1. I'll take a proper look at the other changes tomorrow.

@krpeacock : Thanks for the PR! FYI I won't be able to do a review today, but happy to do it tomorrow!

Feedback incorporated!

BIP-32 seed phrase importing
Identity comparison

would be new to both ED25519 and Secp2556k1, and I will refrain from adding them for now.
I have chosen to remove the seed option from generate based on feedback, and have updated unit and e2e tests to use the new recommended pattern, by creating the identities using fromSecretKey


Implement structure name standardisation mechanism

Ensure that a structure mapping can be defined per dataset, patient or structure set. Down stream functions (nnUnet, radiomics, DVH) should use standardised structure names (if present).

Store a global mapping dictionary, store a structure set specific mapping dictionary
Allow multiple mappings by providing a mapping ID
Stored as list of dicts:
--   Store global .pydicer directory
--       store the local in the structure set directory

Moving to next sprint, priority shifted to flare example

more utility for the user to interface with the mapping (edit/add/etc...)


XPress3 fluorescence scan

8 elements
i0 for before the sample a
and IT (i t transmission) for after the sample

where do the elements come from? what are the time durations?

example implementation:
from typing import List

import bluesky.plan_stubs as bps
from bluesky import RunEngine
from bluesky.preprocessors import inject
from dls_bluesky_core.core import MsgGenerator
from dodal.devices.xspress3.xspress3 import Xspress3

# Instantiate the devices
element_changer = ElementChanger("element_changer_prefix", name="element_changer")
i0 = Xpress3Detector("i0_detector_prefix", name="i0")
IT = Xpress3Detector("IT_detector_prefix", name="IT")

def xspress3mini(
    wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
) -> Xspress3:
    """Get the i03 Xspress3Mini device, instantiate it if it hasn't already been.
    If this is called when already instantiated in i03, it will return the existing object.
    """
    return device_instantiation(
        Xspress3,
        "xspress3mini",
        "-EA-XSP3-01:",
        wait_for_connection,
        fake_with_ophyd_sim,
    )

@inject
def fluorescence_scan(elements: List[str], count_time: float) -> MsgGenerator:
    for element in elements:
        yield from bps.mv(element_changer.current_element, element)
        yield from bps.mv(i0.count_time, count_time)
        yield from bps.mv(IT.count_time, count_time)

        yield from bps.trigger_and_read([i0, IT])
        i0_data = yield from bps.rd(i0.data)
        IT_data = yield from bps.rd(IT.data)

        print(f"Element: {element}, i0: {i0_data}, IT: {IT_data}")

# Instantiate the RunEngine
RE = RunEngine({})

# Define the list of elements for the scan
elements_list = ["Fe", "Cu", "Zn", "Mn", "Ni", "Co", "Cr", "V"]
scan_count_time = 1.0  # 1 second count time for each scan

# Run the fluorescence scan
RE(fluorescence_scan(elements_list, scan_count_time))


Conda

Hi,
this is more of an FYI than an issue but I added the profiler to conda-forge: https://github.com/conda-forge/codeguru_profiler_agent-feedstock
Feel free to ping me if anyone here would like to be added as a maintainer there.

Awesome, thanks for letting us know!

Awesome, thanks for letting us know!


Tab icon misalignment

Tab icons appear misaligned, specifically the git diff notification!

Comparing a few other themes, I think this one might be with file icons package. Not sure what others' thoughts are on the alignment on the git diff indicator. An aside - it looks a little like a linting indicator, which is what I first thought it was :stuck_out_tongue_closed_eyes:

Yup! Compact tab bar is causing the alignment issue - I see you have a fixed top property. If you want, I can PR with it fixed for compact tab bar layout?

Yup! Compact tab bar is causing the alignment issue - I see you have a fixed top property. If you want, I can PR with it fixed for compact tab bar layout?

Just pushed a fix for this :smile:


Fix docs mispelling

While you're at it
src/charm.py:146: sting ==> string
lib/charms/prometheus_k8s/v0/prometheus_scrape.py:954: provied ==> provide, provided, proved
lib/charms/prometheus_k8s/v0/prometheus_scrape.py:979: provied ==> provide, provided, proved
tests/integration/workload.py:32: configuation ==> configuration

pip install codespell is a blessing.


Multiple instances of basic audio player

I need to implement multiple instances of the basic audio player in a single page, when one audio is playing and I click on another audio player, rest of the audio player should stop playing.  How do I achieve this?

Solved this with the below approach.
constructor() {
this.audioCheck();
}
audioCheck(){
let previousAudio;
window.addEventListener("play", function(evt){
if(previousAudio && previousAudio != evt.target){
previousAudio.pause();
}
previousAudio = evt.target;
}, true);
}


[JENKINS-43610] Trilead Plugin release permission

Description
Permission for the release of the new Trilead API plugin as part of the move to split Trilead out of Jenkins core.
Plugin is hosted at /jenkinsci/trilead-api-plugin/ and was forked as part of HOSTING-322. The only access is for me (@mc1arke) for now.
Permissions pull request checklist
Always

[x] Add link to plugin/component Git repository in description above

For a newly hosted plugin only

[x] Add link to resolved HOSTING issue in description above

For a new permissions file only

[x] Make sure the file is created in permissions/ directory
[x] artifactId (pom.xml) is used for name (permissions YAML file).
[x] groupId / artifactId (pom.xml) are correctly represented in path (permissions YAML file)
[x] Check that the file is named plugin-${artifactId}.yml for plugins

When adding new uploaders (this includes newly created permissions files)

[x] Make sure to @mention an existing maintainer to confirm the permissions request, if applicable
[x] Use the Jenkins community (LDAP) account name in the YAML file, not the GitHub account name
[x] All newly added users have logged in to Artifactory at least once

+1

@mc1arke I would have someone review the approach to detaching from core though. "Just remove it once we fixed all plugins" (IIUC that is your current plan) would be a very exceptional step to take.

@daniel-beck I'm going to try and catch @stephenc about his experience with the move of bouncycastle out of core before I do any significant changes. My actual plan is to apply a global mask from this plugin on the core Trilead library once I think we've updated all dependent plugins and see if anyone reports any issues, then leave it a bit before fully dropping Trilead from core. It's likely to be a few months before we reach that point though.


[GAPRINDASHVILI] Update gettext catalogs for gaprindashvili update

@mzazrivec It looks like not all __( strings were captured here.
For e.g, Check out the line below - https://github.com/ManageIQ/miq_v2v_ui_plugin/blob/master/app/javascript/react/screens/App/Overview/components/InfrastructureMappingsList/InfrastructureMappingsList.js#L122
Does the gettext rake task need __("Text") to be in a single line?
If so, we have 2 options here -

Fix the rake task to take into account the above case
Relax the rule error  Insert ⏎·········  prettier/prettier while running npm test

@priley86 Is it possible to remove the above prettier rule for npm?

Yes, having {__("Whatever")} on single line would resolve this issue.

What is interesting is that substitution seems to work when gettext is spread over 1+ lines
{__(
"Whatever"
)}

For the above case, Substitution works
... Extraction does not
Would be nice to keep it consistent for Substitution & Extraction.
error Insert⏎·········prettier/prettier is a generic rule applicable for the overall code, not sure if we can make an exception to this rule for gettext.
@priley86 What do you think? can we?

@AparnaKarve yeah! all for discussing, apologies, my intention wasn't to seemingly ignore the issue 😆
When yah present the options that way, I'm in favor of fixing the rake task rather than linting rules, which would have far greater implications.

@AllenBW No worries :) Thanks.
Agree that this should be fixed by the rake task -- since it could be applicable to other JS repos/sources too
I'm not sure on the level of effort required to fix the rake task, but if it's not doable for the upcoming G release, then we just need to make a note of it here before merging this and fix it later.

Looks like some action happens here 🤔
@skateman @martinpovolny  ☝ any thoughts on feasibility of extracting text across lines?

@AparnaKarve @AllenBW yea - it would be ideal to not have to change this. Prettier is an opinionated formatter and unfortunately I don't know a simple fix other than ignoring the file w/ .prettierignore. My preference is to maintain the default Prettier formatting.

So....we have to write each string to use 3 lines instead of one, and prepare tooling just to support syntax that's not used elsewhere.
Or, we can drop prettier, create a compatible eslint ruleset, and add a rule to support the strings as they should be.

Here's the situation.
We cannot easily fix this whole problem with a rake task fix, not on our (ManageIQ) end anyway.
The parser which does the .js parsing here comes from one of the supporting gems, which we do
not control. What the parser does is it goes line by line in the javascript source file and on each line it matches gettext invocations with a regular expression. What this means is that if the gettext invocation is spread over several lines, the parser won't find it.
We could try to fix / extend the parser so that it works with our source, but the way things are, this would be an invasive & complicated change and quite a long shot.
At this moment, I need to give our translators a complete V2V catalog to be translated into several languages for upcoming Gaprindashvili update release. Because of the problem described above, we're currently lacking approximately 300 words, which is quite a bit. So we need to find some solution quite fast here.
I'm leaning towards the proposal suggested by @himdel above: use eslint and relax the styling rules.

@himdel when yah put it that way 😬:godmode:  naaaaahhhhh rewriting all strings to have 3 lines is no bueno...
I guesssss the question is does miq manage its own getext parser? (if so where?) I was hoping it would be a simple regex rewrite to capture all the content contained within the leading __(  till the trailing )
oh well @mzazrivec kinda answered that ❤

The parser which does the .js parsing here comes from one of the supporting gems, which we do
not control. What the parser does is it goes line by line in the javascript source file and on each line it matches gettext invocations with a regular expression. What this means is that if the gettext invocation is spread over several lines, the parser won't find it.

Sad...I would have expected better from the gem.
By any chance is an upgrade available for that gem which could have addressed this use case? (wishful thinking)
or alternatively are there other gettext gems geared more towards modern JS code?

@skateman @martinpovolny  point_up any thoughts on feasibility of extracting text across lines?

No idea. On the Ruby side we use a parser. Here it's a regexp which, erhmh, well sucks.

I'm leaning towards the proposal suggested by @himdel above: use eslint and relax the styling rules.

Yes, that's what I'd do. The styling rules are meant to help us. If they don't help then don't use them. The goal is not to honor the rules the goal is to get the job done and have readable code.

This PR should be good to go.

Thanks for the update @mzazrivec
It looks like there would be a few more strings that would have to be included in the gettext catalog.
This PR https://github.com/ManageIQ/miq_v2v_ui_plugin/pull/476 contains strings from the .yaml files from  the manageiq-content repo.
(The manageiq-content  repo does not seem to be doing any gettext extraction at the moment)
Other than the above PR, there are a couple other unmerged PRs that would be introducing new strings in the UI soon.
So it looks like another round of extraction would be necessary in about a week's time or so.
Just wanted to give you an idea.
Sorry for the trouble and thanks in advance.

So it looks like another round of extraction would be necessary in about a week's time or so.
Just wanted to give you an idea.

This PR needs to be tested & merged as it is. It contains the source catalogs  (.pot) as well as translations into several languages (.po files). Whether a new translation cycle needs to happen is really a different discussion.

Ok, if that is the purpose of the PR, then LGTM


Deprecate StateTest format

The StateTest format has many disadvantages for users and is very close to the single-transaction BlockchainTest.
What is blocking us from using only BlockchainTests?
Disadvantages

Weird multi-transaction definition. It does not make sense for generating tests. Potentially, it can save some disk space, but in practice both ethereum/tests and execution-spec-tests generate the same tests in BlockchainTest and StateTest formats. This is also bad for users because they need special transaction representation only for StateTests.
Hashed post state. Users are not able to tell what's wrong with a failing test because they only can see that the state hash mismatch. Moreover, computing the state hash is not trivial (e.g. evmone implemented MPT just for that).

Yes, definitely agree on 1, it's not good and it makes the definition of our types way more convoluted than it has to be, and this is just the result of us trying to adapt the existing fixture format without breaking anything.
The use I see of the state test format is that you can test for rejected transactions more easily than in the blockchain test format:
In the blockchain test format, if the cause of invalidation is an invalid transaction, you get a passing test if the client rejects the block, but if you want to make sure that it was rejected because the transaction was deemed as invalid (and not some other block validation error) you need to check the error string.
In the case of the state test you check that the state hash did not change and then you can be sure the transaction was the cause of the rejection.
IMO I think we need to standardize the block invalidation errors before phasing out the state test format.

The t8n has the "rejected" array where it puts the invalid transactions with error messages.

cc @holiman

The multy transaction types are fillers only. When you parse the generated test you don't need to support it. Use txbytes field


Update LAB_AK_05_Implementing_and_configuring_virtualization_in_Windo…

…ws_Server.md
Module: 00
Lab/Demo: 00
Fixes # .
Changes proposed in this pull request:

Submitted by cjpluta on behalf of MOC Labs Review