ipsec: fix host network

Description
This PR fixes the IPSec backend when used in conjunction with kubernetes.
It does so by generating a dummy interface and adding the flannel network as route towards the subnet.
After that, if kubernetes generates the cni interface, it will add another route to ensure the node-local network (= allocated network) is routed to the CNI interface.
This PR was tested against kubernetes 1.13.5/kubespray based setup on a three-node cluster. No automated testing was performed. The kubespray changes can be found here
No further user-facing changes are neccessary.
EDIT The description is deprecated, see the comments below.
None required

I took the last few days to make a better fix for the kubernetes-ipsec host-network problem.
Now there is no interface generated anymore, I just setup the routes correctly like in the strongswan documentation.
Furthermore I added a flag to indicate whether flannel is running within kubernetes to change source addresses for the ClusterIP services.

This PR fixes the IPSec backend when used in conjunction with kubernetes.

Could you update your PR to state what issue exactly is being fixed/What doesn't work currently and will work after your PR?

This PR fixes the IPSec backend when used in conjunction with kubernetes.

Could you update your PR to state what issue exactly is being fixed/What doesn't work currently and will work after your PR?

Yeah sure, short description:
When you are using flannel+ipsec backend as underlay network for kubernetes and you use the new IPVS proxy mode, you can't communicate from pods with HostNetwork to a service with a ClusterIP.
This PR fixes exactly this issue by changing the routes for the kube-ipvs0 interface to have a valid prefsrc address. When having this prefsrc address, the kernel won't drop the packets on the return route.
You can also refer to the issues I linked for further information.


Update rubygems.org with new releases

Hi,
We are using https://rubygems.org/ to install Librarian-puppet, but the version is outdated - could you update the package there or provide another install method for Debian? :)

I'm trying to deploy to rubygems in https://github.com/voxpupuli/librarian-puppet/pull/10 with Travis.
If this doesn't work I will deploy manually.
I will update here.

any updates on this?

As a workaround one could
> gem install specific_install
> gem specific_install https://github.com/voxpupuli/librarian-puppet.git

Thanks for the reminder.
Turns out I can push tags to this repo.
2.2.3 is released: https://rubygems.org/gems/librarian-puppet/versions/2.2.3

...many thanks for keeping this project healthy!


Is it possible to create a playlist of every song an artist ID has and appears on (including appears on section)?

Several apps that claim to do this, like for example alfred spotify mini player that says creates complete collection misses many songs, mostly the appears on sections, which it cannot penetrate, but that is where artists frequently appear on remixes etc.
searching in spotify and sorting by songs is messy too, and often includes junk and songs not by that artist as it runs out of songs by the artist.
Is there a way to run a script that will return a list of all songs if I put in the artist name (ID?), regardless of dupes, just a total list, this would be helpful for grass cutting for updates every few weeks or so, as the big apps that update new releases are annoying and sporadic. I want to do it when I want to do it.
Would it be easy or hard, as you can probably tell I'm not a coder but have some money left on freelancer I'd rather spend than try to claw back.
I think this is the relevant section.
playlist_add_items(playlist_id, items, position=None)
Adds tracks/episodes to a playlist
Parameters:
playlist_id - the id of the playlist
items - a list of track/episode URIs, URLs or IDs
position - the position to add the tracks
thanks.

I've done something like this, assuming authentication is in place:
`
spotify_post = spotipy.Spotify(auth=token)
album_track_ids = []
albums = session.spotify_artist_albums(artist_id)
for album in albums:
    if 'US' not in album['available_markets']:
        continue
    for track in session.spotify_album_tracks(album['id']):
        track_artists = [x['uri'] for x in track['artists']]
        if 'spotify:artist:' + artist_id in track_artists:
            album_track_ids.append(track['id'])

playlist_title = 'New Playlist {:%Y-%m-%d %H:%M}'.format(datetime.datetime.today())
new_playlist = spotify_post.user_playlist_create(spotify_userid, playlist_title, public=False)
if spotify_post.playlist_add_items(new_playlist['id'], album_track_ids):
print(new_playlist['id'])
`

thanks very much, I don't know what to make of the code but I'm glad I have it and I have saved it, and it's possible. I will try and learn it on my own, worst case I pay somebody on freelancer who understands python and spotipy
My guy who has helped me before just quit working there, don't want to bug him again, but somebody else could figure it out.
I have several python scripts that use authorization and spotipy and work well so I think that's good.

I've done something like this, assuming authentication is in place:
spotify_post = spotipy.Spotify(auth=token)

album_track_ids = []
albums = session.spotify_artist_albums(artist_id)
for album in albums:
    if 'US' not in album['available_markets']:
        continue
    for track in session.spotify_album_tracks(album['id']):
        track_artists = [x['uri'] for x in track['artists']]
        if 'spotify:artist:' + artist_id in track_artists:
            album_track_ids.append(track['id'])

playlist_title = 'New Playlist {:%Y-%m-%d %H:%M}'.format(datetime.datetime.today())
new_playlist = spotify_post.user_playlist_create(spotify_userid, playlist_title, public=False)
if spotify_post.playlist_add_items(new_playlist['id'], album_track_ids):
    print(new_playlist['id'])

well I looked at it, sorry for not understanding a thing about python but where do you put the artist ID to run the script and generate the playlist?.
I assume I have to  add the credentials and the redirect and that on top of the script like is required for spotipy and like is on  all my other scripts, but on those scripts there would always be somewhere he would tell me to insert information.
if you could explain I would appreciate, if not , it's cool, I appreciate you even sharing.
Just tired of paying this guy because my lack of knowledge of python, and getting help in forums like SO forget it.

You must define a variable called artist_id with the artist id.

would this work?
from pprint import pprint
import spotipy
from spotipy.oauth2 import SpotifyOAuth
from anybar import AnyBar
import threading
# START Custom Credentials
SPOTIPY_CLIENT_ID = 'my private'
SPOTIPY_CLIENT_SECRET = 'my private'
SPOTIFY_USERNAME = 'my private'
# The cache file absolute path
SPOTIFY_CACHE = 'my private'
artist_id = 'I put in here???'

# END Custom Credentials

SPOTIPY_REDIRECT_URI = 'http://<IP_ADDRESS>:9090'

scope = "user-library-read user-read-currently-playing user-read-playback-state playlist-modify-public playlist-modify-private"
sp = spotipy.Spotify(auth_manager=SpotifyOAuth(scope=scope, client_id=SPOTIPY_CLIENT_ID,
                                               username=SPOTIFY_USERNAME,
                                               client_secret=SPOTIPY_CLIENT_SECRET, redirect_uri=SPOTIPY_REDIRECT_URI, cache_path=SPOTIFY_CACHE))
album_track_ids = []
albums = session.spotify_artist_albums(artist_id)
for album in albums:
    if 'US' not in album['available_markets']:
        continue
    for track in session.spotify_album_tracks(album['id']):
        track_artists = [x['uri'] for x in track['artists']]
        if 'spotify:artist:' + artist_id in track_artists:
            album_track_ids.append(track['id'])

playlist_title = 'New Playlist {:%Y-%m-%d %H:%M}'.format(datetime.datetime.today())
new_playlist = spotify_post.user_playlist_create(spotify_userid, playlist_title, public=False)
if spotify_post.playlist_add_items(new_playlist['id'], album_track_ids):
    print(new_playlist['id'])

@greeneryAO why don't you just run it to know if it would work? it's not that hard, just google how to run a python script and start from there

I know how to run them, just not to fix them, tried it, error message was said
Traceback (most recent call last):
File "spotify playlist maker.py", line 23, in
albums = session.spotify_artist_albums(artist_id)
NameError: name 'session' is not defined

If I change it around, either the token is not defined, or the session is not defined, or the scope is note defined, must have did something wrong.

Yeah session is not defined, as the error message says. @kenmacf's code aims to show the logic but as mentioned it's not including the authentication part. So you will have to adapt it a little.
Since you don't need to add songs to any user playlist, you won't need user authentication, which will be easy for you.
My suggestion is you follow these steps:

Have a look at the Quick Start / Without user authentication example on the README
Run it. If it works, you've already fixed the "session" problem and you can work on the fun stuff 👍
You can now adapt that code to search for artist albums. Instead of sp.search(), you can do sp.artist_albums
Print the result to see what you get
Once you got the albums, get the album tracks with sp.album_tracks

Good luck, and remember to always start from something that works

thanks, I'll give it a try, what abut this code, I found it just in the newest changes to spotipy, maybe it's the same thing.
artist_discography.py
import argparse
import logging

from spotipy.oauth2 import SpotifyClientCredentials
import spotipy
logger = logging.getLogger('examples.artist_discography')
logging.basicConfig(level='INFO')
def get_args():
    parser = argparse.ArgumentParser(description='Shows albums and tracks for '
                                     'given artist')
    parser.add_argument('-a', '--artist', required=True,
                        help='Name of Artist')
    return parser.parse_args()
def get_artist(name):
    results = sp.search(q='artist:' + name, type='artist')
    items = results['artists']['items']
    if len(items) > 0:
        return items[0]

I ran it and it said it succeeded but nothing happened

https://github.com/plamere/spotipy/blob/master/examples/artist_discography.py
You skipped the main() function therefore nothing ran. Just run the full thing. Starting with examples is a very good approach

