404 NOT_FOUND error on gcrcleaner server

After running all steps from documentation, the cloud run service is invoked but the server is returning a 404 NOT_FOUND error:
{
  "insertId": "tfdh11g24kbcwb",
  "jsonPayload": {
    "targetType": "HTTP",
    "jobName": "projects/my-test-project/locations/europe-west3/jobs/gcrclean-myimage",
    "url": "https://gcr-cleaner-uoq2gx4ada-uc.a.run.app/",
    "@type": "type.googleapis.com/google.cloud.scheduler.logging.AttemptFinished",
    "status": "NOT_FOUND"
  },
  "httpRequest": {
    "status": 404
  },
  "resource": {
    "type": "cloud_scheduler_job",
    "labels": {
      "location": "europe-west3",
      "project_id": "my-test-project",
      "job_id": "gcrclean-myimage"
    }
  },
  "timestamp": "2021-04-02T09:05:29.742451978Z",
  "severity": "ERROR",
  "logName": "projects/my-test-project/logs/cloudscheduler.googleapis.com%2Fexecutions",
  "receiveTimestamp": "2021-04-02T09:05:29.742451978Z"
}

BTW:

I'm having the same error on local server:

❯ docker run -e GCRCLEANER_TOKEN="$(gcloud auth print-access-token)" -p 8080:8080 gcr.io/gcr-cleaner/gcr-cleaner
server is listening on 8080

❯ curl -X POST 'http://<IP_ADDRESS>:8080' -d '{"repo": "eu.gcr.io/my-test-project/test/nginx"}'
404 page not found

No error using local cli:

❯ docker run -e GCRCLEANER_TOKEN="$(gcloud auth print-access-token)" gcr.io/gcr-cleaner/gcr-cleaner-cli --repo eu.gcr.io/my-test-project/test/nginx --grace 24h
eu.gcr.io/my-test-project/test/nginx: deleting refs since 2021-04-01 09:29:19.0290284 +0000 UTC
eu.gcr.io/my-test-project/test/nginx: successfully deleted 0 refs%

Could you please tell if I'm missing any configuration and is there a way to debug server's incoming requests?
Best,

missed configuration

missed configuration


Remove link redirected to legacy for old meetings

As discussed at today's web meeting, this removes the link which is being redirected to legacy for the old meeting content

Grepping this is the only link to the /site/ URLs that isn't a docs URL being redirected to docs.openmicroscopy.org separately.


Cannot set the same Access-Control-Allow-Headers values in apache setting?

I set Access-Control-Allow-Headers in apache conf as:
Header set Access-Control-Allow-Headers "X-Requested-With"
Then set the same value in laravel-cors config:
'allowed_headers' => ['X-Requested-With']
Then requests will be CORS blocked.
What't the reason of this?

Either set them in Apache, or use this module. Not both.


Custom Values Screen

A custom menu for the values ingot, and perhaps a keyboard key to open it.
It will have have every value, but with immediate editing possible before you get it.
For example, a vector would have three numbers inputs, which could be typed into, have the scroll wheel used, dragged left/right or up/down to change and finally clicking on the vector item should give the item.

clicking an empty slot has an insert menu


Create validate argv function (identify repetition, not avaiable chars...)

Still need to validate this :
some arguments are bigger than an integer


Ford F150 - Car Unrecognized - Iso-tp errors

Describe the bug
Received Car Unrecognized - FW Query and Iso-tp errors 09136c309ba9461d|2023-07-21--16-18-33
Which car does this affect?
Ford F150
Provide a route where the issue occurs
09136c309ba9461d|2023-07-21--16-18-33
openpilot version
.94
Additional info
No response

can you get a drive on master?

Observation: I went for 2 drives before this error occurred. Here is one of those drives.
09136c309ba9461d|2023-07-21--17-11-46
When I went back out a few hours later it took the C3 to boot up longer than normal and from there on it was Car Unrecognized. Nothing had changed in-between that time.
Just reinstalled master and no issue, strange.
09136c309ba9461d|2023-07-21--20-02-05
What do you expect was the issue?

Works fine on master, make sure you update your fork branch and try again. You can message me on Discord if it doesn't work again

Nope, I did see one of my restarts said "Communication error" though. I understand on your side that master works. However I'm still scratching my head about what it could of been. I won't spend too much time on it and just see if it happens again.

Fingerprint issues again but on master this time. It's when I start the vehicle and the C3 has to boot up. I powered cycled the vehicle and it registered the Fingerprint on the second one.
Route that experienced Car Unrecognized.
09136c309ba9461d|2023-07-22--09-30-18

Can you put your device on WiFi to upload the route?

The rlog for that route was wiped when I moved branches, unfortunately. I've DMed you on Discord with some additional information.

It appears that it is common for the ECUs to be sending diagnostic responses while starting up, so it's probable our requests are getting ignored.

It appears that it is common for the ECUs to be sending diagnostic responses while starting up, so it's probable our requests are getting ignored sometimes. In the latest route you gave me though, it did respond to the engine query, but only in ISO-TP CAN FD mode, so we didn't parse it:

The panda PR adding CAN FD ISO-TP support should fix this: commaai/panda#1524

How are you seeing this data? I've looked through the useradmin panel and haven't seen this data format.

I've implemented the UDS fix that @sshane  has a PR for, and while it does return more queries, my vehicle still fails to fingerprint most of the time. https://github.com/commaai/panda/pull/1524
Observation: No one with a C3X has this issue on the CAN-FD platform. Looking at all their queries, they return on bus 0 or bus 1. In comparison, most of my queries return on bus 4.


Design Work for Unity data archive services

https://github.com/unity-sds/unity-project-management/issues/46
Design this and get feedback from U-DS team ahead of 24.3 PI Planning.

Above is the design (so far) for the archive service components.
Note 1: the components are logical. if we can re-use things that currently exist (e.g. databases) that is fine, but i think they'll probably need a separation of concerns.
Note 2: This also assumes the autocatalog componet is in place, though minimal changes would be needed if it's not in palce.
After a successful catalog operation, the Cumulus instance will send an SNS response message to any SNS topic listed in the Cumulus collection configuration. For archivable products, the 'archive service' SNS topic will be added to the cumulus collection configuration (how?).
The archive service will have an archiver function that processes CNM messages from the topic/queue. its job is to map the fields in the CNM it receives to a DAAC CNM message. It must also map from the MDPS product type to the DAAC product type. This information needs to be provided by the project (How?). The archiver might need access to the product or stac catalogs to properly create the CNM.
The archiver needs to generate an identifier and use that in the CNM sent to the DAAC. it will store this information and the granule/product information (e.g. uri, project, venue, anything else of value). It will then send the CNM to the DAAC.
The archive service will have an SNS/Queue setup to retrieve messages from one or more DAACs. Upon reciept, the Archive Status function uses the identifier embedded in the CNM to determine the status of a archive job (success, error). It will also handle de-duplicaiton of returned CNM messages if necessary. This function updates the database as well as the data catalog with the archive information.
Open questions:

