Error on Loading (looks like the old/closed bug that was not resolved)

Using newest version (downloaded 1/20/2019).  It is in the proper folder, and this is not my first/only custom component.
Describe the bug
Fails to load.  My config:
- platform: weatheralerts
  sameid: '029189'

log
Sun Jan 20 2019 20:40:51 GMT-0600 (Central Standard Time)
Error while setting up platform weatheralerts
Traceback (most recent call last):
File "/usr/local/lib/python3.6/site-packages/homeassistant/helpers/entity_platform.py", line 128, in _async_setup_platform
SLOW_SETUP_MAX_WAIT, loop=hass.loop)
File "/usr/local/lib/python3.6/asyncio/tasks.py", line 358, in wait_for
return fut.result()
File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/sensor/weatheralerts.py", line 38, in setup_platform
add_devices([WeatherAlertsSensor(sameid)])
File "/config/custom_components/sensor/weatheralerts.py", line 43, in init
self.update()
File "/config/custom_components/sensor/weatheralerts.py", line 47, in update
nws = WeatherAlerts(samecodes=self._sameid)
File "/config/deps/lib/python3.6/site-packages/weatheralerts/weather_alerts.py", line 43, in init
self.scope = self.geo.getfeedscope(self.samecodes)
File "/config/deps/lib/python3.6/site-packages/weatheralerts/geo.py", line 59, in getfeedscope
states = self._get_states_from_samecodes(geocodes)
File "/config/deps/lib/python3.6/site-packages/weatheralerts/geo.py", line 75, in _get_states_from_samecodes
state = self.samecodes[code]['state']
TypeError: 'NoneType' object is not subscriptable

I'm getting this also. Config and install location is correct. I have rebooted/restarted multiple times and it has never worked.
2019-02-25 15:03:40 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up platform weatheralerts Traceback (most recent call last):   File "/usr/local/lib/python3.7/site-packages/homeassistant/helpers/entity_platform.py", line 128, in _async_setup_platform     SLOW_SETUP_MAX_WAIT, loop=hass.loop)   File "/usr/local/lib/python3.7/asyncio/tasks.py", line 416, in wait_for     return fut.result()   File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run     result = self.fn(*self.args, **self.kwargs)   File "/config/custom_components/weatheralerts/sensor.py", line 39, in setup_platform     add_devices([WeatherAlertsSensor(sameid)])   File "/config/custom_components/weatheralerts/sensor.py", line 44, in __init__     self.update()   File "/config/custom_components/weatheralerts/sensor.py", line 48, in update     nws = WeatherAlerts(samecodes=self._sameid)   File "/config/deps/lib/python3.7/site-packages/weatheralerts/weather_alerts.py", line 43, in __init__     self.scope = self.geo.getfeedscope(self.samecodes)   File "/config/deps/lib/python3.7/site-packages/weatheralerts/geo.py", line 59, in getfeedscope     states = self._get_states_from_samecodes(geocodes)   File "/config/deps/lib/python3.7/site-packages/weatheralerts/geo.py", line 75, in _get_states_from_samecodes     state = self.samecodes[code]['state'] TypeError: 'NoneType' object is not subscriptable
Sent with GitHawk

Same here...

0.1.1 should fix that.


WIP WebSearch: initial SRU support