ran it by itself and error was
spotipy.oauth2.SpotifyOauthError: No client_id. Pass it or set a SPOTIPY_CLIENT_ID environment variable.
ran it with credentials and same error?
#Shows the list of all songs sung by the artist or the band
import argparse
import logging

from spotipy.oauth2 import SpotifyClientCredentials
import spotipy

# START Custom Credentials
SPOTIPY_CLIENT_ID = ''
SPOTIPY_CLIENT_SECRET = ''
SPOTIFY_USERNAME = ''
# The cache file absolute path
SPOTIFY_CACHE = ''

# END Custom Credentials

logger = logging.getLogger('examples.artist_discography')
logging.basicConfig(level='INFO')

def get_args():
    parser = argparse.ArgumentParser(description='Shows albums and tracks for '
                                     'given artist')
    parser.add_argument('-a', '--artist', required=True,
                        help='Name of Artist')
    return parser.parse_args()

def get_artist(name):
    results = sp.search(q='artist:' + name, type='artist')
    items = results['artists']['items']
    if len(items) > 0:
        return items[0]
    else:
        return None

def show_album_tracks(album):
    tracks = []
    results = sp.album_tracks(album['id'])
    tracks.extend(results['items'])
    while results['next']:
        results = sp.next(results)
        tracks.extend(results['items'])
    for i, track in enumerate(tracks):
        logger.info('%s. %s', i+1, track['name'])

def show_artist_albums(artist):
    albums = []
    results = sp.artist_albums(artist['id'], album_type='album')
    albums.extend(results['items'])
    while results['next']:
        results = sp.next(results)
        albums.extend(results['items'])
    logger.info('Total albums: %s', len(albums))
    unique = set()  # skip duplicate albums
    for album in albums:
        name = album['name'].lower()
        if name not in unique:
            logger.info('ALBUM: %s', name)
            unique.add(name)
            show_album_tracks(album)

def show_artist(artist):
    logger.info('====%s====', artist['name'])
    logger.info('Popularity: %s', artist['popularity'])
    if len(artist['genres']) > 0:
        logger.info('Genres: %s', ','.join(artist['genres']))

def main():
    args = get_args()
    artist = get_artist(args.artist)
    show_artist(artist)
    show_artist_albums(artist)

if __name__ == '__main__':
    client_credentials_manager = SpotifyClientCredentials()
    sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager)
    main()

No you didn't pass the credentials. See the difference between your code:
    client_credentials_manager = SpotifyClientCredentials()
    sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager)

and the code in the README:
sp = spotipy.Spotify(auth_manager=SpotifyClientCredentials(client_id="YOUR_APP_CLIENT_ID",
                                                           client_secret="YOUR_APP_CLIENT_SECRET"))

ok, that's how he wrote the credentials for his scripts, I'll try to adapt the credentials for that script, same client id and secret.

Tried a bunch of things, putting in my app credentials authorized or not, wouldn't work, same errors.
spotipy.oauth2.SpotifyOauthError: No client_id. Pass it or set a SPOTIPY_CLIENT_ID environment variable.
I know I seem like a dolt to people who know python but not going to start learning python and spotipy for this last script I need for my spotify setup, I guess I'll take both scripts to market and get the dummy version handed to me and see if either can do what I imagined.
thanks anyway.


l3cam_ros: 1.0.2-2 in 'noetic/distribution.yaml' [bloom]

Increasing version of package(s) in repository l3cam_ros to 1.0.2-2:

upstream repository: https://github.com/beamaginelidar/l3cam_ros.git
release repository: https://github.com/beamaginelidar/l3cam_ros-release.git
distro file: noetic/distribution.yaml
bloom version: 0.11.2
previous version for package: null

If you open a new PR, please close the old one.  Closing in favor of #35891


[Task]: Improve documentation on using different backbones

What is the motivation for this task?
I want to try different backbones (EfficientNet, ViT, MobileNet, ...), but there is not much documentation on it.
I tried this configuration, but blocks.4 was not recognized.
model:
  name: patchcore
  backbone: efficientnet_b4  # wide_resnet50_2, resnet18
  pre_trained: true
  layers:
    # - layer2
    # - layer3
    - blocks.4
    - blocks.5

Describe the solution you'd like
I would like information about which backbones are compatible and how to reference the mid-level feature layers.
Additional context
No response

Have you solved the problem? Please answer me if it's resolved. Thank you

Hi everyone, we have now added some tutorials to v1 documentation.
v1 itself is not officially on PyPI yet, but you could try it out by following the link here
https://github.com/openvinotoolkit/anomalib?tab=readme-ov-file#-upcoming-release-anomalib-v1-
I'm closing this for now. Feel free to re-open if you think that the documentation is still not clear or needs some more work. Cheers!


2017 Unnamed BAC Company

2017 legal threat against pcpursuit.com for their research on breath testing machines. Need to see if they ever went public.

Would be good to get more info on this one, although it seems like contracts were signed about procedure or findings in that last comment.


#1243 Support for custom gce images

cc @jeffmendoza PTAL

I was able to create a 15.04 vm, but machine ran into errors bootstrapping. The VM was created correctly with the specified image, so this code is working.

FYI, the centos-7-v20150603 image worked without issues for me.

Hi, checking on the status of this PR, over a month old now (and now reports a merge conflict). Is there anything blocking the PR other than the conflict? I can resolve it again, but if we wait for another month, there will be another one potentially, please advise.

@aperepel Just dropped the ball due to being busy with DockerCon and the release.  Everything looks pretty good to me so if you rebase I think we can go ahead and move it upstream.  cc @ehazlett

Hi @aperepel are you ok to rebase your PR?

This will have to wait for https://github.com/docker/machine/pull/2087 to be merged

I created a rebased version of this PR https://github.com/docker/machine/pull/2113


Darkly - Input Icon Font Color

Darkly's input icon (left in particular from what I currently have setup, likely right icon as well) font color is white. This should be grey.
White icon on white text field input.

<input type="text">

@jslay88 Thanks, I have fixed the input icon's font color problem by removing the useless CSS code, and also updated Semantic-UI from 2.2.9 to 2.2.13.


Update the game over message

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

test


[Cloudflare Worker]: How can I get the original request when calling another bound worker in Cloudflare worker?

about service-bindings docs
export default {
  async fetch(request, env) {
    // Fetch AUTH service and pass request
    const authResponse = await env.auth.fetch(request.clone());

    // Return response from the AUTH service if the response status is not 200
    // It would return 403 'x-custom-token does not match, request not allowed' response in such case
    if (authResponse.status !== 200) {
      return authResponse;
    }

    // Request allowed
    // You can write application logic here
    // In this case we delegate the logic to an `application` Worker
    return await env.application.fetch(request)
  },
};

How can I get the original request when calling another bound worker in Cloudflare worker?

You can get the original request object with c.req.raw in the handler.

thanks!


Zotero gzipped file is corrupt

