Auto clonetype

Needing to manually override and implement cloneType is problematic because it's boilerplate (and not necessarily clear how to write one at that) and it doesn't separate implementation and usage (it's an exposed implementation detail, that we're trying to fix with chisel3 but with limited success). So being able to do this automatically would be great.
There are two major approaches:

@bundle macro annotation that automatically generates cloneType. You have to remember to add the @bundle annotation, but it doesn't change RTL functionality (so it's closer in spirit to the @chiselName annotations). Implementation is more complex (means, it will be a while before this happens), and it's also intertwined with bundle literal constructors.
Better reflection. The main problem now seems to be that constructor values aren't visible to reflection unless they are declared as vals - and a potential workaround is to get users to define their constructor arguments as vals in the cloneType error message.

In both cases, there will probably need to be restrictions on what argument types auto-cloneType can work with - namely, being restricted to common immutable types (like Int) and Chisel types (like UInt, which will be cloned). I imagine this will probably address most places (>90%?) where cloneType is needed, and the user should always be able to override with their own cloneType. Ideally, it would also be possible for the user to specify additional immutable types that cloneType would recognize, though the implementation for that is less clear.
Thoughts?
@sdtwigg @azidar @jackkoenig

Is there a way with reflection to figure determine which vals were arguments to the constructor? My understanding is that making them vals will add public fields to the class but the actual arguments to the constructor are still private (because they have to be in Java). Perhaps there is some way in Scala reflection?
I am interested in a reflection-based implementation, at a bare minimum it would be better than what we currently have. I still think the macro is the ultimate goal, if only because it would also give us easy and type-safe bundle literal construction.

It looks like Scala reflection should be able to get names and types of constructor arguments:
https://stackoverflow.com/questions/27473440/scala-get-constructor-parameters-at-runtime