Implements initial SRU support including CQL parser.
(closes #1153)

Signed-off-by: Jerome Caffaro<EMAIL_ADDRESS>

@kaplun Please attribute wanted milestone.

This is more of interest to TIND. @Kennethhole this is what I was mentioning you today IRL. But it's implementing (for master only) the server-side, i.e. when Invenio has to be queried for ILL by another library.

Thanks @kaplun ! I will have a look at it together with @audub

Hi, I think this PR can be safely closed as someday as it is anyway to be reimplemented properly for master.


delegate inscription content not displayed

The following inscriptions fail to appear in Leather:
https://ordinals.hiro.so/inscription/a77c2fda458fc67028cb444b3b3fdcdf36b168d89ceb7286630d2fc76b21a714i476
https://ordinals.hiro.so/inscription/fc7e21fc4e8140100f5913a0e0d6ce1675b73298ba97de65ef0130169369f3dci421

This is really an API bug, we should be displaying the content of the delegate inscription


Improve filter tests

There are a couple areas in the filter parsers that could use some more testing/development:
The IBM-Style parser any operator should not accept operands of different types.
For example:

✅filter=any(age,'1','2','3')
❌filter=any(age,'1','2','cat') or filter=(age,'1','2','2020-01-01')
✅filter=any(age,'1','2',null)  (nulls can be mixed in with other types)

The MongoDB-Style parser could probably use more tests to confirm expected behavior when array notation and omitted operators are mixed.
Some examples:

filter[name]='brad'&filter[name][$eq]=josh
filter[age][$eq]=10&filter[age]=11,12,13
As for what the expected behavior actually is ... probably whatever makes sense once it's been looked into.

Are quotes around strings necessary?

@justinbmeyer - sorry missed this.
For the IBM style, the quotes distinguish "constant values" from null or other attribute references (column names).
Examples:
?filter=contains(name,'anna')
?filter=not(equals(lastName,null))
?filter=greaterThan(wins,losses)
We might be able to get rid of the quotes with minimal issues.
Personally I think they are helpful for clarity, though.


Can't login into Slack: form freezes after inputting the password.

Expected Behavior

I'm able to input login and password into Slack login form and get logged in.
Current Behavior

I input login and password successfully. When I submit the password, page freezes.
Screenshots (if appropriate):

Possible Solution

Reloading the service makes it logged in and usable. But I need to wait before reloading: if I reload immediately after the freeze, I'll see the login form again.
Steps to Reproduce (for bugs)

Not sure if it's reproducible on other machines.
Context

I had installed fresh Franz 5, logged in and got my services synced.
Your Environment

Franz Version used: Version: 5.0.0-beta.18, Release: 1.8.4 / linux / x64
Operating System and version: Linux Mint 18.3 64-bit (based on Ubuntu 16.04)

This is also an issue on Fedora 28. Same Franz version and release.

Same on a fresh install of Manjaro 17.1.12 using Franz 5.0.0-beta.18
What's wrong with it?

Same happens on Windows 10 and OSX

Same here on OSX High Sierra 10.13.6

push, linux manjaro


[CARBONDATA-1065] Added set command in carbon to update properties dynamically

The below sql command updates the carbon properties in driver and as well as in executor dynamically in memory.
set key1=value1

It does not update carbon.properties file, it just updates the running driver and executor properties in memory, so after restart of driver all set properties will be gone.

Build Success with Spark 1.6.2, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2080/

Hi, I have the following questions:
Will these properties ...

be in effect only in current session or until the node restarts ?  (Effective Scope)

be logged into log file like execution environment variables ?  (Audit & Tuning)


example request

Dear Aymeric,
I have come across you work on websockets on  https://websockets.readthedocs.io/en/stable/intro.html
And I would like to thank you for that. Especially the browser based example was helpful.
Just below that example you suggest to use two-way communication and registration. And that is where I get lost. If one is into it, it will all be clear (I suppose) but I do not see what I should put together to get it going both ways.
What I try to make is a html page in the browser containing a field showing a number and two buttons. One to increase the number, and one to decrease it. With a web socket connection to a server it should be possible to open this html page on two devices and use the buttons on either device. Of course the number shown should come from the server and be the same on both devices. Or on all three devices, or four etc.
Maybe it would be nice to show a list of connected IP devices too.
Could you give some more hints how to set this up, or could I get you to extend the html example on the page mentioned to something like I described. It should help more people.
Anyway thank you so far, I hope you will provide some pointers on how to proceed.
Kind regards,
Simon

This is a good, simple example that involves interactions between connected users. Definitely worth adding to the documentation.

Here's a proposal.
CLIENT
<!DOCTYPE html>

        <title>WebSocket demo</title>

-

?

+

            ? online

SERVER
#!/usr/bin/env python

import asyncio
import json
import logging
import websockets

logging.basicConfig()

STATE = {'value': 0}

USERS = set()

def state_event():
    return json.dumps({'type': 'state', **STATE})

def users_event():
    return json.dumps({'type': 'users', 'count': len(USERS)})

async def notify_state():
    message = state_event()
    await asyncio.gather(*[user.send(message) for user in USERS])

async def notify_users():
    message = users_event()
    await asyncio.gather(*[user.send(message) for user in USERS])

async def register(websocket):
    USERS.add(websocket)
    await notify_users()

async def unregister(websocket):
    USERS.remove(websocket)
    await notify_users()

async def counter(websocket, path):
    # register(websocket) sends user_event() to websocket
    await register(websocket)
    await websocket.send(state_event())
    try:
        async for message in websocket:
            data = json.loads(message)
            if data['action'] == 'minus':
                STATE['value'] -= 1
                await notify_state()
            elif data['action'] == 'plus':
                STATE['value'] += 1
                await notify_state()
            else:
                logging.error(
                    "unsupported event: {}", data)
    finally:
        await unregister(websocket)

asyncio.get_event_loop().run_until_complete(
    websockets.serve(counter, 'localhost', 6789))
asyncio.get_event_loop().run_forever()

Notes:

Currently the server spews errors when a client disconnects. #397 fixes it.
I committed a critical regression to master. I'm working on fixing it.

Also there's no error handling in this example.

Dear Aymeric,
This is more than I bargained for! Thank you. However, I have to tell you not all went well. I suspect it is one of the technicalities with Python. As a Python newby I am horrified with all changes between versions 3.3, 3.4, 3.5 in the area of coroutines. Probably my issue also has to do with this. Starting the server is okay. It sits and waits. When I connect with the html page I get:
ERROR:websockets.server:Exception in connection handler
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/websockets/server.py", line 78, in handler
yield from self.ws_handler(self, path)
File "aaserver.py", line 41, in counter
async for message in websocket:
TypeError: 'async for' requires an object with aiter method, got WebSocketServerProtocol
My conclusion  would be that the websocket module I am using is a prehistoric version that does not have this "aiter method", whatever that means or is supposed to do. But I installed the module somewhere last week?! Probably the answer is "move to Python 3.6"?
Anyway, thank you so far!
Simon.

Yes, the example I provided requires Python 3.6.
If you start a shell with python, it will tell you the version of Python. You can also put import sys; print(sys.version_info) in the script to be sure.
If you're running Python 3.5, you can replace:
        async for message in websocket:
            ...

with:
        while True:
            message = await websocket.recv()
            ...

and things should work.

This should also solve your issue if you're running an version of websockets < 4.0.
You can check the version of websockets by adding from websockets.version import version; print(version) in the server script.

I would like to confirm that with the proposed changes it works using websockets 3.0 and Python 3.5.  Can I say "thank you" once again. This is a nice basis to proceed from. At first I had the idea to have the server send out commands over a serial line to motor controllers (say you change a position by increasing and decreasing the number). That was when I realised that the "network handler" simply also is one of those clients connecting to the server. What a nice and practical thing you have demonstrated here.

Hello @aaugustin,
First, thank you for your hard work. I was wondering about this part of the code you posted:
        async for message in websocket:
It works just as fine as using the while loop, but how?
I've been working to make a threaded Websocket Server, so my exit condition was an event I raise manually.
    async def getMessage(self, websocket, path):
        try:
            while not self.stopped():
                msg = await websocket.recv()
                logging.debug(f"Received: {msg}")
        except websockets.exceptions.ConnectionClosed:
            logging.exception()
            raise
        finally:
            logging.debug("Going out!")

In the following code, without the loop, it would just listen to one message, then leave.
But your new way works just fine. How does 'async for' keep the task alive? The task it's also killed when connection is closed if I manage the exception, so I'm at awe.


Transport tests cannot be run in parallel

Problem
UDP and secure session unit tests create "real sockets" on the chip standard port and listen on the local loopback interface. If these tests run in parallel, several UDP sockets are openend and they all listen on the same port, receiving packets from different tests.
This makes tests fail due to unexpected packets being received.
Proposed Solution
Use a unique port for every test run, so at  least within the same toolchain tests can run in parallel.
Find a way for a test runner to pass in a port to use (environment variables or command line for example).

Do we have contact person for the circleCI? in openweave, when using travis CI, It works expected. Our team is putting resource to integrate HAPPY here.

Apparently there is also https://gvisor.dev/ as an option. It abstracts away the network stack and supposedly can run linux binaries unmodified. This could allow us to run the tests under it.

Github action azure VM support ip netns container, we should be good to go.


[PL-42839] [CDS-82777] Delegate hotfix 81406

Delegate hotfix 81406
For reviewers, a preview is available.
https://655b6387fb2a4711acae44e7--harness-developer.netlify.app/release-notes/delegate#version-81406
What Type of PR is This?

[ ] Issue
[ ] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screen Shoot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://655e40f5f0471d558fa78814--harness-developer.netlify.app


fix: respect colors dict in metropolis theme

Let new-section-slide of Metropolis theme respect self.colors to fix this bug.

Thanks!


Notifications/Flags in case any IO ringbuffers overflow (specifically wifi) (IDFGH-6892)

Is your feature request related to a problem? Please describe.
When using promiscuous mode directly, I assume my callback is getting called directly whenever a packet is placed by the wifi chip/driver into a ringbuffer using DMA. IE I assume it behaves analogously to the UART FIFOs. However, I am not aware of any way of knowing if, due to excessive processing elsewhere, any packets are dropped/lost due to a full buffer.
Describe the solution you'd like
It would be nice if there were events or a flag or callbacks that would indicate to the user if any packet loss in the buffer/driver has occured during promiscuous mode.
Describe alternatives you've considered
The UART API is very mature and feature-rich. It would be nice if there was a direct analog to it for wifi, both rx & tx. IE it would be nice to have a uniformely named API for read and write, as opposed to esp_wifi_80211_tx and esp_wifi_set_promiscuous_rx_cb. Rather something like:
wifi_read_packet()
wifi_write_packet()
wifi_enable_tx_intr()
wifi_enable_rx_intr()
wifi_clear_intr_status()
wifi_enable_intr_mask()
wifi_wait_tx_done()
wifi_set_rx_full_threshold()
wifi_set_tx_empty_threshold()
wifi_set_rx_timeout()
wifi_get_rx_overflow_flag()
wifi_reset_rx_overflow_flag()
The wifi driver can in the background continue to verify integrity of the packet & enforce necessary security aspects, while still being as flexible as esp_wifi_80211_tx currently is. Ideally it would also allow the user to encrypt/decrypt any packets for which it already knows the keys, and use hardware acceleration for this. Even if this is for some reason a security risk, atleast it could be enabled for packets that are not wifi-network related, ie provide the user with a streamlined method to decrypt/encrypt arbitrary data that the user wants to place in the payload, similar to how such encryption is allowed/possible for espnow. Currently, I'm forced to use plaintext payloads which is in turn a security risk for me.
It is very helpful if such on-the-fly de-/encryption of streams is possible for any IO streams, not just wifi. Then for example two esp32 can communicate with each other wirelessly, over IR, over Serial, over SPI, over GPIO, or whatever, while still benefiting from hardware-accelerated, streamlined encryption.
Additional context
This gives the developer great freedom & flexibility in choosing which communications subsys/api to use. I personally greatly disdain tcp/ip in itself, thus anything built on it, such as lwIP, due to bloat & inefficiency, and excessive iterative compile times. If the user tries to use any other conflicting API, the library can simply present an error message indicating the user must choose one mode of operation or the other.

@moefear85 promiscuous mode is actually not a normal mode, it cost lots of CPU performance. It is not suitable to have a callback when buffer full happens, since it will cause more buffer full. How about provide an API to get the buffer overflow counter?

@jack0c:
I've been doing alot of further coding & testing since first posting this. I can confirm using promiscuous mode & esp_wifi_80211_tx to send and recieve works perfectly and without any burden on the CPU. I'm getting much better flexibility & throughput than using wifi/lwIP.
As for the API question I posted, it's actually not so important, since I've realized how to efficiently use the existing mentioned functions. promiscuous takes a callback that runs as an ISR, and I just forward the packets to the default event queue to be processed at lower priority. It works amazing. I see transfer speeds of around 6MB/s. Ofcourse packet drops happen. Even if I catch these and resend, I still see average throughput of around 1.5MB/s, even if I have all stack protections & heap debugging options set to the most resource-intensive settings.


Inheritance break validation function is improperly invalidating

Describe the bug
Given a config such as this:
projects_and_groups:
  parent/*:
    group_settings:
      description: parent group settings
      project_creation_level: developer

    members:
      enforce: true
      groups:
        group1:
          group_access: developer
        group2:
          group_access: developer
        group3:
          group_access: developer

  commerce/playground/*:
    group_settings:
      description: ''
      project_creation_level: maintainer

    members:
      inherit: false
      enforce: true
      groups:
        group3:
          group_access: maintainer

Since a subgroup is considered both a group and a subgroup,  when inherit: false is set under members in the subgroup to break the inheritance from the parent group, the break-inheritance validation function throws an error.
GitLabForm version
🏗  GitLabForm version: 2.11.1 = the latest stable 😊
GitLab version
GitLab Enterprise Edition 14.10.2-ee

Currently trying to figure out a fix for this.

This should be fixed in v3 RC3 released today so it also will be fixed in the final v3 that will be release within a few days. We can close this issue then.

Closing as fixed in v3.


training speed slow

Thanks for your great job!
could you tell me, how many hours it took you for training your model with 5 blocks?
i have tried training model on one Tesla V100 GPU with 32GB memory and without pre-training, batch_size=128, average speed is 7s/it.
here is whole training opts :
------------ Options -------------
exp_name: MJ-ST-SA-20-Seed2222
train_data: scatter_dataset/data_lmdb_release/training
valid_data: scatter_dataset/data_lmdb_release/validation
manualSeed: 2222
workers: 4
batch_size: 128
num_iter: 1000000
valInterval: 500
saved_model:
FT: False
adam: False
lr: 1
beta1: 0.9
rho: 0.95
eps: 1e-08
grad_clip: 5.0
select_data: ['MJ', 'ST', 'SA']
batch_ratio: ['0.4', '0.4', '0.2']
total_data_usage_ratio: 1.0
batch_max_length: 35
imgH: 32
imgW: 100
rgb: False
character:<PHONE_NUMBER>abcdefghijklmnopqrstuvwxyz
sensitive: False
PAD: False
data_filtering_off: True
num_fiducial: 20
input_channel: 1
output_channel: 512
hidden_size: 512
log: ./saved_models/MJ-ST-SA-20-Seed2222
lambda_ctc: 0.1
lambda_attn: 1.0
num_gpu: 1
num_class: 38

Hi @xldagger,
Thank you for your question,
I remember that it had taken about 2-3 days for training this model. The training speed is also quite slow with my experience. I used 2 Tesla V100 GPUs.

Hi @xldagger,
Thank you for your question,
I remember that it had taken about 2-3 days for training this model. The training speed is also quite slow with my experience. I used 2 Tesla V100 GPUs.

Thanks for your reply!
so your batch_size is (64/ per GPU) * 2, and the iter nums is default 1000000?
Could you show me the opts? or could you tell me the opts which are different from default in train.py?

@xldagger The iter nums are 1000000 but I remember that I had stopped the training process earlier. Don't worry about it. Your batch size in the option is correct. I use 2 GPUs so the batch size is 128*2 = 256.

Hi @xldagger,
Thank you for your question,
I remember that it had taken about 2-3 days for training this model. The training speed is also quite slow with my experience. I used 2 Tesla V100 GPUs.

when i validate the model during training, i only select the last preds(predss[-1]) just like the inference process. And the speed is a little faster.

Hi @xldagger,
Thank you for your question,
I remember that it had taken about 2-3 days for training this model. The training speed is also quite slow with my experience. I used 2 Tesla V100 GPUs.

i only use the last preds in predss when i validate the model during train (just like the inference process), and it get a little faster speed.

I had suffered the problem of slow training speed before. And it turns out to be the problem of shuffle in DataLoader. There are millions of pictures in MJ+ST, and random reading is slow. So PyTorch spends most of the time reading pictures and causes a low utilization rate of GPU. You can either buy an SSD or use a randomsequentialSampler used in MoranV2. Or simply just turn off the shuffle in dataloader


go-synthetic: Removed max-count limitation for clear semantics and scale tests.

Config I used for some scale test that fits for 1GB collector.
 Copyright 2022 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https:#www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: go-synthetic
spec:
  replicas: 2
  strategy:
    type: Recreate
  selector:
    matchLabels:
      app: "go-synthetic"
  template:
    metadata:
      labels:
        app: "go-synthetic"
    spec:
      containers:
      - name: go-synthetic
        # TODO(bwplotka): Move to go-synthetic image once released.
        image: "gcr.io/lees-gmp/prometheus-engine/go-synthetic:gmp-20230208_1740"
        args:
        - "--listen-address=:8080"
        # GIGA target: ~100k series, takes 4-6s to scrape. Collector uses ~800 MB
        - "--gauge-count=50000"
        ports:
        - name: web
          containerPort: 8080
        resources:
          requests:
            cpu: 1
            memory: 500Mi
      terminationGracePeriodSeconds: 5
---
apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: go-synthetic
spec:
  selector:
    matchLabels:
      app: go-synthetic
  endpoints:
  - port: 8080
    interval: 15s


Increase the editor profiler frame history default and maximum limit

master version of https://github.com/godotengine/godot/pull/61482.
The new default value (1800) allows storing 30 seconds of profiling at 60 FPS.
The new maximum value (10000) allows storing about 3 minutes of profiling at 60 FPS.
The profiler graph will scale accordingly to the chosen setting, so the default value is kept relatively low to prevent the graph from looking too squished on narrow displays. It might be possible to implement automatic scaling of the generated image according to its width (using a TextureRect node and region properties to display the texture), but this is something better left to a future pull request. This would also allow for implementing zooming on the profiler graph (both horizontal and vertical).
I did some testing and it seems to hold up OK at both the default value and maximum value.
See https://github.com/godotengine/godot-proposals/issues/2045.

Thanks!


lost Relationships

@NodeEntity
public class Usecase extends RelationalObject {
    @Relationship(type = "relates", direction = Relationship.UNDIRECTED)
    private Set<Relation> attachedRelations = new HashSet<>();
    ...
}

@RelationshipEntity(type = "relates")
public class Relation extends DBObject {
    // might be 'generalize', 'extends' or 'includes'
    private String type;
    @StartNode
    protected Usecase source;
    @EndNode
    protected Usecase target;
    ...
}

to briefly explain what went wrong here are some pictures of before and after saving the usecase nodes

this is what the whole thing should look like. after changing some properties on the usecases but letting the relationships untouched I saved every usecase with a range/depth of 1.

since the relationships remained untouched the after screenshot should look as the one before. if you safe the ('Transaction' usecase) node with the most incoming Relations last it will drop everyone of those.
(I ensured 'Transaction' was saved last. the Sets were created new and populated with the the same entities)

@danielsGitStuff which version of the OGM are you using?

@luanne 2.0.3 from the maven repositories

@danielsGitStuff I'm unable to reproduce this. Could you help with a test please?

@danielsGitStuff just checking if this is still an issue? Could you send us a test?

Could not reproduce this, please reopen with a test case if this shows up again, thanks.


[Go] Fix typo in comment

Reasons for making this change:
Cleaning up grammar in a comment

@tchajed thanks!


feat: add modelName field when querying inference or prediction labels

when user queries inference or prediction labels (or both) only, we add the modelName
I'm not really in favor of removing secondstolabel field, since it could break some user code

@PierreLeveau didn't we say that putting a .prediction() method was a better idea?

@kili-technology/ml is this what we want? It is going to add a lot of LoCs (not to mention the @overload)

@theodu can you check the pyright error? It's linked to overloading I guess? I'm not sure how to fix that... Thanks


Naming of popover directives

Is there a particular reason why html-safe popover directive is uib-popover while html unsafe (one where you can actually use html in content) is popover-html ?
There is also popover-html-popup which warns that it is depricated and I should use uib-popover-html-popup but I wasn't able to get any of these two working the same way popover-html works.
Should we rename popover-html and add alias with a warning similar to popover-html-popup ?

@ojosdegris, Ok.  You got us.  Sometimes we just like to mess with our users.
But seriously, you should only be using one of the three main directives:  uib-popover, uib-popover-html, or uib-popover-template.  If you look at the tooltip.js code you'll see we assemble a template using those *-popup directives internally.
Hope that makes more sense.

Right, and because of the missing uib- prefix on popover-html it was not obvious how to use it.
I am sure I am not the only one with that issue , so what Is better for me to do? pull request docs to say use uib-popover, popover-html, or uib-popover-template
or pull request tooltip.js to rename popover-html to 'uib-popover-html` ?

@ojosdegris, it's not at all clear what you're looking at.  there is no popover-html without the uib prefix either in the docs or the code.

The only thing I can see is in the readme.md:
 uib-tooltip-html-unsafe  -- deprecated in favour of  tooltip-html

Well, we should definitely fix that.

I'll do the PR - I haven't done one in a while.  Getting rusty.


Fix tidy review write conflicts

This fixes write failures when writing back the unmodified contents of files modified by clang-tidy.
Closes #129

Summary by CodeRabbit

New Features

Enhanced functionality for running clang-tidy with improved error handling during file operations.
Implemented a timeout mechanism for file accessibility checks.

Bug Fixes

Improved handling of file buffers to ensure the most recent changes are captured before processing.

Refactor

Organized the flow of execution in the _run_on_single_file function for better readability.

Been looking over this again. I think the logic mighht be lost if an error does occur. Here's my latest take:
--- a/cpp_linter/clang_tools/clang_tidy.py
+++ b/cpp_linter/clang_tools/clang_tidy.py
@@ -264,30 +264,41 @@ def run_clang_tidy(
         timeout = time.monotonic_ns() + 1000000
         # wait 1s for file to become accessible
         success = False
-        while time.monotonic_ns() < timeout:
+        exception = None
+        while not success and time.monotonic_ns() < timeout:
             try:
-                src = open(filename, "r+b")
-                # wait 1s for file to become readable
-                read_timeout = time.monotonic_ns() + 1000000
-                while not src.readable() and time.monotonic_ns() < read_timeout:
-                    pass
-                advice.patched = b"".join(src.readlines())
-                src.seek(os.SEEK_SET)  # back to start of file
-                # wait 1s for file to become writable
-                write_timeout = time.monotonic_ns() + 1000000
-                while not src.writable() and time.monotonic_ns() < write_timeout:
-                    pass
-                src.writelines([original_buf])
-                src.close()
-                success = True
+                with open(filename, "r+b") as src:
+                    # wait 1s for file to become readable
+                    read_timeout = time.monotonic_ns() + 1000000
+                    while not src.readable() and time.monotonic_ns() < read_timeout:
+                        pass  # pragma: no cover
+                    if src.readable():
+                        advice.patched = b"".join(src.readlines())
+                        src.seek(os.SEEK_SET)  # back to start of file
+                    else:  # pragma: no cover
+                        continue  # we need those changes before overwriting them
+
+                    # wait 1s for file to become writable
+                    write_timeout = time.monotonic_ns() + 1000000
+                    while not src.writable() and time.monotonic_ns() < write_timeout:
+                        pass  # pragma: no cover
+                    if src.writable():
+                        src.writelines([original_buf])
+                        success = True
                 break
-            except OSError:
-                if time.monotonic_ns() < timeout:
-                    pass
-                else:
-                    break
+
+            except OSError as exc:  # pragma: no cover
+                exception = exc
         if not success:  # pragma: no cover
-            logger.error("Failed to write back contents of file: %s", filename)
+            logger.error(
+                "Failed to write back contents of file: %s.%s)",
+                filename,
+                " timeout."
+                if not exception
+                else " {}: {}".format(
+                    exception.__class__.__name__, ", ".join(exception.args)
+                ),
+            )

logger.error(
+                "Failed to write back contents of file: %s.%s)",
+                filename,
+                " timeout."
+                if not exception
+                else " {}: {}".format(
+                    exception.__class__.__name__, ", ".join(exception.args)
+                ),
+            )

Tested an seems to work correctly, updated the PR to match

Superseded by #133.
In #133, I went with

[x] an timeout-oriented FileObj API approach
[x] run clang-format before clang-tidy
[x] reduce number file reads when parsing clang-format XML output

@maoliver-amd I'm sorry to have put you through all that and yet I went in a slightly different direction.


New Bonus guide: Samourai Dojo

What
Samourai Dojo is the backing server for Samourai Wallet. It will allow samourai wallet users to connect to their own backend, removing trust to a third party servers.
Samourai Whirlpool is a free and open source (FOSS), non custodial, chaumian CoinJoin platform. Currently used by samourai wallet and sparrow wallet.
Why
Samourai offers plug and play hardware and own operational system similiar to Umbrel - However, I have encountered errors for raspberry pi and while it can be easy solution for a samourai-only user, many others of us use different wallets, clients (lightning etc.) and want to have complete control over our nodes and software versions.
Dojo can be installed on raspberry pi and run separately in a DIY way, without restricting ourselves to special purpose OS or buying new hardware
Whirlpool is a great addition to raspibolt privacy section as an alternative to joinmarket for people using samourai wallet and perhaps sparrow, if connecting to own client will be available in the future.
Samourai tools are one of the most advanced , being more and more relevant as blockchain surveilance improves. I believe having these additions as a bonus part of raspibolt is a very good step forward.
How
By testing on my own raspberry and using First Time Install section as an inspiration, but it does not contain all neccessary information. Some changes, as for example firewall configuration have to be in place for a proper function.
Scope
Reviews:

[ ] Review formatting and standardization.
[ ] Review guide (proper function)

Test & maintenance
Following guide and reporting issues (permissions, errors etc.)

First, thanks so much for writing this thorough and complex guide :clap:
I love the idea of adding the Samourai software stack to the RaspiBolt offering, as Samourai is an important player in the Bitcoin ecosystem.
One thing I'm wondering about is the use of Docker (as I understand it it's kinda compulsory, right?). Usually, the RaspiBolt approach and ethos is DIY and it's the opposite of the Docker approach.. I don't know if the guide never accepts Docker solutions or might in some cases? We'd need the vision and decision of @Stadicus on that one.
Looking forward to hear from the other maintainers and other Bolters on this question and on this guide! :)

will do a new merge


change service state to started

change service state from running to started as running is deprecated

Thanks for your contribution!


Condition messages can be misleading

I installed the Operator from OperatorHub in Openshift 4. Everything looks fine, as seen in the console:
[root@worker01 ~]# oc get all -n ibm-spectrum-scale-csi-driver
NAME                                                   READY   STATUS    RESTARTS   AGE
pod/ibm-spectrum-scale-csi-attacher-0                  1/1     Running   0          2d2h
pod/ibm-spectrum-scale-csi-kjcs6                       2/2     Running   0          2d1h
pod/ibm-spectrum-scale-csi-nxmkg                       2/2     Running   0          2d1h
pod/ibm-spectrum-scale-csi-operator-75f65c5999-9wnk2   2/2     Running   0          2d3h
pod/ibm-spectrum-scale-csi-provisioner-0               1/1     Running   0          2d2h

NAME                                              TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)    AGE
service/ibm-spectrum-scale-csi-operator-metrics   ClusterIP   <IP_ADDRESS>   <none>        8383/TCP   2d3h

NAME                                    DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
daemonset.apps/ibm-spectrum-scale-csi   2         2         2       2            2           <none>          2d2h

NAME                                              READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/ibm-spectrum-scale-csi-operator   1/1     1            1           2d3h

NAME                                                         DESIRED   CURRENT   READY   AGE
replicaset.apps/ibm-spectrum-scale-csi-operator-75f65c5999   1         1         1       2d3h

NAME                                                  READY   AGE
statefulset.apps/ibm-spectrum-scale-csi-attacher      1/1     2d2h
statefulset.apps/ibm-spectrum-scale-csi-provisioner   1/1     2d2h

Also, I can create PV and PVC as expected.
However, when I look at the Operator Details in Openshift 4 console I can see these messages on Condition view .
Conditions

Pending True Dec 11, 5:57 pm RequirementsUnknown requirements not yet checked
Pending True Dec 11, 5:57 pm RequirementsNotMet one or more requirements couldn't be found
InstallReady True Dec 11, 5:57 pm AllRequirementsMet all requirements found, attempting install
Installing True Dec 11, 5:57 pm InstallSucceeded waiting for install components to report healthy
Installing True Dec 11, 5:57 pm InstallWaiting installing: Waiting: waiting for deployment ibm-spectrum-scale-csi-operator to become ready: Waiting for rollout to finish: 0 of 1 updated replicas are available...
Succeeded True Dec 11, 5:57 pm InstallSucceeded install strategy completed with no errors

Maybe you can make the condition logs more user friendly ? My installation is fine, with the last message confirming it, but the output is quite misleading. Not sure if something should be done or not.

@smitaraut I checked this a while back, and I think this  is operator-sdk level, so I don't think we can touch this.

Closing this as it is not in CSI driver scope.


Python 2.7 and "from future import unicode_literals" causes UnicodeEncodeError

I have some very strange UnicodeEncodeError in my application. I could reduce the problem to the following example:
from __future__ import unicode_literals
deg = u'\u00B0'
'%s%s' % ('15', deg)

When I compile this example with cython>=0.28.0 and run is with Python 2.7.14 I get the following error:
C:\tmp\python
Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:25:58) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import crash
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "crash.pyx", line 3, in init crash
    '%s%s' % ('15', deg)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xb0' in position 0: ordinal not in range(128)

Using cython==0.27.3 there is no such error and the example works fine.
By looking at the code it seems the "PyObject_Str" statement causes the problem. However I have no idea how to fix the issue except for using cython 0.27.3 for python 2.7.
  /* "crash.pyx":3
 * from __future__ import unicode_literals
 * deg = u'\u00B0'
 * '%s%s' % ('15', deg)             # <<<<<<<<<<<<<<
 */
  __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_deg); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_t_1), __pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyUnicode_Concat(__pyx_kp_u_15, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

Thanks for the report, it's really a Py2 issue.
Fixed here: ac6b858e79e83f991eee21667ab0cd8031faad73

I recompiled my application with the latest cython version and I can confirm the problem is gone.
Thanks a lot for fixing this issue.


Please add Hospital beds available in major cities.

It would be very useful if you people could add number of beds available in the cities or states where there is surge in covid cases.
One of my friend created an API for DELHI only. It would be great if it could be extended to various states or major cities and if possible whole country.
Just a suggestion if you could implement it.

how would you like to add those section?

Yeah, I was thinking for this same feature.. it would be really helpful to many people now a days..
I got these kind of details in PDF for my city - Ahmedabad, Gujarat. (From my WhatsApp groups)
ALL COVID HOSPITAL NODAL PERSON 06-APR.pdf
AMC REQUISITIONED HOSPITAL STATUS 16-04-2021 5.00 PM ONLINE.pdf

@Prankurtiwari can you share some insight or reference - how this things are currently working for Delhi?

@JigneshPatel23 this is the link for the reference
https://delhifightscorona.in/data/hospital-beds/
@priyanshshah1997 sorry I couldn't understood what you are asking.

@Prankurtiwari in which page and where to show available beds category?

@priyanshshah1997  we could add a section for that in the page, not exactly on homepage rather a help/info section to fetch user location and help help to locate nearby hospital with beds available and there contact details.
Few days back when i was check this app on mobile there was this section but now I couldn't able to find it on web app.


License

Hi Nathan
You repos has no license explicitly mentioned. One gets the idea, that it's absolutely free. There is a similar Repo https://github.com/eliranwong/LXX-Swete-1930 which claims same sources but ships with GPL. Because that's a place I don't want to do, I started to type the text from the book. Of course, that's a time consuming and painful task.
What I want to figure out is, whether bibleworks put that out with no license attached and in that respect Eliran Wong put the GPL in his own interest or the source itself is attached to the GPL license (and you forgot to make that explicit).
Do you plan to set a license to your repo at all?
Thank for your time and effort.
Cheers,
Chris

I'm on vacation and can correspond more extensively later. However I consider the Swete LXX to be public domain. I don't have any copyrights in the text. I had made some effort to correct the OCR'd output of the open Greek and Latin Project's effort, but when I found out that Elian had already finished, I switched to his text. I was not aware of any copyright claims being made by Elian to allow for GPL licensing. For what it's worth, I don't think transcription really warrants copyrights, but I am not a lawyer.
On June 20, 2019 3:55:03 PM EDT, Christoph Jasinski<EMAIL_ADDRESS>wrote:

Hi Nathan
You repos has no license explicitly mentioned. One gets the idea, that
it's absolutely free. There is a similar Repo
https://github.com/eliranwong/LXX-Swete-1930 which claims same sources
but ships with GPL. Because that's a place I don't want to do, I
started to type the text from the book. Of course, that's a time
consuming and painful task.
What I want to figure out is, whether bibleworks put that out with no
license attached and in that respect Eliran Wong put the GPL in his own
interest or the source itself is attached to the GPL license (and you
forgot to make that explicit).
Do you plan to set a license to your repo at all?
Thank for your time and effort.
Cheers,
Chris

--
Nathan D. Smith

I am happy to report that the text has been rebased from a source which does not claim GPL. :-)