How to reproduce the behaviour
Download intext_patent_csv.tar from Zotero
Your Environment
The 5th file is corrupt.
$ gzip -tv data-release/*.gz
data-release/intext_patent_000000000000.csv.gz:   OK
data-release/intext_patent_000000000001.csv.gz:   OK
data-release/intext_patent_000000000002.csv.gz:   OK
data-release/intext_patent_000000000003.csv.gz:   OK
data-release/intext_patent_000000000004.csv.gz:   OK
gzip: data-release/intext_patent_000000000005.csv.gz: unexpected end of file
gzip: data-release/intext_patent_000000000005.csv.gz: uncompress failed
data-release/intext_patent_000000000005.csv.gz:   NOT OK

Sorry for this issue, the first download with the correct md5 hash: 93641563e5563ba7c80f676145965086 had a broken 005, downloading it again with the same md5 hash fixed it. I am not sure how that is possible. I close the issue. Sorry for the alarm.


PVRs don't have their status set when running in namespace other than velero

What steps did you take and what happened:
I ran the following commands in sequence, and I observed that PodVolumeRestores were not getting their statuses updated.
velero install --bucket=MYBUCKET --provider aws --secret-file=$HOME/Downloads/accessKeys.csv --use-restic --image=gcr.io/heptio-images/velero:master --wait --namespace test`
kubectl annotate pod/nginx-deployment-64f9f59c8f-ksr7f  -n nginx-example backup.velero.io/backup-volumes=nginx-logs,nginx-extra,opt
velero backup create nginx --include-namespaces nginx-example -n test
kubectl delete ns/nginx-example
velero restore create --from-backup nginx -n test
velero client config set namespace=test

% velero get restores                                                                                NAME                   BACKUP   STATUS       WARNINGS   ERRORS   CREATED                         SELECTOR
nginx-20190808181552   nginx    InProgress   0          0        2019-08-08 18:15:53 -0400 EDT   <none>

x1c in /home/nrb/go/src/github.com/heptio/velero (git) master
% date
Thu 08 Aug 2019 06:20:10 PM EDT

x1c in /home/nrb/go/src/github.com/heptio/velero (git) master
% kubectl get podvolumerestores -n test -o jsonpath="{.items[*].status}"
map[phase: startTimestamp:<nil> completionTimestamp:<nil> message:] map[completionTimestamp:<nil> message: phase: startTimestamp:<nil>] map[completionTimestamp:<nil> message: phase: startTimestamp:<nil>]

All pods appear to be running:
x1c in /home/nrb/go/src/github.com/heptio/velero (git) master
% kubectl get pods -n test
NAME                    READY     STATUS    RESTARTS   AGE
restic-9rxlh            1/1       Running   0          17m
restic-rrqnk            1/1       Running   0          17m
velero-695dfc76-kzlqq   1/1       Running   0          17m

What did you expect to happen:
PVRs should have their status set shortly after creation.
The output of the following commands will help us better understand what's going on:

kubectl logs pod/<restic pod on node> -n test

x1c in /home/nrb/go/src/github.com/heptio/velero (git) master
% kubectl logs pods/restic-rrqnk -n test
time="2019-08-08T22:07:43Z" level=info msg="Setting log-level to INFO"
time="2019-08-08T22:07:43Z" level=info msg="Starting Velero restic server master (1429f226ed1a4b4e52d5f952d09aef100c7d9914)" logSource="pkg/cmd/cli/restic/server.go:62"
time="2019-08-08T22:07:43Z" level=info msg="Starting controllers" logSource="pkg/cmd/cli/restic/server.go:159"
time="2019-08-08T22:07:43Z" level=info msg="Controllers started successfully" logSource="pkg/cmd/cli/restic/server.go:202"
time="2019-08-08T22:07:43Z" level=info msg="Starting controller" controller=pod-volume-backup logSource="pkg/controller/generic_controller.go:76"
time="2019-08-08T22:07:43Z" level=info msg="Waiting for caches to sync" controller=pod-volume-backup logSource="pkg/controller/generic_controller.go:79"
time="2019-08-08T22:07:43Z" level=info msg="Starting controller" controller=pod-volume-restore logSource="pkg/controller/generic_controller.go:76"
time="2019-08-08T22:07:43Z" level=info msg="Waiting for caches to sync" controller=pod-volume-restore logSource="pkg/controller/generic_controller.go:79"
time="2019-08-08T22:07:43Z" level=info msg="Caches are synced" controller=pod-volume-restore logSource="pkg/controller/generic_controller.go:83"
time="2019-08-08T22:07:43Z" level=info msg="Caches are synced" controller=pod-volume-backup logSource="pkg/controller/generic_controller.go:83"
time="2019-08-08T22:14:30Z" level=info msg="Backup starting" backup=test/nginx controller=pod-volume-backup logSource="pkg/controller/pod_volume_backup_controller.go:177" name=nginx-wgn4s namespace=test
time="2019-08-08T22:14:35Z" level=info msg="Backup completed" backup=test/nginx controller=pod-volume-backup logSource="pkg/controller/pod_volume_backup_controller.go:275" name=nginx-wgn4s namespace=test
time="2019-08-08T22:14:35Z" level=info msg="Backup starting" backup=test/nginx controller=pod-volume-backup logSource="pkg/controller/pod_volume_backup_controller.go:177" name=nginx-vxt6x namespace=test
time="2019-08-08T22:14:40Z" level=info msg="Backup completed" backup=test/nginx controller=pod-volume-backup logSource="pkg/controller/pod_volume_backup_controller.go:275" name=nginx-vxt6x namespace=test
time="2019-08-08T22:14:40Z" level=info msg="Backup starting" backup=test/nginx controller=pod-volume-backup logSource="pkg/controller/pod_volume_backup_controller.go:177" name=nginx-t9bwq namespace=test

kubectl logs deployment/velero -n velero
NOTE: all these backups were created on a previous Velero install, in the velero namespace.

% kubectl logs deploy/velero -n test | grep error
time="2019-08-08T22:07:51Z" level=error msg="Error syncing pod volume backup into cluster" backup=two-volumes backupLocation=default controller=backup-sync error="the namespace of the provided object does not match the namespace sent on the request" error.file="/go/src/github.com/heptio/velero/pkg/controller/backup_sync_controller.go:262" error.function="github.com/heptio/velero/pkg/controller.(*backupSyncController).run" logSource="pkg/controller/backup_sync_controller.go:262" podVolumeBackup=two-volumes-dg2hr
time="2019-08-08T22:07:51Z" level=error msg="Error syncing pod volume backup into cluster" backup=two-volumes backupLocation=default controller=backup-sync error="the namespace of the provided object does not match the namespace sent on the request" error.file="/go/src/github.com/heptio/velero/pkg/controller/backup_sync_controller.go:262" error.function="github.com/heptio/velero/pkg/controller.(*backupSyncController).run" logSource="pkg/controller/backup_sync_controller.go:262" podVolumeBackup=two-volumes-qq68m
time="2019-08-08T22:07:51Z" level=error msg="Error syncing pod volume backup into cluster" backup=nginx-from-csi backupLocation=default controller=backup-sync error="the namespace of the provided object does not match the namespace sent on the request" error.file="/go/src/github.com/heptio/velero/pkg/controller/backup_sync_controller.go:262" error.function="github.com/heptio/velero/pkg/controller.(*backupSyncController).run" logSource="pkg/controller/backup_sync_controller.go:262" podVolumeBackup=nginx-from-csi-7dtss
time="2019-08-08T22:07:52Z" level=error msg="Error syncing pod volume backup into cluster" backup=nginx2 backupLocation=default controller=backup-sync error="the namespace of the provided object does not match the namespace sent on the request" error.file="/go/src/github.com/heptio/velero/pkg/controller/backup_sync_controller.go:262" error.function="github.com/heptio/velero/pkg/controller.(*backupSyncController).run" logSource="pkg/controller/backup_sync_controller.go:262" podVolumeBackup=nginx2-b7l5d
time="2019-08-08T22:07:52Z" level=error msg="Error syncing pod volume backup into cluster" backup=three-volumes backupLocation=default controller=backup-sync error="the namespace of the provided object does not match the namespace sent on the request" error.file="/go/src/github.com/heptio/velero/pkg/controller/backup_sync_controller.go:262" error.function="github.com/heptio/velero/pkg/controller.(*backupSyncController).run" logSource="pkg/controller/backup_sync_controller.go:262" podVolumeBackup=three-volumes-w8x96
time="2019-08-08T22:07:52Z" level=error msg="Error syncing pod volume backup into cluster" backup=three-volumes backupLocation=default controller=backup-sync error="the namespace of the provided object does not match the namespace sent on the request" error.file="/go/src/github.com/heptio/velero/pkg/controller/backup_sync_controller.go:262" error.function="github.com/heptio/velero/pkg/controller.(*backupSyncController).run" logSource="pkg/controller/backup_sync_controller.go:262" podVolumeBackup=three-volumes-cs7vp
time="2019-08-08T22:07:52Z" level=error msg="Error syncing pod volume backup into cluster" backup=three-volumes backupLocation=default controller=backup-sync error="the namespace of the provided object does not match the namespace sent on the request" error.file="/go/src/github.com/heptio/velero/pkg/controller/backup_sync_controller.go:262" error.function="github.com/heptio/velero/pkg/controller.(*backupSyncController).run" logSource="pkg/controller/backup_sync_controller.go:262" podVolumeBackup=three-volumes-2ltsk

velero restore describe <restorename> or kubectl get restore/<restorename> -n velero -o yaml

% v restore describe nginx-20190808181552  --details
Name:         nginx-20190808181552
Namespace:    test
Labels:       <none>
Annotations:  <none>

Phase:  InProgress

Backup:  nginx

Namespaces:
  Included:  *
  Excluded:  <none>

Resources:
  Included:        *
  Excluded:        nodes, events, events.events.k8s.io, backups.velero.io, restores.velero.io, resticrepositories.velero.io
  Cluster-scoped:  auto

Namespace mappings:  <none>

Label selector:  <none>

Restore PVs:  auto

Restic Restores:
  New:
    nginx-example/nginx-deployment-64f9f59c8f-ksr7f: nginx-extra, nginx-logs, opt

velero restore logs <restorename>

% velero restore logs nginx-20190808181552
Logs for restore "nginx-20190808181552" are not available until it's finished processing. Please wait until the restore has a phase of Completed or Failed and try again.

Anything else you would like to add:
[Miscellaneous information that will assist in solving the issue.]
Environment:

Velero version (use velero version): master
Kubernetes version (use kubectl version):

Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.0", GitCommit:"91e7b4fd31fcd3d5f436da26c980becec37ceefe", GitTreeState:"clean", BuildDate:"2018-06-27T20:17:28Z", GoVersion:"go1.10.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.2", GitCommit:"66049e3b21efe110454d67df4fa62b08ea79a19b", GitTreeState:"clean", BuildDate:"2019-05-16T16:14:56Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"linux/amd64"}

Kubernetes installer & version: VMware AWS quickstart
Cloud provider or hardware configuration: AWS

@sseago Any details you can provide would be helpful too. I'll try again with debug logs turned on in the morning.

@nrb I can confirm with debug logs turned on that Velero is finding no restic backups for the pod when running in a different namespace here:
https://github.com/heptio/velero/blob/master/pkg/restore/restic_restore_action.go#L90
It looks like the namespace is being grabbed from the factory client: https://github.com/heptio/velero/blob/master/pkg/cmd/server/plugin/plugin.go#L144
Reading this: https://github.com/heptio/velero/blob/master/pkg/cmd/server/server.go#L174 It looks like the namespace should be grabbed from the client's config file. I'm not super familiar with the internals here but would there be any correlation between this difference and the failure to find restic backups from the PVR controller?

I think you're correct.
If the namespace isn't set in the config, velero is used here: https://github.com/heptio/velero/blob/master/pkg/client/factory.go#L69-L71.
I tried setting the config on the container, but there are going to be some issues with that due to running as nobody.
% k exec velero-695dfc76-kzlqq  -n test -it -- bash
nobody@velero-695dfc76-kzlqq:/$ ./velero client config set namespace=test
An error occurred: mkdir /nonexistent: permission denied

I'm going to look at how we execute plugins, but I think we should always be passing the namespace in to velero run-plugins.

In the restic DaemonSet, we expose the the namespace that we're running in as VELERO_NAMESPACE via the downward API. I think we need to do the same for the deployment, and maybe add that env var to the lookup in the client factory, so that it's fixed for any invocation of the velero executable, as well as being accessible by any plugins that may need it.
@skriss @carlisia @prydonius thoughts?


Menu system on headless hardcodes links to cannabis.ca.gov

The URLs in the menu for the headless site are not pointing to the correct domain anymore.

Old, closing


Nested match params not accessible at root level

Version
4.3.1
Test Case
https://codesandbox.io/s/rr00y9w2wm
Steps to reproduce

Click on Topics
Click on Rendering with React

OR

Go to https://rr00y9w2wm.codesandbox.io/topics/rendering

Expected Behavior

match.params.topicId should be identical from both the parent Topics component should be the same as match.params.topicId when accessed within the Topic component

Actual Behavior

match.params.topicId when accessed within the Topic component is undefined
match.params.topicId when accessed within the Topics component is rendering

First off, thank you so much for the great job on RR v4!! It is so elegant.
I understand from this closed issue that this is not necessarily a bug. But please allow me to elaborate on why this issue needs to be kept open here.
This requirement is super common among users who want to create a run in the mill web application where a component Topics at a parent level needs to access the match.params.paramId where paramId is a URL param that matches a nested (child) component Topic:
const Topic = ({ match }) => (

Topic ID param from Topic Components

{match.params.topicId}

);

const Topics = ({ match }) => (

Topics

{match.params.topicId || "undefined"}

    <Route path={`${match.url}/:topicId`} component={Topic} />
    ...

);

In a generic sense, Topics could be a Drawer or Navigation Menu component and Topic could be any child component, like it is in the application I'm developing. The child component has it's own :topicId param which has it's own (let's say) <Route path="sections/:sectionId" component={Section} />  Route/Component.
Even more painful, the Navigation Menu needn't have a one-to-one relationship with the component tree. Sometimes the items at the root level of the menu (say Topics, Sections etc.) might correspond to a nested structure (Sections is only rendered under a Topic, /topics/:topicId/sections/:sectionId though it has it's own normalized list that is available to the user under the title Sections in the Navigation Bar).
Therefore, when Sections is clicked, it should be highlighted, and not both Sections and Topics.
With the sectionId or sections path unavailable to the Navigation Bar component which is at the Root level of the application, it becomes necessary to write hacks like this for such a commonplace use case.
I am not an expert at all at React Router, so if anyone can venture a proper elegant solution to this use case, I would consider this to be a fruitful endeavor. And by elegant, I mean:

Uses match and not history.location.pathname
Does not involve hacky approaches like manually parsing the window.location.xxx
Doesn't use this.props.location.pathname
Does not use third party libraries like path-to-regexp

Even if this is considered to be a feature and not a bug, I want this thread to at least be a place where people can access the design pattern they need to follow when faced with this task or challenge (as it is atm). I am posting this on StackOverflow as well, but I hope this is retained here for others who have come looking for a solution to this problem.

@timdorr Thanks for your response. I understand and agree with you that there might be collisions with common param names. But doesn't react-router work on first-come-first-serve basis for routes?
And I'm not expecting there to be a global route implementation. I'm merely looking for a common design pattern that people are using at the moment as I would assume that this is an extremely common use case.
How can I set activeClass on a Navigation Menu item that corresponds to a nested Component? I don't see any other way to do this other than to somehow have a global implementation? I would very much appreciate your input on this. This is also applicable to say a Breadcrumb component. How can I see what the entire URL is without parsing the location object?


increase size of error_message_buffer to make gcc7 not warn with "-Wformat-truncation"

Buffer seems to be too small, at least according to gcc7

thanks for the patch -> merged


Feature: Show sidebar everywhere in app

Type of feature
🍕 Feature
Current behavior
Sidebar shows up exclusively within the workspaces context.
Suggested solution
Make the sidebar available in every other part of the platform as well, for easier access to workspaces and insights.
Namely:

Highlights page
Explore page
User profiles

Excluding:

User Settings
Notifications

Design incoming for an empty state to show to non-logged in users
Additional context
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Contributing Docs

[X] I agree to follow this project's Contribution Docs

@zeucapua can we close this in favor of your other open issues?


Fix(auth): use crypto/subtle to compare strings

Related: #37

why did the CI didn't run for this?

@till thanks! LGTM

why did the CI didn't run for this?

Maybe required approval? First time contributor.


Unable to jump between fields when deleting

Cant automatically jump to the previous textbox when deleting. I have to delete one by clicking on each textbox.

I have the same behavior, not sure if it's a bug or a non implemented feature

Same behavior. Please fix it soon

I don't think this is a bug. I think this feature still needs to be built. Will definitely be a good feature to add.

yes please highly demanded.!!!!

Will look at it early tomorrow, will let you know when I add the feature

Yeah, need the feature too.

Will look at it early tomorrow, will let you know when I add the feature

Sure 😃

@david-legend  Added a PR to fix issue #11 .

Thanks @prkhrv
Been busy with something else, never got to it.
Thanks a lot, I have merged the PR and published

We can consider this issue closed!!!!

Wow David is a LEGEND 👍
😅
On Sat, Sep 3, 2022, 4:35 AM David-Legend @.***> wrote:

Closed #4 https://github.com/david-legend/otp_textfield/issues/4 as
completed.
—
Reply to this email directly, view it on GitHub
https://github.com/david-legend/otp_textfield/issues/4#event-7316136098,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACFQD4D6RWMKORAYFUGIJJ3V4KAEXANCNFSM5IAJUUZQ
.
You are receiving this because you commented.Message ID:
@.***>

can someone provide an example please ?

For example if you entered wrong values for you to delete you have to
manually put cursor in each of the textfield and delete. What I would love
is to automatically delete values backwards.
On Tue, 27 Dec 2022, 21:32 utariddev, @.***> wrote:

can someone provide an example please ?
—
Reply to this email directly, view it on GitHub
https://github.com/david-legend/otp_textfield/issues/4#issuecomment-1366128308,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADTY6L443DCPNUACKRV6NVLWPM743ANCNFSM5IAJUUZQ
.
You are receiving this because you authored the thread.Message ID:
@.***>


Sql database project UTs out of canary

This PR moves the Sql Db project unit tests to run in all build pipelines.
For the past few months, sql db UTs were running only for canary due to frequent test failures.

Pull Request Test Coverage Report for Build 404331543

20 of 33 (60.61%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.4%) to 42.697%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

extensions/sql-database-projects/src/dialogs/createProjectFromDatabaseDialog.ts
16
17
94.12%

extensions/sql-database-projects/src/controllers/projectController.ts
0
12
0.0%

Totals

Change from base Build 401877564:
1.4%

Covered Lines:
23774

Relevant Lines:
51027

💛  - Coveralls

did you reuse the old branch? looks like there are more changes than described. @SakshiS-harma

did you reuse the old branch? looks like there are more changes than described. @SakshiS-harma

My bad. I didn't realize that. I will fix it (might close this PR now).


Add handler docstring to OpenAPI's description

Both description and summary was missing at OpenAPI generated schema. This set the path description to the handler docstring. However I found no suitable text for summary.

Yup, looks good!


Prod Inconsistency in the genetics pharmacy

Mod source
Factorio Mod Portal
Which mod are you having an issue with?

[X] pyalienlife
[ ] pyalternativeenergy
[ ] pycoalprocessing
[ ] pyfusionenergy
[ ] pyhightech
[ ] pyindustry
[ ] pypetroleumhandling
[ ] pypostprocessing
[ ] pyrawores

Operating system

=Windows 10

What kind of issue is this?

[ ] Compatibility
[ ] Locale (names, descriptions, unknown keys)
[ ] Graphical
[ ] Crash
[ ] Progression
[X] Balance
[ ] Pypostprocessing failure
[ ] Other

What is the problem?
After the Great Proddening, a lot of the pre-Perfect-Sample pharmacological cabinet is proddable, but the things that come out of the Research Center (Anabolic RNA, RecA Protein, Bone Morphogenetic Proteins, Orexigenics) are not, and I guess probably should be.  Antivirals and Growth Factor are arguably also in this bucket, but they're farther back up the tree and don't necessarily need to be treated the same.
Steps to reproduce
No response
Additional context
No response
Log file
No response

Not a bug. These recipes already output 50x of their result, so additional productivity is unwarranted.


Modify attribute options after definition

I am trying to modify on runtime already defined attributes. However the modified options are ignored.
See gist https://gist.github.com/fgarcia/80449b6d2754e66f557d
Is this supposed to be possible? I also played with Virtus.finalize without much success.

Nope, sorry this will never work. Model is being extended with behavior based on attribute definitions, after they are initialized they should not be changed. In virtus 2.0 they will be frozen (frankly I'm surprised they are not already)

I am still playing around with dynamically defined attributes but it did not took to much more to understand why non frozen attributes is an awful idea.
The title of this issue and my initial approach is flawed. Certainly a module with Virtus attributes should be frozen, however I am still considering an easy way to reuse current definitions to define new objects.
Normally I have a clean cut of my domain objects:

One class just reflects behavior with internal state not shown to the outside (not a single attribute is exposed)
Many classes with setter/getter attributes. Just state, no behavior

Hence I am very interested in exploring how to make multiple definitions from a central one. So far I am using instance_variable_get(:@attribute_set) to get the attribute_set of Virtus.model and define new ones inside another class
Should that be safe and viable on the long term?

Why not just use inheritance?

Normally I reserve inheritance to restrict the nature/type of a class. In my case I have the "Behaviour Domain Object" species and the "Simple State Holder Model" species.
That both of them can share a similar subset of attributes is just an orthogonal concept, where I do prefer to use mixins.
In my current case the inheritance slot is already reserved, but will reevaluate. Also I was concerned about inherited attributes being frozen...
...or maybe I just took the long road of introspection for the fun exploring Virtus since it is a long time I thought about a custom DSL to copy/redefine/imitate Virtus objects that "mostly" resemble an existing one.

actually a custom DSL extension was the way I thought the Adapter objects where going to be implemented ;-)
like:
class PersonAdapter
   include Virtus.adapter( Person )

   map from('/age'), to('/current_age', &:to_i)

   # inherit / skip rest of attributes?
end

And that would be an whole extra gem, like https://github.com/ismasan/hash_mapper but with some extra knowledge assuming Virtus is being used

@solnic Regarding not using inheritance, I am facing that issue in my current code:
I have a common set of attributes (for one concept) spread across many classes: events, commands, form objects, query results, widget model ... Normally I tend to add one generic model attribute, but as code evolves there are "slight" variations. Still not sure if having multiple adapters for each of those objects is really worth it or totally insane.

Maybe you could use Virtus.module to share common attributes

That is what I am doing right now, and it is almost my solution.
As mentioned earlier, the repeated set of attributes tend to have slight variations. However I wonder now about your comment in the chat about extracting data structure mapping out of Rom into an independent gem (without memory adapter).
Did you have in mind something like the hash_mapper gem syntax I wrote above? To me seems like something very useful and easy to add as an extra independent gem, but I believe you are solving already the same problem from another angle.
Since you have much more experience than me, I am curious about your point of view on my approach.

ROM mapper is standalone, it'll be probably extracted into a separate gem at some point. For repeated set of attributes you can also use inheritance and override some attributes if you want (frankly I don't recall how that would work with virtus models)


1.11.9 breaks in Webpack

We noticed our builds breaking this morning with the error
Module not found: Error: Cannot resolve module 'instantsearch.js'
Upon noticing there was a new release we found our package.json was set to install major releases and had installed 1.11.9.
Reverting to 1.8.13 fixed the error.
I'm somewhat a novice in Webpack so let me know if you need any other details.

Would be nice if you could get an as small as possible reproduction, or if that is really not possible your whole app. It kinda sounds like you forgot an npm install. The change from 1.8 to 1.11 should definitely not change anything regarding how the module is published though...

We're seeing the same issue. Using any project with a reliance on instantsearch.js, run
$ npm uninstall instantsearch.js
$ npm clear cache
$ npm install instantsearch.js

This will ensure 1.11.9 is installed. Running the server with this version installed reproduces the issue.
A temporary work around would be:
$ npm uninstall instantsearch.js
$ npm clear cache
$ npm install<EMAIL_ADDRESS>

Could you share a reproducible example @jackellenberger , I have a guess what might be the cause, but I have a hard time reproducing it

Sure, here's a minimal example:
index.js
'use strict';

var algoliaSearch = require('instantsearch.js');
console.log(algoliaSearch !== undefined);

package.json:
  "main": "index.js",
  "scripts": {
    "start": "node index.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "dependencies": {
    "instantsearch.js": "~1.11.4"
  }
}

To reproduce:
npm install
npm start

This yields the output
> @ start /home/pair/bt/instant
> node index.js

module.js:327
    throw err;
    ^

Error: Cannot find module 'instantsearch.js'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/home/pair/bt/instant/index.js:3:21)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)

To fix:
npm uninstall instantsearch.js
npm install<EMAIL_ADDRESS>
Which yields
><EMAIL_ADDRESS>start /home/pair/bt/instant
> node index.js

Warning: Accessing PropTypes via the main React package is deprecated. Use the prop-types package from npm instead.
true

Thanks a lot, we happened to find the error and 1.11.10 will be deployed with the fix in a few minutes
cc @iam4x

v1.11.10 is now available, with the correct files!


Font awesome css class names do not match current font awesome

It appears that some classes are named differently. For example fa-map-marker and fa-google-plus-official are missing.
They are not correct in https://github.com/fontello/awesome-uni.font/blob/master/config.yml although the file states version 4.7 of font awesome.
Would you accept a pull request that fixes this?

I already explained somewhere, that existing diviations have historic reasons, because it collaborates different collections, not FA only.
On practice that means, that i prefer to avoid names change but would accept PR with more search aliases. Or we can discuss some kind of specific importer for FA, if you have well known use case for it.

I see the need for backwards compatibility.
The issue I run into is with 3rd party js libraries that use font-awesome. Many have hardcoded fa tags in them.

IMHO that can be automated via script somehow. Need to understand what is the data source - how you get list of icons for custom font.

ok thanks. I think I can get what I need with a custom config.json.

https://github.com/fontello/fontello#developers-api this may help, examples are included.
Closing?

I also find it a bit unlucky that naming is different, spent 2-3 hours just renaming things yesterday/today when switching from Font Awesome (not complaining - great library, thanks :-) - just describing a use case), wouldn't it make sense to make a hard version cut and make these names up-to-date and inform people they have to update the names?
Have you alternatively thought/already discussed just keeping a namespace for the different icon libraries, and naming e.g. icon-fa-clock, icon-io-trash, ...? Would definitely make things cleaner and easier to separate and also eases search and replace operations a lot (probably lots of people are switching from some of the separate libraries).
Just my 2 cents, of course this would be one harsh version cut.

I guess you could also keep the current naming and additionally add the namespace naming. That way existing users wont notice a change and new users can use the namespace for the correct icon names.


OpenTelemetry for Swarms Python FastAPI Server for AWS Integration

Feature Request: Add OpenTelemetry for Swarms Python FastAPI Server for AWS Integration
Task

Read the instuctions here :
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Application-Signals-Enable-EC2.html
follow the Ceviche AI protocol here https://github.com/meta-introspector/meta-meme/wiki/Ceviche-cevaidi-CEVADI-framework
look for existing github and python libraries and methods to implement open telemetry
deliver code changes to swarms, tested locally
deliver terraform code to generate any aws resources needed based off the latest branch (feature/call_swarms) you can find of  https://github.com/jmikedupont2/swarms-terraform/
deliver shell scripts to setup any environmental changes needed in the user data like in this patch here

Bounty
100 $MCS tokens from my wallet here https://solscan.io/account/HMEKzpgzJEfyYyqoob5uGHR9P3LF6248zbm8tWgaApim
Is your feature request related to a problem? Please describe.
Currently, our Swarm's Python FastAPI server lacks visibility into its performance and behavior in AWS environments. This makes it difficult for our development team to diagnose issues, optimize the application, and ensure seamless integration with AWS services. We are constantly struggling to:

Monitor and troubleshoot serverless functions, APIs, and distributed systems
Get insights into latency, throughput, and error rates
Identify bottlenecks and areas for optimization
Integrate with AWS services like AWS X-Ray, CloudWatch, and Lambda

Describe the solution you'd like
We would like to integrate OpenTelemetry, an open-source observability framework, into our Swarm's Python FastAPI server to enable seamless monitoring, tracing, and logging in AWS environments. This would allow us to:

Automatically instrument our code with OpenTelemetry's Python agent
Collect and export telemetry data to AWS services like X-Ray, CloudWatch, and Lambda
Visualize and analyze performance metrics, latency, and errors in a centralized dashboard
Leverage OpenTelemetry's extensibility to integrate with other monitoring tools and services

Describe alternatives you've considered
Before opting for OpenTelemetry, we considered the following alternatives:

AWS X-Ray SDK for Python: While this provides some basic tracing capabilities, it lacks the extensibility and customization offered by OpenTelemetry.
New Relic, Datadog, or other commercial monitoring tools: These solutions are expensive and may require significant instrumentation changes to our codebase.
Custom-built monitoring solutions: Developing an in-house monitoring system would require significant resources and expertise.

Additional context
Our Swarm's Python FastAPI server is a critical component of our AWS-based infrastructure, handling thousands of requests per minute. By integrating OpenTelemetry, we aim to improve the reliability, scalability, and performance of our application while reducing the mean time to detect (MTTD) and mean time to resolve (MTTR) issues.
We have attached a high-level architecture diagram of our proposed OpenTelemetry integration, which includes the following components:

OpenTelemetry Python agent
FastAPI instrumentation
AWS X-Ray, CloudWatch, and Lambda exporters
Centralized monitoring dashboard (e.g., Grafana, Prometheus)

We believe that adding OpenTelemetry to our Swarm's Python FastAPI server will significantly enhance our ability to monitor, troubleshoot, and optimize our application in AWS environments.
Task instructions
Review these untested ai instructions here.
Plan: Integrating OpenTelemetry into Swarm's Python FastAPI Server for AWS Integration
Objective
Integrate OpenTelemetry into the Swarm's Python FastAPI server to enable enhanced observability and seamless integration with AWS services, specifically AWS X-Ray, CloudWatch, and Lambda.

Steps to Implement

Project Setup and Preliminary Configuration

Objective: Prepare the development environment.
Tasks:

Ensure the FastAPI server is running and accessible.

Verify AWS account access and permissions for required services (X-Ray, CloudWatch, Lambda).

Install OpenTelemetry SDK for Python:

pip install opentelemetry-api opentelemetry-sdk opentelemetry-instrumentation-fastapi opentelemetry-exporter-aws

Verify compatibility of the current server and AWS services with OpenTelemetry.

Instrumentation of FastAPI with OpenTelemetry

Objective: Integrate OpenTelemetry with FastAPI for automatic instrumentation.
Tasks:

Enable OpenTelemetry for the application using FastAPI instrumentation:

from fastapi import FastAPI
from opentelemetry.instrumentation.fastapi import FastAPIInstrumentor
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.resources import Resource
from opentelemetry.exporter.aws.xray import AwsXRayIdGenerator
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry.exporter.aws.xray import AwsXRaySpanExporter
app = FastAPI()
Resource configuration
resource = Resource.create({"service.name": "swarm-fastapi"})
Tracer configuration
tracer_provider = TracerProvider(resource=resource, id_generator=AwsXRayIdGenerator())
trace_exporter = AwsXRaySpanExporter()
span_processor = BatchSpanProcessor(trace_exporter)
tracer_provider.add_span_processor(span_processor)
Instrument FastAPI
FastAPIInstrumentor.instrument_app(app, tracer_provider=tracer_provider)

Verify that spans are generated for incoming HTTP requests.

Exporting Telemetry Data to AWS Services

Objective: Route telemetry data to AWS X-Ray and CloudWatch for visualization and analysis.
Tasks:

Configure AWS X-Ray as the span exporter (as shown above).

Use the OpenTelemetry metrics API to capture metrics (e.g., latency, throughput):

from opentelemetry.sdk.metrics import MeterProvider
from opentelemetry.exporter.cloudwatch.metrics import CloudWatchMetricsExporter
meter_provider = MeterProvider(resource=resource)
metrics_exporter = CloudWatchMetricsExporter(namespace="SwarmFastAPI")
meter_provider.start_pipeline(meter_provider.get_meter("swarm-metrics"), metrics_exporter)

Configure log export using AWS Lambda or CloudWatch directly.

Centralized Monitoring Dashboard

Objective: Enable visualization and analysis of telemetry data.
Tasks:

Configure AWS CloudWatch for log and metrics visualization.

Optionally integrate with Grafana or Prometheus for advanced dashboards.

Verify dashboard configurations and test queries for latency and error rates.

Testing and Validation

Objective: Ensure the integration works as expected.
Tasks:

Simulate requests to the FastAPI server and verify traces, metrics, and logs appear in AWS services.

Test different scenarios, including errors, high traffic, and API latency.

Validate integration with AWS X-Ray for distributed tracing.

Documentation and Handover

Objective: Provide clear documentation for the implemented solution.
Tasks:

Create a README file detailing setup, configuration, and usage instructions.

Document common troubleshooting steps and FAQs.

Conduct a knowledge transfer session with the team.

Deliverables

Integrated OpenTelemetry in the Python FastAPI server with AWS X-Ray, CloudWatch, and Lambda.

Centralized monitoring dashboard (AWS CloudWatch or Grafana).

Documentation and testing reports.

Timeline

Budget and Bounty
Bounty: 100 $MCS tokens

an added bonus would be to add in telemetry for the openai api https://github.com/cartermp/opentelemetry-instrument-openai-py using a mock server like i have here https://github.com/meta-introspector/lollms/blob/faf308442626da16ec165d157aeb19e0340883e5/examples/chat_forever/openai.py


Small bug in Notebook

Found a small bug in '05a - Deep Neural Networks (TensorFlow)'.
First notebook cell:
# The dataset is too small to be useful for deep learning
# So we'll oversample it to triple its size
for i in range(1,3):
    penguins = penguins.append(penguins)

This is not correct, as this will not triple its size.
Possible Fix:
# The dataset is too small to be useful for deep learning
# So we'll oversample it to triple its size
penguins_3x = pd.DataFrame()
for i in range(3):
    penguins_3x = penguins_3x.append(penguins)
penguins = penguins_3x

Thanks - fixed!


NGINX Dynamic Module Support

With the release of NGINX 1.9.11, dynamic modules are now supported. Is this a planned improvement for ModSecurity in the near future?
For example:
load_module modules/modsecurity_module_x.so
I suggest this a merely an improvement request, as this would enable myself and others to maintain a singular build of NGINX for all systems, and only load ModSecurity on the NGINX systems that we desire them to be loaded on.

It looks like someone has already submitted a pull for modsecurity v3 :)
https://github.com/SpiderLabs/ModSecurity-nginx/pull/5

Gotcha, searched on the wrong repo! Thanks!
Closing.

we welcome a patch for the 2.x branch

Is there any backward compatibility planned for the 2.x branch as mentioned by @csanders-git ?

I just tried following up the same thing with nginx-plus package and everything gone perfectly however after enabling in server.conf file worker process is getting crashed consistently.
2017/08/10 22:52:40 [notice] 1980#1980: start worker process 2023
2017/08/10 22:52:40 [notice] 1980#1980: signal 29 (SIGIO) received
2017/08/10 22:52:40 [notice] 1980#1980: signal 17 (SIGCHLD) received
2017/08/10 22:52:40 [alert] 1980#1980: worker process 2012 exited on signal 11
2017/08/10 22:52:40 [notice] 1980#1980: start worker process 2024
2017/08/10 22:52:40 [notice] 1980#1980: signal 29 (SIGIO) received
2017/08/10 22:52:40 [notice] 1980#1980: signal 17 (SIGCHLD) received
2017/08/10 22:52:40 [alert] 1980#1980: worker process 2023 exited on signal 11
2017/08/10 22:52:40 [notice] 1980#1980: start worker process 2025
2017/08/10 22:52:40 [notice] 1980#1980: signal 29 (SIGIO) received


build(cypress): Use new pull_request_target event for cypress secret sharing

SUMMARY
Updates e2e test Github Actions workflow to use the pull_request_target event in order to work around the secrets sharing limitation for forked repos. Also adds concurrency via multiple containers.
Alternate approach to https://github.com/apache/incubator-superset/pull/11729
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TEST PLAN
e2e test workflow should run with a populated CYPRESS_RECORD_KEY value from the upstream repo's secrets.
ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

Codecov Report

Merging #11730 (da21df9) into master (b3ead23) will decrease coverage by 0.62%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #11730      +/-   ##
==========================================
- Coverage   63.06%   62.44%   -0.63%
==========================================
  Files         895      443     -452
  Lines       43340    27262   -16078
  Branches     4015        0    -4015
==========================================
- Hits        27334    17024   -10310
+ Misses      15828    10238    -5590
+ Partials      178        0     -178

Flag
Coverage Δ

javascript
?

python
62.44% <ø> (-0.77%)
:arrow_down:

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

Impacted Files
Coverage Δ

superset/db_engines/hive.py
0.00% <0.00%> (-85.72%)
:arrow_down:

superset/db_engine_specs/hive.py
54.08% <0.00%> (-29.97%)
:arrow_down:

superset/db_engine_specs/mysql.py
79.59% <0.00%> (-12.25%)
:arrow_down:

superset/db_engine_specs/sqlite.py
65.62% <0.00%> (-9.38%)
:arrow_down:

superset/databases/commands/create.py
83.67% <0.00%> (-8.17%)
:arrow_down:

superset/databases/commands/update.py
85.71% <0.00%> (-8.17%)
:arrow_down:

superset/connectors/sqla/models.py
84.66% <0.00%> (-6.52%)
:arrow_down:

superset/datasets/api.py
88.72% <0.00%> (-4.14%)
:arrow_down:

superset/utils/celery.py
82.14% <0.00%> (-3.58%)
:arrow_down:

superset/models/core.py
85.59% <0.00%> (-3.27%)
:arrow_down:

... and 468 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 b3ead23...da21df9. Read the comment docs.

My suspicion as to why Cypress is not running on this build is that the the new pull_request_target event "runs in the context of the base repository of the pull request, rather than in the merge commit" and "only workflows defined in the commit on the base repository are run."
So, theoretically, the updated workflow will run once merged to master. If it doesn't behave as expected, we can revert and try something else. This also makes it more difficult to Cypress workflow changes in PRs, but it seems to be the only workaround for the secrets sharing limitation.

We can't merge if it's beige though :(

Ok, unclear how to get rid of that "expected" cypress test at this point. I'll try closing the PR and reopening.

Note that Cypress did run on the last commit, but it not reflected in the CI status.


fix: duplicate classes / issue #39

Description
fix the issue https://github.com/tiny-nestjs/auto-injectable/issues/39 using Set

use Set to prevent load duplicate classes.
optimize load().

Checklist

[x] Add labels and reviewers ?
[x] Are you fully explaining what you changed ?
[x] Did you check that there is no conflict with the base branch ?

LGTM 😀


Redid Array

I changed loads of stuff including the method names (srry!). I included details in the comments in the source.

Explain the design intention behind to_hash_as_values vs to_indexed_hash. Is it simply to enforce an Integer key value in one and not the other?

It is intended to have the same functionality as #fill_hash. A shorthand, I might add. Yes, #to_indexed_hash uses Integer keys whereas #to_hash_as_values is more flexible to allow different kinds of keys like
arr = %w[a b c]
arr.to_hash_as_values("ab") { |str| str.succ }
#=> { "ab" => "a", "ac" => "b", "ad" => "c" }

FYI we'll be making some slight tweaks, but they won't show up until we publish a new release.
Overall this great stuff, thanks for picking up and running with our initial ideas. :+1:


signup metrics

have a table tracking user signups and activity per bot

@itdaniher PII is covered under privacy policy, main consideration is whether there's enough in the db that we'd need to notify users in case of a breach


kp_distancemonitor

Hello again
I originally requested you create this script and am very happy that was fuilfilled. However I neglected to properly check if it worked for its intended role correctly. Since the script was originally intended to work for a soldier walking (or running) in a straight line and measure that distance, the player walking backwards or sideways should not be included in the measurement.
May I request the script only measures forward movement please?

Not without massively extending the code, sorry.


Dropped posix:Directory and posix:File in favor of ldp types

Both files and dirs should be resources


Reuse_addr / Clean shutdown

Hi,
I'm building a server which auto updates, but when it restarts I get "address in use" exceptions. As far as I can tell from https://github.com/hyperium/hyper/issues/1575 I need to set reuse_addr, but I can't seem to find a way to do it through axum_server. Any chance it could be added? (I'm also using rustls).

For anyone else running into this; here's how it can be done in 0.4.2 (using socket2):
let addr = SocketAddr::from(([127, 0, 0, 1], 8080));
let socket = Socket::new(Domain::IPV4, Type::STREAM, None)?;
socket.set_reuse_address(true)?;
socket.bind(&addr.into())?;
socket.listen(128)?;
let listener: TcpListener = socket.into();


Blank canvas when creating a new map

Describe the Bug with repro steps
Creating a new map results in a new window with a blank canvas, no option to add source/target schema.  Attempting to save the new, blank map has no effect, no new file is created.
Repro steps:

Open VS Code
Open a Logic App (Standard) project with a source and a target schema in the Artifacts\Schemas directory
Go to the Azure tab in VS Code and click the "Create new data map" button
3a. alternatively, press F1 and choose Data Mapper: Create new data map
Enter a name for the new map

A new window is opened with the map name entered in #4 above visible in the file tab but no content displayed on the canvas, no option to add source/target schemas.
Things I've tried with no success:

Close/reopen VS Code
Close/reopen Logic App project folder
Uninstall/reinstall Data Mapper extension
Setup a new VM in Azure, installed VS Code, Data Mapper extension and other dependencies.  Same result, blank canvas

Also worth noting that the first time I created a map, the canvas did render, I was able to choose source/target schemas.  At the time, I hadn't moved my schemas into the Artifacts\Schemas folder.  I added them but the extension didn't seem to pick them up, so I restarted VS Code.  Once I restarted VS Code, I started experiencing the issue described above.
Screenshots or Videos

Version

Extension version v2.37.0
VS Code version 1.79.2

Additional context
No response
AB#24405052

I just rolled back to v2.15.15 of the mapper extension and that seems to behave correctly.


Question concerning pytorch versions and sagemaker's Estimator-abstraction

Hi Luca! supercool example-project you made here!
aktually I just wanted to use the latest version of pytorch and now ended up questioning the idea behind sagemaker's PyTorch-Estimator abstraction. This estimator-class wants a framework-version as argument, which is determining the docker-image that sagemaker uses? But in your requirements.txt you install another pytorch version. Sagemaker's PyTorch abstraction takes a docker-image-uri as an argument. Now I'm really confused what this PyTorch-Estimator-class is actually good for? Why not "simply" using the generic Estimator-Class and providing it with the docker-image of choice?

That could be a solution, but I prefer a more specific PyTorch Estimator, since it has direct support for Pytorch intrinsics.


pool InVMConnection.write buffers, clone to Unpooled for retention

clone for MessageImpl.decodeFromBuffer and ChannelBufferWrapper.readSlice

Could you provide a bit of context for this PR?  Also, please follow the 50/72 commit message format as discussed in the Artemis Hacking Guide.

Also, it's best for commits to go to the master branch first and then get cherry-picked onto any other necessary branches unless there's a specific reason not to.

@willr3 we have to do it on master first, then to cherry-pick on 1.x

I'll rebase a branch onto master, fingers crossed

@willr3 probably best it to cherry-pick on master. and send it in.

@willr3  I manually placed this into 1.x.. please close this PR? since only you or apache infra can do it.


the name of the AD computer account is AZUREADSSOACC, not AZUREADSSO

In my AD forest the name of the AD computer account is AZUREADSSOACC, not AZUREADSSO.
The same info is contained in this tweet https://twitter.com/ajf8729/status/1507861670391078914

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

ID: 9eb97eff-d72e-ffa6-1365-5419e93ed82a
Version Independent ID: 5c8b677b-f4cd-0bb5-c7d6-9b1ef903dad4
Content: Azure AD Connect
Content Source: articles/active-directory/hybrid/how-to-connect-sso-faq.yml
Service: active-directory
Sub-service: hybrid
GitHub Login: @billmath
Microsoft Alias: billmath

@rafalfitt-mptv, Thanks for opening an issue in the Azure technical documentation repository. We use GitHub issues as the primary channel for customer and community feedback about the Azure documentation. For product questions, you may post it in  Microsoft Q&A.
However, I have assigned this issue to investigate, and we will get back to you. Thank you.

@rafalfitt-mptv Thank you for reporting this. We have initiated a change request on this one and the document will be updated once the content team approves the same.
Thank you.


Navbar links not working on mobile

Firstly - thank you for developing this great library!  Really love the styling.
I have a question about the navbar links - all works perfectly on desktop, and even when testing with developer tools to see the responsive layout.
However, when I test the live site from my phone, the nav links do not work when clicked?
If you want to test - you may log in to: https://www.retro-apps.online/
Username<EMAIL_ADDRESS>Password: test12345
Thank you.

I've to thank you for using my lib! I entered your application and like too much. I will register myself there to check the situation, and evaluate this to fix in the next feature of the lib. Count on me.

Hi @otrsw, I updated the lib with some fixes. I discovered that the media queries were not being imported in the build process. I fixed this and now, you can control when the elements will appear depending the device screen size. Please, update the dependency of tuicss to v2.1.1 and test again. If the problem still continues, please, commet here ;)
Note: I created an account in your application. Sorry! I saw just now you shared a test acount. But anyway, congratulations for the development of the application. I'm so glad!


The deactivate() in the extension is never executed.

Every time I open the code-server or reload it from the browser, the activate() function in the extension is always executed. But no matter what I do, the deactivate() function will not be executed.
I need to do some clean-up work through deactivate(), how to implement it in my extension?
In my opinion, if the code-server keeps running in the background (extension host also keeps running in the background), should activate() be executed only once when the page is opened for the first time instead of every time the page is opened?

I think the reason for this is that VS Code kills the entire extension host when the browser disconnects and spawns a new one every time the browser connects.

You are right, extension host was killed without call the deactivate().

I'll go ahead and close this since it's working as intended. I would prefer if the extension host wasn't killed and restarted like this but that's something we'd need to raise upstream.

A similar case.
https://github.com/microsoft/vscode/issues/70665

My problem was solved by handling the signal manually...
process.on('SIGINT', () => {
    deactivate();
    ...
});


Renaming 'Hourly Rain' to 'Hourly Rain Rate'

While looking at the data today compared with Ambient Weather's own dashboards, it appears the hourlyrainin metric is a rate (in/h). Other metrics like dailyrainin and weeklyrainin are just a straight total

Sensors show as expected:


Convert Self Dataset To Waymo Format

If we follow Waymo's sensors installation plan to obtain our own perception data. How to save the data to waymo tf_record format? Is there any guidance to do this work?

I'm not sure I fully understand the question, but I think the general process would be to use a tf.io.TFRecordWriter object.  You can open a file for writing with this object and then create your Frame protocol buffer objects for each frame in the sequence.  For each frame you can use the SerializeToString() method of the Frame object to convert it to a binary string and then write that to the file using the tf.ioTFRecordWriter.write() method.


Local/refactor

Summary
Updates Block API providers under block/api.
Though we now have separate Providers, the story data is being pulled by using the existing storyReducer from the dashboard, as many components, we are using for the story picker modal rely on it and we don't want to create redundant copies.

Uses npm package for the 'glider-js', and removed the added scripts from the repo.
Updated Story Picker modal to use Author Search similar to that of the story search. Also removed inefficient queries used for the authors.

NOTE: This PRs is for the ideation and if the API provider changes looks good, will incorporate the same in main PRs.

Merging this to the base gutenberg blocks branch for inclusive review.


fix(tests): remove empty integ-telemetry-local-presubmit test

Removes empty integration test. All telemetry integration tests require k8s at the moment.
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ X ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: douglas-reid
To complete the pull request process, please assign utka
You can assign the PR to them by writing /assign @utka in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

prow/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: douglas-reid, howardjohn
To complete the pull request process, please assign utka
You can assign the PR to them by writing /assign @utka in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

prow/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

this is one of the reasons we made the change to rename the tests, they usually don't even correspond to the test being run

@douglas-reid: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-presubmit-tests-master
218819e8bcb25cb4062a33441031e378e2bbb436
link
/test integ-mixer-k8s-presubmit-tests-master

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

@howardjohn yeah, i was just cleaning out everything I could find.

/assign @utka
Sorry I assign everything to you but you are the only prow owner

/lgtm
/approve

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: douglas-reid, howardjohn, utka
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

prow/OWNERS [utka]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@douglas-reid: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-presubmit-tests-master
218819e8bcb25cb4062a33441031e378e2bbb436
link
/test integ-mixer-k8s-presubmit-tests-master

e2e-dashboard-master
218819e8bcb25cb4062a33441031e378e2bbb436
link
/test e2e-dashboard-master

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

@douglas-reid: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-presubmit-tests-master
218819e8bcb25cb4062a33441031e378e2bbb436
link
/test integ-mixer-k8s-presubmit-tests-master

e2e-dashboard-master
218819e8bcb25cb4062a33441031e378e2bbb436
link
/test e2e-dashboard-master

istio-racetest-master
218819e8bcb25cb4062a33441031e378e2bbb436
link
/test istio-racetest-master

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

/retest


Remove double login

It should be possible to remove the double-authentication which was required up until now.

hey @akoserwal do you know how this will work? Should I just need to authenticate to MAS-SSO, and the single token would work for both servers, or is it more complex than this?

Double-auth will be required. For api token from sso & mas-sso for the dataplane

Thanks. Do you know why there were some discussions around double-login being "dead" now?

The most impactful change is that
identity brokering is now enabled with Red Hat SSO, which means the
dreaded double login is now DEAD.

This is a quote from an email. Does this only apply to the UI?

it is only for UI, where users don't see a double login screen. But behind the scene UI/Cli will need 2 tokens

https://github.com/redhat-developer/app-services-cli/pull/561
@wtrocki we won;t be able to handle this for the token login flow sadly.


Please add rewind() method.

It would be useful when it is necessary to read same file few times.)

Json Machine is not made with rewinding in mind. It is based on generators which themselves are unrewindable by design. You MIGHT succeed if you use JsonMachine::fromStream($yourStreamResource) and after iteration call rewind($yourStreamResource) (file streams are rewindable). But this is not tested and not meant to be used.
If you read files, I'd suggest to simply open the file again using JsonMachine::fromFile(). There's almost no overhead involved and it will work.


DFBUGS-901: ci: fix ci issue downstream

the unit test ws failing, as in 4.16
we were setting the osd resize manually true,
So the re-weight was called twice once from the
device class update and another from osd reweight

Checklist:

[ ] Commit Message Formatting: Commit titles and messages follow guidelines in the developer guide.
[ ] Reviewed the developer guide on Submitting a Pull Request
[ ] Pending release notes updated with breaking and/or notable changes for the next minor release.
[ ] Documentation has been updated, if necessary.
[ ] Unit tests have been added, if necessary.
[ ] Integration tests have been added, if necessary.

/assign @travisn @BlaineEXE

/jira refresh

/approve
/lgtm

/hold

@BlaineEXE removed the python script changes

/lgtm
/approve
It looks like the jira bot thinks there is still an error with the bug (jira/invalid-bug label). Not sure why exactly
/jira refresh

/jira refresh

@Nikhil-Ladha can you take a look

We don't have the necessary approvals in the linked jira issue i.e, Target Version field is not updated with the correct value because Dev Approval and QE Approval is not set.
Please provide/get the acks and then do a /jira refresh. It will work.

/jira refresh

/jira refresh

/jira refresh

/jira refresh


feat: github webhooks

Currently, our Discord server has a channel where freeCodeCamp GitHub events are posted via webhook. Rocket.Chat offers a similar functionality, but requires the use of a script. The channel is currently only visible to moderators (I don't believe it ever left the testing stage) but is something that I, personally, rely on quite heavily.
This PR loads the example script that Rocket.Chat provides into our config (for version control). The script would post messages to a specific channel when it receives a payload from GitHub.
If we would like to implement this feature, we will need to:

Merge this (for version control).
Create an Incoming Webhook in our chat settings.
Link that webhook to a channel (github-activity maybe?) and a chat account (camperbot?)
Select the Enable Scripts option, then paste this file in.
Save the settings, then take the URL and add it to our GitHub Org's webhooks. It will need the following events:

Issues
Issue Comments
Commit Comments
Pull Request
Push

Link to the docs for reference: https://docs.rocket.chat/guides/administrator-guides/integrations/github

Yup, we should have the dedicated channel and the user account can be either camperbot or freeCodeCamp, no preference.
Thanks for working on this.


docs: adds details to test results processor config option

Summary
Based on the documentation (https://jestjs.io/docs/configuration) it was unclear to me what a test result processor (config option: testResultsProcessor), respectively a reporter (config option: reporters) does. Documentation makes the impression that they have the same purpose.
After searching on the internet I found some clue: https://github.com/jest-community/jest-junit/discussions/158
I would like to add this little piece of information to Jest docs.
Test plan
None. Only documentatin changed.

Codecov Report

Merging #12206 (7a43e63) into main (12a983b) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main   #12206   +/-   ##
=======================================
  Coverage   67.53%   67.53%
=======================================
  Files         328      328
  Lines       17244    17244
  Branches     5069     5069
=======================================
  Hits        11645    11645
  Misses       5566     5566
  Partials       33       33

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 12a983b...7a43e63. Read the comment docs.

Codecov Report

Merging #12206 (7a43e63) into main (12a983b) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main   #12206   +/-   ##
=======================================
  Coverage   67.53%   67.53%
=======================================
  Files         328      328
  Lines       17244    17244
  Branches     5069     5069
=======================================
  Hits        11645    11645
  Misses       5566     5566
  Partials       33       33

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 12a983b...7a43e63. Read the comment docs.

looks good , could you make the changes in the other versions of doc too, and add it to the main doc folder too

Sorry for the delayed reply.
I added the change to /docs too.
Regarding older versions: I would prefer not to alter the past.
Would you mind if I keep older versions as they are?

Please update all versions of the docs, people still use older versions, so the docs should reflect the latest information relevant for that version of Jest 🙂

@SimenB, Thank you for taking care of this PR.
I added the doc change to every version of the docs.


HIDE_ATTRIBUTES itemflag not working with power attributemodifier

When I add the power attributemodifier to my item, which has the item flag HIDE_ATTRIBUTES on it, it comes out that I can still see the attributes on the item. This item flag works fine without attributemodifier power.
I tried other item flags like HIDE_ENCHANTS and HIDE_UNBREAKABLE, and they are alright.
Here's a screenshot of the item.

I'm using peper spigot version 551 and the latest version of RPGItem and NyaaCore.

It is a feature (


[Feature]: Showcase component usage in complex UI examples

Feature request type
Other
Component name
No response
What should be done?
Provide examples demonstrating how to use components in a complex UI scenario. These examples should highlight real-world use cases, component interactions, and advanced configurations to help developers better understand their potential and implementation.
Pull Request

[ ] I would like to do a Pull Request

Using the examples in https://ui.shadcn.com/ as a basis, a good start would be to have sample apps showing:

Dashboard
Mail
Forms

And these examples easily found from the landing page and/or repo readme.


Latest release causes: TypeError: Cannot read property 'group' of undefined

Trying to set a scene causes:
TypeError: Cannot read property 'group' of undefined
    at HueScene._inputCallback (/config/node-red/node_modules/node-red-contrib-huemagic/huemagic/hue-scene.js:28:38)
    at HueScene.Node._emitInput (/opt/node_modules/@node-red/runtime/lib/nodes/Node.js:199:18)
    at Immediate._onImmediate (/opt/node_modules/@node-red/runtime/lib/nodes/Node.js:179:33)
    at processImmediate (internal/timers.js:439:21)

This worked perfectly until the last release.

Fixed with 2.6.1+

Thank you @Foddy :-)


Enhancement: Search for net_done.tar.bz2 in the last 100 S3 uploads instead of the last 10

Plus some other improvements
The nightly build is failing periodically because misc/e2elive.py is only looking through the most recent 10 S3 uploads for the key net_done.tar.bz2. This PR addresses that problem with the hack of searching through 100 keys instead of the previous 10.
Summary of changes

Searching through 100 instead of 10 most recent uploads
Improved message at the end of make e2e
Applied black formatter to misc/e2elive.py and misc/util.py

Test Plan
CI as this is aiming to fix CI. Here's how it looks like when it works.

It's hard to read for the actual change with the formatter applied. Could we split this into a format-PR and a fix-PR?

It's hard to read for the actual change with the formatter applied. Could we split this into a format-PR and a fix-PR?

Sure thing. So look out for a pure formatting PR coming soon.