The good news: it appears possible to clone Bundles with val arguments using Scala reflection and matching accessor methods to constructor arguments.
The bad news: anonymous inner classes are a giant (maybe even unsolvable?) can of worms.
Anonymous Inner Classes
It turns out that anonymous inner classes (like anonymous Bundles) are going to be problematic. Scala transforms their constructors to explicitly take a reference to the outer class, but I don't see an accessible reference to that using either Java reflection (getDeclaredFields) or Scala reflection (typeSignature.decls).
The way we currently deal with that is by trying to invoke the constructor with all null argument values, which depends on the arguments all not being meaningful. Of course, there aren't actually any checks that any of this is true, that this hasn't been a massive source of NullPointerException errors is kind of impressive. (it's important to note that NullPointerExceptions that occur in the constructor will result in a helpful "you need to write a cloneType" error, but nulls lurking around in value fields that are used later could be the cause of hard-to-debug and very unintuitive errors)
The same null-passing is also not viable for a reliable auto clonetype: if variables in the enclosing are needed (for example, a bitwidth defined in the enclosing Module is needed in the instantiation of a Bundle element), this will NullPointerException out.
Side note: (non-anonymous) inner classes are handled differently: their Scala constructor don't have an extra argument attached to them, though invoking the constructor through Scala reflection requires the outer class reference. It appears that the Java constructor does have the explicit outer class instance argument, though. However, Java reflection (getDeclaredFields) shows a $outer method returning the appropriate type, I have not checked if this is accessible and returns a sane value.
Side note 2: In cases where the compiler needs to store a reference to the outer class (for example, a def requires a reference to the enclosing class instance), Scala will generate a $outer definition. This probably isn't applicable to most Bundles.
Side note 3: It appears Scala compiler does not generate a "this$0" field (which might have worked in Java), not that that was a particularly elegant idea either.
Module IO Behavior
It also turns out that IO(...) does not actually clone the input, so it mutably modifies the chisel type passed into it, contrary to all other binding operations (like Wire(...) and Reg(...)). Which may be masking some of the sketchy stuff that the null-happy clone type would otherwise do. The mutable nature of IO(...) could be a source of bugs, though it seems current usage patterns avoid it.
What next?
Potential options

Figure out how to access the outer class reference for anonymous inner classes. If anyone knows how to do this, please post it...
A macros approach to generate cloneType. Requires the user to annotate their bundles with @bundle (or something), which means it won't help with legacy code and may see limited use.
Leave things as-is. Which is probably bad, since nulls may be lurking around and IO(...) behavior is inconsistent with other binding operations.

Notes from today's meeting
The changes to IO(...) behavior is the main thing that might break code, and is the main cause of these issues. However, we're lucky in that IO(...) is a method on Module and has access to this. The special-case solution (which practically will probably work for most of what people write) is to have IO pass this to autoclonetype, which then can check if it typematches the outer class type (and the first Scala constructor argument, which is the convention for anonymous inner classes), and if so, invoke the constructor with that argument.
Potential subtle issues: other uses of cloneType on anonymous inner classes will likely fail, for example if you did Wire(chiselTypeOf(io))
Misc additional work remaining: validation of parameter types to restrict autoclonetype parameter filling to those which can be cloned: immutable Scala types (Int, Bool, String, ...) and Chisel types (which should be checked to be unbound, then cloned before being passed into the constructor).
@sdtwigg thoughts about general ways to get the outer class instance given an inner class instance without requiring additional user code?


WIP - DSD-224: FileUploader

Fixes JIRA ticket DSD-224
This PR does the following:

Adds the FileUploader and FileDisplay components.
Making this a draft and in progress because the UX needs to be updated for invalid files before the implementation proceeds. Adding this draft PR so you can take a look at the work so far and get a better idea through interaction what needs to be updated.
No tests yet.
I might move some things from FileUploader to FileDisplay but I'm still thinking about it.

How has this been tested?
Storybook.
Checklist:

[ ] I have updated the Storybook documentation accordingly.
[ ] All new and existing tests passed.

Front End Review:

[ ] View the example in Storybook

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

Tugboat has finished building the preview for this pull request!
Link:

https://pr778-zmzemdxsjgvipnvxw4il3yhdftbhsjaa.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/619c17a8908ae11ae26034b2

too old and don't want to fix conflicts 👿  will revisit in a new PR


Broken links for MobileFirst 8 documentation

Hi,
i have some problems with the Mobile First 8.0 documentation, infact all links are broken.
For example, this links returns a 404 error: https://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/8.0/upgrading/migrating-adapters
Can you check please?
Thank you

Our hosting is currently experiencing some difficulties. If you will refresh the page it will work and sometimes not work. This is true to the entire website.

Thank you.
Now using nodeJS, when i try the "npm install -g mfpdev-cli" command, i got this error:
fetch failed https://registry.npmjs.org/ibm-strings/-/ibm-strings-0.1.4.tgz
npm WARN retry will retry, error on last attempt: Error: fetch failed with status code 404
Why?
Thank you

I can't you with that question... You will need to open a support ticket (PMR) for this. It is not related to the website itself.


Server crashes in the minimal example

All your steps for the minimal example work perfectly for me except:
./node_modules/.bin/http-server

For me, it initially launches correctly, but then crashes with the error:
[Thu Apr 07 2022 22:28:06 GMT-0400 (Eastern Daylight Time)]  "GET /" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.83 Safari/537.36"
_http_outgoing.js:470
    throw new ERR_HTTP_HEADERS_SENT('set');
    ^

Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
    at ServerResponse.setHeader (_http_outgoing.js:470:11)
    at module.exports.ResponseStream.(anonymous function) [as setHeader] (/home/chris/git/asr/sqljs/node_modules/union/lib/response-stream.js:100:34)
    at Object.exports.(anonymous function) (/home/chris/git/asr/sqljs/node_modules/http-server/lib/core/status-handlers.js:57:7)
    at Readable.stream.on (/home/chris/git/asr/sqljs/node_modules/http-server/lib/core/index.js:339:22)
    at Readable.emit (events.js:198:13)
    at emitErrorNT (internal/streams/destroy.js:91:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
    at process._tickCallback (internal/process/next_tick.js:63:19)

I'm unfamiliar with reading Node tracebacks.  It looks like it's receiving a request, but is having trouble writing the response. What's causing this?

That might be a bug upstream with the https://www.npmjs.com/package/http-server library. I don't know why since it looks like this library was not updated since I used it. You can try using any other http server that supports range requests for now

Yeah, I think you're right. Looks like it was reported here that version 14 no longer works at all, and a workaround is to revert to version 13.


fix: typos

fix: typos

@omahs Thank you for your contribution, it would be easier to get this merged if it was more PRs with less changes as the codeowners policy is difficult getting review from everybody

Closing due to no updates in a month (stale)


fix(selection-list): improve accessibility of selection list

Since the selection list is still a list that contains some content, there should be a way for screenreader users, to navigate through the options (even if disabled). With this change, if the list is disabled, it's still possible to walk through the options.
Adds a new functionality to the ListKeyManager that allows the developer to control the items that can't be focused. skipPredicate. (e.g. for the selection list we want to make sure that users can navigate using the arrow keys to disabled items as well)
Testing: Fixes that by default all fake events bubble up the DOM. This works in most of the cases, but it's wrong to always bubble events. e.g. focus doesn't bubble.

Fixes #9995

@crisbeto Done. Addressed most of your notes.


Add Catch2 3.5.3

Add Catch2 3.5.3

Hello @curoky, modules you maintain (catch2) have been updated in this PR. Please review the changes.

Need skip-url-stability-check label.


[BUG] Operator doesn't manage the metric exporter sidecar

Describe the bug
After the CRD has been applied and the test has completed running for the duration specified, the process fails. The worker job completes, while the master job continues to run.
To Reproduce
Steps to reproduce the behavior:

Apply the LocustTest manifest to start the test
Once the test runs for specified duration, list available jobs and pods
You should see that the worker job and worker pods have been completed. However, the master job has not been completed and the pod is in a NotReady state.

Expected behavior
Once the test has completed, both the worker and the master pods should be in a Completed state and eventually removed.
Screenshots
Pods status after the test has completed.

Jobs status after the test has completed.

Additional context
I suspect that the problem is that on the master node, the locust-metrics-exporter container never stop and continues to run. Failing to signal job completion.

Hello @eduardchernomaz,
your assessment of the root cause is on point. Indeed this behavior is because of the metrics exporter. This is a known issue that i am aware and intend on solving.
Problem explanation:
The exporter is a sidecar container that the locust native image is not aware of its existence. Also Kubernetes doesn't provide native support for sidecars container behavior definition e.g. shutdown after container x exits. This is important to understand because when I solve this for the metrics exporter container, the same issue will happen if your organisation have a cluster configuration to inject other sidecars e.g. istio sidecar.
In all cases, till I push the fix, I have provided 2 simple workarounds to employ in the meanwhile.
Workaround:

Option 1: Use a custom image that calls the recently added /quitquitquit endpoint on the exporter to exit. It would be something like this: curl -fsI -XPOST http://localhost:9646/quitquitquit
Option 2: At the end of your test call the /quitquitquit endpoint.  In locust term this would translate to making the call in the function / method annotated with @events.quitting.add_listener.

More info on the proposed fix (still under investigation), The proposed idea is to extend the Operator operation to include container management as a secondary resource to the custom resource.  Meaning that after the Operator creates the main cluster resources, it need to register a reconciler to manage the secondary resources created by k8s itself. Doing so, the Operator can start reacting to to events coming from specific containers within specific pods.
From a security perspective, I also need to investigate any additional (if any) cluster privileges that maybe required by such solution.

it is an interesting idea. One that makes a lot of sense. I will dig into that and see what is needed to have this put in place.

After some investigation, PreStop hook won't fit this use case. According to the documentation, it only gets invoked if the container termination is triggered from outside and not in cases where containers exit gracefully because of there internal process.
I am moving the investigation to assess if the liveness probe can be used to secure the desired effect without marking the job as "error"

Possible implementation approach, Change metrics_exporter Liveness probes to ping the locust container every 10 seconds and on failure send a curl to quitequitequite.

This will be solved with the fix for #50

@AbdelrhmanHamouda
Hello
Do you think there’s any chance this issue could be resolved?

Ideas I'm thinking about now
I’m not using locust-metrics-exporter, so how about adding a flag to LocustTest to disable it and provide an option to let the Job complete successfully for now?

Hello @eduardchernomaz, @S-mishina, thank you for your patience regarding this request. the fact is, that i never had the time to get around to this since it needed some prerequisite code changes and in itself, it was never a priority since there are a lot of ways to get around it. what made it a bit worse is that in companies (most likely place for the operator to be running) most of the time, there is a lot of sidecar injection going around and the exporter becomes just another one. This is what's happening in my company for example and few others that i'm aware that the operator is running in.
That being said, i am starting to get some time back and I believe I will be able to give this request the attention it deserves.
regarding adding a flag, while it is true that it would be easy, I don't feel comfortable with this approach since removing it will be a breaking change not to mention that when running in a cloud environment, observability is extremly important.
Workaround
However, one workaround  that I employ personally is to send a quite request to the exporter. I personally do this from within the custom hosted image of locust that we run but i believe you can perfectly do it from within the test itself as part of the cleanup stage. I can provide more info on the workaround if you desire
# Shutdown the metrics exporter container
echo "INFO: Shutting down metrics exporter container."
curl -fsI -XPOST http://localhost:9646/quitquitquit

@AbdelrhmanHamouda
Thank you for your response!

Regarding adding a flag, while it is true that it would be easy, I don't feel comfortable with this approach since removing it will be a breaking change, not to mention that when running in a cloud environment, observability is extremely important.

I completely agree with this point! Thank you for the feedback!

However, one workaround that I personally employ is to send a quiet request to the exporter. I do this from within the custom hosted image of Locust that we run, but I believe you can perfectly do it from within the test itself as part of the cleanup stage. I can provide more info on the workaround if you desire.

I would like to use the workaround as well, but is it implemented as a separate monitoring resource to trigger the corresponding curl command?

I can provide more info on the workaround if you desire.

If possible, I would appreciate any additional information you can share!


MNT Render the documentation online & remove Circle CI

This PR completes https://github.com/bsmurphy/PyKrige/pull/48 and allows the documentation to be automatically rendered at http://pykrige.readthedocs.io/en/latest/  for every new commit on master (fixes #14 ).
The Circle CI was originally added to build the documentation, but it is not longer necessary (since it can be built on readthedocs.io).
@bsmurphy Could you please remove CircleCI from the list of services that have access to this repo (somewhere in the repo settings)? Thanks.

Thanks for the review @alexisrosuel .
Merging this as it's a small maintenance update,  Travis CI fails due to an unrelated issue #62 and Circle CI fails but it should be removed anyway.


[Toolkit bug]: Second or third texture ingestion crashes the Remix toolkit

Contact Details (Optional)
No response
Describe the bug
When ingesting textures the first ingestion works just fine, can even be multiple maps at once too. Upon the second or third ingestion the toolkit will successfully ingest the textures (as seen by them appearing in the output folder) but then freeze and crash right after.
How do you reproduce the bug?

Ingest textures
Apply them in the asset replacement layout tab
Repeat step 1, or ingest missing maps for the material ingested in step 1
The ingestion will finish and the remix toolkit will freeze and shortly crash after

What is the expected behavior?
No crash ;)
Version
2024.1.1

Hey @Cyntonian ,
We are working on having the ingestion using an external process (which will not affect the app). It should solve this problem.
The internal ticket: REMIX-2692
This is wip. So we should have this thing soon.
Thank you.

Hi @Cyntonian! This issue has been addressed in the most recent toolkit release and confirmed internally. As such, we're going to close this ticket. Please open another one if the issue persists for you.


sensors: hts221: Fix a crash due to bad device init

The hts221 requires 2.2 ms at boot time to download
the flash content into the volatile mem and the
calibration values cannot be read before that.
This issue is causing following crash:
***** USAGE FAULT *****
Executing thread ID (thread): 0x20000234
Faulting instruction address:  0x80037de
Division by zero
Fatal fault in essential thread! Spinning...
Signed-off-by: Armando Visconti<EMAIL_ADDRESS>

@erwango @ydamigos
Area is sensor. I noticed this crash and I debugged the issue.
The 2.2 ms it is not stated anywhere, but I asked internally to
the application team .

Codecov Report

Merging #7401 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #7401      +/-   ##
==========================================
- Coverage   55.26%   55.26%   -0.01%
==========================================
  Files         467      467
  Lines       51641    51641
  Branches     9886     9886
==========================================
- Hits        28541    28540       -1
- Misses      19190    19191       +1
  Partials     3910     3910

Impacted Files
Coverage Δ

lib/posix/pthread.c
69.34% <0%> (-0.51%)
:arrow_down:

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 5dc2ab4...03d2318. Read the comment docs.


Fix ArgumentNullException on any RedditObject creation

Constructor currently uses the property it's supposed to assign to instead of the constructor parameter for null-checks, leading every call to result in a thrown exception.

HA! Nice catch


Text mode: not working on CGA cards

Describe the bug
I would expect that textmode works on CGA mode, but it shows garbled screen intead.
To Reproduce
Steps to reproduce the behavior:

Open any emulator (86box, pcem) or real PCXT.
execute rloader.
See error

Expected behavior
Garblet text is happening
Screenshots

Environment

Running on: any PCXT
OS: any msdos version

Additional context
Add any other context about the problem here.

Sorry, but I forgot to enter the RLoader version used in the bug report template.
What version are you using?
Do you have the same result with all versions?

I tested this, it looks like pcem works well when using cga card. If you use tandy, it does not work well.
Dosbox x also fails, in CGA and tandy modes.
Tandy text mode is the same as cga, it should work OK.

Thanks @mills32 for testing. I was able to reproduce the problem with doxbox-x version 0.83.12.
@jsmolina, from your screenshot I was unable to guess what could have caused that display since I use the BIOS interrupt 0x10, avoiding direct access to the vram to maximize compatibility between systems and configurations, but checking with a populated list, I got an idea of what it should be.
Since among the data returned by the bios regarding the status of the current video mode there is no number of lines, I was forced to read it directly from the Video Control Data Area 2 ram location (address 0040:0084). Probably the dosbox-x bios and those of some emulators and some real systems apparently do not return the correct value.
I'll check and update you, I need to make Borland C usable from dosbox-x to be able to test my guess. If confirmed I will have to find a safer way to retrieve the number of rows.

As you can see at 0040:0084 there is a 00, instead it should be 24 (for 25 line text modes).

@jsmolina, @mills32, from the tests done with dosbox-x now RLoader works correctly even on CGA mono and composite, tandy, pcjr, amstrad, mcga, mda machines.

Let me know if it solved also for the other emulators (downloading the release 1.0.4) in order to close the issue .

Thanks!.
I wanted to use this for a project, but maybe it is too big for me. Anyway it helped a lot, and also it is great that it is now working for cga, tandy and mda.
About ascii "images" you are right, They will be slow for old pcs like 8088s, and it is difficult to generate them, even if they are simple logos or shapes.

wow impressive!!! lot of thanks, should we close then this issue?

@marco-sacchi not sure if you will find it useful, but I created an automatic list generator using python
https://github.com/jsmolina/simple-menu-dos-launcher/blob/main/rloadergen.py
Example usage:
python3 menugen.py -i /Users/jsmolina/DIST/GAMES1 -i /Users/jsmolina/DIST/GAMES2 -o /Users/jsmolina/OUT -d c:\menu
it takes a list of directories with long names, and generates dos directories + LIST.txt automatically.

@jsmolina, the list generator can be interesting, I'll be looking at it next weekend.
Please start a discussion next time, instead of adding a post to an open issue. I am the only maintainer and I have specifically activated the "Discussions" section to keep the list of issues clean, and to more easily reach users who want to propose new ideas and features.
If you can't start a discussion just let me know, I'll check the permissions.


Infrastructure redesign brainstorming

This issue is partly a note to myself, but also an opportunity for other ue4-docker users to discuss potential design ideas and contribute their perspectives. Feedback from developers using ue4-docker as part of their own workflows is appreciated.
A problem I've been hitting up against for some time now is that ue4-docker was originally designed for building only a small handful of container images, and the scalability of the project is somewhat hamstrung by its current architecture. The codebase gets messier and messier as new images and customisation options are added, and also whenever new Unreal Engine versions are released that require additional logic/patching or (God forbid) a new version of Visual Studio under Windows. It's reached the point where I'm hesitant to add any of the new features that I want to implement (e.g. Perforce support, cross-compilation support in Windows containers, hooks that allow custom Dockerfile instructions to be injected by the user at various points, etc.) because I can just picture how convoluted the code will look if those modifications are added to the existing design. It's time for a refactor and a new approach.
My current line of thought is that ue4-docker should split the build process into two distinct phases: an initial generation phase that produces a set of Dockerfiles on disk and then a build phase that consumes the generated Dockerfiles. This would facilitate a template-based approach whereby Dockerfiles can be customised with a high degree of flexibility, without littering the resulting code with no-ops for unused options (as is the case in the current architecture.) This could be paired with a plugin-based system for applying arbitrary transformations to the template data, allowing for an infinite number of possible configurations. I'm also toying with the idea of using a graph-based system for managing dependencies between container images, which could open up the door for user-defined images that declaratively specify their dependencies and get built alongside the predefined images in the correct order. Regardless of the exact shape that the implementation takes, my primary goal is to create a data-oriented architecture with a clean and well-abstracted API.
A few benefits that I foresee:

Newer (or older) versions of Visual Studio can be supported by simply providing drop-in snippets for each version that can be selected by the user at generation-time.
The addition of cross-compilation toolchains (e.g. Windows to Linux, Windows to Android) can be implemented a clean manner that doesn't impact images generated without cross-compilation support.
If users want to implement support for new version control systems (Perforce, Mercurial, etc.), authentication mechanisms (SSH, OAuth, etc.) or even to copy the Unreal Engine source tree from the host filesystem (as in Pull Request #47), they can do so by simply implementing a plugin, eliminating the need to modify ue4-docker itself. Popular plugins could of course ship with ue4-docker for ease of installation.
Injection of arbitrary user-specified Dockerfile directives can be achieved either via plugins or simply by editing the generated Dockerfiles prior to building them.
Users who need to maintain a large set of images (e.g. game development studios who are cross-compiling for multiple platforms) can script the generation step, or even check the generated Dockerfiles into source control.

A few challenges and open questions:

An infinite number of possible configurations makes thorough testing extremely difficult, leading to an increased likelihood of users encountering issues when building configurations that I've not tried myself.
How can we tag images and manage inter-image dependencies in a sensible manner? Ideally all customisations should manifest themselves as suffixes in image tags so that downstream images can specify the required configuration for their base images. But with an infinite number of possible configurations, any one-to-one mapping could produce ridiculously long and unwieldy tag names.
What's the most reasonable way to embed configuration metadata in built images so that they can be inspected after being pulled from a container registry? (Hopefully this scenario will become a reality once GitHub Package Registry comes out of beta.) Is it sensible to simply create LABEL directives specifying each configuration option, such that a hypothetical ue4-docker inspect command could simply query the labels to print a summary of the configuration that produced the image? If so, do we require all plugin authors to specify label names for their customisations and follow a reverse-DNS naming scheme to avoid collisions? How should this account for manual modifications to generated Dockerfiles, if at all?

This redesign is likely to remain an ongoing process for some time to come, and I'd appreciate feedback from other ue4-docker users as I evolve these ideas and move towards a point where I can begin implementing them.

@ImmortalEmperor, @mentalnote, @crizCraig, @TBBle, @herman-rogers

A use-case I've been meaning to follow-up with here, would be to have a plugin for BuildGraph changes. In our particular use-case, we sometimes need a branch of GitHub UE4 Release tags only to add the BuildGraph commands for the UE4Client and UE4Server targets to the InstalledBuild.xml and InstalledBuild.filter.xml.
I'd also planned to try and work out how to make them conditional, and get those added to Epic's upstream version, but in the meantime it'd be nice to auto-apply them to any random UE4 source tree I build. That auto-applying might need per-version fixing, and I'd aim to make it generic enough to apply to all platforms, at least for the UE4Client target.

On LABEL, presumably a plugin must have some identification so it's loaded, simply using that in the LABEL would work, wouldn't it? It seems reasonable to expect plugins to provide a label for images generated with that plugin, and even strongly encourage labels to be reverse-DNS to avoid name collisions and provide some sense of providence for the plugin, if you you have at hand is the resulting Docker image.

@TBBle that's definitely a use-case that's been on my mind too, and you're not the only one to run into the lack of support for those targets by default. It seems odd that there isn't already a BuildGraph flag to enable support for them, but I guess it's yet another symptom of the fact that Epic don't consume Installed Builds internally.

With regards to LABEL directives, that's certainly the line of thought I've been considering. Requiring each plugin to specify a unique reverse-DNS identifier would be extremely helpful for diagnostic and debugging purposes, since ue4-docker could list the loaded plugins in its output and those lines could then be included when reporting bugs. (A maintainer email address might also be a good idea so that the appropriate plugin maintainers can be contacted when dealing with bugs arising from plugin code.)
If plugins are able to specify multiple feature flags (which might be desirable in a context where flags are related, or are mutually incompatible and the plugin needs to throw an error when a conflict is detected) then each individual flag could simply be appended to the plugin's identifier, e.g.:
LABEL com.organisation.plugin.flag=1

What is the status on this refactor initiative?

@dskvr this is currently blocked by an upstream limitation regarding support for building Windows containers with BuildKit (https://github.com/moby/buildkit/issues/616) that makes it impossible to mount secrets during the build process without them leaking into the image's filesystem layers, as is possible when building Linux container images using the experimental mount types supported by BuildKit.
One of the driving factors behind the proposed two-phase design is that it will address the current incompatibilities with external build systems, which are typically designed to accept ordinary Dockerfiles (and optionally, accompanying build arguments) as their inputs, but are not designed to delegate control of the build to an arbitrary application. In the new design, ue4-docker will generate a set of Dockerfiles in filesystem directories (similar to standard base images found on Docker Hub, e.g. Microsoft .NET, Node.js, etc.) and the user can store those files / check them into version control / etc. and then build them later without requiring ue4-docker at all. For this to be feasible, the credential endpoint needs to be eliminated entirely, as it is currently the only component of ue4-docker that is strictly required during the build process. This is currently possible for Linux containers but not Windows containers, and providing a harness to run the credential endpoint when building Windows containers defeats the intended purpose. (Additional harnesses would also need to be created for supporting SSH credentials or Perforce credentials, and community-contributed plugins for the generation phase that use those authentication types would be forced to integrate with the harnesses under Windows, which isn't a scalable strategy.)
This is definitely still a high priority, and we're going to be needing this internally at TensorWorks as we start exploring support for targeting console platforms in on-premises installations of Admiral (since I'm guessing those target platforms will likely require cross-compilation from Windows rather than Linux.) There's a good chance that I'll end up continuing the work that @TBBle started on adding functional Windows container support to BuildKit, since fixing the upstream limitation seems like the only way to achieve the two-phase design with feature parity across both Windows and Linux containers.

@adamrehn Thanks! What are the chances these changes will be public before Admiral is complete?

@dskvr any changes made to ue4-docker (or any of my other open source projects) will always be public as soon as they're implemented and working well enough for other users to benefit from them. The only thing I won't be able to make public are any plugins that specifically relate to console platforms, since there are legal restrictions around that, but everything else will be available for the community as soon as it's working nicely across both Windows and Linux containers.

I do intend to spend more time on getting BuildKit working on Windows, but I haven't had the good stretches of time available for a personal project in a while.
Plus it kind-of got stuck on whether I needed to support containerd 1.2 as a back-end with the changes I was make, e.g. https://github.com/moby/buildkit/pull/1387, and I lost a lot of momentum on that and https://github.com/containerd/containerd/pull/2366, as I was hoping for some kind of upstream movement before I pushed too much further down a certain direction.
So what I pushed to my fork is the latest I have, which worked-around or ignored those issues, and there's plenty that can be done in areas which do not relate to them, like the networking setup, the filesystem-copy/permissions issue, etc.
I suspect getting it upstreamed will be equally as hard as actually getting it working, in the end.


Pull Request for Issue #321

Based on @nenonix recommendation, created a PR for each Issue, this PR solved the issues #321, In the committed file Update-Office-365-Ip-Webservices (Issue #321) I only add a paragraph explaining important information about the use of express route, as requested

@nenonix @JohanFreelancer9 - kindly do the copy editor review for this PR. Thanks.


Display informations on hover

For example, show descriptions and documentation links for:

modifiers
scriptlets
Extended CSS pseudo classes

Reference: https://code.visualstudio.com/api/language-extensions/programmatic-language-features#show-hovers

Will there be an option in the settings to enable/disable this feature?

sure


[DO NOT MANUAL MERGE] Release Qualification

Trigger release qualification jobs
none

@silverdev: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/daily-e2e-cluster_wide-auth-default.sh
b7fc798c79934fee925a6b6c7167c66eb33ff9ab
link
/test daily-e2e-cluster_wide-auth-default

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@silverdev: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/daily-e2e-cluster_wide-auth-default.sh
b7fc798c79934fee925a6b6c7167c66eb33ff9ab
link
/test daily-e2e-cluster_wide-auth-default

prow/daily-e2e-rbac-no_auth.sh
b7fc798c79934fee925a6b6c7167c66eb33ff9ab
link
/test daily-e2e-rbac-no_auth

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@silverdev: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/daily-e2e-cluster_wide-auth-default.sh
b7fc798c79934fee925a6b6c7167c66eb33ff9ab
link
/test daily-e2e-cluster_wide-auth-default

prow/daily-e2e-rbac-no_auth.sh
b7fc798c79934fee925a6b6c7167c66eb33ff9ab
link
/test daily-e2e-rbac-no_auth

prow/daily-e2e-rbac-auth-default.sh
b7fc798c79934fee925a6b6c7167c66eb33ff9ab
link
/test daily-e2e-rbac-auth-default

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@silverdev: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/daily-e2e-cluster_wide-auth-default.sh
b7fc798c79934fee925a6b6c7167c66eb33ff9ab
link
/test daily-e2e-cluster_wide-auth-default

prow/daily-e2e-rbac-no_auth.sh
b7fc798c79934fee925a6b6c7167c66eb33ff9ab
link
/test daily-e2e-rbac-no_auth

prow/daily-e2e-rbac-auth-default.sh
b7fc798c79934fee925a6b6c7167c66eb33ff9ab
link
/test daily-e2e-rbac-auth-default

prow/daily-e2e-rbac-no_auth-default.sh
b7fc798c79934fee925a6b6c7167c66eb33ff9ab
link
/test daily-e2e-rbac-no_auth-default

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


NSFS | S3 | Versioning: DeleteObjects with VersionId does not delete all object versions

Environment info

NooBaa Version: 5.15.4
Platform: CentOS 8, deployed using https://github.com/IBM/StorageScaleVagrant

Actual behavior
DeleteObjects trying to delete 2 versions of a key with their VersionId only deletes one version.
    @pytest.mark.versioning
    def test_versioning_multi_object_delete():
        client = get_client()
        bucket_name = get_new_bucket(client=client)

        check_configure_versioning_retry(bucket_name, "Enabled", "Enabled", client=client)

        key = 'key'
        num_versions = 2

        (version_ids, contents) = create_multiple_versions(client, bucket_name, key, num_versions)
        assert len(version_ids) == 2

        # delete both versions
        objects = [{'Key': key, 'VersionId': v} for v in version_ids]
        client.delete_objects(Bucket=bucket_name, Delete={'Objects': objects})

        response = client.list_object_versions(Bucket=bucket_name)
>       assert not 'Versions' in response
E       AssertionError: assert not 'Versions' in {'Delimiter': 'undefined', 'EncodingType': 'url', 'IsTruncated': False, 'KeyMarker': 'undefined', ...}

Expected behavior
DeleteObjects deletes all versions specified with VersionId.
Steps to reproduce
Execute test_versioning_multi_object_delete() like shown above.
More information - Screenshots / Logs / Other output
Log with "all" log level attached
noobaa_20240913_2.log.gz

@hseipp seems to be caused because because dir_file in options_gpfs is undefined:
Sep 13 09:16:24 m1.example.com node[9580]: Sep-13 9:16:24.565 [nsfs/10263] [ERROR] core.util.native_fs_utils:: safe_unlink: dir_file is undefined, cannot use it to call safe_unlink_gpfs
there is already a fix related to this issue made by @shirady: https://github.com/noobaa/noobaa-core/pull/8345/files
we should test it again on gpfs machine after this fix is applied

closing as test passes on GPFS machine with mentioned fix:
[root@tmtscalets-master s3-tests]# S3TEST_CONF=s3tests.conf tox -- s3tests_boto3/functional/test_s3.py::test_versioning_multi_object_delete
.pkg: _optional_hooks> python /usr/local/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
.pkg: get_requires_for_build_sdist> python /usr/local/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
.pkg: get_requires_for_build_wheel> python /usr/local/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
.pkg: prepare_metadata_for_build_wheel> python /usr/local/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
.pkg: build_sdist> python /usr/local/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
py: install_package> python -I -m pip install --force-reinstall --no-deps /root/s3-tests/.tox/.tmp/package/9/s3tests-0.0.1.tar.gz
py: commands[0]> pytest s3tests_boto3/functional/test_s3.py::test_versioning_multi_object_delete
=========================================================================================== test session starts ============================================================================================
platform linux -- Python 3.9.18, pytest-8.3.3, pluggy-1.5.0
cachedir: .tox/py/.pytest_cache
rootdir: /root/s3-tests
configfile: pytest.ini
collected 1 item

s3tests_boto3/functional/test_s3.py .                                                                                [100%]

============================================================================================ 1 passed in 1.25s =============================================================================================
  py: OK (5.44=setup[3.74]+cmd[1.70] seconds)
  congratulations :) (5.56 seconds)

fix is already merged and should be included on sundays version


Changing NODE_ENV or HOST variables in webpack from npm command line

I want to use webpack.dev.js file for both development on my local machine and for AWS.
I want to write some logic in my service based on the ENV or host. e.g.
if(process.env.HOST=== 'localhost'){
 -- Add some headers here
}else{

--- Do not add headers
}

My configuration for webpack.dev.js is  :
const ENV = process.env.ENV = process.env.NODE_ENV = 'development';
const HOST = process.env.HOST || 'localhost';

How can I change NODE_ENV  or HOST when doing the build using 'webpack --config config/webpack.dev.js --progress --profile' so that variable can be development for local machine but it can be changed to devaws when I am building using npm run build:dev?

I use cross-env to set the NODE_ENV in my npm scripts: https://www.npmjs.com/package/cross-env


无法同时处理多个文件

for example:
wgtcc -S 1.c 2.c

yes, it is. Once upon a time, it supported multiple files. I disabled it(the code is simplified also) for convenience of debugging, i will reenable it later.
(ps: we better in English because i occasionally found that  there are some foreigners looking at this repo :)
There is another friend that is working on an interesting compiler project https://github.com/thinkermao/LL-Script, a small interpreted language.

wgtcc是单进程程序吧？而且遇到错误就退出了，因此是如何支持处理多个文件的呢？第一个文件语法错误导致进程退出，这样第二个文件不就没被处理了么？

A single source file is a translation unit.Which means we could fork(),so every child process handle a source file :)

这样不好迁移到windows了，因为windows创建子进程要用文件，如果用一个函数的话，只能通过windows的POSIX子系统，然而这个子系统已经不维护了 :)