Can't connect to colab: dial tcp: no such host

Describe the bug
Can't connect to colab neither with VS code nor through terminal. Looks like cloudflare can't resolve hostname.
To Reproduce
Steps to reproduce the behavior:

!pip install colab_ssh --upgrade
from colab_ssh import launch_ssh_cloudflared
launch_ssh_cloudflared(password="")
Connect either from terminal (ssh manufacture-currently-hall-supporters.trycloudflare.com) or VS code

Expected behavior
Connection is established.
Actual behavior
(base) PS C:\Users\username\Documents\bin> ssh manufacture-currently-hall-supporters.trycloudflare.com
dial tcp: lookup manufacture-currently-hall-supporters.trycloudflare.com: no such host
ssh_exchange_identification: Connection closed by remote host

I also tried to execute this command:
(base) PS C:\Users\username> C:\Users\username\Documents\bin\cloudflared.exe access ssh --hostname manufacture-currently-hall-supporters.trycloudflare.com
dial tcp: lookup manufacture-currently-hall-supporters.trycloudflare.com: no such host

What could be the problem? Maybe, I have something wrong with my configuration? (though it worked previously).
Versions
cloudflared version 2020.12.0 (built 2020-12-08-2302 UTC)
Windows 10

It works now. Don't know why. Maybe, there were temporary problems at cloudflare, or I rebooted my machine.