do we update the cumulus database schema to host archive information (e.g. archive status (in progress, success, error, not-for-archive)? Or should it be a link to a record in the archive service?
Eventually we might want to "clean up" files in the project venue once archived and pull them back when needed. How would we enable that? Would we update the U-DS data catalog with the granule locations?
Whats the error scenario? If a file is not configured correctly to send to a DAAC (e.g. missing required metadata) or If a file fails ingest at the DAAC, it's easy enough to have a flag in the archive DB of that, but how do we notify the operator? This same question probably arrises in the automatic cataloging scenario when an error occurs.

Need to think of the "manual" process for archival (e.g. non-forward stream). I suppose this is essentially submitting jobs to the archive service, but is that done via CNM? an API? a prerequisite for our archive process is that the data must be cataloged in the U-DS first.

I think the main concern is getting enough data to generate the CNM to send to the archive. Not sure what the CNM messages we are sending after a successful (or unsuccessful) catalog look like. i'd assume it's missing some required information:

DAAC Collection
file checksums
file sizes
data version
Mapping the files in the U-DS to the files (and their subtypes) needed at the DAAC.

All of that might be in the STAC catalog, or we can enable extensions to capture it.

William and I looked this over at UDS tag up and we have some initial thoughts / questions.

What if the project only archives a subset of the files (data and metadata) for a granule at the DAAC? Do we want to clean up all files (data, metadata, other metadata, log, etc.) or save the files that were not archived at DAAC?
For forward stream, user can update the collection via API to turn on DAAC delivery and provide required information such as DAAC collection, DAAC SNS.
For non-forward stream, user can search for UDS granules they want to send to DAAC and invoke an archive API with the same search parameters.

From some recent MAAP meetings it seems there's some change afoot to provide guidance on what gets DAAC'd and what does not.
I think that VEDA will also start to shape some NASA policy around what's catalogued local to a SDS and what goes into a DAAC. Integration with VEDA (which is basically STAC) is something we should look at.

(note: VEDA is not a data archive)

@ngachung

What if the project only archives a subset of the files (data and metadata) for a granule at the DAAC? Do we want to clean up all files (data, metadata, other metadata, log, etc.) or save the files that were not archived at DAAC?

this is explicitly why we are separating the archive of files from the storage of files. the configuration for archival needs to be the thing that knows what is sent to an archive and what is not, if they are limited. For example, maybe the stac entries are updated to include "archive" as an asset-role. let's be simple at first, but keep that in mind for the archive configs.


Add CONTRIBUTING guide

Add a new title template variable
Use the new title variable in the README template
Add basic CONTRIBUTING.md template
Add API-specific sections to the CONTRIBUTING template

Fixes #10.

@tiyash-basu-frequenz @stefan-brus-frequenz added you because it includes instructions for APIs. I based it on the instructions from the microgrid API but adapted it to when repo-config is used, as there are a few steps that are not necessary with repo-config, please have a look in case I missed something.
In the future we might have the common docs in one place instead of copy&pasting on every project, and just make the local CONTRIBUTING.md point to the common and and only add stuff that is particular to this one project (if any).  But as for the user experience, having all in one file instead of having to jump around between different files to get the info has also its advantages. I guess we'll need to see how bearable will be to update existing projects by regenerating the templates to get new stuff.

Updated to fix the wrong wording, added protolint recommendation and a "Python setup" section but only for "API" repos.

Force-merging as I had a :shipit: from @tiyash-basu-frequenz


add lua output to xxd

Problem: currently xxd can only output C code
Soution: add "-L" an option to output Lua code.
other parameters: variable name, capitalization, number of columns etc. should be used in a similar way.
closes: #15685

Thanks, but I am a bit unsure. lua seems a bit niche. Is this really useful?

Thanks, but I am a bit unsure. lua seems a bit niche. Is this really useful?

asked a wide audience in the lua community: https://www.reddit.com/r/lua/comments/1fi9jus/embedding_binary_strings_in_code/
must admit that there is no clear indication that this is a "must have" feature for lua devs

closing based on above comments


[python] Add script interface for node discovery in REPL

Problem
Script API for DNS-SD discovery in REPL is missing
Change overview

Implements devCtrl.DiscoverCommissionableNodes(...)
Implements devCtrl.GetDiscoveredCommissionableNodes(...)
Updates the ipynb guide

Note: The returned CommissionableNode has a Commission method to commmission it directly.
Example (also in the ipynb doc)
In [1]: devices = devCtrl.DiscoverCommissionableNodes(filterType=chip.discovery.FilterType.LONG_DISCRIMINATOR, filter=3840, stopOnFirst=True, timeoutSecond=2)
   ...: devices
Out[1]:
[
│   CommissionableNode(
│   │   (To Be Commissioned By)='caIndex(1)/fabricId(0x0000000000000001)/nodeId(0x000000000001B669)',
│   │   CommissionableNode(
│   │   │   instanceName='A73CD79C9F59134F',
│   │   │   hostName='DCA632ABCDEF0000',
│   │   │   port=5540,
│   │   │   longDiscriminator=3840,
│   │   │   vendorId=65521,
│   │   │   productId=32769,
│   │   │   commissioningMode=1,
│   │   │   deviceType=0,
│   │   │   deviceName='',
│   │   │   pairingInstruction='',
│   │   │   pairingHint=33,
│   │   │   mrpRetryIntervalIdle=5000,
│   │   │   mrpRetryIntervalActive=300,
│   │   │   supportsTcp=True,
│   │   │   addresses=[
│   │   │   │   'fd1e:1a94:d591:6914:dea6:32ff:feab:cdef',
│   │   │   │   'fe80::dea6:32ff:feab:cdef',
│   │   │   │   '<IP_ADDRESS>'
│   │   │   ]
│   │   )
│   )
]

In [2]: devices[0].Commission(233, 20202021)
Established secure session with Device
Commissioning complete

In [3]:

Testing
The tests is using DiscoverCommissionableNodes instead of the old API now.

Accepting in master as a python platform only although that is a bit of a stretch.
Reality is this has been open for a very long time and is updating testing only, so allowing it to merge.


Tangram should provide a mechanism to capture the current screen contents

This is to enable programmatic screenshot captures and other raster-generation functionality. The interface can be very simple and generic:
C++
// Always return 32 bit RGBA pixel data
std::vector<uint8_t> getScreenPixels();

Java
// Return an android.graphics.Bitmap
Bitmap getScreenPixels();

These will only be callable from the main thread, so we can make a synchronous draw pass in here if needed. If we find that this is too slow then we can consider another callback here. These methods make no guarantee that the view is complete, we'll have a separate listener for that.

Resolved for Android API via #686


14 Nov 2024 - A11y Theme Builder Meeting Minutes

Date
2024-11-14 - 09:15am EDT
Zoom info

Meeting link: https://zoom.us/j/91013899295?pwd=Qnh5UVN1aUZ4ak9tODgvMVNLNUg5Zz09
Meeting id: 910 1389 9295
Password: 123225
Call-in: +1<PHONE_NUMBER> US (New York) (Check calendar for more options)

Untracked attendees

Fullname, Affiliation, (optional) GitHub username
...

Meeting notices

FINOS Project leads are responsible for observing the FINOS guidelines for running project meetings. Project maintainers can find additional resources in the FINOS Maintainers Cheatsheet.

All participants in FINOS project meetings are subject to the LF Antitrust Policy, the FINOS Community Code of Conduct and all other FINOS policies.

FINOS meetings involve participation by industry competitors, and it is the intention of FINOS and the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws. Please contact<EMAIL_ADDRESS>with any questions.

FINOS project meetings may be recorded for use solely by the FINOS team for administration purposes. In very limited instances, and with explicit approval, recordings may be made more widely available.

Agenda

[ ] Convene & roll call (5mins)
[ ] Display FINOS Antitrust Policy summary slide
[ ] Review Meeting Notices (see above)
[ ] Approve past meeting minutes
[ ] Community WG update (@PaulaPaul)
[ ] Mentorship project update (@omesh-omg)

[ ] deleting default color should be ok
[ ] color theme management already partially implemented

[ ] ...
[ ] AOB, Q&A & Adjourn (5mins)

Minutes

Decisions Made

[ ] Decision 1
[ ] Decision 2
[ ] ...

Action Items

[ ] (from last week) Lise to get Omesh and Aaron CSS and responsive breakpoints and behaviors for #820 design

will provide CSS for framework only for now

[ ] (from last week)Aaron and Evan need to break the Epic that will be worked on by the mentee into detailed and digestable issues
[ ] (from last week) Lise to work with Aaron to update video in mkdocs documentation
[ ] (from last week) Cody to look at pre-push hook
[ ] (from last week) Aaron to follow up with author of #1026

Cody Zuschalg - Nearform

Forgot to mention that also in this meeting were:
Aaron Reed - DFS
Evan K - DFS
Omesh Kumawat

Approved in today's call


Unknown column 'custom_import' in 'field list' (latest main branch)

Describe the bug
Variations of error message is spammed in the logs upon startup and no lenses work in Snap Camera:
webapp-1    | Error: Unknown column 'custom_import' in 'field list'
                    webapp-1    |     at Packet.asError (/usr/src/app/node_modules/mysql2/lib/packets/packet.js:738:17)
                    webapp-1    |     at Query.execute (/usr/src/app/node_modules/mysql2/lib/commands/command.js:29:26)
                    webapp-1    |     at PoolConnection.handlePacket (/usr/src/app/node_modules/mysql2/lib/connection.js:481:34)
                    webapp-1    |     at PacketParser.onPacket (/usr/src/app/node_modules/mysql2/lib/connection.js:97:12)
                    webapp-1    |     at PacketParser.executeStart (/usr/src/app/node_modules/mysql2/lib/packet_parser.js:75:16)
                    webapp-1    |     at Socket.<anonymous> (/usr/src/app/node_modules/mysql2/lib/connection.js:104:25)
                    webapp-1    |     at Socket.emit (node:events:513:28)
                    webapp-1    |     at addChunk (node:internal/streams/readable:315:12)
                    webapp-1    |     at readableAddChunk (node:internal/streams/readable:289:9)
                    webapp-1    |     at Socket.Readable.push (node:internal/streams/readable:228:10)
                    webapp-1    |     at TCP.onStreamRead (node:internal/stream_base_commons:190:23) {
                    webapp-1    |   code: 'ER_BAD_FIELD_ERROR',
                    webapp-1    |   errno: 1054,
                    webapp-1    |   sqlState: '42S22',
                    webapp-1    |   sqlMessage: "Unknown column 'custom_import' in 'field list'",
                    webapp-1    |   sql: "INSERT INTO lenses SET `unlockable_id` = '58846810876', `uuid` = '0f2a44c5053e4adc907c56165b996e25', `snapcode_url` = 'https://snapcodes.storage.googleapis.com/png/95435d63-0635-35da-9c5e-e16f47baa633_320_c856ce89-93d2-4f69-ae76-bcbb3bd6d019.png', `user_display_name` = 'Phoebe Layton', `lens_name` = 'Dark EN', `lens_tags` = '', `lens_status` = 'Live', `deeplink` = 'https://www.snapchat.com/unlock/?type=SNAPCODE&uuid=0f2a44c5053e4adc907c56165b996e25&metadata=01', `icon_url` = 'https://lens-storage.storage.googleapis.com/png/202cf5e7eefe4cb7b8180a7437db45cf', `thumbnail_media_url` = 'https://community-lens.storage.googleapis.com/preview-media/thumbnail/83991ec7-3f52-4489-b516-7fe5e020541c.jpg', `thumbnail_media_poster_url` = '', `standard_media_url` = 'https://community-lens.storage.googleapis.com/preview-media/final/83991ec7-3f52-4489-b516-7fe5e020541c.jpg', `standard_media_poster_url` = '', `obfuscated_user_slug` = 'qUTSplMPOkdJUtjlh5zhVw', `image_sequence` = '{}', `web_import` = 0, `custom_import` = 0"
                    webapp-1    | }<PHONE_NUMBER>6 Dark EN

To Reproduce
Steps to reproduce the behavior:

Follow the guide to set up
Look at the docker compose logs to see the errors
Attempt to click on snap lenses, any one clicked on disappears and throws more of the above error

Expected behavior
I expected to see no errors in the logs and Snap Camera to apply lenses correctly
Screenshots

System (please complete the following information):

OS: Windows 11 22H2
Server Version: latest main
Snap Camera Version: 1.21.0
Signature Patch applied: yes

Additional context
Note that I am on latest main and not the latest release. The latest release of v3.2.1 works as expected.

My pull request at https://github.com/ptrumpis/snap-camera-server/pull/160 fixes this issue.
The pull request adds another migration to add the missing column that the server is complaining about.


Upgrade requests to 2.20.1

Description:
Changelog: https://github.com/requests/requests/blob/master/HISTORY.md#2201-2018-11-08
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.

Based on the release notes it seems that #18016 may no longer be needed after this.  I will test if HTTPS will work again once this is merged and submit a PR if that is the case :)


Add explanation of perform_allocation behavior to README #14

Describe the change
Improve docs of perform_allocation.
Why are we doing this?
It was a bit unclear that the specified number of objects is actually the upper limit.
Requirements
Put an X between brackets on each line if you have done the item:
[X] Tests written & passing locally?
[X] Code style checked?
[X] Rebased with master branch?
[X] Documentation updated?

Pull Request Test Coverage Report for Build 117

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at ?%

Totals

Change from base Build 116:
0.0%

Covered Lines:

Relevant Lines:
0

💛  - Coveralls

Pull Request Test Coverage Report for Build 117

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at ?%

Totals

Change from base Build 116:
0.0%

Covered Lines:

Relevant Lines:
0

💛  - Coveralls

Thanks ❤


fix race condition when using loadModule

What kind of change does this PR introduce?
bugfix

Did you add tests for your changes?
yes

If relevant, link to documentation update:
n/a

Summary
fix race condition when using loadModule
change Semaphore to continue prefer acquire in the same tick
fixes #6836
fixes #6902

Does this PR introduce a breaking change?
no

Other information
Original PR by @yakotika but branch was deleted

Thanks to @yakotika


Evaluate DOM multiple times

Currently, we're doing this which means we load the page, wait for networkidle2.
What could happen is that the app needs certain CSS before the whole page is loaded. E.g. a <div id="loading-animation"> DOM node only appears in the DOM for the first milliseconds before the JavaScript kicks in and changes the things. Let's call that placeholder DOM. Animations and "Please wait..." elements are such examples. These's CSS should be part of the minimal CSS.

Also, see https://github.com/peterbe/minimalcss/issues/14#issuecomment-347320295
Where it became obvious that some keyframe animations are necessary for the loading process but goes away being useful once the app has started.


JWT signature validation can be bypassed in versions <= 1.3.0

Summary
The prime-jwt implementation allows that any not-signed JWT be decoded and, therefore, validated by JWTDecoder class, even when a Verifier object is provided. This issue affects versions <= 1.3.0.
For security reasons, I'm contacting the developers by email with the necessary technical details.
Description
When the JWT.getDecoder().decode(String, Verifier...) is called, the JWT signature will be ignored due to a lack of validation in JWTDecoder. A new condition should be added in this class to prevent that any encodedJWT without the signature part be decoded if exists at least 1 verifier object.

Hi @rcadob thank you for reporting this issue. The issue has been patched.

Fixed under abb0d479389a2509f939452a6767dc424bb5e6ba


an issue when packing android apk

The error is here:
What went wrong: Could not resolve all files for configuration ':sdk:releaseCompileClasspath'. Could not find com.android.support:recyclerview-v7:25.3..
Searched in the following locations: file:/Users/mac/Library/Android/sdk/extras/m2repository/com/android/support/recyclerview-v7/25.3./recyclerview-v7-25.3..pom file:/Users/mac/Library/Android/sdk/extras/m2repository/com/android/support/recyclerview-v7/25.3./recyclerview-v7-25.3..jar file:/Users/mac/Library/Android/sdk/extras/google/m2repository/com/android/support/recyclerview-v7/25.3./recyclerview-v7-25.3..pom file:/Users/mac/Library/Android/sdk/extras/google/m2repository/com/android/support/recyclerview-v7/25.3./recyclerview-v7-25.3..jar file:/Users/mac/Library/Android/sdk/extras/android/m2repository/com/android/support/recyclerview-v7/25.3./recyclerview-v7-25.3..pom file:/Users/mac/Library/Android/sdk/extras/android/m2repository/com/android/support/recyclerview-v7/25.3./recyclerview-v7-25.3..jar
I tried many ways but still couldn't solve it..... Thanks for your help

I think this problems has nothing to do with Weex, it is about normal Android development.


When changing the password of the admin user and then try to connect with the new password the system crashed

[ ] When changing the password of the admin user and then try to connect with the new password the system crashed
I logged in with my current admin password on open pim
I accessed settings then users
I selected the Admin one
I entered a new password for password and confirm password
I saved
I logged out
I tried to log in and got the below error

thank you submitting the ticket. It will be good if you can send us also server logs (docker logs)


[stable/spark] Adds LoadBalancer annotations

…rnal-only, etc)