We'd better talk in QQ. Can you send your QQ to my email? Thx.

Yeah, my pleasure~~

But, where do i get you email? :)

I've updated my github profile :->


Enable multiple vpc-sc perimeters over multiple modules

The goal of this PR is to have the ability to call the vpc-sc module over different parts of the code. It can be useful to set different perimeters onto different stages of a large tf project

Update the 'CHANGELOG' file.

@lcaggio ready to be merged!


New feature: Data Store(before PR)

What problem does this feature solve?
#3445: vue-router positionStore memory leak
reconstruct util/state-key
used window.performance.now() as the state key will reset when localtion reload, It may conflict with other hisotories
What does the proposed API look like?
router.setData(key, data)

key string
data any

router.getData(key)

key string
Returns: any

router.removeData(key)

key string

Online Demo:
https://hezedu.github.io/SomethingBoring/vue-router-positionstore-memory-leak/pr-demo.html#/
Why adding these new features?
Unlike window.history, vue-router has no API to change history.state.
But sometimes we need it to store some unique keys, like the positionStore.
So I replaced positionStore with dataStore. This way you can store more things.
And there is no need to develop state related APIs in the future.

That's a cool demo! Unfortunately, the router won't have an api to hold state like history.state, it has been discussed many times in different issues and in different routers.
The thing you are trying to improve in v3 is already improved in v4 by using history.state for both HTML5 history and hash history but that won't be possible in v3
The isPop is something that I plan on introducing through an RFC for Vue Router 4. It might be backported to v3 after that