It works now. Don't know why. Maybe, there were temporary problems at cloudflare, or I rebooted my machine.


Nether and End void generation support

Why not just disable those dimensions if you don't want them to generate?


Question about past_key_values

Does manipulations with past_key_values present only to increase speed?
Can I remove code which operates past_key_values without lowering the performance?

Yes, the past_key_values parameter is used to reduce redundant computations during Iterative token-level prompt compression.
If you're directly invoking llm_lingua.get_ppl, then there's no need to use this parameter at all.
If you don't want to activate the KV Cache during the compression process, you can try removing the relevant code.
I hope this answers your question.


Active Campaings - Error 500 when clicking on "Subscribe for email notifications for the campaign"

Which area(s) of Podkrepi.bg are affected?
Other
Describe the Bug
User gets an Internal Server Error message when clicking "Subscribe for email notifications for the campaign".
This only happens for around 50% of the active campaigns. The issue is reproducible after clearing the cache and cookies.
All active campaigns have been tested and here is a list of those that get the Error msg:

https://podkrepi.bg/en/campaigns/zaedno-da-izgradim-vila-autistika
https://podkrepi.bg/en/campaigns/breast-cancer-rotary-club
https://podkrepi.bg/en/campaigns/da-vuzrodim-chitalishnata-dejnost-i-zaedno-da-postroim-edno-novo-moderno-chitalishe-trotoara-2020
https://podkrepi.bg/en/campaigns/da-sbudnem-mechtata-na-valeriya-da-vleze-v-top-5-na-evropa-v-tenisa
https://podkrepi.bg/en/campaigns/myastoto-kudeto-starite-zanayati-se-sreshat-s-novite-tehnologii-rabotilnica-ela
https://podkrepi.bg/en/campaigns/champions-canoeing-bdin-77
https://podkrepi.bg/en/campaigns/uchilishe-za-rabota-v-pomosh-na-mladezhi-lisheni-ot-roditelska-grizha
https://podkrepi.bg/en/campaigns/krizisen-centur-za-postradali-ot-nasilie-gr-pernik-shans-za-nov-zhivot
https://podkrepi.bg/en/campaigns/konna-terapiya-za-detsa

https://github.com/podkrepi-bg/frontend/assets/158328628/975a76bb-2f4f-4418-908c-90054f931563

To Reproduce

Open https://podkrepi.bg/
Login with a valid username and password
Click "Campaigns" and select "All Campaigns"
Select any of the listed in the "Describe the Bug" section campaigns (ex: "„Вила АутистикА” - ..")
Click "Subscribe for email notifications for the campaign"
Click "On the profile one" button in the pop-up window

Expected Behavior
A success message should appear confirming that the user subscribed successfully for email notifications for the chosen campaign.
Which browser are you using? (if relevant)
Chrome: Version 123.0.6312.124 and Firefox: Version 124.0

Closing the ticket since it seems to be fixed as part of #1788

Still awaiting the fix to be merged.

Please do not close this bug before merge and deployed.


makes random_circuit reproducible across runs

the test failure looks suspicious

@mpharrigan That bug is fixed in #2223


Checking up with Githubs Actions checks to Main

Will also include pipeline config into main

all checks has been passed :


Issue 4188 depth infinity