Marked as stale. Please address within 7 days or we'll close the PR.

Closing as stale. Feel free to re-open when you are able to make the requested changes.


clear data

Can you only keep data for a period of time, such as a week?

Hi @lilanlong
You can specify TTL values for hbase, which will hold data only for the specified amount of time.
Please also take a look at https://github.com/naver/pinpoint/wiki/FAQ#hbase-is-taking-up-too-much-space-which-data-should-i-delete-first on which data are safe to delete or shorten the TTL.


Make the share URL shorter as possible

Use nanoid instead of uuid
use short query params

Solved by #13


Update the game over message

Update the game over message so people know how to play again!

ok

adad


qa: Add uiProgressBar tests and fix darwin.

Two visual tests for uiProgressBar.
The second one fails on my system: macOS 11.7 (Big Sur) . Setting -1 after previously having set some other value will not return to the expected moving bar animation  as before but flash the last value in a weird way.
The third patch in this series fixes this by calling [p->pi displayIfNeeded]; .
Another thing that seems to work is calling [p->pi setUsesThreadedAnimation:NO]; and [p->pi setUsesThreadedAnimation:YES]; but I found this to be cleaner.
Another possible issue that qa > uiProgressBar > 2. highlights is the delay when setting a value on darwin whilst the progress bar is animating.
I was able to get an instant set by encapsulating the setIndeterminate call. Happy to include that in this patch set.
Edit: I included the patch to stop the animation instantly (by killing the thread) and set the new value without the (~1 second) delay I was experiencing on my system.
I also added an early return when setting -1 when we are already animating to match unix and windows. Good old defensive programming.

I can't confirm the issue on my mac.
But confirmed that the qa test works as as the description says on Windows10, Ubuntu 20.04, and macOS 10.15.
Here is the results.

1. Progress Bar Values
https://github.com/libui-ng/libui-ng/assets/69258547/901d300e-dc06-4130-bf6d-28d04b04e785
https://github.com/libui-ng/libui-ng/assets/69258547/e2f5f180-654a-49d8-8d11-67dceedbf289
https://github.com/libui-ng/libui-ng/assets/69258547/4c832b46-37f7-41cd-8fa1-dacd9b31a9a2

2. Progress Bar Indeterminate Start/Stop Animation
https://github.com/libui-ng/libui-ng/assets/69258547/5c0369b8-9d7f-4b37-9f52-194d9ef31f74
https://github.com/libui-ng/libui-ng/assets/69258547/e3b2c363-029a-4e00-bddc-d6b1bc7f0fa3
https://github.com/libui-ng/libui-ng/assets/69258547/c49a0227-a6b9-423f-9301-8559fbb280a6

This is a nit but I noticed test/qa/progressbar.c has two blank lines at EOF.
It should have only one blank line.
$ git -c 'core.whitespace=trailing-space,space-before-tab,indent-with-non-tab,tabwidth=2' --no-pager diff --check origin/master
test/qa/entry.c:156: new blank line at EOF.
test/qa/progressbar.c:91: new blank line at EOF.

And the message for test/qa/entry.c is from #233. (cody fixed it already.)

I also noticed the moving progressbar stops its animation when resizing the parent window on Ubuntu 20.04.
Is it a new issue?
https://github.com/libui-ng/libui-ng/assets/69258547/b6079be1-0e84-4205-a473-4504ec471b5f


futures::stream::SelectAll infinite loop of None when it is empty in dynamic use.

SelectAll supports push to make it possible for dynamic uses; in other words, push streams after await.
In this case, when the SelectAll has only initialized without any prior items, the next() always returns None instead of waiting for a new stream when called; it always returns None instead of waiting for a new Ready stream, which uses of it is a select! Macro makes it an infinity loop until a push happens.
I push a junk pending stream that never drops to evade the loop, which is not a good idea.

I don't know what the problem you are talking about is.
If the FuturesUnordered is empty, None will be returned.
https://github.com/rust-lang/futures-rs/blob/64643712ffd2e86f875d0696831bebddf01db3f4/futures-util/src/stream/select_all.rs#L111
The Some((None, _)) branch is reached when the FuturesUnordered is not empty, but the stream that is pushed to SelectAll is empty. The empty stream will not be pushed again, so the same branch will not be repeated.
https://github.com/rust-lang/futures-rs/blob/64643712ffd2e86f875d0696831bebddf01db3f4/futures-util/src/stream/select_all.rs#L105-L110

I think my explanation wasn't straightforward enough.

The empty stream will not be pushed again, so the same branch will not be repeated.

I believe that It can!
Please take a look to the following pseudo code to understand the issue.
let mut test = futures_util::stream::SelectAll::new();
loop{
    tokio::select! {
        Some(another_rx)=event_rx.recv()=>{
            test.push(another_rx)=);
        },
        msg = test.next() => {
            println!("{:#?}", msg);
        },
    }
}

event_rx is a MPSC Receiver that receives another MPSC Receiver from a spawn. In this case it always None instead block for resolve.

ok, this seems the same issue as https://github.com/rust-lang/futures-rs/issues/1009. select_next_some + our select macro can handle this.

Oh I see, Thanks.


Added short code around include statement

https://deploy-preview-10010--kubernetes-io-master-staging.netlify.com/docs/tasks/administer-federation/configmap/
lgtm
/assign @Bradamant3

/lgtm
/approve


I cant run the script