That's a cool demo! Unfortunately, the router won't have an api to hold state like history.state, it has been discussed many times in different issues and in different routers.
The thing you are trying to improve in v3 is already improved in v4 by using history.state for both HTML5 history and hash history but that won't be possible in v3
The isPop is something that I plan on introducing through an RFC for Vue Router 4. It might be backported to v3 after that

isPop I have already cut off. Because I can distinguish back , forword, repalce or push in more detail.
This will be another PR (if this PR passes)

isPop I have already cut off. Because I can distinguish back , forword, repalce or push in more detail.
This will be another PR (if this PR passes)

Closing in favor of https://github.com/vuejs/vue-router/issues/3453 although it still needs to go through an RFC

Closing in favor of https://github.com/vuejs/vue-router/issues/3453 although it still needs to go through an RFC


Use {passive: true} for the scroll event listener

Hi,
Would it be possible to add an option (or maybe, always set it) so we could ad {passive: true} to the event listener ?
This would improve performance in many cases (and improve audits with tools like Lighthouse for instance)
I'm talking about this line :
https://github.com/eddiemf/vue-affix/blob/dba91fcb67fe2c34ef971ce0f67c304466bf5541/src/affix.vue#L479
Thanks !


Can't get text from clipboard (ConsoleApplication)

Preamble
To replicate the bug i run the below console application in debug mode, when console stop at frist ReadKey i go to notepad and copy some text. Then return back to console application and press enter (to trigger the ReadKey).
Breakpoint setted over "phrase" variable break execution and i can see that ClipboardService.GetText() return an empty stirng, even if i have put some text into the clipboard few second before. If i go back to notepad and press Ctrl+V the text placed in the clipboard is written (so there was text into the clipboard)

Visual Studio 2019 on Windows 10
[.NET 4.8]
TextCopy 4.3.1

static void Main(string[] args) { Console.ReadKey();       string phrase = ClipboardService.GetText();       Console.ReadKey();}
Describe the bug
If i try to use the library from a console application i can't read the clipboard content, every time it appear empty even if not.

sorry. i cant reproduce this. can you submit a failing test as a PR


Improving the CPU shares concept documentation

Explained the CPU shares concept used in Cloud Foundry with more details and example.

Thanks, @milkotodorov !