Bugfix: Disallow DEPTH:inifinity in PROPFIND
We have dissallowed DEPTH:infinitiy in PROPFIND requests to the share jail
refs https://github.com/owncloud/ocis/issues/4188

I was under the impression that this is a configurable option. Why do we disable it completely?

reverted to draft, this seems to be causeing a nil-pointer issue when testing with ocis details: https://github.com/owncloud/ocis/pull/6842


Feature request: Add support for default dimensions on ColdStart metric captured with log_metrics decorator

Use case
In my environment, I have two serverless applications: one built using Python and the other using TypeScript/Node.js. Both utilize AWS Powertools. However, I have noticed a discrepancy between the two in how they handle CloudWatch cold start metrics by default.
In the Node.js Powertools, the middleware automatically includes default dimensions such as service name, function name, and additional custom dimensions.
    .use(logMetrics(metrics, {
        throwOnEmptyMetrics: false,
        captureColdStartMetric: true,
        defaultDimensions: {'Environment': process.env.ENV!}
    }))

On the other hand, in the Python Powertools, the cold start metric only includes the function and service name by default, with no apparent way to extend or override this behavior using custom dimensions without completely managing the cold start metric manually.
@metrics.log_metrics(capture_cold_start_metric=True, default_dimensions={"Environment": ENVIRONMENT})
def lambda_handler(event: dict, context: LambdaContext):
...

This creates an inconsistency between the two libraries and forces us to write additional boilerplate code in Python if we want additional dimensions to be recorded along with the ColdStart metric, while the Node.js implementation provides a more seamless experience.
FWIW:
The docs are accurate in both cases:
Python's page says:
If it's a cold start invocation, this feature will:

Create a separate EMF blob solely containing a metric named ColdStart
Add function_name and service dimensions

and TypeScript's page says:
If it's a cold start invocation, this feature will:

Create a separate EMF blob solely containing a metric named ColdStart
Add the function_name, service and default dimensions

Solution/User Experience
Ideally, the default_dimensions provided to the log_metrics decorator would be used when recording the cold start metric in Python.
Alternative solutions
As mentioned, an alternative is to continue to have users manually handle the cold start metrics themselves to support adding custom dimensions to the ColdStart metric in Python.
Acknowledgment

[X] This feature request meets Powertools for AWS Lambda (Python) Tenets
[X] Should this be considered in other Powertools for AWS Lambda languages? i.e. Java, TypeScript, and .NET

Hi, thank you for opening this issue.
Just for added context, I have gone ahead and created a sample project to help with contextualizing the request and better see the differences between the two versions. You can find the repo, which you can deploy using CDK, here:
Given these two functions:
TypeScript:

import { Metrics } from '@aws-lambda-powertools/metrics';
import { logMetrics } from '@aws-lambda-powertools/metrics/middleware';
import middy from '@middy/core';

const metrics = new Metrics({
  namespace: 'MyApp',
});

export const handler = middy(async () => {
  return {
    statusCode: 200,
    body: JSON.stringify('Hello, World!'),
  };
}).use(
  logMetrics(metrics, {
    throwOnEmptyMetrics: false,
    captureColdStartMetric: true,
    defaultDimensions: { Environment: 'prod' },
  })
);

Python:

from aws_lambda_powertools import Metrics
from aws_lambda_powertools.metrics import MetricUnit
from aws_lambda_powertools.utilities.typing import LambdaContext

metrics = Metrics(namespace="MyApp")

@metrics.log_metrics(raise_on_empty_metrics=False, capture_cold_start_metric=True, default_dimensions={"Environment": "prod"})
def lambda_handler(event: dict, context: LambdaContext):
    return {"statusCode": 200, "body": "Hello World"}

The EMF blog emitted by the two is similar but different in three aspects:

The EMF metric emitted by TypeScript includes default dimensions (in this case Environment), and Python doesn't
The EMF metric emitted by TypeScript includes the service dimension by default, and Python doesn't
The unit used for ColdStart in TypeScript is an integer (1) while in Python is a float (1.0) which is wrapped in an array/list

Below the full metric logs:
TypeScript:
{
  "_aws": {
    "Timestamp":<PHONE_NUMBER>244,
    "CloudWatchMetrics": [
      {
        "Namespace": "MyApp",
        "Dimensions": [
          [
            "service",
            "Environment",
            "function_name"
          ]
        ],
        "Metrics": [
          {
            "Name": "ColdStart",
            "Unit": "Count"
          }
        ]
      }
    ]
  },
  "service": "service_undefined",
  "Environment": "prod",
  "function_name": "DimensionsFn",
  "ColdStart": 1
}

Python:
{
  "_aws": {
    "Timestamp":<PHONE_NUMBER>523,
    "CloudWatchMetrics": [
      {
        "Namespace": "MyApp",
        "Dimensions": [
          [
            "function_name"
          ]
        ],
        "Metrics": [
          {
            "Name": "ColdStart",
            "Unit": "Count"
          }
        ]
      }
    ]
  },
  "function_name": "DimensionsFnPython",
  "ColdStart": [
    1.0
  ]
}

For the purpose of this issue, I think we are focusing on the first bullet point, the default dimensions being included in the cold start metric.
I see value in aligning the behavior between the two versions, although I don't have a strong opinion on which one should be the preferred one.
What I can say for sure is that making this change in either of the two libraries would be a breaking change, so we'll need to address this in a backwards compatible way if we decide to do so.

Hi, thank you for opening this issue.
Just for added context, I have gone ahead and created a sample project to help with contextualizing the request and better see the differences between the two versions. You can find the repo, which you can deploy using CDK, here:

Hi @dreamorosi, thank you very much for this investigation using both runtimes! This will be very useful in helping us make a decision. I have a few considerations below.

The EMF blog emitted by the two is similar but different in three aspects:

The EMF metric emitted by TypeScript includes default dimensions (in this case Environment), and Python doesn't

Yes, we don't include the default dimensions in Python, which I think is wrong behavior because we should consider the default dimension in all metrics, including ColdStart. In this case, TypeScript is doing the right thing and Python is missing this information.

The EMF metric emitted by TypeScript includes the service dimension by default, and Python doesn't

We also include the service dimension in Python too. In this case, you're not seeing it because you didn't define the service using the parameter constructor or the env variable.

The unit used for ColdStart in TypeScript is an integer (1) while in Python is a float (1.0) which is wrapped in an array/list

In this case, there is no difference in using an int/float or a list with int/float. We do this to try to optimize as much as possible the blob that we emit to EMF, so in cases where you have two metrics, we define both in the Metrics key and pass the values in that array.
The result/data in CloudWatch will be the same.

I see value in aligning the behavior between the two versions, although I don't have a strong opinion on which one should be the preferred one.

I also see value in aligning behavior, and I think including default dimensions in the ColdStart metric makes more sense because as a customer I would expect all my metrics —no matter which ones— to inherit default dimensions if I set them intentionally.

What I can say for sure is that making this change in either of the two libraries would be a breaking change, so we'll need to address this in a backwards compatible way if we decide to do so.

This is the most problematic point in this discussion. If we decide to include default dimensions in the ColdStart metric, we cannot make this the default behavior. This is a potential breaking change for customers who have dashboards looking at ColdStart without dimensions. CloudWatch costs can also be an issue for customers because each combination of metric_name x namespace x dimension added to CloudWatch is billed as a separate metric, and customers may experience increased billing if we make this the default behavior. And many other situations that I can't predict all of them.
I was thinking about creating a new parameter in @metrics.log_metrics() to allow customer to choose if they want to include the default dimensions. And in Powertools V4 we make this the default behavior. The experience could be something like this:
@metrics.log_metrics(capture_cold_start_metric=True, include_default_dimensions_cold_start=True)
def lambda_handler(event: dict, context: LambdaContext):

I don't like the name of this parameter, but it's just for illustration.
Please let me know what do you think @angelcabo and @dreamorosi.

Thanks for clarifying the int/float difference, for the service name I think the Python behavior is better for cost savings, but I can see why it was implemented this way in TS - anyway for now onwards I'll focus the discussion only on the default dimensions being included in the cold start metric.
Seeing how we all agree that default dimensions should be included in that metric, I think we have two options forward. One is the one you suggested, making the behavior opt-in in the current major version and eventually default in the next one.
The other option would be to consider this a bug and fix it right away. I acknowledge that the line here is quite blurry, however while the log_metrics decorator doesn't explicitly mention the default dimensions being included, the description of the default_dimensions in the API reference reads this:

With this in mind, I think there's room for interpret them being excluded as an unintended behavior and thus treat this as a bug fix. There are also precedents for this type of change being treated as bugs and having been fixed within minor releases.
Either way, I think there's a potential for data loss. Customers might be trying to set up dashboards that query the cold start metric with certain dimensions expecting to find values because they set default_dimensions and they don't find them.

If we go to the route you suggested, I'd like us to consider using an environment variable instead of adding another parameter. I think in the long term this would make the v3 to v4 switch easier, and the API less verbose in the code.
For example, having an env variable like POWERTOOLS_METRICS_DEFAULT_DIMENSIONS_IN_COLDSTART_METRIC that defaults to False when not present.


Added Easter eggs on CapsLock On

Looks great however there seems to be some merge conflicts probably because I merged some pull requests before this one. If you have time to fix it or make a new pull requests I'll happily merge it :)

@BennyCarlsson Fixed Conflict :) Thank you for the opportunity.

Great work! 👍


Ajs branch

Description
Please include a summary of the change and a link to which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
updated documentation, newInvoice endpoint. changed dev key to start local mongoDB.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)
[x] This change requires a documentation update . -- Was Updated

Change status

[x] Complete, tested, ready to review and merge

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[x] Test A Tested the routes with postman

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] My code has been reviewed by at least one peer
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] There are no merge conflicts

Looksss good!!


Ntpdhcpanddns

Codecov Report

Merging #16 (2ac77b4) into master (cd59227) will decrease coverage by 7.98%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #16      +/-   ##
==========================================
- Coverage   81.66%   73.67%   -7.99%
==========================================
  Files          43       43
  Lines        5273     5273
==========================================
- Hits         4306     3885     -421
- Misses        967     1388     +421

Flag
Coverage Δ

aux
?

base
?

dhcp
?

many
?

mud
?

switch
66.71% <ø> (-0.02%)
:arrow_down:

topo
66.85% <ø> (+0.01%)
:arrow_up:

unit
31.12% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

daq/traffic_analyzer.py
0.00% <0.00%> (-89.69%)
:arrow_down:

daq/test_modules/ipaddr_module.py
24.56% <0.00%> (-64.92%)
:arrow_down:

daq/varz_state_collector.py
0.00% <0.00%> (-46.99%)
:arrow_down:

daq/test_modules/external_module.py
77.44% <0.00%> (-18.80%)
:arrow_down:

daq/report.py
88.59% <0.00%> (-9.78%)
:arrow_down:

daq/proto/usi_pb2_grpc.py
46.51% <0.00%> (-9.31%)
:arrow_down:

daq/host.py
83.06% <0.00%> (-8.03%)
:arrow_down:

daq/dhcp_monitor.py
91.20% <0.00%> (-7.70%)
:arrow_down:

daq/stream_monitor.py
80.83% <0.00%> (-6.67%)
:arrow_down:

daq/runner.py
79.38% <0.00%> (-6.02%)
:arrow_down:

... and 6 more

Continue to review full report at Codecov.

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


Permissions problem?

I'm on versions 0.1.3 and 2.6.2793 and if logged in as any user other than Admin if I try and crop an asset I get a message "An unknown error Occured" and no image in the popup. If I log in as Admin it all works fine.
Console log screenshot attached.

I'm thinking this may be a permissions thing, but can't find anywhere that you can set those for users.

Hey @paul-frost you're absolutely right - all element actions were restricted to Admins. To be honest, I'm not sure why I did that in the first place, but that makes no sense to me! 😆
In addition, you've raised a good point, where I've now added permissions to you can set it at the User Group level. Check the 0.1.4 release

Thanks for the speedy response.
I was a bit concerned using a 0.1 release for a live site, but I think the auto resize on upload is a must for a CMS used by "normal" people, so had to take the risk. But I suspected that it would be safe given your track record.
What do you think you still need to do to make it a 1.0 release?

Not a problem - probably best to not think too much about the version number at this stage. I'll probably bump it up to 1.0 on the next release. The eventual goal is to turn this plugin in a full-featured editor for all manner of things - but thats probably a little further away at this stage, and probably 2.0.


simplifies loading of json keys

@tmatsuo @jdpedrie PTAL

LGTM

see #112

:+1:

@bshaffer could you tag 0.9?

@jdpedrie done!


Rewriting URL when  tag is set

Great plugin - love it!
I use MODX CMS, that requires the to be set. I've noticed that when this is set the plugin will remove anything preceding the base URL when adding the #. During static development, when the base tag is not used, this issue does not occur.
E.g.
A dev site with tag of <base href="http://localhost/dev_site/dist/" />
When scrolling, a page, like:
http://localhost/dev_site/dist/content-page.html
Will be rewritten to:
http://localhost/dev_site/dist/#scrollify-section
Instead of:
http://localhost/dev_site/dist/content-page.html#scrollify-section
Hope that makes sense, if not I'll upload a demo somewhere

This is very odd as Scrollify just uses history.replaceState to manipulate the fragment identifier. It shouldn't be able to alter the URI paths. I'll do some research to see how this could be possible.

Thanks Luke, if it's useful, here's one dev site I'm experiencing this behavior on - I've only narrowed it down to the  tag because that's the only obvious thing I could see was different...
http://mattgiggs.com/dev/who-we-are/matt-giggs.html

This could be of use...
https://bugs.chromium.org/p/chromium/issues/detail?id=279278

Added pull request #150

Same here. URL like
"/index.php?id=16#sectionname" will be "/1#sectionname".
I use TYPO3 and had to set config.baseURL = 0 to make scrollify work.

Can this be investigated further? Still an issue (with the currently newest scrollify version)


C demo does not work

C demo doesn't work when I try to compile the last command cmake --build build it comes out to me:
[ 50%] Linking C executable pv_recorder_demo.exe
E:/g++/pvrecorder/pvrecorder/demo/c/../../lib/windows/amd64/libpv_recorder.dll: file not recognized: File format not recognized
collect2.exe: error: ld returned 1 exit status
CMakeFiles\pv_recorder_demo.dir\build.make:98: recipe for target 'pv_recorder_demo.exe' failed
mingw32-make.exe[2]: *** [pv_recorder_demo.exe] Error 1
CMakeFiles\Makefile2:81: recipe for target 'CMakeFiles/pv_recorder_demo.dir/all' failed
mingw32-make.exe[1]: *** [CMakeFiles/pv_recorder_demo.dir/all] Error 2
Makefile:89: recipe for target 'all' failed
mingw32-make.exe: *** [all] Error 2

Maybe I'm doing something wrong, I planned to use the library in C++, but so far I can't connect it, is it possible?

I was unable to reproduce your result. Does the log correspond to the C demo we have in our repository or is it from your code?

@mrrostam The error appears when following the C demo and all demo files, I did not replace anything
The system is Windows

Since everything seems to be working correctly on our end, could you please run the command gcc --version and share the output so we can determine which version of MinGW you are using?

noticed your gcc is pretty old. Is it possible for you to try a new version from here?

That was really the problem, now demo c is working!
I think, since I have indicated the heading 'Demo C does not work', it is better to close this application and create a new one in C++, after a series of experiments, thank you!


Reorganize piccr return output

This PR suggests all changes needed in order to set up the return output of piccr to work with Cpt-Picarr; see #17.

@thomas-muench Thanks for all your work on this task. Merging this PR now.


[SPARK-49019] Use try-with-resources to test KubernetesClientFactory.buildKubernetesClient

What changes were proposed in this pull request?
This PR aims to use try-with-resources to test KubernetesClientFactory.buildKubernetesClient.
Why are the changes needed?
To be safe during the testing.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Pass the CIs.
Was this patch authored or co-authored using generative AI tooling?
No.

Could you review this PR, @viirya ?

Could you review this PR, @huaxingao ?

Thank you, @viirya and @huaxingao .

Merged to main.


use of GLOBAL_RNG makes generation non-reproducible

Global RNG may change with julia versions and if other randomness is happening in other tasks/threads then it may lead to non-reproducible draws.  We should provide some paved path for users to bring their own RNGs at generation time; either by updating the docs/examples to show how you could implement this yourself in your own generators, or by changing the API methods to accept an RNG argument first (a la rand and friends) that defaults to the global rng...

A bit of discussion with @omus about this:

Could recommend that generator subtypes keep a rng as a field, but that makes them stateful and introduces boilerplate
Could include RNG in state generated by visit!, but would need a way to thread RNG through and also boilerplate-y