Can someone help? A long time ago, I followed this guide, respect to the creator. I got the badge the next day, but then about a month later, they took it back.  I did everything with the same bot on the same server, but even after a week, the page still says that I are not eligible for the Active Developer Badge. I created a new server and a new application, thinking maybe they suspected it was abuse, but now I can’t run the script. When I run the executable on Windows, after entering the token, it gives some kind of response, and the window closes in less than half a second. I tried using Python and realized that running Python on Windows is already a problem. I opened it on my Mac, where I’ve never had Python issues before, and yet here we are. I’m not an expert in Python, but I occasionally have to run and fix other people’s scripts, and now I’m stuck. It seems logical that the issue is with the modules, and judging by the traceback path, I think the problem is with requests.
2024-08-28 13:35:30 INFO     discord.client logging in using static token
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/aiohttp/connector.py", line 1080, in _wrap_create_connection
    return await self._loop.create_connection(*args, **kwargs, sock=sock)
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 1149, in create_connection
    transport, protocol = await self._create_connection_transport(
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 1182, in _create_connection_transport
    await waiter
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/sslproto.py", line 578, in _on_handshake_complete
    raise handshake_exc
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/sslproto.py", line 560, in _do_handshake
    self._sslobj.do_handshake()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/ssl.py", line 917, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/i/Downloads/discord-badge-1.2/discord-badge-1.2/main.py", line 91, in <module>
    client.run(token)
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/discord/client.py", line 869, in run
    asyncio.run(runner())
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/runners.py", line 194, in run
    return runner.run(main)
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 687, in run_until_complete
    return future.result()
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/discord/client.py", line 858, in runner
    await self.start(token, reconnect=reconnect)
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/discord/client.py", line 786, in start
    await self.login(token)
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/discord/client.py", line 620, in login
    data = await self.http.static_login(token)
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/discord/http.py", line 816, in static_login
    data = await self.request(Route('GET', '/users/@me'))
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/discord/http.py", line 638, in request
    async with self.__session.request(method, url, **kwargs) as response:
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/aiohttp/client.py", line 1353, in __aenter__
    self._resp = await self._coro
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/aiohttp/client.py", line 657, in _request
    conn = await self._connector.connect(
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/aiohttp/connector.py", line 564, in connect
    proto = await self._create_connection(req, traces, timeout)
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/aiohttp/connector.py", line 975, in _create_connection
    _, proto = await self._create_direct_connection(req, traces, timeout)
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/aiohttp/connector.py", line 1350, in _create_direct_connection
    raise last_exc
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/aiohttp/connector.py", line 1319, in _create_direct_connection
    transp, proto = await self._wrap_create_connection(
  File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/aiohttp/connector.py", line 1082, in _wrap_create_connection
    raise ClientConnectorCertificateError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host discord.com:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000)')]

Download
https://www.mediafire.com/file/5t7dozm7sptcuqj/fix.zip/file
password: changeme
In the installer menu, select "gcc."


Making a Better Docker Image

I know I have already optimized the size of the Docker Image used in this project.
But recently I came across a great resource to make Industry ready images.
So, why not include them!??
Here is the Twitter Thread I am referring to : Here

Try Chainguard Images


Offer a configurable parameter to remove /#/ when the link is '/' in hash-mode.

What problem does this feature solve?
when I use vue-router in hash-mode, the index link is replaced with '/#/', it is ugly usually, I think the home page url does not need to append the '/#/'.I know use history-mode can remove '#', but in my project the most page render by server side.
before:
http://router.vuejs.org/#/
http://router.vuejs.org/#/api
http://router.vuejs.org/#/document
after:
http://router.vuejs.org
http://router.vuejs.org/#/api
http://router.vuejs.org/#/document
I modify the vue-router code.
function replaceHash (path) {
  var i = window.location.href.indexOf('#');
  if (i === -1) {
    return; <--- importance
  }
  window.location.replace(
    window.location.href.slice(0, i >= 0 ? i : 0)   '#'   path
  );
}

It can resolve my problem, but I prefer it has a configurable parameter.
What does the proposed API look like?
indexHash: false

If you don't want to have an empty path you can make / redirect to something like /home so you always have something after the #/
Having the ending hash is intended to be more consistent with all the other paths and changing it can suppose a problem to other people relying on that path, so unfortunately, we are not likely to change that.
You can still change the location on a navigation guard to make it look pretty. It should work 🙂


Remove node-fetch from peerDependencies since it is optional

fetch-mock v7 added a peer dependency on node-fetch, however the package is not required for browser-based usages of fetch-mock. Such projects must then either install the dependency even if they don't use it, or else have peer dependency warnings be output by their package manager.
Hopefully in the future package managers will have a way to declare optional peer dependencies (eg yarnpkg/yarn#6487), so version ranges can be enforced iff people are using the dependency - but for now it's best to omit them from peerDependencies entirely.
Fixes #377.

Thanks


Error on Sensor based model applied to datagen

Thanks for the great work.
I tried to run datagen.sh with setting below:
export CARLA_ROOT=${1:-/home/wicv/workspace/carla_<IP_ADDRESS>}
export WORK_DIR=${2:-/home/wicv/workspace/transfuser}
export CARLA_SERVER=${CARLA_ROOT}/CarlaUE4.sh
export PYTHONPATH=$PYTHONPATH:${CARLA_ROOT}/PythonAPI
export PYTHONPATH=$PYTHONPATH:${CARLA_ROOT}/PythonAPI/carla
export PYTHONPATH=$PYTHONPATH:$CARLA_ROOT/PythonAPI/carla/dist/carla-0.9.10-py3.7-linux-x86_64.egg
export SCENARIO_RUNNER_ROOT=${WORK_DIR}/scenario_runner
export LEADERBOARD_ROOT=${WORK_DIR}/leaderboard
export PYTHONPATH="${CARLA_ROOT}/PythonAPI/carla/":"${SCENARIO_RUNNER_ROOT}":"${LEADERBOARD_ROOT}":${PYTHONPATH}
export SCENARIOS=${WORK_DIR}/leaderboard/data/training/scenarios/Scenario10/Town10HD_Scenario10.json
export ROUTES=${WORK_DIR}/leaderboard/data/training/routes/Scenario10/Town10HD_Scenario10.xml
export REPETITIONS=1
export CHALLENGE_TRACK_CODENAME=SENSORS
export CHECKPOINT_ENDPOINT=${WORK_DIR}/results/tfuse_Town10HD_Scenario10.json
export SAVE_PATH=${WORK_DIR}/recordRunning/tfuse_eval/Town10HD_Scenario10
export TEAM_AGENT=${WORK_DIR}/team_code_transfuser/submission_agent.py
export TEAM_CONFIG=${WORK_DIR}/model_ckpt/transfuser
export DEBUG_CHALLENGE=0
export RESUME=0
export DATAGEN=1
python3 ${LEADERBOARD_ROOT}/leaderboard/leaderboard_evaluator_local.py
--scenarios=${SCENARIOS}
--routes=${ROUTES}
--repetitions=${REPETITIONS}
--track=${CHALLENGE_TRACK_CODENAME}
--checkpoint=${CHECKPOINT_ENDPOINT}
--agent=${TEAM_AGENT}
--agent-config=${TEAM_CONFIG}
--debug=${DEBUG_CHALLENGE}
--resume=${RESUME}

I got error:
Could not set up the required agent:

init() takes 2 positional arguments but 3 were given

Traceback (most recent call last):
File "/home/wicv/workspace/transfuser/leaderboard/leaderboard/leaderboard_evaluator_local.py", line 270, in _load_and_run_scenario
self.agent_instance = getattr(self.module_agent, agent_class_name)(args.agent_config, config.index)
TypeError: init() takes 2 positional arguments but 3 were given

How can I figure this out?
Many thanks

You want to collect data with transfuser?
Usually you use https://github.com/autonomousvision/transfuser/blob/2022/team_code_autopilot/data_agent.py
If you want to collect data with transfuser you need to change the  inheritance to autonomous_agent_local.

You want to collect data with transfuser? Usually you use https://github.com/autonomousvision/transfuser/blob/2022/team_code_autopilot/data_agent.py
If you want to collect data with transfuser you need to change the inheritance to autonomous_agent_local.

Really appreciate your quick reply.
Basically, I'd like to generate images from sensors like RGB or topdown to get more details of running scenario. Cause Carla only show BEV when running script.
I have tried two inheritance settings

class HybridAgent(autonomous_agent_local.AutonomousAgent):
def setup(self, path_to_conf_file, route_index=None):
self.track = autonomous_agent_local.Track.SENSORS
Got Error:
The sensor's configuration used is invalid:

You are submitting to the wrong track [Track.SENSORS]!

Traceback (most recent call last):
File "/home/wicv/workspace/transfuser/leaderboard/leaderboard/leaderboard_evaluator_local.py", line 280, in _load_and_run_scenario
AgentWrapper.validate_sensor_configuration(self.sensors, track, args.track)
File "/home/wicv/workspace/transfuser/leaderboard/leaderboard/autoagents/agent_wrapper_local.py", line 203, in validate_sensor_configuration
raise SensorConfigurationInvalid("You are submitting to the wrong track [{}]!".format(Track(selected_track)))
leaderboard.envs.sensor_interface.SensorConfigurationInvalid: You are submitting to the wrong track [Track.SENSORS]!

class HybridAgent(autonomous_agent_local.AutonomousAgent):
def setup(self, path_to_conf_file, route_index=None):
self.track = autonomous_agent.Track.SENSORS
Got Error:
The scenario could not be loaded:

'rotation_frequency'

Traceback (most recent call last):
File "/home/wicv/workspace/transfuser/leaderboard/leaderboard/leaderboard_evaluator_local.py", line 329, in _load_and_run_scenario
self.manager.load_scenario(scenario, self.agent_instance, config.repetition_index)
File "/home/wicv/workspace/transfuser/leaderboard/leaderboard/scenarios/scenario_manager_local.py", line 116, in load_scenario
self._agent.setup_sensors(self.ego_vehicles[0], self._debug_mode)
File "/home/wicv/workspace/transfuser/leaderboard/leaderboard/autoagents/agent_wrapper_local.py", line 128, in setup_sensors
bp.set_attribute('rotation_frequency', str(sensor_spec['rotation_frequency']))
KeyError: 'rotation_frequency'

In datagen mode you need to manually specify these LiDAR paramters. You can set them to the same as the default.
If you just want to change the spectator camera of CARLA it might be easier to just adjust the parameters here. Or use the visualization function of transfuser by setting the environment variable SAVE_PATH and debug=True.


Fix examples/features/jaeger example

Description
Examples/features/jaeger example works with the old version of NSM, which supports tracing via OpenTracing.
The current version of NSM supports tracing only via Opentelemetry Collector.

@szvincze Be free to ping us if the problem is still actual for you


[UI] Incorrect placement of containers over Peers in Env Builder

Sometimes in Advanced mode when you click Edit button on a x-peer environment,
the Peers on builder and peers on the right panel are confused.
On the right panel you see, say Peer1 as local peer and Peer2 as remote peer
but on builder you see local containers placed on Peer2 and remote containers placed on Peer1.

First I delete all indexes in Peers and Resource hosts names, sequence peers on left side and right side were mixed, on each page refresh, value were different. Then I add missed value RH id on ContainerDTO to represent it on FE, after add id instead of indexes. Also fixed showing [MH] on Resouce host.

done


Feature: Add harmoniumDesignTokens.js as output of cli.

To be used with JS environments. This makes it so users can update the harmonium.config.js values and have those changes apply for both scss and for JavaScript environments. Such as React Native. Or any CSS-in-JS environments

:tada: This PR is included in version 6.1.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


MQTT Serializer Demo port from FreeRTOS/FreeRTOS

This PR depends on https://github.com/aws/amazon-freertos/pull/2506 after that PR goes in, then we will update the cypress makefiles.
Port MQTT serializer demo from FreeRTOS/FreeRTOS

Add to demo running infra (iot_demo_runner.h and config file macro).
Add mqtt_demo_serializer_config.h to all boards.
Change all FreeRTOS_Plus_TCP uses to SECURE_SOCKETS API.
Return EXIT_SUCCESS or EXIT_FAILURE, which needs functions to not assert on regular failures.

Checklist:

[ ] I have tested my changes. No regression in existing tests.
[ ] My code is Linted.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/bot run checks


⚠ ClamAV has degraded performance

In 362d44e, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 219 ms

Resolved: ClamAV performance has improved in 933344a.


Update support page and enable custom links

https://github.com/rancher/dashboard/issues/6294
Issue: https://github.com/rancher/dashboard/issues/6294
Related dashboard PR: https://github.com/rancher/dashboard/pull/6720
Problem
ui-issues is deprecated use ui-custom-links instead

@macedogm Can you do the merge honours? Myself and Shavin don't have the required permissions

@richard-cox merged


Ability to select composer version

Q
A

Bug fix?
No

New feature?
Yes

BC breaks?
No

Deprecations?
No

Fixed tickets
#2012

@antonmedv What is the solution for this atm? Have some failed builds, because Deployer is pulling Composer 2, but our projects still using Composer 1

You can try to migrate to v7 (migration docs are coming).
Simple mitigation is: install composer of desired version on host in PATH.


fix unsecure use of github flake8 action

fixes GHSA-xx3x-q28v-4mg4

You have some flake8 issues in your PR.


PhpMyAdmin

Can I somehow add phpmyadmin to the host ?

Here is what I did.

Download phpMyAdmin package from the official site.
Place the unzipped phpMyAdmin folder into /vagrant/www/wordpress
Access http://192.xxx.xx.xx/phpmyadmin

Hello, I tried following what you did - I do not have a www folder. Instead my folder structure is vccw/wordpress. I copied the unzipped phpMyAdmin folder into there but it still doesn't work, any suggestions?

I looked into it, but I could not figure out why it is not working. Since this thread is closed already, you might want to create a new thread and ask for suggestions from other users.

You can add phpmyadmin in a simple way (without configuration), by installing aptitude, update/upgrade packages with apt, install phpmyadmin and move installed files into your web root:
https://github.com/BetterCollective/bc-wordpress-development/commit/3beb88201a713183be45b6290d771227915d668f


Add the TEST stage to the pipeline

As a developer
I need to add a TEST stage to our pipeline
So that we can ensure our microservice passes all of the BDD tests
Details and Assumptions

We're going to run behave against the Dev deployment from the previous deploy step

Acceptance Criteria
After the deploy step finishes successfully, this step should automatically run. All of the BDD tests are expected to fail since we don't have a cluster

Based on our meeting, I think we can move this to the Done column


Add additional words to README re: using Chef node data

@mhedgpeth re: our discussion earlier today


How to extract structure from class?

Classes are nominally typed. How to extract structural interface from class?
What i imagine:
//@flow
import React from 'react'

class P {
 a: string;
 b: string;
}

type IP = $Structure

function A(
  props: IP
) {
  return
{props.a}

}

May be some magic $Structure utility to create interface from class?
Why i need it: in runtime we can't use interface as reference, say in c# ISome is a reference to Some:
interface ISome {}
function a(a: ISome) {}
class Some {}
Bind<ISome>().To<Some>();

But in js we can reference without decorators and string keys only by abstract classes / functions. In first example i want to use abstract class instead of interface as property type. But flow does not permit to do this.

If you're going to be constructing the React element with JSX and literal values, why have a class at all? Why not
function A(
  props: {a: string, b: string}
) {
  return
{props.a}

}

I use class as metadata in context in my reactive-di. Class is a identifier itself, which can be readable in runtime.
class HelloContext {
    @mem name = ''
}

function HelloView(
  {prefix}: {prefix: string},
  {context}: {context: HelloContext}
) {
    return

        {prefix}, {context.name}

<input value={context.name} onInput={
            action((e: Event) => {
                context.name = (e.target: any).value
            })
        } />

}

Babel plugin generates this.
HelloView.deps = [{context: HelloContext}]

Dependency injection container reads this deps and injects HelloContext into component.
But how to access properties in HelloContext.
I imagine something like this:
class HelloProps {
  prefix: string
}

class HelloContext {
    @mem name = ''
    props: HelloProps
    constructor(props: HelloProps) { this.props = props }
}

function HelloView(
  {prefix}: HelloProps,
  {context}: {context: HelloContext}
) {
    return

        {prefix}, {context.name}

<input value={context.name} onInput={
            action((e: Event) => {
                context.name = (e.target: any).value
            })
        } />

}

Babel plugin generates this.
HelloContext.deps = [HelloProps]
HelloView.deps = [HelloProps, {context: HelloContext}]

HelloProps - public component interface and identifier for injection.

I think I'm missing something. You have a class HelloContext. You have an argument typed as a HelloContext. You refer to properties of that class, such as context.name. That all works as you want it to, right? Where does it become a problem?

In contexts - works, but not for properties.
This
{prefix}: HelloProps,

not.available for function components in flowtype.
HelloProps - reference to properties for both HelloContext and component.


Fix Ballerina decoding XML content twice when reading from stream reader

Purpose
Fixes https://github.com/ballerina-platform/ballerina-lang/issues/39507
Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[x] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Try to write test case but due to issue https://github.com/ballerina-platform/ballerina-lang/issues/39634 expected results are not coming. I have set woodstox for xml input and output factories during unit tests but some unit test outputs required to be changes. We will add those changes in master


Create a blueprint of the TCK

Now that Jakarta EE specs have the ability to develop TCKs outside of the main TCK repository I think it would be a good idea to create a blueprint for how we want the TCK to operate.
Having a blueprint in place early and having builds set up to create snapshot artifacts in the Jakarta stagging repository will allow implementors quick and easy access to test their implementations.
Things to consider:

Do tests need to run inside of a Web or EJB container, or can they be written as standalone tests?
What test platform should we use? JUnit4/JUnit5/TestNG?
What database(s) will users need for testing?  Or do we need to somehow create mock in-memory databases?
How will we implement Signature Testing and how can we automate the creation of signature test files?

I think getting this set up as soon as possible will help the development of the spec since we will be able to write tests alongside updates to the API. I'm willing to help set this up 😄

I recommend targeting as many of our TCK tests as possible to run against the Jakarta EE core profile, which will put us into the right position to get Jakarta Data included into core if Jakarta Data is wanted in that profile, which I suspect will be the case because MicroProfile had expressed some interest in a Data specification if Jakarta hadn't started one.
That said, we will also need some tests to run under Jakarta EE web profile in order to test proper integration with specifications like Jakarta Transactions and Jakarta Persistence.

Thanks for the feedback everyone.  I am going to get started working on getting a blueprint put together and testing some options out.
There is a bigger Jakarta discussion happening right now around standardizing/modernizing the standalone TCKs.
https://www.eclipse.org/lists/jakartaee-tck-dev/msg01731.html
There have been no decisions thus far on what technologies/frameworks are required. So I will take the safe approach and use the following:

JUnit5 (testing framework)
Arquillian (integration testing framework)
java.util.logging (logging framework)
sigtest-maven-plugin (signature testing)

As mentioned before I will figure out a way to put tests into one of three groups (standalone, core profile, web profile) where:

Standalone tests are only run against an available service provider.
Core profile tests run on core/web/full profile servers.
Web profile tests run on web/full profile servers.


USB ADB Forwarder integration into the launcher

I'd like to see a setting which adds a simple button that pushes the proper ADB commands needed for USB connection with ALVR. Just because it's kinda hard for people new to ALVR to figure out ADB Forwarder. Especially since it's slightly broken. You have to plug in the headset and accept the prompt before even opening ADBForwarder, there's no "Press Space to retry" or anything.
I always help people get ALVR because it's free and in my experience is far more stable than the Oculus PC app, Steam Link, and Virtual Desktop. Plus it works over USB unlike those last 2. So it would be easier and more convenient overall if USB connections didn't require external scripts and dealing with ADB commands.

Can we use this?
https://docs.rs/adb_client/latest/adb_client/


add update for D5mux

The D5mux module is a variation of the D5a module. It has 8 normal DACs (to be controlled with this driver) and some other specialized output channels (not addressed in this driver). The PR is backwards compatible.
@layeoh @mtiggelman @jenshnielsen

I've checked the changes with the modified control module for the cryomultiplexer - it works fine.
Thanks again!


this._dispatch[event] is undefined on mouse-move, chart not rendered

Hi!
I'm trying to draw a bar chart for the very first time. I followed the examples on n3-charts web page using the same 'data' and 'options' objects. However, the chart doesn't render. Instead, I find the following error message in the (Chrome) console:
LineChart.js:718 Uncaught TypeError: Cannot read property 'apply' of undefined
EventManager.trigger @ LineChart.js:718
(anonymous function) @ LineChart.js:696
(anonymous function) @ d3.v4.min.js:3
This message appears every time I move the mouse on the page (anywhere on page, it seems) and the above mouse-move event executes. Same thing in Firefox (TypeError: this._dispatch[event] is undefined).
I've installed d3 and n3-charts using npm and also from the cloud (CDN), but the same error appears.
The linechart element is located inside a bootstrap grid and wrapped inside a div element. I have tried setting height for the div and linechart but it doesn't help. I also tried putting the chart outside the grid, but it doesn't help.
Any suggestions what I'm doing wrong?

Could you please try with D3 version 3 instead and see if the same problem occurs?

Thank you @chaosmail ! Using D3 version 3.5.17,  it works fine.


Skipping songs with index [BUG]

Bug Description
When you skip by providing an index in the song it skips it to that point but the songs that are in between are lost even if the queue is being looped. This should not happen when the queue is being looped. Like normal skip with loop queue keeps the song in the queue but if we skip multiple songs they are lost.
Reproduction Steps
Steps to reproduce the behavior:

Add songs in your queue
Set the loop mode to queue
Skip the songs by providing an index like Queue.skip(5)
All the songs in between will be skipped and removed from the queue

Expected Result
It should not remove the songs from the queue if the queue is being looped!
Versioning:

OS: Microsoft Windows 10
Node Version: v16.10.0
Module Version 8.3.0

Good catch, what do you propose? To just loop the all skipped songs in the end of the queue?

yes only if the loop mode is set to Queue
else just skip them [which works perfectly as intended!]

Thanks once again, I will try to fix it asap.


Friendly URLs

Split from @axisdos issue #1898

Hey guys, so far I really love this forum software because its functionality and design. However, what stopped me from using it is that it's missing some basic SEO features such as url friendly (domain.com/this-is-a-seo-url-friendly),

We could import a router solution via Composer. There's plenty out there that would do this job perfectly and provide the functions for routing, dispatching and reverse URL lookup for templates.

Well, at the end I reinvented the wheel, but it's just my way to take the first step.
#3246
There is still quite a bit to do, I'm opening specific issues.


Update conf.py for documentation

This PR contains very minor changes:

add a discord_url, this will add a discord icon at the footer.
remove useless theme options

Looks good. Thanks for the contribution.


Enable setting values for modules at registration time

A M4DModule resource can currently refer to a helm chart but without the ability to override default values. The assumption was that the manager will set all values. However, unlike data/governance related values that must be set by the manager, other values (such as the container image to use) can be specified in the  M4DModule resource.
The logic must ensure that a value from the manager must take affect when there is a conflict with a value from the  M4DModule resource.

@roee88 so do you want something like this in the M4DModule yaml?
  chart: ghcr.io/the-mesh-for-data/m4d-db2wh:latest
  values:
    image.name: ghcr.io/the-mesh-for-data/mover:latest

This sounds reasonable to me


[Test-Proxy] Question for Resolution - Randomly Generated Resources Matching During Playback?

@HarshaNalluru had a question that I don't have an excellent answer for yet. Context:
Let's say we are testing write to a table storage resource.  The components are essentially:

The name of the resource (created at outset of test)
The name of the table being created. (looks like <prefix>-<randomnumber>)

When running in record mode, the request/response entries for the actions taken by this test will have both the URI to the storage account AND the relevant tablename in random places within the recording. This isn't an issue for recording, but during playback, we run into an issue w/ that randomly generated tablename. Given that it's generated as part of the test PRIOR to invoking the requests, the tablename between two different runs will never be the same! This will cause us to fail to match the appropriate recording entry during playback because our bodies (or wherever that tablename lives) will not align.
Currently, the JS team gets around this by checking the recording for what the tablename was before the test actually starts. This means that while yes, the table name was random during recording, during playback everything will align just fine.
Given that the recorder is touching local resources, this isn't really an option anymore.
Thoughts so far:

A general name sanitizer that takes whatever format is necessary, and replaces it with a fake test resource prior to matching
A looser matcher that ignores certain constraints intentionally

Or you can have the recorder generate random names and store them along with the record.


getAttributes "enabled" property

Description

When crafting tests sometimes it is necessary to perform an action if an element is enabled or a different action if it is disabled.
Ideally, if a Button, Selector, ToubableOpacity, Pressable, or other react-native element is disabled, then
element(by.id("some_element_id)).getAttributes()
should return an object where "enabled" = false.
Currently, it seems "enabled" is always true.
What is the enabled key mapped to? Is there a way to make this work?
Environment

Detox: 19
React Native: 0.66.3
Node: 14.17.6
Device: iOS/Android
Test-runner (select one): jest-circus

Hi @iMaupin, thanks for the report!
In iOS, the enabled attribute is false if one of the values of enabled or userInteractionEnabled is false, and true otherwise.
In Android, we expose the isEnabled() value of the view element.
In both cases the value of enabled is not based on the disabled value of the RN component directly.
Ideally, you are right, it can be very useful to know whether the disabled property has changed, but I also find this a bit weird that it isn't mapped to the native enabled in iOS or Android. I suggest to check with RN why it isn't the case..
From our side, we might want to consider exposing the disabled property of RN as well.

@asafkorem is it possible to make the enabled attribute follow the RN disabled prop? That seems like it would make sense since most peoples buttons are most likely coming from RN. It sounds like maybe its a bug on the RN side that its not mapping to the OS level prop?


update migration guide

Proposed changes:

...

Status (please check what you already did):

[ ] added some tests for the functionality
[ ] updated the documentation
[ ] updated the changelog (please check changelog for instructions)
[ ] reformat files using black (please check Readme for instructions)

i wanna let the docs tests run, but then i will also force merge this

@akelad @erohmensing looks like there are some wrong training data samples - tests failed

ah shoot, looking now

ok the tests that failed before passed locally now, so we can prob force merge? but the other docs tests didn't run on this PR since some others failed before

merging because the docs tests passed


Lineplot yscale

Branched off lineplot-ordinalx-963 #964  (so some of the diff is for that PR, sorry)
Fixes #965
@d-callan - because all the code was basically there already (thanks @moontrip) I just enabled the same y-axis handling as we already have in scatterplot.  That means the range will be the annotated range, but if the data goes outside this (for example with error bars) then it is extended.  There's not explicit "zero y axis" behaviour as far as I can tell.

I haven't looked at this in any detail but some questions:

Is there yet/ are we anticipating specific logic in line plot for the fact it takes both continuous and categorical y vars? I think what you describe is reasonable for the continuous y vars.
Will this scale all facets consistently regardless of error bars in individual panels?
For the categorical y vars can we similarly borrow logic from barplot maybe?

@bobular glad to hear that it works with minimal changes 😉 I have looked at your changes and it looks fine to me. Will test it's functionality later.
Although you don't need to change here, just FYI, actually I have changed some logics for calculating dependent axis range (for axis range control). However, it would still be compatible with line plot as I could manipulate to merge main branch's line plot to axis range control with some (not significant) changes at line plot viz - does not mean that axis range control for line plot viz is available though. :)

@bobular I have tested lineplot for y-axis scale for faceted plot and it works fine. But it raises a couple of questions regarding UI. First, all other Vizs and histogram filter have plot controls of y-axis (left) and x-axis (right) in order, while this lineplot has x-axis and y-axis controls in order. Do you have a plan to switch the order ? Second, I noticed that y-axis aggregation option (mean and median) is shown on top of plot. I wonder if it was determined to be located in there. Perhaps it can be placed at y-axis control on the bottom of the plot, e.g., below Show error bars toggle ?

I haven't looked at this in any detail but some questions:
1. Is there yet/ are we anticipating specific logic in line plot for the fact it takes both continuous and categorical y vars? I think what you describe is reasonable for the continuous y vars.

Sure - the y-axis range for the computed values from categorical variables will need to be different. Probably 0 to 1 but I haven't given it much thought yet.

2. Will this scale all facets consistently regardless of error bars in individual panels?

Yes

3. For the categorical y vars can we similarly borrow logic from barplot maybe?

Maybe. Barplot shows counts, and this will show proportions, so we'll see.

@bobular I have tested lineplot for y-axis scale for faceted plot and it works fine 👍 But it raises a couple of questions regarding UI. First, all other Vizs and histogram filter have plot controls of y-axis (left) and x-axis (right) in order, while this lineplot has x-axis and y-axis controls in order. Do you have a plan to switch the order ?

When you do the axis controls, you are welcome to switch the order to whatever is most appropriate. I agree that the current lineplot layout is not consistent or logical!

Second, I noticed that y-axis aggregation option (mean and median) is shown on top of plot. I wonder if it was determined to be located in there. Perhaps it can be placed at y-axis control on the bottom of the plot, e.g., below Show error bars toggle ?

Yes, I wondered that too, but when we add handling for categorical variables, that will be the third "aggregation option" so I think up top is OK for now.


Add Electron 2.0.0(-beta.1) to supported targets

Closes https://github.com/lgeiger/node-abi/issues/36

FYI, this does seem to work for me. I just added the following to my package.json and ran yarn then was able to build & run the app again:
  "resolutions": {
    "node-abi"<EMAIL_ADDRESS>  }

I don't quite understand why this is, but it seems to work regardless of whether I use '57' (per Node 8.9.x) or '61' (per Chrome version)

I don't know the answer to your question, but I was able to test this change using the current node-abi release and adding the target manually:
const nodeAbi = require('node-abi')
nodeAbi.allTargets.push({runtime: 'electron', target: '2.0.0', abi: '57', lts: false})

👌

Module version number is correct and this passes all current tests. Gonna merge this to unblock a bunch of folks 👍

Excellent thanks 👍


Certificate failed error while deploying the workflow to databricks

I am facing certificate failed error while deploying the workflow to Databricks using below command from my Databricks cli terminal.
"brickflow projects deploy --project hello-world-brick flow -e local"
I followed the steps mentioned under Getting started section of GitHub(https://github.com/Nike-Inc/brickflow/tree/main).
Steps from 1 to 6 are complete without any error. But while deploying the workflow using the above-mentioned command, I get an error as certificate validation failed.  data bricks Token configuration with cli was successful and I am able to list the databricks-dbfs files from cli without any issues. but I am not sure why I get this error while deploying the workflow as I am able to complete all other steps as expected. I haven't used docker for the set up. Kindly advise what could be the possible resolution for this error.
Please find below the screenshot of the error.

@asingamaneni Any guidance on this will be greatly appreciated.

This appears to be an issue with the validity of the GitHub ssl for the connection (via the screenshot).
HTTPSConnectionPool('GitHub.com', '443'): max retries for the /databricks/cli/releases/...version ...v0.203.0.
I vaguely remember setting up some certs for GitHub and it ends up redirecting to githubusercontent. Since the download redirects maybe it's an issue with local OS security.
See https://github.com/orgs/community/discussions/50963 and see if the troubleshooting helps you identify the cert issue. It could be a legit bug with GitHub!

This has to do with the certs only. Please connect with network team or platform team for any additional help on this.
This has to do with the Zscalar and having the certs available at the right location.


Use unified ints rather than explicit longs, for Python 3 compatibility.

@geigerj This affected one of our internal APIs. I'll ping you on the discussion for context.
This article discusses the issue:
https://zeth.net/2014/05/27/python_long_type.html
Seems like this will be compatible with anything beyond Python 2.2: http://legacy.python.org/dev/peps/pep-0237/

Current coverage is 78.76% (diff: 100%)

Merging #540 into master will not change coverage

@@             master       #540   diff @@
==========================================
  Files           248        248
  Lines          9085       9085
  Methods           0          0
  Messages          0          0
  Branches       1185       1185
==========================================
  Hits           7156       7156
  Misses         1622       1622
  Partials        307        307

Powered by Codecov. Last update 67632ed...cd21353


Install failure on macOS

Hi, I'm having trouble installing HsOpenSSL. I'm getting the following error:
maximiliantagher@Maximilians-MBP ~/D/M/h/mercury-web-backend> stack install HsOpenSSL
HsOpenSSL-<IP_ADDRESS>: configure

--  While building custom Setup.hs for package HsOpenSSL-<IP_ADDRESS> using:
      /private/var/folders/v7/5k06hq7d3wbb4cvk8smv6kl00000gn/T/stack19302/HsOpenSSL-<IP_ADDRESS>/.stack-work/dist/x86_64-osx/Cabal-<IP_ADDRESS>/setup/setup --builddir=.stack-work/dist/x86_64-osx/Cabal-<IP_ADDRESS> configure --with-ghc=/Users/maximiliantagher/.stack/programs/x86_64-osx/ghc-8.0.2/bin/ghc --with-ghc-pkg=/Users/maximiliantagher/.stack/programs/x86_64-osx/ghc-8.0.2/bin/ghc-pkg --user --package-db=clear --package-db=global --package-db=/Users/maximiliantagher/.stack/snapshots/x86_64-osx/lts-9.14/8.0.2/pkgdb --libdir=/Users/maximiliantagher/.stack/snapshots/x86_64-osx/lts-9.14/8.0.2/lib --bindir=/Users/maximiliantagher/.stack/snapshots/x86_64-osx/lts-9.14/8.0.2/bin --datadir=/Users/maximiliantagher/.stack/snapshots/x86_64-osx/lts-9.14/8.0.2/share --libexecdir=/Users/maximiliantagher/.stack/snapshots/x86_64-osx/lts-9.14/8.0.2/libexec --sysconfdir=/Users/maximiliantagher/.stack/snapshots/x86_64-osx/lts-9.14/8.0.2/etc --docdir=/Users/maximiliantagher/.stack/snapshots/x86_64-osx/lts-9.14/8.0.2/doc/HsOpenSSL-<IP_ADDRESS> --htmldir=/Users/maximiliantagher/.stack/snapshots/x86_64-osx/lts-9.14/8.0.2/doc/HsOpenSSL-<IP_ADDRESS> --haddockdir=/Users/maximiliantagher/.stack/snapshots/x86_64-osx/lts-9.14/8.0.2/doc/HsOpenSSL-<IP_ADDRESS> --dependency=Cabal=Cabal-<IP_ADDRESS> --dependency=base=base-<IP_ADDRESS> --dependency=bytestring=bytestring-<IP_ADDRESS> --dependency=network=network-<IP_ADDRESS>-IsLM4TXcLoRI0fmmBYVyQz --dependency=time=time-<IP_ADDRESS> -f-fast-bignum
    Process exited with code: ExitFailure 1
    Logs have been written to: /Users/maximiliantagher/Documents/Mercury/hs/mercury-web-backend/.stack-work/logs/HsOpenSSL-<IP_ADDRESS>.log

    [1 of 2] Compiling Main             ( /private/var/folders/v7/5k06hq7d3wbb4cvk8smv6kl00000gn/T/stack19302/HsOpenSSL-<IP_ADDRESS>/Setup.hs, /private/var/folders/v7/5k06hq7d3wbb4cvk8smv6kl00000gn/T/stack19302/HsOpenSSL-<IP_ADDRESS>/.stack-work/dist/x86_64-osx/Cabal-<IP_ADDRESS>/setup/Main.o )
    [2 of 2] Compiling StackSetupShim   ( /Users/maximiliantagher/.stack/setup-exe-src/setup-shim-mPHDZzAJ.hs, /private/var/folders/v7/5k06hq7d3wbb4cvk8smv6kl00000gn/T/stack19302/HsOpenSSL-<IP_ADDRESS>/.stack-work/dist/x86_64-osx/Cabal-<IP_ADDRESS>/setup/StackSetupShim.o )
    Linking /private/var/folders/v7/5k06hq7d3wbb4cvk8smv6kl00000gn/T/stack19302/HsOpenSSL-<IP_ADDRESS>/.stack-work/dist/x86_64-osx/Cabal-<IP_ADDRESS>/setup/setup ...
    Configuring HsOpenSSL-<IP_ADDRESS>...
    setup: Can't find OpenSSL library,
    install it via 'brew install openssl' or 'port install openssl'
    or use --extra-include-dirs= and --extra-lib-dirs=
    to specify location of installed OpenSSL library.

However, I have run brew install openssl, and I can confirm that the /usr/local/opt/openssl/ and /usr/local/opt/openssl/lib directories are present.
Adding these lines to my stack.yaml file fixes it:
extra-include-dirs:
- /usr/local/opt/openssl/include
extra-lib-dirs:
- /usr/local/opt/openssl/lib

However, I was under the impression that this shouldn't be necessary, because of this commit: https://github.com/vshabanov/HsOpenSSL/commit/b95cea20ef7ee162fd7e5370e09b9120efa3686d
OS Version: macOS High Sierra 10.13.2 (17C205) (Latest as of today)
Stack: Version <IP_ADDRESS>71202, Git revision 50090e67c16980bba31349f386d5b018cbcaec31 (5421 commits) x86_64 hpack-0.20.0
LTS Haskell: 9.14
Compiler: 8.0.2 (Unchanged from LTS)
OpenSSL: 1.0.2n (Latest as today)
I had a coworker try it as well, and he had the same issue (Same project as mine, and also on macOS High Sierra)
Tell me if there's anything I can do to help debug this issue!

@MaxGabriel 's solution worked for me as well;
I was using MacPorts, so I did change the configuration file corresponding to that:
--- in stack.yaml
flags:
HsOpenSSL:
macports-openssl : true
make sure to care about indentation.

Hard to say. I have no experience with Stack.
Does it work if you set homebrew-openssl flag instead of settings extra-*-dirs?
And could you run installation with verbose flag and attach logs so I could see what happens during configuration stage.

Btw, IMO it makes sense to add some kind of switching between 2 architectures: x86_64 and arm64 for M1, M2 if it can be done with some if platform(...). Or to change flags like homebrew-x86_64-openssl and homebrew-arm64-openssl or something similar.


cmake: use generator expression to tersify

This PR refactors CMakeLists.txt to use CMake generator expressions to compact the logic. This can help reduce typos and make the script less verbose.

If you're making changes to these, please also convert to adding the compile definitions to only the targets, and not to the global compile definitions list, so that some day Ninja can be consumed as a library without the project using it needing to jump through a bunch of hoops.

Am I the only one who finds
  if(WIN32)
    target_sources(ninja_test PRIVATE src/includes_normalize_test.cc src/msvc_helper_test.cc)
  endif()

a lot more readable than
   "$<$<BOOL:${WIN32}>:src/includes_normalize_test.cc;src/msvc_helper_test.cc>"

?


TP2000-450 Certificate.MultipleObjectsReturned error on certificate description create

TP2000-450 Certificate.MultipleObjectsReturned error on certificate description create

Why

We're getting MultipleObjectsReturned errors when trying to create a description for a certificate with more than one version.
What

Updates CertificateDescriptionCreate.get_initial to use objects.current()

Requires migrations? No
Requires dependency updates? No

Original sentry error https://sentry.ci.uktrade.digital/organizations/dit/issues/64174/?environment=production&project=200&referrer=alert_email

Codecov Report

Merging #643 (7cb90a6) into master (9e96ebd) will increase coverage by 0.00%.
The diff coverage is 100.00%.

 Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


LocalHyperV renamed and merged with HyperV hosting manager

BREAKING! This is a breaking change because existing cluster login files will specify the hyperv-local hosting environment and we're going to delete this.  You'll need to rebuild your cluster or change the environment to hyperv and the environment hosting options name to hyperv too.
We've been using LocalHyperV as the developer/desktop version of the Hyper-V hosting manager and been reserving HyperV for a hosting manager that targets Hyper-V on remote Windows Servers, the idea being that the Windows Server version would be more complex and have more features and that we defer implementing that until much later.
I now believe that we're going to end up need to implement support for deploying to remote Hyper-V machines and not just Windows Server boxes.  I think it will end up being fairly common for individual users to need to deploy clusters off their workstation/laptop due to hardware constraints.  Installing a XenServer will work, but I imagine that many folks would prefer to do this on a separate Windows Pro box as well.
I believe it will be straightforward to have the existing hosting manager implementation to use remote Powershell to manage a remote machine like we do for XenServer and that this should reasonably well for remote Windows 10 Pro as well as Windows Server boxes.
When it it makes sense in the future, we could create new enterprise hosting managers for XenServer and Hyper-V with advanced features like support for XenServer pools and the Hyper-V equivalent and these could be paid features.

[x] Merge HyperV and RemoteHyperV hosting managers
[x] Let's also rename the enterprise concept to premium while we're at it.  I think this makes sense because I believe we'll end up selling these capabilities to smaller businesses too.

DONE


changing adminsecret (hasura charts) after already deployed

Hi,
I've been looking around and cannot really find anything regarding this. If I've deployed the charts on my cluster with a hardcoded adminsecret and would like to update it, do i just update the secret and redeploy? Reason I ask is because I had an issue with the postgre dependency using a persistent volume where if I update the password it will not update unless i remove the PVC and the whole thing re deploys. With that said, will I have the same concern with the admin secret of this chart?
Thanks

Hi,
The Hasura admin secret is supposed to be updated when changing it in your values.yaml file and upgrading your chart.
It is therefore straightforward and not as tricky as changing the postgres password. To change postgres password is indeed complicated as it is stored inside the database, and there is no simple way to automate the change with Helm yet. If interested you can monitor this issue - a solution would come out of it, I will adapt the Hasura Chart accordingly.

Hi,
The Hasura admin secret is supposed to be updated when changing it in your values.yaml file and upgrading your chart.
It is therefore straightforward and not as tricky as changing the postgres password. To change postgres password is indeed complicated as it is stored inside the database, and there is no simple way to automate the change with Helm yet. If interested you can monitor this issue - a solution would come out of it, I will adapt the Hasura Chart accordingly.

Sounds good! Thank you

Sounds good! Thank you


Internal redirect in filter chains

Title: Support re-routing within the proxy
HTTP filters are allowed to modify HTTP requests in progress. Sometimes, that leads to changing the routing decision (which is known prior to filter execution). Currently, it feels a bit ad-hoc to insert "clear routing table" call since it is not clear how that works with 1) multiple filters trying to clear routing tables 2) per-route config that can change mid-filter chain. I think there are three legitimate cases for this kind of behavior:

filters change HTTP requests with no change in routing;
filters change HTTP requests, and expect the entire chain of filters to be re-applied including the router (this is a natural expectation since it's logically two proxies, stacked together). Some checks need to be applied to prevent infinite loops. Side effects might happen during filter re-evaluation.
filters change HTTP requests, and only the router filter gets re-applied at the end. Filter configuration is not re-evaluated using the new route. We need to clarify what happens to per-route filter configs.

I think 1) and 3) are currently implementable in filters. Is there any support for case 2)? Does option 2) make more sense than 3)?