Azure aks install guide

Added installation instructions for Ondat on AKS under the Install section.
Removed azure-aks.md file from the Platforms section in favour of the Install section.

LGTM, let's wait for Maria's approval and we can merge :) (will notify Richa as well)


Support paths for scripts and filelists

implemented in https://github.com/adobdin/timmy/commit/e87b93fa43b546ed17c8216acb553ab8284c1a19


docs: fix missing .Body

Codecov Report

Merging #123 (d8effa8) into master (34c2e5c) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #123   +/-   ##
=======================================
  Coverage   82.78%   82.78%
=======================================
  Files          14       14
  Lines         999      999
=======================================
  Hits          827      827
  Misses        123      123
  Partials       49       49

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


return UnschedulableAndUnresolvable in PreFilter

This bug is supposed to be already fixed in: https://github.com/kubernetes/kubernetes/issues/119782

/cc @utam0k @shioshiota


Update README

Update the command in README example for running with docker

Thanks for the PR! The script name has changed, indeed. 💐
There is a big chunk of work in https://github.com/CosmWasm/wasmd/pull/293 and I want to avoid another rebase due to updates in master. Please bare with us for some more days before we can merge this.

@alpe Sure, thank you. :)


Avoid reexport.

See
https://github.com/microbit-foundation/micropython-microbit-stubs/pull/21
Closes #410

So before this change you see e.g.

and after

but the full docs for i2c.init still show pin20 and pin19 as the default params, unchanged.

Something similar applies to most of the microbit.X modules.


Stop Fermentation produces Internal Server Error

Just updated to 5073c38 and noticed a few issues.
Not related to the recent update, but I noticed that since adding the Stop Fermentation function for PicoFerm, any time the server is restarted, it automatically starts fermentation on the PicoFerm even if it was stopped before the server restart.
After updating to 5073c38, pressing Stop Fermentation produces an Internal Server Error:

Error log:
picobrew_pico.log

@sickchilly Likely a file exists in the Ferm Active folder from a previous session. It can be moved to the archive (although likely invalid JSON file then) and restart.

@sickchilly Likely a file exists in the Ferm Active folder from a previous session. It can be moved to the archive (although likely invalid JSON file then) and restart.

OK. There were a number of stale or disconnected sessions for PicoFerm-1. Deleting those allows start/stop fermentation for that device.

OK. There were a number of stale or disconnected sessions for PicoFerm-1. Deleting those allows start/stop fermentation for that device.

@sickchilly if there are no stale sessions in active directory fermentation won't auto start.
Glad with a fresh directory this works 👍

@sickchilly if there are no stale sessions in active directory fermentation won't auto start.
Glad with a fresh directory this works 👍


Version

Coverage decreased (-0.01%) to 96.93% when pulling e9ca3e67cff4c6acaf3061d06d6b288f73592416 on version into 45f3e9e88bc465a84125d3af7c6c4a8afacb8bef on master.

Coverage decreased (-0.01%) to 96.93% when pulling 2d2bce3b47203f62507fa461e92b90e9b30cde35 on version into 45f3e9e88bc465a84125d3af7c6c4a8afacb8bef on master.


Improve doc test coverage (java)

Adding tests. The only more or less substantial change is the fix for the javadoc configuration.

@bot-gradle test PRF, BD

OK, I've already triggered the following builds for you:

PullRequestFeedback build
BuildDistributions build

@bot-gradle test PRF

@bot-gradle test and merge

OK, I've already triggered a build for you.


Feature request - only show targetTimeEntity slots.

I have created a couple of intermittent target time entities, one for a 3 hour period and one for a 4 hour period.  Rather than show all slots with the cheapest shown in blue, would it be possible to only show the range of chosen slots.
So this:

rather than this:

Hope that makes sense thanks.

this is a bit of an edge case i think, but you can achieve this with card mod:
ideally you should configure the card to have only one column. tthen install card mod and add this to your card yaml:
card_mod:
  style: |
    tr.rate_row{ display: none;}
    tr.rate_row:has(.time_highlight) { display: block ;}

should give you this:

@corvus2606  @Daverover66 Still a hack, but I'd suggest the following code for a single column layout
table-row is the default display method for this table element
card_mod:
  style: |
    tr.rate_row{ display: none;}
    tr.rate_row:has(.time_highlight) { display: table-row;}

or for a 2 column grid try this
card_mod:
  style: >
    tr.rate_row{ display: none; }
    tr.rate_row:has(.time_highlight) { display: inline-block; width: 50%; }
    tr.rate_row .time_highlight { width: 100%; }


fix(TDI-37641): add ID field for Update and Delete actions

What is the current behavior? (You can also link to an open issue here)
https://jira.talendforge.org/browse/TDI-37641
Update schema may not have Id field.
Delete schema may contain more than 1 field - Id.
What is the new behavior?
Id field always present for Update action except dynamic schema.
Delete action contains only 1 field - Id
Changes only for design part.
Please check if the PR fulfills these requirements

[x] The commit message follows Talend standard
[x] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features) ?
[x] The code coverage on new code >75%
[x] The new code does not introduce new technical issues (sonar / eslint)

What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build / CI related changes
[ ] Other... Please describe:

Does this PR introduce a breaking change?

[ ] Yes
[x] No

If this PR contains a breaking change, please describe the impact and migration path for existing applications: ...
Other information:

Pull request test result: success :star:
Sonar results


IMAP - new mail notifications

New mail notifications while using imap worked for a while, and then stopped working. The script-connectionless does not get executed when new email arrives, when you push New Message button in options page or Message read button then it works fine. When i read message the callback gets called properly, i have noticed that new emails on imap came with event type 'start' not 'new' but this should not be a problem. i am using version 6.0-tb, on new one it does not see my favourited folder i want to be notified about, there are no visible errors.

@sphh Can you have a look since the issue is with the "extended" mode?

@electrotype: I noticed the same behaviour as described by @zbigniew-polito. I cannot remember with which Thunderbird version this started. IIRC it first became unreliable (not all new messages were displayed) and then it stopped to work completely. Does it still work with the simple script? But to  e honest, I will not find the time to look into this and debug it. So sorry.

@sphh Thanks for the feedback. Yes, the simple mode seems to work properly. I still use it myself every day so I'm ok with maintaining it.
Sadly, if you do not have the time to maintain the extended mode, I will have to indicate that it is not maintained anymore and that it may not work. I may also ask if someone is willing to fix it. I will not do it myself as I do not use this mode and don't have time/energy to maintain it.
@zbigniew-polito Feel free if you want to have a look and submit a PR.

I will try to debug it, for now I have restarted my computer, and it started working again.


Option to display always

It would be nice if there was an option to display the health estimate always, instead of only on hover. This would be particularly useful for in-person play, when it may not be convenient for players to mouse around a shared display.

Update: unfortunately, this isn't feasible with Health Estimate. https://discord.com/channels/170995199584108546/596076404618166434/863425753064144946


Unable to start jenkins-master

I am following this guide to set up a Jenkins CI cluster, but I was not able to run the the entire stack, it hanged up on jenkins-master and only shows Starting status. Looking into the docker-compose file, I noticed that volume_driver with value /var/jenkins_home is invalid since the value should be a volumes plugin. Is there any pre-requisite to accomplish this?

Have you seen the catalog entries for Jenkins? That is more up to date and works
@bilal @usmanismail Can you guys look at this issue? Upon closing, I'd like to eliminate being able to open issues in this repo and direct them to the rancher/rancher.

Hi,
if it's known bug could you please update docs on: http://rancher.com/deploying-a-scalable-jenkins-cluster-with-docker-and-rancher/ to point to use catalog version of jenkins?
regards,
p.


.travis.yml hard coded to v<IP_ADDRESS> - should also use latest

We only test against v8557. v8558 is available now. Brings into question - how many versions should we test against. I think current and previous is good enough.

I updated to <IP_ADDRESS> for now. If we test it with 2 Liberty versions and 2 JDKs that's 4 builds that will have to run. So, I think we need to choose say Java 7 with previous Liberty and Java 8 with latest Liberty?

+1 for that

Done.


Problem

When I run the demo, there have a problem. What's wrong?
ValueError: numpy.ufunc has the wrong size, try recompiling. Expected 192, got 216

Got the same issue, and solved by reinstalling numpy:
pip uninstall numpy
pip install numpy


ROC-AUC not working properly

Hi!
It's seems like function query_roc_auc not working properly in case when you have targets = [0, 1] and predictions = [0.5, 0.5].
Function returns -0.0 value, when it should return 0.5 value, as sklearn's roc_auc_score does it.
code to reproduce:
roc_auc_score([0, 1], [0.5, 0.5])

pl.DataFrame({"a": [0, 1], "b": [0.5, 0.5]}).select(pds.query_roc_auc(pl.col('a'), pl.col('b')))

Yea you are right..
The reason for this is that I didn't deal with the case when the predicted probability is a single value, which results in a single value for TPF and FPR, which messed up the area under curve calculation. (because to run a AUC approximation we need 2 points at least. I do need to append (0, 0) so that we always have 2 points in that case. )
Here is the fix: https://github.com/abstractqqq/polars_ds_extension/pull/283
This one seems already quite rare. It's good to cover more edge cases, but I cannot promise the current impl covers all.


GHC can no longer any link executables

Our ghc can no longer link executables. For example:
$ nix-env -iA ghc
$ cat test.hs
import System.IO

main :: IO ()
main = putStrLn "Hello, world."
$ ghc test.hs
Linking test ...
/nix/store/cl1i6bfqnx48ipakj4px7pb1babzs23j-binutils-2.31.1/bin/ld: cannot find -lelf
/nix/store/cl1i6bfqnx48ipakj4px7pb1babzs23j-binutils-2.31.1/bin/ld: cannot find -ldw
collect2: error: ld returned 1 exit status
`cc' failed in phase `Linker'. (Exit code: 1)