bug: sometimes highlights are not properly removed (https://github.com/vscode-neovim/vscode-neovim/pull/1449 regression)

Did you check docs and existing issues?

[X] I have read all the vscode-neovim docs
[X] I have searched the existing issues of vscode-neovim
[X] I can reproduce the issue with an empty init.vim/init.lua and no other vscode extensions (when applicable)

Neovim version (nvim -v)
0.9.2
Operating system/version
MacOS 13.6
Describe the bug
Some leftover highlights are not removed after deleting some lines in visual line mode and undoing the operation.
The regression appeared in this https://github.com/vscode-neovim/vscode-neovim/pull/1449 PR.
Steps To Reproduce

Open a document that has multi-level indentation.
Switch to visual line mode and select some lines with different levels of indentation.
Press "c" to remove selected lines and switch to insert mode.
Go to normal mode (press "escape").
Press "u" to undo the operation.
Observe leftover visual mode highlights on some lines.

Demo:
https://github.com/vscode-neovim/vscode-neovim/assets/16840190/66889311-87eb-47a6-aa66-bbbc25bfc340
I'm not able to reproduce the issue consistently, sometimes it works as expected.
Expected Behavior
Deleted lines should reappear without any leftover highlights from the visual selection.

The issue looks similar to https://github.com/vscode-neovim/vscode-neovim/issues/1004, but this one is not reproducible without this commit https://github.com/vscode-neovim/vscode-neovim/commit/f688d23669ac0a86e2cb6200d1970f9da6822634.

Due to the lack of a consistent way to reproduce the issue, debugging is difficult and time-consuming. You can use CTRL+L to clear the highlights now.


[ENH] gracefully ignore non-modules in views

When volume binding w/ jupyter, unrelated hidden files may appear in views/, which AppPicker::list_modules chokes on ( mod = importlib.import_module(f'views.{view_folder}')). It should continue instead, somehow.

Fixed with https://github.com/graphistry/graph-app-kit/commit/0d41b6acbebf5e2a1122d218cc2b0695d11be70f


move baseworker-go to a subpackage rather than vendor

Will make a patch version bump after merging.

@natebrennand Do we need to modify the makefile to run the tests for this new package?
Other than that LGTM.

Nope, we obtain the list of packages to test using the go toolchain! Always up to date.
https://github.com/Clever/gearcmd/blob/master/Makefile#L7


Request body is always empty

Hi!
I'm trying to add some extra field in the request which are not part of the message request definition like what bossylobster suggested [here] (http://stackoverflow.com/a/16803274), but I'm always getting an empty request body. Apparently, the request body is read but not restored to its original content when passed to service methods.
EDIT: Another way of adding "hidden" fields would be to add another endpoints tag "-" which will allow tagged fields to be ignored by endpoints and yet still be unpacked if it is added in the request.

can you elaborate and upload your code ?

So for example you have the following service method:
func (s *TestService) Test(req *http.Request, r *RequestMessage) error {
    body, _ := ioutil.ReadAll(req.Body)
    // Do something with body
    return nil
}

In this case, body will always be an empty slice regardless of the sent request message. I expect that if the request message is non-empty, body would also be non-empty.
As for the suggestion that another endpoints tag, endpoints:"-", be added for hidden fields, let's say you have the following request message:
type RequestMessage struct {
    Field1 int `json:"field1"`
    Field2 int `json:"field2"`
    Hidden int `json:"hidden"`
}

And you want to have the Hidden field to be ignored by endpoints but still be able to retrieve its value in service methods. One possible solution would be to change its tag to json:"-", and just extract its value from the raw request body.
Another option would be to leave its json tag unchanged and just add another endpoints tag, endpoints:"-", which is more convenient since you wouldn't need to manually extract the Hidden field's value from the request body. This is done automatically by the json unmarshaller if the sent request has it.


Cant add the custom notifier at Home Assistant - different virtualbox

Hi, first of all, thanks a lot for doing this! This is for whoever like me spent hours trying to make this work with this setup:

Using Virtualbox image from Home Assistant website
Because the Home Assistant OS is specific, it's not a regular linux that we can log in and run docker, etc I needed to run another virtualbox with a regular linux, then ran the docker as the documentation guides
Then I had to make my Home Assistant connect to a different IP address on the port 5555

I was receiving error on loading the notify.timebox I fixed it by editing the file \custom_components\timebox\notify.py and setting the TIMEOUT = 15 (it was 5 and was giving me timeout) try larger numbers if you are also having this problem.
Bye and thanks again!
The error on the logs of the home assistant:
Logger: homeassistant.components.notify
Source: custom_components/timebox/notify.py:116
Integration: Notifications (documentation, issues)
First occurred: 2:43:35 AM (1 occurrences)
Last logged: 2:43:35 AM
Error setting up platform timebox
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 445, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 440, in _make_request
httplib_response = conn.getresponse()
File "/usr/local/lib/python3.8/http/client.py", line 1344, in getresponse
response.begin()
File "/usr/local/lib/python3.8/http/client.py", line 307, in begin
version, status, reason = self._read_status()
File "/usr/local/lib/python3.8/http/client.py", line 268, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
File "/usr/local/lib/python3.8/socket.py", line 669, in readinto
return self._sock.recv_into(b)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/requests/adapters.py", line 439, in send
resp = conn.urlopen(
File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 755, in urlopen
retries = retries.increment(
File "/usr/local/lib/python3.8/site-packages/urllib3/util/retry.py", line 532, in increment
raise six.reraise(type(error), error, _stacktrace)
File "/usr/local/lib/python3.8/site-packages/urllib3/packages/six.py", line 770, in reraise
raise value
File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 699, in urlopen
httplib_response = self._make_request(
File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 447, in _make_request
self._raise_timeout(err=e, url=url, timeout_value=read_timeout)
File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 336, in _raise_timeout
raise ReadTimeoutError(
urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='<IP_ADDRESS>', port=5555): Read timed out. (read timeout=5)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/notify/init.py", line 301, in async_setup_platform
notify_service = await hass.async_add_executor_job(
File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/timebox/notify.py", line 51, in get_service
if not timebox.isConnected():
File "/config/custom_components/timebox/notify.py", line 133, in isConnected
return self.send_request('Failed to connect to the timebox', '/connect', data={"mac": self.mac})
File "/config/custom_components/timebox/notify.py", line 116, in send_request
r = requests.post(f'{self.url}{url}', data=data, files=files, timeout=TIMEOUT)
File "/usr/local/lib/python3.8/site-packages/requests/api.py", line 119, in post
return request('post', url, data=data, json=json, **kwargs)
File "/usr/local/lib/python3.8/site-packages/requests/api.py", line 61, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/local/lib/python3.8/site-packages/requests/sessions.py", line 542, in request
resp = self.send(prep, **send_kwargs)
File "/usr/local/lib/python3.8/site-packages/requests/sessions.py", line 655, in send
r = adapter.send(request, **kwargs)
File "/usr/local/lib/python3.8/site-packages/requests/adapters.py", line 529, in send
raise ReadTimeout(e, request=request)
requests.exceptions.ReadTimeout: HTTPConnectionPool(host='<IP_ADDRESS>', port=5555): Read timed out. (read timeout=5)

Hi, thanks for spending time troubleshooting your issue, I am sure it will be helpful for others. I have updated the timeout to 15.


Wait for the global messages to be sent after a channel deposit before resolving the REST CLI request

Description
On some scenarios, a transfer can be started to fast after the deposit is confirmed, before the global messages can finish being sent, which can make the transfer fail to be resolved by the PFS if it didn't get the PFSCapacityUpdate by the time.
It's hard to know for sure when did the PFS did get the message, but with global messages taking up to 15-30s to be delivered, we can at least ensure we've finished sending before resolving the deposit REST request and allowing the SP to move on with the next task (which can be a transfer).
Acceptance criteria

Deposit REST request resolves only after that deposit's global messages finish being sent.

Tasks

[ ]

This can help with some of the scenario failures we're seeing reporting No routes found between nodes, like #2433

This can help with some of the scenario failures we're seeing reporting No routes found between nodes, like #2433


Filter alerts to ensure they're in the UK

https://www.pivotaltracker.com/story/show/178774818
While I'd like this to go in, we could also just use it for reference if we
think there's value in delaying the implementation.
Please see the commit messages for more details.

I was thinking we could say is_in_the_uk = len(general_areas) > 0.
If we use https://github.com/alphagov/notifications-admin/pull/3980 then it will always return an empty list for alerts that don’t cover any part of the UK land area.

it will always return an empty list for alerts that don’t cover any part of the UK land area

Hmm...it's the link between the UK and general areas seems quite subtle, so I'm hesitant to rely on it. For example, if a custom broadcast area fell within one of the  Santa Claus library areas, would it have ancestors (and thus general areas)?
It's still unclear what the data might look like for alerts created via the API, so I'd prefer not to make indirect decisions from it as that locks us in to certain implementations (and also as a general principle). Some other options:

Get the Admin app to emit an explicit "is_in_uk" signal (more work, but less subtle).
Augment area libraries to flag if the areas are non-public (and emit this with alerts).
Just do the simple check here, maybe looking at all / more of the coordinates.

I lean towards the simple check, because it keeps our options open for the API.
Do you think we need something more robust?

The overlapping code only looks at UK electoral wards, so it would never say an alert is in the general area of Santa Claus Village.
I guess this works fine for now. We might want to make it a bit more robust when we start letting people define their own shapes in the admin app, because the definition of ‘in the UK’ here is pretty broad.

The overlapping code only looks at UK electoral wards

Are you sure? If I change this line to test-santa-claus-village-rovaniemi-a then Santa pops out in the result. I can see the code is different for custom areas, but again it's not impossible for a future custom area to overlap with a Santa one (although I haven't explored if the single-level hierarchy is important there).
Thanks for approving anyway. I agree this will tie us over for dynamic alerts, and for ones submitted via the API we could use your PR as a first / another line of defence to ensure the polygons are bounded by the UK.


Error using bootstrap 5

I always get error when using with bootstrap 5
Uncaught TypeError: _events2.default is not a constructor
at BootstrapTableContainer.RemoteResolver (remote-resolver.js:132)
at new BootstrapTableContainer (index.js:72)
at constructClassInstance (react-dom.development.js:12716)
at updateClassComponent (react-dom.development.js:17425)
at beginWork (react-dom.development.js:19073)
at HTMLUnknownElement.callCallback2 (react-dom.development.js:3945)
at Object.invokeGuardedCallbackDev (react-dom.development.js:3994)
at invokeGuardedCallback (react-dom.development.js:4056)
at beginWork$1 (react-dom.development.js:23964)
at performUnitOfWork (react-dom.development.js:22776)

Same issue here, have you found a solution?

Hi there,
I faced the same issue but couldn't find any solution on the internet. However, I managed to fix the issue by installing the 'react-scripts' library. It worked perfectly for me.
I am not sure about its compatibility with other versions, but the specified version 1.1.4 worked for me. To install it, simply run: npm install<EMAIL_ADDRESS>I am sharing my solution here to assist anyone else who may be struggling with the same issue. Hopefully, this helps someone out there.
Cheers!

I faced the same issue but couldn't find any solution on the internet. However, I managed to fix the issue by installing the 'react-scripts' library. It worked perfectly for me.

I'm using Vite though.

Found this related error that was opened a while back https://github.com/react-bootstrap-table/react-bootstrap-table2/issues/1624

I faced the same issue but couldn't find any solution on the internet. However, I managed to fix the issue by installing the 'react-scripts' library. It worked perfectly for me.

I'm using Vite though.

Was using the same though😂

I faced the same issue but couldn't find any solution on the internet. However, I managed to fix the issue by installing the 'react-scripts' library. It worked perfectly for me.

I'm using Vite though.

Was using the same though😂

wait, what hahahahaha😅😅

I faced the same issue but couldn't find any solution on the internet. However, I managed to fix the issue by installing the 'react-scripts' library. It worked perfectly for me.

I'm using Vite though.

Was using the same thoughjoy

wait, what hahahahahasweat_smilesweat_smile

This seems to be the cursed side of bootstrap with the name react bootstrap table😂.
From my observation this happens because by default create react app and most tools offer react-scripts out of the box while vite doesn't.

I also ran into this when switching from CRA to vite.
Just installing the "events" worked for me. Somehow ChatGPT figured this out but a Google search did not!

Same error whe migrating to vite. Did you find out anything?

Installing "events" will make it work for local development, once you create a production build, it will no longer work.
https://github.com/react-bootstrap-table/react-bootstrap-table2/issues/1624#issuecomment-1441145011


Criteo 1.9 historyserverfix

This PR gets three commits from master branch, as it solves the blocker we had starting the history server with flink-1.9.
I filed the jira ticket for the history server bug: FLINK-15085.
That change depends on FLINK-14169. So I cherry-picked the corresponding commits

👍 looks good to me.


Fix the colours in the Norwegian flag

This corrects the colours in the Norwegian flag to be closer to the official colours.

I'll trust you on this one :)

It was pretty close already. But the red was too dark and the blue was too bright. Cheers!

Following https://www.norden.org/en/fakta-om-norden-1/the-nordic-flags/the-norwegian-flag :

Red should be PANTONE 186 C => #C8102E (https://www.pantone.com/color-finder/186-C)
Blue should be PANTONE 287 C => #003087 (https://www.pantone.com/color-finder/287-C)

The real reference should be there : http://nordicflagsociety.org/vexillologi/flaggfarger/
But the link is 404, maybe someone reading danish (or other language, sorry) may find it ?


KAFKA-3994: Fix deadlock in Watchers by calling tryComplete without any locks

@ijuma @junrao Comments addressed. Please take another look. Because the same delayed operation can be used by multiple keys, I moved the purge state into Watchers. Let me know if that seems reasonable. It's still a bit annoying to do this extra bookkeeping to satisfy a metric, but I don't know, maybe it's worth it.

@hachikuji, your latest changes LGTM. How about you @junrao?

Also, cc @guozhangwang @becketqin

@hachikuji, I think you may be right. Since we iterate over the queue routinely during normal usage, it seems OK to do it for the metric too. I suggest we rename watched to countWatched and document that it's O(n).

The patch itself LGTM. About the watched counter, I'm still a bit inclined towards constant not-so-accurate counter for concurrent access. as long as it is eventually correct if you keep polling it. Is it really worth-while to have O(n) time for accurately polling this metric?

@guozhangwang We are doing an additional iteration (which is O(n)) in tryCompleteWatched if any operation is removed from the queue (completed by this or another thread) in order to maintain the watched field. So, it's only worth it if watched is called more frequently by a monitoring system (it's a Gauge) than tryCompleteWatched where an operation is removed from the queue. Is that likely to be the case?

I went ahead and removed the separate variable tracking the size of the operations queue. It seems unlikely that the gauge is invoked as frequently as tryCompleteWatched.

@ijuma Updated. Haha, maybe we can finally wrap up this issue?

Thanks for your patience and perseverance @hachikuji, LGTM. :)

Merged to trunk. And cherry-picked to 0.10.1.

Thanks for the patch. LGTM. One thing worth noting is that the removal from the iterator in ConcurrentLinkedQueue just sets the item to null and only removes the link object lazily in future iterations. This means that ConcurrentLinkedQueue may hold more objects than size() reports.


nss: enable libpkix build

This was enabled by default with the old build system, but requires this flag with the new one
Fixes #93955
cc @vcunat
Compared to #94184:
Pro: long term fix
Con: causes more rebuilds

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

So this and temporarily resurrect the current nss "version" just for cacert?  (which doesn't retain any reference anyway)

Oh scratch that!  I forgot that cacert only uses nss.src directly, so this PR won't rebuild that.

Oh scratch my last comment! I forgot that cacert only uses nss.src directly, so this PR won't rebuild that.

Today I learned. That's cool, then we can probably just go with this.
Could use some more testers from #93955, maybe.

I'm compiling and trying it right now

I tried firefox, though it shouldn't be a surprise that it appears to still work OK.

It's quite unfortunate that the missing component of NSS wasn't detected during build time (by the packages needing that).  Let's have a look at diff in files for NSS after this commit (3.54) and before the build-system change (3.52.1):
@@ -5,16 +5,12 @@
 result/lib:
 libfreebl3.chk
 libfreebl3.so
-libfreeblpriv3.chk
 libfreeblpriv3.so
-libgtest1.so
-libgtestutil.so
 libnss3.so
 libnssckbi.so
 libnssckbi-testlib.so
 libnssdbm3.chk
 libnssdbm3.so
-libnsspem.so
 libnsssysinit.so
 libnssutil3.so
 libpkcs11testmodule.so
@@ -69,6 +65,7 @@
 keythi.h
 lowkeyi.h
 lowkeyti.h
+mozpkix
 nssb64.h
 nssb64t.h
 nssbase.h
@@ -88,7 +85,6 @@
 nssilock.h
 nsslocks.h
 nsslowhash.h
-nsspem.h
 nssrwlk.h
 nssrwlkt.h
 nssutil.h
@@ -145,8 +141,24 @@
 utilparst.h
 utilrename.h

+result-dev/include/nss/mozpkix:
+Input.h
+nss_scoped_ptrs.h
+pkixcheck.h
+pkixder.h
+pkix.h
+pkixnss.h
+pkixtypes.h
+pkixutil.h
+Result.h
+test
+Time.h
+
+result-dev/include/nss/mozpkix/test:
+pkixtestnss.h
+pkixtestutil.h
+
 result-dev/lib:
-libcrmf.a
 pkgconfig

 result-dev/lib/pkgconfig:
@@ -162,6 +174,7 @@
 addbuiltin
 atob
 baddbdir
+blake2b_gtest
 bltest
 btoa
 certdb_gtest
@@ -181,15 +194,19 @@
 ecperf
 encodeinttest
 fbectest
-fipstest
+freebl_gtest
 httpserv
+hw-support
 listsuites
 lowhashtest
 makepqg
 mangle
 modutil
+mozpkix_gtest
+mpi_tests
 multinit
 nonspr10
+nss
 nss_bogo_shim
 nss-policy-check
 ocspclnt
@@ -208,6 +225,7 @@
 pk1sign
 pkix-errcodes
 pp
+prng_gtest
 pwdecrypt
 remtest
 rsaperf
@@ -218,7 +236,6 @@
 shlibsign
 signtool
 signver
-smime
 smime_gtest
 softoken_gtest
 ssl_gtest

Suspects: libnsspem and smime.

OK, I hope it will be fine. And this PR certainly seems to be a significant improvement anyway.
* libnsspem seems typically [packaged separately](https://repology.org/project/nss-pem/versions)

* the smime tool doesn't seem even packaged for Debian/Ubuntu

Sorry for overlooking this when doing the makefile -> gyp switch.
The PEM story is this whole weird thing where we ship this ancient patch introduced in #112
Other distros use this. I'm still not entirely clear on how to test any of this, as I'm sure I've stated before.

Yep, this PR fixes my problem with openconnect-sso as well, which relies on qtwebengine. A big thank you to @ajs124, @vcunat, and everyone in the other related issues that jumped on this problem so quickly!


Simplify migration to add rules

This has already been run in production so we don't need it to be any more complicated, and it's currently causing problems with deployment of review apps.

Merging this in as it's blocking review deployments.


Construct Hub shows languages based on package.json even if they are not published

https://constructs.dev/packages/aws-bootstrap-kit/v/0.6.0?lang=python provides a command for installing the package in Python. But the package is not actually published to PyPI. The reason Construct Hub displays Python availability is because Python appears as a target in https://github.com/awslabs/aws-bootstrap-kit/blob/main/source/aws-bootstrap-kit/package.json#L14.
P.S.: The maintainer plans to publish the Python version soon, so this might not be reproducible once he does.

Moved to https://github.com/cdklabs/construct-hub as this likely needs to be solved during ingestion.


Add .Data.Headers in GetRemote

Support Link Response fields in GetRemote Result object
Discourse 49894
Issue
Different APIs use different Response-Header fields to return additional data about the Response.
Especially paginating REST APIs (GitHub, GitLab guess there are many) used in combination with GetRemote are affected.
Hugo currently only provides access to the Content-Type filed through it's Data Interface in
resource Object returned from GetRemote
I would like to have see the Link Header fields for Pagination at the resource.

start
first
next
prev(ious)
last
self

Link Response Header Field (RFC 5988)
RFC has a complete grammar in section 5
Just the key points for the stuff used in pagination here:
Link                 = "Link" ":" #link-value
  link-value         = "<" URI-Reference ">" *( ";" link-param )
    link-param       = ( "rel" "=" relation-types )             <-- the are more keywords than "rel" and more types
      relation-types = relation-type
                 |     <"> relation-type *( 1*SP relation-type ) <">

relation types are defined in
section 622
commonly used types are

self - the link to the page itself
help - usually links to the api documentation
stylesheet - for XML delivery or transformation
start - slighty different definition than first (non native speaker) - and there is no end type
;-)

So we have multiple types in a rel field that may link to the same Url. And two different types
for the same (prev and previous) Hurray.
Example from GitHub

This is a one line string, newlines added for readability
Link:
<https://api.github.com/repositories/11180687/issues?page=1&per_page=2>; rel="prev",
<https://api.github.com/repositories/11180687/issues?page=3&per_page=2>; rel="next"
<https://api.github.com/repositories/11180687/issues?page=233&per_page=2>; rel="last",
<https://api.github.com/repositories/11180687/issues?page=1&per_page=2>; rel="first"
<https://www.example.com; rel="self">
<https://www.example.com; rel="self stylesheet">

Implementation thoughts
Implementation effort varies on the degree of Link attribute support

only rel=
1.2 all types
1.3 list of types (minimal: next,prev(ios),first,last,start)
2 complete Link RFC
3 all or some other Headers

I would vote for 1.2 maybe 1.1 so it's full supported. Guess you have some Go libraries already in
use. The grammar for the Link attribute seems to regex capture handlebar.
Easy access
should be dead simple $resource.Links.First $resource.Links "first" ... no puzzling around with
walking a structure or index function.
Should not fail
If the link cannot be parsed completely it should not fail but store it in a String representation
maybe Resource.Header.LinkRaw ...
Field that may be worth adding

Content-Language might be interesting, so one can handle the process according to Hugo site
languages.

Further considerations
For simplicity all fields exposed are directly available at the .Data field.
Could be moved to a .Data.Header storing the Response headers. Just one field currently for the
Response-Header, so a deprecation now and duplicate/link it to .Data.Headers. or an interface,
getter ... i'm not in Go. The new link Field might be widely used because of paginating APIs
utilized with GetRemote and Content Adapters. imho if there should be a change, early is better ;-)
Dunno if these will be a conflict candidate later but at lest a point to consider
Resources

mdn_web_docs
Wikipedia
RFC 5988

a few hours of 😴  and a quit lesson 🧑🎓 in building Hugo
I would say that the most practical approach would be to add needed Fields only.
the Link is returned as unicoded string and to extract only the needed rel types it looks quite simple.
In Perl I would use a little regex magic to create fields for every "rel=" type for each link.
I could imagine that it would be good to have the unparsed Link stored, too.
.Data.Links [
  rawLink = res.Header.Get("Link")
  first = "https...
  last = "https"
  ...
]

the presence of each link type is determined by the query result. So only available links are in the Response. The first page fe. wouldn't provide a previous link in the response header field
tested with
just added a res.Header.Get("Link") to responseToData and we get a Raw string looks like Unicode.
Dumped in a Template:
   {{ $github_rest_api_branches := "https://api.github.com/repos/gohugoio/hugo/branches?per_page=10&page=10" }}
   {{ $github_rest_options := dict
      "headers" (dict "Accept" "application/vnd.github+json" "Content-Type" "application/json")
   }}
   {{ with resources.GetRemote $github_rest_api_branches $github_rest_options }}
      {{ warnf (debug.Dump .Data) }}
   {{ end }}

will result in:
{
  "ContentLanguage": "",
  "ContentLength": -1,
  "ContentType": "application/json; charset=utf-8",
  "Link": "\u003chttps://api.github.com/repositories/11180687/issues?per_page=10\u0026page=9\u003e; rel=\"prev\", \u003chttps://api.github.com/repositories/11180687/issues?per_page=10\u0026page=11\u003e; rel=\"next\", \u003chttps://api.github.com/repositories/11180687/issues?per_page=10\u0026page=47\u003e; rel=\"last\", \u003chttps://api.github.com/repositories/11180687/issues?per_page=10\u0026page=1\u003e; rel=\"first\"",
  "Status": "200 OK",
  "StatusCode": 200,
  "TransferEncoding": null
}```

Just a thought - What about an Opt-In for complex header fields....
{{ $opts := dict
  "method" "post"
  "body" `{"complete": true}`
  "headers" (dict  "Content-Type" "application/json")
  "responseHeaderFields= (slice "Links", ...)
}}

Will limit the performance impact if one has many Get-Remote Calls without need for links.
An opt-In would lower this and avoid a performance regression in current usage.


feat: add mastercard-client-encryption dependency

Description
title

Testing required outside of automated testing?

[x] Not Applicable

Screenshots (if appropriate):

[x] Not Applicable

Rollback / Rollforward Procedure

[x] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

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