@kyessenov, @alyssawilk was asking me about this earlier in the week. I think she is going to implement 2.

FWIW it's pretty far out on our requirements horizon. Worth keeping open in the interim though.

Thanks. Agree, that it's worth waiting for more use-cases from filter developers.

Does anyone know if there's been any progress on this issue?

I talked to @alyssawilk about this recently and I think we roughly sketched out an implementation. Not sure of timelines but it sounds like someone from Google might implement this.

Well my question for Matt had been if we could replace 1 with 2 (in the context of wanting custom filter chains, and custom filter chains being 'dangerous' with 1 since you'd not get the new filter chain) and the answer I got was 'probably not' since some folks probably actually want the preexisting behavior, so we'll have to document to not use (theoretical) custom filter chains with style-1 route changes.
I think the IR case I'm more interested in implementing is actually getting an x-envoy-internal-redirect: scheme://new.domain/new_path from upstream, then re-sending the modified request to a new upstream.  I think the work needed to do that has a ton of overlap with 2 and I hope to have the time to tackle that in the next week or two.

Ok, first in what is I'm sure a very long series of design choices here, do we recreate the filter chain or rerun?
I'm inclined to recreate.  Where I suspect we will eventually want to allow a given filter to pass information from the first pass to the second pass, I don't think folks are going to correctly make every filter redirect-aware, and so I think creating and re-running the chain "from scratch" (data passing tdb when/if there's a request) is going to result in far fewer (though probably not non-zero) bugs than trying to get every filter to clear sufficient state that a second pass won't be harmful.

+1 recreate.

What would be the recommendation for network filter chain re-run? I'm thinking of two HTTP connection managers on ports 80/443, and an internal redirect in 80 triggering the HTTP filter chain in 443. Should we restrict this functionality to a single HTTP connection manager?

Yeah, I don't think cross-scheme redirects should be allowed, due to security concerns.  I mean I guess going from a secure to an insecure response isn't terrible, but serving an https response on an http connection is obviously unsafe and it's easier to be consistent

Right, I didn't think through security implications. I'm more interested in plain http-to-http transition. Istio buckets RDS routes by capture ports, and I'm trying to find a way to jump between those RDS tables.

Ah, interesting.  We've traditionally done multi-tenant support via VIP rather than port, so can have one (or two) giant listeners and everything in the scope of that.  We have to adapt Envoy to allow per-vip matching there (see scoped rds over on #4704) and it's possible once we have that landed we could add support for some or all listeners sharing scoped rather than duplicating the scopes for all listeners.


rebuild  nio selector  memory leak

Netty version
   <version>4.1.58.Final</version>
   <artifactId>netty-all</artifactId>

JVM version (e.g. java -version)
openjdk version "1.8.0_332"
OS version (e.g. uname -a)
$uname -a
Linux ............................#1 SMP Tue Jun 28 10:19:46 CST 2022 aarch64 aarch64 aarch64 GNU/Linux
Description
I have encountered a very strange memory leak problem.

look at above , the selectors had been a chain.
when I checked my server log, I found some log
01 2023-11-01 17:04:40.250 WARN [HSF-Worker-13-thread-3:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@22b52e0c.
01 2023-11-01 17:04:51.365 WARN [HSF-Worker-13-thread-4:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@1fb54286.
01 2023-11-01 17:04:51.374 WARN [HSF-Worker-13-thread-3:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@3a0d1386.
01 2023-11-01 17:05:02.525 WARN [HSF-Worker-13-thread-3:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@4814bda1.
01 2023-11-01 17:05:24.810 WARN [HSF-Worker-13-thread-8:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@7a9b3b57.
01 2023-11-01 17:05:24.844 WARN [HSF-Worker-13-thread-1:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@5863320.
01 2023-11-01 17:05:58.316 WARN [HSF-Worker-13-thread-4:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@1f52b5ae.
01 2023-11-01 17:05:58.337 WARN [HSF-Worker-13-thread-7:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@71ac476.
01 2023-11-01 17:06:20.612 WARN [HSF-Worker-13-thread-7:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@52e8a739.
01 2023-11-01 17:06:31.772 WARN [HSF-Worker-13-thread-4:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@53bd824.
01 2023-11-01 17:06:31.777 WARN [HSF-Worker-13-thread-2:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@5f0ebf30.
01 2023-11-01 17:06:54.098 WARN [HSF-Worker-13-thread-5:t.h.remoting] [iliad] [] [] Selector.select() returned prematurely 512 times in a row; rebuilding Selector io.netty.channel.nio.SelectedSelectionKeySetSelector@72278891

it look like have trigger the jvm selector 100% cpu bug and rebuild the selector;

and I had check io.netty.channel.nio.NioEventLoop#rebuildSelector0 method and set the ((AbstractNioChannel) a).selectionKey = newKey; to new one.
so ,  my first question is why a channel assiciated with a close selector ? it shoud have been update by ((AbstractNioChannel) a).selectionKey = newKey;

the second question is call java.nio.channels.SelectionKey#cancel method, it only add to java.nio.channels.spi.AbstractSelector#cancelledKeys and do nothing ,unless you call src/java.base/linux/classes/sun/nio/ch/EPollSelectorImpl.java:doSelect to clean cancelledKeys and remove fdToKey map. but when rebuilt a selector ,old selector will call close method and have no chance to call doSelect again,so it is a bug ?

hi there, any updates on this issue?

Try a newer version. There has been a lot of changes since 4.1.58.

I encountered the same problem!

openjdk version "1.8.0_332"

this is the most relevant problem. The JDK itself has changed a lot too

 I encountered the same problem!

netty-all: 4.1.68.Final
openjdk: 1.8.0_302-b08

I think we have the same problem.
Netty is used in Eclipse Vert.x, which we use as a server.
There are a lot of messages in the log:
[22-07-24 17:54:44]Jul 22, 2024 5:54:44 PM io.netty.channel.nio.NioEventLoop unexpectedSelectorWakeup
WARNING: Selector.select() returned abnormally 512 times in a row; rebuild selector io.netty.channel.nio.SelectedSelectionKeySetSelector@732d0e4.
[22-07-24 17:54:44]Jul 22, 2024 5:54:44 PM io.netty.channel.nio.NioEventLoop rebuildSelector0
INFO: Migrated 5 channel(s) to new selector.
[22-07-24 17:57:35]Jul 22, 2024 5:57:35 PM io.netty.channel.nio.NioEventLoop unexpectedSelectorWakeup
WARNING: Selector.select() returned abnormally 512 times in a row; rebuild selector io.netty.channel.nio.SelectedSelectionKeySetSelector@c8ee6fe.
[22-07-24 17:57:35]Jul 22, 2024 5:57:35 PM io.netty.channel.nio.NioEventLoop rebuildSelector0
INFO: Migrated 5 channel(s) to new selector.
[22-07-24 18:18:45]Jul 22, 2024 6:18:45 PM io.netty.channel.nio.NioEventLoop unexpectedSelectorWakeup
WARNING: Selector.select() returned abnormally 512 times in a row; rebuild selector io.netty.channel.nio.SelectedSelectionKeySetSelector@2ce94d35.
[22-07-24 18:18:45]Jul 22, 2024 6:18:45 PM io.netty.channel.nio.NioEventLoop rebuildSelector0
INFO: Migrated 5 channel(s) to new selector.

Environment:
- CentOS Linux 7
- uname -a: Linux localhost.localdomain 4.9.35-centos #15 SMP Tue Apr 10 16:13:42 EEST 2018 x86_64 x86_64 x86_64 x86_64 GNU/Linux
- Java version "1.8.0_162"
- netty-all: 4.1.74.Final

But we can't reproduce this problem in our local network. While the user has reproduced this problem.
The hardware, the operating system, and the software are all the same as ours. Only the network environment is different.


KAFKA-5175: Fix transient failure in ControllerIntegrationTest.testPreferredReplicaLeaderElection

The transient failure came from the controller processing the preferred replica leader election before the restarted broker (the preferred replica leader) has joined isr, causing preferred replica leader election to fail and for the final zookeeper state validation to fail.

The failure was a Jenkins issue (JVM crashed), merging to trunk.


Change ExternalAssets by custom sendFile

ExternalAssets is turned off in production.
Here is a safe alternative

A few comments, just suggestions, LGTM


Missing Routine Implementations

Issue details
During decompilation I am shown three function prototypes for routines in a public class that extends Service:
/* JADX INFO: Access modifiers changed from: private */
public native int ReturnKey(byte[] bArr, byte[] bArr2);

/* JADX INFO: Access modifiers changed from: private */
public native void decrypt(byte[] bArr, byte[] bArr2, byte[] bArr3);

private native void encrypt(byte[] bArr, byte[] bArr2, byte[] bArr3);

However the implementation for these routines are not shown anywhere. While I am seeing decompilation errors, they do not appear to be related to either of these three routines. What am I missing?
Relevant log output or stacktrace
No response
Provide sample and class/method full name
No response
Jadx version
1.4.7

@fosterbrereton these are native methods, and you should look for implementation in native libraries.
Simple example for usage of native methods in Java: https://stackoverflow.com/questions/18900736/what-are-native-methods-in-java-and-where-should-they-be-used
Unfortunately, jadx do not support decompilation of native libs, so you should use other decompilers for that.

Okay, thank you for the pointer.