This issue is present in current versions of master. Compiling and linking works fine with an older revision, say 1a1a7ed26652545dc6a2e2bd02f7812e1b37d196.
It looks like this might be related to some change in binutils, maybe?

This is probably from https://github.com/NixOS/nixpkgs/commit/f4316473d94e0e5eff2736bd24dc802e09752771

Yes, it is. git bisect came to the same conclusion.

This probably is GHC bug though. Things like gmp and libiconv get their paths hardcoded so this isn't a problem. I would expect the same treatment for elfutils.

/cc @domenkozar

I guess now I know why there's a patch in @nh2 branch.

I'll reopen the PR fixing the linking issues.

I opened https://github.com/NixOS/nixpkgs/pull/69552 while we wait on upstream fix.

I guess now I know why there's a patch in @nh2 branch.

@domenkozar Which one, ./ghc-Require-libdw-for-enable-dwarf-unwind-fixed-comma.patch from https://github.com/NixOS/nixpkgs/pull/52255/files#diff-c90b207a56851dba68c66cf16a911e8eR167?

Yes, although it doesn't help. See https://gitlab.haskell.org/ghc/ghc/issues/17255

Yes, it would have surprised me a bit if it helped against that symptom -- my patch fixes that DWARF-enabling is skipped completely.

I'm surprised this worked for you back then and now there are linking errors.


[55789] make_tensor_proto() now respects byte order of numpy input arrays

Fixes Issue: https://github.com/tensorflow/tensorflow/issues/55789
Previously make_tensor_proto() did not respect byte order of numpy input arrays as demonstrated in this repro:
https://colab.research.google.com/gist/tilakrayal/cef07cf718456b6b07526ea38d73fb52/55789.ipynb
Now with these updates, the function takes into consideration the byte order of the system and input array and coerces the input array to match prior to utilizing it within the function.

@mjangstadt Can you please check @tomytsai1's comments and keep us posted ? Thank you!

@mjangstadt Any update on this PR? Please. Thank you!


Add missing config from spring boot upgrade

What and why?
How to test?
Trello

/deploy manna

/deploy manna

/deploy sinhaa


Set a description of the template

Hello, I followed the instruction in README to clone the template.
Apparently, flake.nix must be a valid Nix file even in the template, so I think you have to set the description.

I'm sorry, I'll close this one. I think it's okay.


COM-1167 Adds permissions to delete storybook github action

Please delete checklist items and sections that are not relevant
Checklist

[x] 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)
[ ] This change requires a documentation update

Please check if the PR fulfills these requirements

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Storybook or docs have been added / updated (for bug fixes / features)

Other information:
Looks like it missing permissions to be able to authenticate with google cloud

@tkanzakic one more thing regarding delete-storybook github action, missing permissions


Make theorist language more general

Description
make theorist introduction more inclusive (beyond brain and behavioral sciences) and open-ended (beyond DARTS and symbolic regression).
Type of change

docs: Documentation only changes

trivial change for a PR, but wanted to run by @musslick first


How to exclude junit.jar from the IntelliJ SDK

build.gradle:
intellij {
    version '2021.1.3'
    pluginName plugin_name
    updateSinceUntilBuild false
    downloadSources true
    sandboxDirectory "idea-sandbox"
    updateSinceUntilBuild false
    sameSinceUntilBuild false

    plugins = ['java']
}

I find two jars in the IntelliJ SDK:

I want to remove the junit.jar from the IntelliJ SDK, And keep the junit4.jar.
Any help would be very much appreciated. Thank you.

@tangcent This is not possible. All libraries provided by the IntelliJ IDEA are delivered within the zip archive with no possibility for exclusion, as in the case of regular Maven dependencies.
However, if you'd even be able to do that – there's no point in doing that. Both junit.jar and junit4.jar files will be in the classpath anyway during the runtime – when a testing plugin or running in an end-user environment, provided by IDE.


PrefetcherIter with worker_type='process' may hang

I noticed that using PrefetcherIter with worker_type='process' may leave the prefetching process hang. Specifically, if I do
kill $PARENT_PID

I will observe that the parent process exits, and that child process still runs. And the child process runs till https://github.com/dmlc/gluon-nlp/blob/master/src/gluonnlp/data/stream.py#L265-L271 and block there because the parent never calls __next__.
I'm a bit confused because the process is already marked as daemon=True, but it does not exit.

@leezu have u seen this before?

@eric-haibin-lin did you confirm the child processes exit correctly if you don't send TERM to the parent process but exit it via Python?

Maybe https://github.com/dmlc/gluon-nlp/blob/master/src/gluonnlp/data/stream.py#L265-L271 catches the KeyboardInterrupt exception?

Yes if I press control+c it exits successfully

I was experimenting with SIGTERM  because that's the way openmpi kills a worker, which might be an issue if we use horovod for distributed training


#1804 support skip first N lines for csv reader

What changes were proposed in this pull request?

[ ] Finshed changes describe

How was this patch tested?

[ ] Testing done

Are there and DOC need to update?

[ ] Doc is finished

Spark Core Compatibility

再次确认下，在本地 Notebook 中测试通过了对吧？ 另外，当前这个功能是没有测试代码的，相关的测试功能能不能安排在下一个sprint中？


Fix behaviour and ttl handling on consul coordination

Behavior and ttl are part of the message body instead of the query string.

Please fetch origin/master (or upstream/master or whatever you have called the main repo) and rebase your branch on top of it.

I think is ok now. Please check.

Thanks!


platform.is('cordova') returns true when running on the browser

Ionic version:  (check one with "x")
[ ] 1.x
[ ] 2.x
[x] 3.x
I'm submitting a ...  (check one with "x")
[x] bug report
[ ] feature request
[ ] support request
Current behavior:
When running a production build on the browser, checking platform.is('cordova') returns true. That is not the case when running in development mode (for example, in ionic serve)
Expected behavior:
AFAIK, platform.is('cordova') should only return true when run in a device as a packaged app.
Steps to reproduce:

ionic cordova build browser --prod
Serve the platform/browser/www folder via a web server

Related code:
A simple AppComponent to reproduce:
import { Component } from '@angular/core';
import { Platform } from 'ionic-angular';

@Component({
  template: ''
})
export class AppComponent {
  constructor(platform: Platform) {
    platform.ready().then(() => {
      console.log(`platform.is('cordova') === ${platform.is('cordova')}`);
    });
  }
}

Other information:
Ionic info: (run ionic info from a terminal/cmd prompt and paste output below):
global packages:

    @ionic/cli-utils : 1.0.0-rc.1
    Cordova CLI      : 6.5.0
    Ionic CLI        : 3.0.0-rc.1

local packages:

    @ionic/app-scripts              : 1.3.7
    @ionic/cli-plugin-cordova       : 1.0.0-rc.1
    @ionic/cli-plugin-ionic-angular : 1.0.0-rc.1
    Ionic Framework                 : ionic-angular 3.1.1

System:

    Node       : v7.9.0
    OS         : Windows 10
    Xcode      : not installed
    ios-deploy : not installed
    ios-sim    : not installed

Nevermind, I was making a cordova build for the browser platform so of course it detects it as Cordova.
For anyone else facing this, the correct way to build your app for the browser without Cordova is with npm run ionic:build -- --prod and then serving the contents of the www folder (not platform/browser/www).
Cheers, and sorry for the noise.
P.S.: doing it this way, platform.ready() never fires but that's expected.

What if I need to run the app with cordova?
Since there is the "mobileweb" tag, I expected that the platform.is('mobileweb') would be true.
Is there any way to check if I'm running in the browser or is the app in the mobile?


CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Description

Target

[x] I checked that the commit is targeting the correct branch (note that Camel 3 uses camel-3.x, whereas Camel 4 uses the main branch)

Tracking

[x] If this is a large change, bug fix, or code improvement, I checked there is a JIRA issue filed for the change (usually before you start working on it).

Apache Camel coding standards and style

[x] I checked that each commit in the pull request has a meaningful subject line and body.

[x] I formatted the code using mvn -Pformat,fastinstall install && mvn -Psourcecheck

This is a fix for automatically add the required deps and the required options (to be set) for secret refresh, so for example we could do something like
camel export --secrets-refresh --secrets-refresh-providers=AWS,GCP,Azure --runtime=quarkus --gav=org.oscerd.camel:test:1.0.0-SNAPSHOT --directory=./test/

And we could maybe add a section to the doc about this feature (see camel-jbang in docs folder).
And since we have 3 providers now we could also add them in the option description: (aws,azure,gcp)

Ok, I'm going to set as possible values aws, gcp and azure, and later I'll add the doc. Thanks.

Ok, I'm going to set as possible values aws, gcp and azure, and later I'll add the doc. Thanks.

Done.


[Idea] Customizable Verifiers

Many of the objects in the SDK need to be verified. This process can include steps such as:

Making sure a given signature is valid
Making sure the data complies with the spec object model
Making sure the data is not expired or revoked
Making sure the data is issued from/to expected parties
Making sure the data complies with a given schema
Probably more!

The idea is to create a Verifier, possibly using a builder pattern, that allows a developer to build "verifiers" for each object they wish to verify, including whichever checks they care about - and having the option of adding additional checks not provided by this project.

Done in #217


Janusgraph filter query sometimes not served by index.

Steps to reproduce

Import 50 to 100k things
Run simple filter query, such as

{
  Local {
    Get {
      Things {
          Place (where: {
          path: ["geoLocation"],
          operator: WithinGeoRange,
          valueGeoRange: {
            geoCoordinates: {
              latitude: 48.5,
              longitude: 9.2,
            },
            distance: {
              max: 20.00
            }
          }
        }) {
          name
        }
      }
    }
  }
}

Expected Results
The query is efficient, as Janusgraph makes proper use of its indices
Actual results
The query is very inefficient, Janus decides to iterate over the entire Graph.
Analysis
It seem the following query runs fine:
.and(has("prop_17", geoWithin(Geoshape.circle(48.462761, 8.412090, 20.000000))))

However, the query we use, doesn't:
.union(has("prop_17", geoWithin(Geoshape.circle(48.462761, 8.412090, 20.000000))))

As outlined in the analysis section, I'm investigating now whether we can simply replace the union() with and() in the affected queries.


Do not adjust node position when created under mouse cursor.

Pull Request Description
Fixes #7064
Because our position adjusting mechanism was very confusing for users, especially on edge drops, this PR disables this adjusting for the cases where node is about to be put under the mouse pointer.
Important Notes
Checklist
Please ensure that the following checklist has been satisfied before submitting the PR:

[x] The documentation has been updated, if necessary.
[ ] Screenshots/screencasts have been attached, if there are any visual changes. For interactive or animated visual changes, a screencast is preferred.
[x] All code follows the
Scala,
Java,
and
Rust
style guides. In case you are using a language not listed above, follow the Rust style guide.
All code has been tested:

[x] Unit tests have been written where possible.
[x] If GUI codebase was changed, the GUI was tested when built using ./run ide build.

QA: Passed 🟢


[newrelic-logging] Document ability to set 'podAnnotations' via values.

Is this a new chart
No
What this PR does / why we need it:
I was looking to add annotations to the resulting Pods created by the DaemonnSet, and then realized the option was already there, just undocumented. This documents the ability to set podAnnotations.
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[ ] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [mychartname])

 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.

@newrelic/logging anything blocking this?


✅ Record number of objects, test hashes and folder properties

Interestingly, the suffix has an impact on the hash of the directory on my Mac, but not on the GA worker:

No, I can't confirm this by testing in our hash tests:
def test_compute_hash():
    files = [
        # file_content, hash, chunk_size, hash_type
        ("a", "DMF1ucDxtqgxw5niaXcmYQ", None, "md5"),
        ("b", "kutf_uauL-w61xx3dTFXjw", None, "md5"),
        ("abc", "kAFQmDzST7DWlj99KOF_cg", None, "md5"),
        ("a", "DMF1ucDxtqgxw5niaXcmYQ", 1, "md5"),
        ("b", "kutf_uauL-w61xx3dTFXjw", 1, "md5"),
        # the last case here triggers multi-chunk compute with sha1
        ("abc", "p0EbDbQEP1wS-Tw6TuBjKS", 1, "sha1-fl"),
    ]
    for content, hash, chunk_size, hash_type in files:
        filepath = Path("file_1")
        filepath.write_text(content)
        computed_hash, computed_hash_type = hash_file(filepath, chunk_size=chunk_size)
        assert computed_hash == hash
        assert computed_hash_type == hash_type
        filepath.unlink()

Hi, i saw some comments about problems with hashes, but can't see them anymore. Was it resolved.

Hi, i saw some comments about problems with hashes, but can't see them anymore. Was it resolved.

Yes, it's resolved! I just had forgotten to sort the output of .glob(*) before hashing it.


Update dependencies in shrinkwrap

!star

Coverage remained the same at 82.765% when pulling bb6f487a78be82f42291687e764e3536cbd78252 on deps into 0569ef38b485c1281d61b0e4a021f4c14641e738 on master.


Data not refreshed automatically

Hi,
nice integration. Been actually wanting to make one myself once the M5 gets the local api but nice to see others are also interested.
I noticed that the integration only refreshes the data about once a day, is this an api limitation or an issue in the integration? I don't really need the integration when it only shows me the current nightly values since that's when it updates.
Thanks

Confirmed via Discord to be a bug currently

I was answering here too ^^' I was saying...
It's more than probably an issue with the integration. As my very first HA integration it still has some things to workaround. One is the update issue, that will need to review how the data fetch is done. I thought I made it to be updated every 10 minutes, but since I'm an HA newbie, I probably messed something (see https://github.com/elboletaire/ha-weatherxm/blob/main/custom_components/weatherxm/init.py#L45).
I'm on vacation right now, so I'm probably not gonna be able to work on this for a week or two, but feel free to open a PR if you want.

Just installed this yesterday and experienced the sme thing, had to reload the integration for it to update.
Have a good vacation, letäs hope you can fix it later :)

Awesome you created an hacs app for it! i never get the time to do it so thanks! :-)
work around for the reload data.
`alias: WeatherXM - Reload data
description: ""
trigger:

platform: time_pattern
minutes: /10
condition: []
action:
action: homeassistant.reload_config_entry
data: {}
target:
entity_id: weather. station name.
mode: single
`

how can i add this automation?

how can i add this automation?

Check the official HA documentation https://www.home-assistant.io/getting-started/automation/

thank you, i got it!

I think it's an authorization issue. I will need to review the code and the API documentation to see if I should be refreshing the authentication token (something quite common in REST APIs), but given the error I've just seen in my HA instance, it would make sense and explain why reloading it works (it requests a new auth token).


Sentry plugin

For now, mostly for time reasons, I'm adding plugins to this repo and having them track Routemaster releases directly.

Coverage increased (+0.6%) to 99.149% when pulling 1269b55cbaeb9e737b7270ef9dd02b2a8a4373c0 on sentry-plugin into b6a3db4bb49f879613c2008a46c4be95a471711e on logging-plugins.


controller, deploy, scheduler, types: support Data Locality option to keep a replica local to the engine

Migrate replica to the same node as engine:
Give the user the option to keep a local replica to be on the same node as the volume engine. If a volume is attached to a node that has no replica, the Volume Controller will start rebuilding the replica on the node after the volume is attached. Once the rebuilding process is done, it will randomly remove one of the other replicas to keep the replica count as specified.
Currently, we support 2 data locality modes: disabled and best-effort. We allow users to change the global default data locality setting in Longhorn UI. The global setting should only function as a default value, like replica count. It doesn't change any existing volume's setting. We also allow users to change data locality setting for individual volume and expose the data locality setting as a parameter on the Storage Class
In the future, we might consider the modifying/extending scheduler approaches or adding PV soft affinity by summit a PR into Kubernetes upstream (See more discussion in the issue longhorn/longhorn#1045). However, we only move replica in v1.1.0
longhorn/longhorn#1045

@shuo-wu

I am thinking if we really need to actively delete the extra redundant replica after the local replica becoming running. Right now we will retain the replica when a volume is scaled up then scaled down.

I also thought about this and I think that we need to delete the extra redundant replica in this case. The reason is that pod can move around the cluster. Each time it moves to a new node, Longhorn will migrate a local replica to the node. In the long run, the pod possibly moves around the whole cluster and if we don't delete the extra replica, we will end up with having replica on all nodes. This destroys the purpose of having a local replica which is keeping the network usage in the cluster down. How do you think?

@shuo-wu

I am thinking if we really need to actively delete the extra redundant replica after the local replica becoming running. Right now we will retain the replica when a volume is scaled up then scaled down.

I also thought about this and I think that we need to delete the extra redundant replica in this case. The reason is that pod can move around the cluster. Each time it moves to a new node, Longhorn will migrate a local replica to the node. In the long run, the pod possibly moves around the whole cluster and if we don't delete the extra replica, we will end up with having replica on all nodes. This destroys the purpose of having a local replica which is keeping the network usage in the cluster down. How do you think?

Yeah. It's better to remove the redundant replicas in this case. And it would be better to if we add priority for the replica removal. e.g., Remove the redundant replicas if there are more than 1 replicas on the same zone/node/disk.

We can also implement the Kubernetes Scheduler Extender for the new volumes after the setting is enabled. Then I can apply 2 modes for the new related pods: restrict data locality or best effort.

For the old volumes, it seems that the new field v.Spec.DataLocality can be empty. Is it acceptable?

@shuo-wu It should be ok. When v.Spec.DataLocality  is empty, we treat it the same as having v.Spec.DataLocality=disabled

There is a conflict that needs to be fixed.

@yasker The conflict is resolved

I assume @joshimoo is OK with merging this since all the issues raised have been solved.


[Doc]: Documentation doesn't cover anyuid requirement on OpenShift

Contact Details
<EMAIL_ADDRESS>Page(s) impacted
Deployment of DX on OpenShift environment
What is the issue?
Deploying to OpenShift needs some policy tweak of the OpenShift Project/Namespace where DX is deployed.
Specifically we found that wihtout the anyuid flag added to the:

default service account of the namespace
dx-runtime-controller service account created by the deployment

some services fail to start.
We used the following commands after perfomring the helm install operation

oc adm policy add-scc-to-user anyuid system:serviceaccount:[project name]:default
oc adm policy add-scc-to-user anyuid system:serviceaccount:[project name]:[dx-deployment]-dx-runtime-controller-[dx-deployment]

Version
Kubernetes deployment - Helm charts

Just fyi .. I've added the following annotations to the namespace instead:
   openshift.io/sa.scc.supplemental-groups: 1001/10000     openshift.io/sa.scc.uid-range: 1000/10000


[0.5pt] Add README for the front-end

Create the README for the front-end

Implemented in this PR https://github.com/piero-vic/house-booking-front-end/pull/11


fix(ui): check requestFullscreen function when screen rotation event

Related
#4669
Problem
We recently added a check to see if it supports full screen when rotating the screen.
However, although the result of the isFullScreenSupported function on iPhone iOS is true, there is still a bug.
I checked and found that video.webkitSupportsFullscreen is true, but video.requestFullscreen is undefined.

Thank you for the review.
An error occurred when I tried to enter fullscreen before the user's interaction, so I added error handling.
Thank you!

There are too many errors in the application log, so I want to solve them as soon as possible. 😢
Thank you! @joeyparrish


extensions.cmake: need a unique string, not a random one

To support being called multiple times, the function
zephyr_library_compile_options() uses unique
options_interface_lib_${random} names. These only need to be unique, not
random. So replace them with a simple MD5 hash of the ${item} argument.
To reproduce quickly run:
sanitycheck -b -p qemu_xtensa --tag shell
... a few times and compare the output directories.
This bug sits for now at the top of the list of build reproducibility
issues the most bizarre and difficult to root cause. When running
sanitycheck over a large sample of configurations it was affecting
only qemu_xtensa/**/zephyr/arch/arch/xtensa/core/startup/Makefile
files (and their corresponding CMakeFiles/TargetDirectories.txt),
randomly ordering the following three Make targets and only these
three: rebuild_cache, edit_cache, arch__xtensa__core__startup.
The key to root causing was cmake --trace-expand which prints the random
string.
Signed-off-by: Marc Herbert<EMAIL_ADDRESS>

Wrong account sorry (didn't know you create a pull request for someone else)

Codecov Report

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

@@           Coverage Diff           @@
##           master   #14772   +/-   ##
=======================================
  Coverage   52.51%   52.51%
=======================================
  Files         309      309
  Lines       45048    45048
  Branches    10419    10419
=======================================
  Hits        23657    23657
  Misses      16583    16583
  Partials     4808     4808

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 1f6ab22...f7258dc. Read the comment docs.


Endpoints are not found when the application is build

Hello,
I added the extension to my project but once deployed, I can't access the endpoints to get the loggers for instance. It works locally.
curl localhost:8090/q/logging-manager returns a 404
Is there something specific to do to have the endpoints?
pom.xml
        <dependency>
            <groupId>io.quarkiverse.loggingmanager</groupId>
            <artifactId>quarkus-logging-manager</artifactId>
            <version>2.1.4</version>
            <scope>runtime</scope>
        </dependency>

application.properties
quarkus.logging-manager.openapi.included=true
quarkus.logging-manager.ui.always-include=true

After spending more time to dig into this issue, it was finally a mistake from me
Sorry
Thanks for your work with this tool


There is a stack-based buffer overflow in the ReadNextStructField function of mat5.c(at 1393)

A crafted input will lead to crash in mat5.c at matio 1.5.17.
Triggered by
./matdump POC
Poc
002-stackover-ReadNextStructField-mat51393
The ASAN information is as follows:
./matdump 002-stackover-ReadNextStructField-mat51393
InflateArrayFlags: inflate returned data error
InflateRankDims: inflate returned data error
InflateVarTag: inflate returned data error
InflateVarTag: inflate returned data error
      Rank: 0
InflateRankDims: inflate returned data error
=================================================================
==32164==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7ffcc03efb10 at pc 0x7f0ff115f208 bp 0x7ffcc03ef900 sp 0x7ffcc03ef8f0
READ of size 4 at 0x7ffcc03efb10 thread T0
    #0 0x7f0ff115f207 in ReadNextStructField /home/matio_asan/src/mat5.c:1393
    #1 0x7f0ff1219e10 in Mat_VarReadNextInfo5 /home/matio_asan/src/mat5.c:4959
    #2 0x7f0ff123046b in Mat_VarReadNextInfo /home/matio_asan/src/mat.c:2342
    #3 0x408126 in main /home/matio_asan/tools/matdump.c:944
    #4 0x7f0ff0a0b82f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2082f)
    #5 0x401b58 in _start (/usr/local/matio_asan/bin/matdump+0x401b58)

Address 0x7ffcc03efb10 is located in stack of thread T0 at offset 352 in frame
    #0 0x7f0ff115d8d6 in ReadNextStructField /home/matio_asan/src/mat5.c:1212

  This frame has 5 object(s):
    [32, 40) 'nelems'
    [96, 104) 'nelems_x_nfields'
    [160, 168) 'dims'
    [224, 248) 'buf'
    [288, 352) 'uncomp_buf' <== Memory access at offset 352 overflows this variable
HINT: this may be a false positive if your program uses some custom stack unwind mechanism or swapcontext
      (longjmp and C++ exceptions *are* supported)
SUMMARY: AddressSanitizer: stack-buffer-overflow /home/matio_asan/src/mat5.c:1393 ReadNextStructField
Shadow bytes around the buggy address:
  0x100018075f10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x100018075f20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x100018075f30: 00 00 00 00 00 00 f1 f1 f1 f1 00 f4 f4 f4 f2 f2
  0x100018075f40: f2 f2 00 f4 f4 f4 f2 f2 f2 f2 00 f4 f4 f4 f2 f2
  0x100018075f50: f2 f2 00 00 00 f4 f2 f2 f2 f2 00 00 00 00 00 00
=>0x100018075f60: 00 00[f3]f3 f3 f3 f3 f3 f3 f3 00 00 00 00 00 00
  0x100018075f70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f1 f1
  0x100018075f80: f1 f1 04 f4 f4 f4 f2 f2 f2 f2 04 f4 f4 f4 f2 f2
  0x100018075f90: f2 f2 00 f4 f4 f4 f2 f2 f2 f2 00 f4 f4 f4 f2 f2
  0x100018075fa0: f2 f2 00 00 00 f4 f2 f2 f2 f2 00 00 00 00 00 00
  0x100018075fb0: 00 00 f3 f3 f3 f3 f3 f3 f3 f3 00 00 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07
  Heap left redzone:       fa
  Heap right redzone:      fb
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack partial redzone:   f4
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
==32164==ABORTING

about code (1393):
/* Rank and dimension */
                if ( uncomp_buf[0] == MAT_T_INT32 ) {
                    int j;
                    fields[i]->rank = uncomp_buf[1];
                    nbytes -= fields[i]->rank;
                    fields[i]->rank /= 4;
                    fields[i]->dims = (size_t*)malloc(fields[i]->rank*
                                             sizeof(*fields[i]->dims));
                    if ( mat->byteswap ) {
                        for ( j = 0; j < fields[i]->rank; j++ )
                            fields[i]->dims[j] = Mat_uint32Swap(dims+j);
                    } else {
                        for ( j = 0; j < fields[i]->rank; j++ )
-------------------> fields[i]->dims[j] = dims[j];
                    }

No need to report fuzzing issues since matio is on OSS-Fuzz with still about 40 open issues.
Instead of v1.5.17, please rerun the test against current master and reopen if the issue is still reproducible.

No need to report fuzzing issues since matio is on OSS-Fuzz with still about 40 open issues.
Instead of v1.5.17, please rerun the test against current master and reopen if the issue is still reproducible.

Yes, I just use 'git clone' to fetch the current master of the matio,the issue is still reproducible.

i 'm sure the issue is different from the fuzzing issues on OSS-fuzz.

Should be fixed now.

CVE-2019-20020 has been assigned for this issue.

OK, need to mention those CVE numbers in the changelog when making the new release.


New package: Jubler.App version 7.0.3

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

[x] Does your manifest conform to the 1.5 schema?

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

Microsoft Reviewers: Open in CodeFlow

@microsoft-github-policy-service agree [company="{Panayotis Katsaloulis}"]

@microsoft-github-policy-service agree

@microsoft-github-policy-service agree company="Panayotis Katsaloulis"

Automatic Validation ended with:

Exception during executable launch operation System.AggregateException: One or more errors occurred. (An error occurred trying to start process 'C:\Program Files\Jubler\Jubler.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform.)  ---> System.ComponentModel.Win32Exception (216): An error occurred trying to start process 'C:\Program Files\Jubler\Jubler.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform.    --- End of inner exception stack trace ---    at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) Exception during executable launch operation System.AggregateException: One or more errors occurred. (An error occurred trying to start process 'C:\Program Files\Jubler\jre\bin\java.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform.)  ---> System.ComponentModel.Win32Exception (216): An error occurred trying to start process 'C:\Program Files\Jubler\jre\bin\java.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform. Exception during executable launch operation System.AggregateException: One or more errors occurred. (An error occurred trying to start process 'C:\Program Files\Jubler\jre\bin\javaw.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform.)  ---> System.ComponentModel.Win32Exception (216): An error occurred trying to start process 'C:\Program Files\Jubler\jre\bin\javaw.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform. Exception during executable launch operation System.AggregateException: One or more errors occurred. (An error occurred trying to start process 'C:\Program Files\Jubler\jre\bin\keytool.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform.)  ---> System.ComponentModel.Win32Exception (216): An error occurred trying to start process 'C:\Program Files\Jubler\jre\bin\keytool.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform. Exception during executable launch operation System.AggregateException: One or more errors occurred. (An error occurred trying to start process 'C:\Program Files\Jubler\jre\bin\rmid.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform.)  ---> System.ComponentModel.Win32Exception (216): An error occurred trying to start process 'C:\Program Files\Jubler\jre\bin\rmid.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform. Exception during executable launch operation System.AggregateException: One or more errors occurred. (An error occurred trying to start process 'C:\Program Files\Jubler\jre\bin\rmiregistry.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform.)  ---> System.ComponentModel.Win32Exception (216): An error occurred trying to start process 'C:\Program Files\Jubler\jre\bin\rmiregistry.exe' with working directory 'D:\TOOLS'. The specified executable is not a valid application for this OS platform.

@wingetbot waivers Add Validation-Executable-Error


v0.2.0 Todo List

[x] Add CORS so we can use API stuff on Web (then make a build for Tanay :P)
[x] https://github.com/BlueBubblesApp/bluebubbles-server/issues/193
[ ] Settings & Theming import / export endpoint
[ ] Settings limit and offset on get-chats doesn't return particpants
[ ] Sort get-chats by lastMessageDate
[ ] Send server stats (messages, top group, etc) in server-metadata request
[x] Fix localtunnel doesn't work with API
[ ] Change get-contacts-from-db socket to just take a list of strings rather than the Handle object itself, and find a good way to return the first and last names so it can be easily parsed client side

[ ] update themes repo with folders for screenshots

Finished endpoint to check for a server update

*[] fix private API status in server metadata

I added 3 endpoints to fetch server statistics from

Added a "sort" parameter to the post to /chat/query which you can pass it "lastMessage" to sort by that created field

get-contacts-from-db should take both a list of dicts or strings