Speculative visit directory service

PLEASE DO NOT MERGE!
This PR is intended as a speculative prototyping exercise only.
Design
In order to comply with the DLS visit directory structure, we need to group acquisitions into files. There are many solutions to this, the basics of this one:

A new service is responsible for determining where data will go for a particular acquisition. This functionality is separated from all other applications for two reasons:

So that other data collection applications can also use it each one is guaranteed unique data locations.
This involves making directories and therefore requires write access to places where data goes. For security reasons, only trusted code should have that level of privilege, and it should be kept small and isolated.

Every time a group of devices is staged, blueapi will call out to this service (or use a dummy version for offline development) and get a unique data directory for this stage. This is achieved via a plan preprocessor that detects groups of stages and makes the call.
Compatible Ophyd detectors will be aware of a mutable state which is updated when this call occurs, so they can write to the "current" visit.
The current group is bundled into the run start metadata. Allowing for a group:run mapping of 1:1 or 1:many. The use case for the latter is writing many runs to a single file for performance reasons.
Any aggregating service, such as a nexus file writer, can take the group information from the run starts and use it how it likes. Our initial thinking was to map each group to a nexus file and reach run to an entry, but that is TBD.

Design Issues
I remain very sceptical about point 2! It introduces a shared mutable state between all detectors just to get around the fact that there is no direct, universal way to pass the current visit down to them, by design! The other alternative I explored is to put all support for configuring individual detectors in one place, in blueapi, and if your detector isn't supported it will just write as it normally does. Simple example
def configure_data_writing(
    devices: Iterable[Device],
    collection: DataCollection,
) -> None:
    for device in devices:
        if isinstance(device, FileStoreBase):
            path_template = str(collection.raw_data_files_root)

            # Configure Ophyd Device to setup HDF5 writer
            device.reg_root = "/"
            device.read_path_template = path_template
            device.write_path_template = path_template

What's Prototyped Here?
The actual contents of this PR:

A very simple visit service that can create and inform clients about unique directories for "acquisition groups".
A plan preprocessor that calls out to that service (or use an internal dummy version) to create a new group when a set of devices is staged. It also puts metadata into the run start document to show which group it is a part of. Each start document now contains a key called data_collection_number, which can be passed back to the visit service for more information.
A dummy device that has access to the cached result of the service call.
A series of tests ensuring that the correct mapping of run -> file is achieved for various use cases, such as multi-run plans.
A small amendment to the bluesky context that makes blueapi use this preprocessor on every plan it runs (if the plan does not contain any stages, it will be unaffected)

How to test
Checkout this branch. To test with the dummy detector, run
tox -e pytest -- tests/plugins/test_data_writing.py

To start the visit service:
python -m blueapi.plugins.data_writing_server

It should run on port 8089, you can test it with
curl -X POST "http://localhost:8089/collection/mybeamline"

Which should create a new group and return a blob of JSON about it.
Running a scan with blueapi should now produce a start document that contains an attribute called data_collection_number which we can use to aggregate runs.
Still to do
This PR contains a dummy detector with the correct hooks. It would be good to get this working with an actual Ophyd v2 detector, and ideally a v1 one too. We could then run a full collection via blueapi that uses this functionality @coretl @callumforrester
More discussion on point 2. of the design would be helpful, I think. @coretl @DiamondJoseph @keithralphs @callumforrester
We should try to get the nexus writer to interpret the group number in the run start document and ensure there are no problems there @DiamondJoseph
Possibly leverage the data_session metadata in the run start schema. @callumforrester  @DiamondJoseph

willing to test with with the webcam at visr https://github.com/DiamondLightSource/ViSR
@coretl  and @callumforrester  is this a good idea?

This is very old and out-of-date, everything in it now exists in blueapi in some form.


Add association_proxy to sqlalchemy_wrapper.SQLAlchemy

When trying to migrate my project to sqlalchemy-wrapper, I have spotted incomplete imports of useful functions for declarative model:
from sqlalchemy_wrapper import SQLAlchemy
db = SQLAlchemy(...)
db.relationship  # works
db.association_proxy  # not found
from sqlalchemy.ext.associationproxy import association_proxy  # works - provided by vanilla SQLAlchemy
Could you please add the association_proxy to sqlalchemy_wrapper.SQLAlchemy?

Thank you for the report.
Altough SQLAlchemy Wrapper does import all of sqlalchemy.orm for easy access of the most common  uses, does not want to hide the whole SQLAlchemy library.
For instance the dialects like sqlalchemy.postgres or the extensions.  You must import them from SQLAlchemy by yourself, like in your example.


SASS-3159 Implemented GET/PUT/DELETE for pension Income

Description
Added PUT/DELETE/GET for pension income
Add a link to the relevant story in Jira
SASS-3159
Checklist PR Reviewer
Before Reviewing

[x]  Have you pulled the branch down?
[x]  Have you assigned yourself to the PR?
[x]  Have you moved the task to “in review” on JIRA?
[x]  Have you checked to ensure all dependencies are up to date?
[x]  Have you checked to ensure its been rebased against the current version of main?

Whilst Reviewing

[x]  Have you run the tests?
[ ]  Have you run the journey tests?
[ ]  Have you looked at the JIRA story to make sure all Acceptance Criteria has been met?

After Reviewing

[ ]  Have you checked for merge conflicts or any changes in the current main that may affect the current pull request? i.e. does it need another rebase?
[ ]  Have you checked to make sure there are no builds in the pipeline before you merge?
[ ]  Have you moved the task to “in pipeline” on Jira?

Checklist PR Raiser
Before creating PR

[ ]  Have you run the tests?
[ ]  Have you run the journey tests? (where applicable)
[ ]  Have you addressed warnings where appropriate?
[ ]  Have you rebased against the current version of main?
[ ]  Have you checked code coverage isn’t lower than previously?

After PRs been raised

[ ]  Have you checked the PR Builder passes?

I've confirmed that the dependencies are up to date.

Given that this is the backend, the journey tests are irrelevant so I didn't run them.

Note that I haven't run the journey tests yet.

I'd suggest that you mention the three new endpoints in the README.
It would also be good to give an example of the tax year format.

I had a chat with @abiodxn and we both wondered as to the purpose of our API (income-tax-pensions).
If it's meant to be a straight pass-through to the downstream service (like DES), then why do we sometimes have our own validation, for example: the schema validation for the PUT, but don't bother validating things like the tax year or the NINO.
And apparently we do have such validation in the frontend.
And If it's meant to be a straight pass-through, what value does it have? Why not just have income-tax-pensions-frontend call DES directly? It would save a network hop, not to mention the overhead of maintaining the service.
I'll seek some answers around this, including chatting with @GavinPetersonGit .

Have you looked at the JIRA story to make sure all Acceptance Criteria has been met?

Yes - however, I consider the ACs to be incomplete; for instance: there is no mention of the PUT and DELETE endpoints nor that fact that these are pass throughs - with the exception of the validation on the request body for the PUT.
As it stands, I don't believe that this story should have been started.

Sorry, @abiodxn  - I haven't run the journey tests, yet.
Will do so now.

Journey tests successfully run:
[info] ScalaTest
[info] Run completed in 32 minutes, 36 seconds.
[info] Total number of tests run: 0
[info] Suites: completed 0, aborted 0
[info] Tests: succeeded 0, failed 0, canceled 0, ignored 0, pending 0
[info] No tests were executed.
[info] Passed: Total 82, Failed 0, Errors 0, Passed 82
[success] Total time: 1961 s (32:41), completed 5 Aug 2022, 17:32:24

Note that I started this service with:
sbt -Dplay.akka.http.server.request-timeout=90s run

Which may not have been necessary, but just in case.


Forget and prune but same number of snapshots

Hi,
I try to make some clean on a repo with those commands :
restic forget --keep-monthly 3 -r /media/backup_storage/restic/target
restic prune -r /media/backup_storage/restic/target
But i have the same number of snapshots.
When i run the forget command, a list of snapshots but nothing else (no error).
I have one snapshot per day.
It's an Ubuntu 18.04 with restic 0.8.3.
I miss something but i don't what.
Thanks for your help.

@gizmo15 If you still have that problem, we'd need the output of the forget and prune command to help. My guess would be that you don't have three monthly snapshots for each host+backup paths pair. By the way, this issue looks like a usage question, which should in general be asked on the forum. Please close this issue if it's no longer needed.


[BUG] Continuous Redis Connection Error After Reconfiguring Credentials

Describe the bug
After reconfiguring Redis (deleting old credentials and creating new ones with the same settings), an error is continuously logged:

[ioredis] Unhandled error event: Error: connect ECONNREFUSED <IP_ADDRESS>:6379
   at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1607:16)

[ioredis] Unhandled error event: Error: connect ECONNREFUSED <IP_ADDRESS>:6379
   at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1607:16)

[ioredis] Unhandled error event: Error: connect ECONNREFUSED <IP_ADDRESS>:6379
   at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1607:16)
...

To Reproduce
Steps to reproduce the behavior:

Create a working chatflow that uses Redis as Memory, similar to the screenshot below. Ensure that the Redis instance is "external" (e.g., in a neighboring container), and not local (<IP_ADDRESS>:6379).
Go to the Credentials section, delete the existing Redis URL.
Go back to your chatflow, save it, and send a message in the chat.
Then, in the Credentials section, create a new Redis URL with the same settings as before.
Navigate back to your chatflow, reconfigure the Redis node with the new credentials created in the Credentials section.
Save the chatflow and send another message in the chat. Then open the flowise log, and you will see continuous errors like:

[ioredis] Unhandled error event: Error: connect ECONNREFUSED `<IP_ADDRESS>:6379
`
   at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1607:16)

Problem behavior
Despite not using <IP_ADDRESS>:6379 anywhere (we are using an "external" Redis instance), the connection attempts still target <IP_ADDRESS>:6379. Moreover, the error continues to be logged infinitely, even after reconfiguring the Redis node. This issue persists until flowise is restarted.
Screenshots

Setup

Installation [docker]
Flowise Version [2.0.7]
OS: [Linux]

Additional context
The issue might be related to the ioredis library's auto-reconnect logic, which by default, does not stop trying to reconnect. Here is an example from the ioredis documentation on how to control reconnection behavior with the retryStrategy option:
const redis = new Redis({
  // This is the default value of `retryStrategy`
  retryStrategy(times) {
    const delay = Math.min(times * 50, 2000);
    return delay;
  },
});

Please investigate why the connection still attempts to reach <IP_ADDRESS>:6379 and why the error is persistently logged, even after reconfiguration.

I have the same issue =(

Yep, happening to us too


--print-to-pdf not working in Chromium

The script works fine except the pdf are not being generated while using Chromium browser instead of Chrome. I have not tried it for Chrome yet. The --print-to-pdf is not working in the script though no exception is being generated.

So as a quick fix, I used wkhtmltopdf but the pdf output rendered by it is not up to the mark. Am I wrong or the code needs a bit tweaking?

Looks like like chromium-browser is pinned at v58 on ubuntu 16.04, I recommend installing it from dpkg instead to get the most recent version with PDF support:
https://www.chromium.org/getting-involved/download-chromium


avatar urls

It would be helpful if the utility could download avatar urls as well, since users can disappear and their avatars will go with them.

Fixed!


add cashlalala as developer

Description

https://github.com/jenkinsci/parameterized-remote-trigger-plugin
Submitter checklist for changing permissions

Always

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

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

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

Just FYI, it seems I'm the only active maintainer now which was assigned on 5/10, so I didn't @ anybody else.

Please provide a public reference, e.g. a mailing list thread or GitHub PR discussion, for you taking over maintainership of the plugin.

@daniel-beck ,
https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/jenkinsci-dev/y1Sv9MQhyaY/PHL751RDBwAJ

FYI @kutzi @morficus
Seems only the former was pinged about this? CC @oleg-nenashev

Seems only the former was pinged about this? CC @oleg-nenashev

There were multiple public pings to maintainers in GitHub repos with no response. Cristoph was the last person to release the plugin, so it seemed enough to me.

@oleg-nenashev OK, thanks. Wasn't aware of all that happened, so IMO we can proceed here.

@daniel-beck  Is there anything I need provide to proceed?
Thanks


Purpose of function "get_adjacent_keypoints"

what is the purpose of the function get_adjacent_keypoints?
Isn't this kind of redundant / unnecessary?
For my understanding inside draw_sel_and_kp it would be the same to just do the minimum score checking on the instance_scores followed by checking the keypoint_scores and then just draw each remaining keypoint and the lines defined in CONNECTED_PART_INDICES?

It's building the list line segments for polylines to draw which are defined by connected part indices. The original algo specified that a skeleton segment is valid if both ends are above the min confidence.
I'm not sure how you'd get rid of it? You could try combining in it in the same loop as the keypoint scan but you'd need the connected parts in some sort of dict form and a bunch of dict lookups in the loop. Doubt it would be any faster. The connected parts data structure does not include all of the keypoints and some more than once, basically defines the skeleton segments with none of the face keypoints.

I will write in in pseudo code because I implemented it in java and mapping it to your python implementation is too much work for now.
I have a pose class, containing an array of keypoints with x and y coordinates. Each pose has a score aswell as each keypoint, similar to the original implementation:
for pose in poses:
  if pose.score > MIN_POSE_SCORE
    continue
  for id in FACE_IDS
    if pose.keypoint[id].score < MIN_PART_SCORE
      continue
    drawPoint(pose.keypoint[id].x, pose.keypoint[id].y)
  for parent,child in CONNECTED_PART_IDS
    if pose.keypoint[parent].score < MIN_PART_SCORE or pose.keypoint[child].score < MIN_PART_SCORE
      continue
    drawLine(pose.keypoint[parent].x, pose.keypoint[parent].y,pose.keypoint[child].x, pose.keypoint[child].y)

For my understanding this should work, without creating adjacent keypoint lists or anything, just reading out what's already in the detections.
This is of course not much faster but I always try to minimize code and functions overhead for readability.


Feature Request - respond to commands posted by discord webhooks

I have a discord webhook i want to send commands to ukulele to control it. However, it doesn't respond. I'm guessing because it shows up as a bot and I assume it's programmed to only respond to normal users.

 It's generally bad practice to respond to messages from bots or webhooks. A configuration option could be made to bypass that.

  Message ID<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>"EmailMessage","potentialAction"<EMAIL_ADDRESS>"ViewAction","target": "https://github.com/freyacodes/ukulele/issues/72","url": "https://github.com/freyacodes/ukulele/issues/72","name": "View Issue"},"description": "View this Issue on GitHub","publisher"<EMAIL_ADDRESS>"Organization","name": "GitHub","url": "https://github.com"}}]


Notify the frontend when a new user connects

The connected user's list only updates when opening the panel. If another user connects once the panel is opened, we don't know about him.
Add notifications from backend to frontend to know when a new user connects.

How do you think we should implement these notifications, using server-sent events, or websockets, or have the front-end poll regularly?

I was thinking of using server-sent events. But I'm not sure what's best...

Just for reference (I'm not sure we need to depend on a library for server-sent events): https://github.com/dunglas/mercure


Convert Modals to tag-less / outerHTML component

If I got it right, it's safe cause a) it's an internal component and not part of our public API and b) the default values were always overruled by arguments passed in.

Exactly

The documentation seems to be out of sync with that change. Especially the documented default values. In some cases the used types have also changed, haven't they?

Which documentation exactly are you referring to? We are talking only about private props, aren't we?

I haven't expected that the migration to tagless components will cause that much code duplication for us.

I agree. I was kind of in a "tunnel mode" when doing the migration, and happy I was able to finish und make all tests pass again. 😅 But I agree, in hindsight this causes a lot of duplication. I love the approach you suggested. Also would probably allow us to have an easier migration to a native embroider addon some time in the (distant) future, instead of having our broccoli tricks. I'll open up another issue for further discussions!

Which documentation exactly are you referring to? We are talking only about private props, aren't we?

I meant the API docs of fade, showModal, inDom, paddingLeft, paddingRight, keyboard, size and backdropClose properties of <BsModal::Dialog>. The properties are marked as public even so the full component is private. But for me it's more about avoiding wrong API docs as this could be very confusing later. E.g. fade is still documented as having a default value of true. Deleting the API docs for the internal component would be fine for me.

But I agree, in hindsight this causes a lot of duplication. I love the approach you suggested. [...] I'll open up another issue for further discussions!

I'm wondering if we should wait with the transformations until we have a long term strategy for this question or accept the code duplication for now and remove it in a later refactoring? I'm tending towards the second option to not block a v4 release.

Deleting the API docs for the internal component would be fine for me.

Will do.

I'm tending towards the second option to not block a v4 release.

Yeah, me too. I think we can do it even within the beta/RC period. I think/hope it shouldn't be that difficult. But also I would like to not slow down the current tag-less migration process.

Beside the code duplication issue we agreed to tackle elsewhere/later, I think your concerns have been addressed now. Thanks again!


CasinoLaCrosse (SIN)

In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:

[x] Filename in the lowercase format
[x] Image format: png
[x] Image size: 256 by 256 px

Image already added


Error sugestions are too expensive

Opening any file from Logic folder in this repository takes long time to syntax highlighting and structure to appear. Profiling pointed at the type suggestion algorithm:

(it was Rider, but it does not matter)

It seem that replacing Set with HashSet would make it a lot faster.

Even better, it would be great if suggestions were opt-out by a compiler command line argument (and would be off by default). Frankly, I haven't found them useful at all and I never look at them.

@vasily-kirichenko Is this opening the file without a solution?  i.e. so there are lots and lots of errors?

It's opening files in VisualFSharp solution. I don't know why there are a lot of errors in Rider, I think it does not matter. The suggestion algorithm should not slow down compilation and tooling.

I mean it's a nice feature, at least for some users, but it should be optional, like analyzers.

I think they should be automatically disabled if we have more than let's say 5 errors. Because then they become slow and definitely the issue is somewhere else.
Using a hash set is a good idea as well.

@forki Done https://github.com/Microsoft/visualfsharp/pull/3883

Very good. For the other idea I wonder if we can keep track how many suggestions we already had. Maybe some new field in the name resolution environment. But currently No time unfortunately


Kile (among others) does not find any dictionaries

Describe the bug
Kile, and many other KDE applications, cannot find any dictionaries.
To Reproduce
Steps to reproduce the behavior:

nix-shell -p kate "(pkgs.aspellWithDicts (d: [d.en d.de]))" --run kile
Tools > Spelling > Change Dictionary

Expected behavior
The combobox contains a list of all English and German language packages.
Actual behavior
The list empty.
Screenshots

Additional context
I know there are a lot of issues of this kind in Nix (with LibreOffice as well I think). But I fear we'll need a solution for almost each application and dictionary library pair (maybe we can fix all KDE applications at once as they share the editor code).
I'm not even 100% shure if Kile uses aspell, I think it uses a KDE-specific middleware that may have different backends.
Notify maintainers

@FRidh
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

system: "x86_64-linux"
host os: Linux 5.9.4-arch1-1, Arch Linux, noversion
multi-user?: no
sandbox: yes
version: nix-env (Nix) 2.3.7
channels(user): "nixpkgs-20.09.1500.edb26126d98, nixpkgs-unstable-21.03pre249617.ebe09a7ccc6"
nixpkgs: ~/.nix-defexpr/channels/nixpkgs

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:

I'm not even 100% shure if Kile uses aspell, I think it uses a KDE-specific middleware that may have different backends.

Indeed, https://github.com/NixOS/nixpkgs/issues/26654.


Update Datumaro version to 1.2.0

Summary

Same as the title

How to test

Checklist

[ ] I have added unit tests to cover my changes.
[ ] I have added integration tests to cover my changes.
[ ] I have added the description of my changes into CHANGELOG.
[ ] I have updated the documentation accordingly

License

[ ] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.
[ ] I have updated the license header for each file (see an example below).

# Copyright (C) 2023 Intel Corporation
#
# SPDX-License-Identifier: MIT

Codecov Report
Patch coverage has no change and project coverage change: -0.03 :warning:

Comparison is base (45d3f80) 78.71% compared to head (ea095dd) 78.69%.

Additional details and impacted files
@@                Coverage Diff                 @@
##           releases/1.2.0     #968      +/-   ##
==================================================
- Coverage           78.71%   78.69%   -0.03%
==================================================
  Files                 231      231
  Lines               26420    26420
  Branches             5258     5258
==================================================
- Hits                20796    20790       -6
- Misses               4400     4402       +2
- Partials             1224     1228       +4

Flag
Coverage Δ

macos-11_Python-3.8
?

ubuntu-20.04_Python-3.8
78.69% <ø> (-0.01%)
:arrow_down:

windows-2019_Python-3.8
?

Flags with carried forward coverage won't be shown. Click here to find out more.
see 3 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

Add #967 and #969


Failed with result 'exit-code' invalid memory address

2019/07/16 21:37:03 [INFO] Everyt                                                                                hing checks out! Poller started, interval: 30s
controller unifi-poller[3575]: panic: runtime error: invalid memory address or nil pointer dereference
controller unifi-poller[3575]: [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x22ea64]
controller unifi-poller[3575]: goroutine 1 [running]:
controller unifi-poller[3575]: github.com/davidnewhall/unifi-poller/vendor/github.com/golift/unifi.UAP.PointsAt(0x16e4b80, 0x18, 0x1, 0x16e190c, 0x4, 0x15d17a0, 0x1, 0x4, 0x16e1940, 0x9, ...)
Jul 16 21:37:33 controller unifi-poller[3575]: #011/home/travis/gopath/src/github.com/davidnewhall/unifi-poller/vendor/github.com/golift/unifi/uap_influx.go:22 +0x11c
Jul 16 21:37:33 controller unifi-poller[3575]: github.com/davidnewhall/unifi-poller/vendor/github.com/golift/unifi.UAP.Points(0x16e4b80, 0x18, 0x1, 0x16e190c, 0x4, 0x15d17a0, 0x1, 0x4, 0x16e1940, 0x9, ...)
Jul 16 21:37:33 controller unifi-poller[3575]: #011/home/travis/gopath/src/github.com/davidnewhall/unifi-poller/vendor/github.com/golift/unifi/uap_influx.go:12 +0x60
Jul 16 21:37:33 controller unifi-poller[3575]: github.com/davidnewhall/unifi-poller/unifipoller.(*Metrics).processPoints(0x159e090, 0x3deab0, 0x17f2000, 0x17f2000, 0x0)
Jul 16 21:37:33 controller unifi-poller[3575]: #011/home/travis/gopath/src/github.com/davidnewhall/unifi-poller/unifipoller/unifi.go:191 +0x2c
Jul 16 21:37:33 controller unifi-poller[3575]: github.com/davidnewhall/unifi-poller/unifipoller.(*Metrics).ProcessPoints(0x159e090, 0x173dcd8, 0x4, 0x173dcdc)
Jul 16 21:37:33 controller unifi-poller[3575]: #011/home/travis/gopath/src/github.com/davidnewhall/unifi-poller/unifipoller/unifi.go:175 +0x3f4
Jul 16 21:37:33 controller unifi-poller[3575]: github.com/davidnewhall/unifi-poller/unifipoller.(*UnifiPoller).ReportMetrics(0x146a240, 0x159e090, 0x0, 0x0)
Jul 16 21:37:33 controller unifi-poller[3575]: #011/home/travis/gopath/src/github.com/davidnewhall/unifi-poller/unifipoller/unifi.go:129 +0x20
Jul 16 21:37:33 controller unifi-poller[3575]: github.com/davidnewhall/unifi-poller/unifipoller.(*UnifiPoller).CollectAndReport(0x146a240, 0x15e5f14, 0x14fc101)
Jul 16 21:37:33 controller unifi-poller[3575]: #011/home/travis/gopath/src/github.com/davidnewhall/unifi-poller/unifipoller/unifi.go:73 +0x70
Jul 16 21:37:33 controller unifi-poller[3575]: github.com/davidnewhall/unifi-poller/unifipoller.(*UnifiPoller).PollController(0x146a240, 0x6, 0x14125f0)
Jul 16 21:37:33 controller unifi-poller[3575]: #011/home/travis/gopath/src/github.com/davidnewhall/unifi-poller/unifipoller/unifi.go:52 +0x130
Jul 16 21:37:33 controller unifi-poller[3575]: github.com/davidnewhall/unifi-poller/unifipoller.(*UnifiPoller).Run(0x146a240, 0x0, 0x0)
Jul 16 21:37:33 controller unifi-poller[3575]: #011/home/travis/gopath/src/github.com/davidnewhall/unifi-poller/unifipoller/start.go:101 +0x164
Jul 16 21:37:33 controller unifi-poller[3575]: github.com/davidnewhall/unifi-poller/unifipoller.Start(0x3e34c, 0x1442070)
Jul 16 21:37:33 controller unifi-poller[3575]: #011/home/travis/gopath/src/github.com/davidnewhall/unifi-poller/unifipoller/start.go:33 +0xf0
Jul 16 21:37:33 controller unifi-poller[3575]: main.main()
Jul 16 21:37:33 controller unifi-poller[3575]: #011/home/travis/gopath/src/github.com/davidnewhall/unifi-poller/main.go:11 +0x14
Jul 16 21:37:33 controller systemd[1]: unifi-poller.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
Jul 16 21:37:33 controller systemd[1]: unifi-poller.service: Unit entered failed state.
Jul 16 21:37:33 controller systemd[1]: unifi-poller.service: Failed with result 'exit-code'.
Jul 16 21:37:33 controller systemd[1]: unifi-poller.service: Service hold-off time over, scheduling restart.
Jul 16 21:37:33 controller systemd[1]: Stopped unifi-poller - Polls a UniFi controller and stores metrics in InfluxDB.

I have deleted the unifi-poller script and reinstalled the newest version with the curl line from the install page. I have also deleted the database and reinstalled. And re-downloaded the grafana dashboards trying to get back to a fresh start I also checked the variables and they are there.
Thanks for reading

This is fixed in the latest docker build, but I have not cut a new release yet with the patch (no packages). If you can compile it yourself, you can create a package with the fix. I'll make a new release tonight or tomorrow that you can use. This happens because of disable devices. If you remove the disabled device from the site being polled this will also stop happening.

ok I can readd the AP i took off line
not sure I can compile it myself

David thanks for the tip I plugged in the AP and all is working again I have been working on that for almost 2 hours

Sorry about that! This was reported a couple days ago. The reporter was able to figure out it was a disabled device causing the crash. I've since committed a fix; just need to make a new release... been working on some other projects.

The current release (1.5.1) solves this issue. Please upgrade!


[G2M] [2.0] Remove MUIChip lowercase textTransform

Issue:
Currently the Chip component can only display lowercase labels.

[x]  let's include this in milestone 2.0 as it'd be a breaking change

@woozyking So Leo, I shouldn't merge this right now?

@woozyking So Leo, I shouldn't merge this right now?

merge ahead. we'll just use that as a rough measure for 2.0 release readiness

@woozyking So Leo, I shouldn't merge this right now?

merge ahead. we'll just use that as a rough measure for 2.0 release readiness


Add french langage to Forkbb

French translations for forkbb.
Will try to do a follow up PR once I will have find all typos and approximation.
It was tested on a local instalation but I surely missed some stuff
Cheers !

I used the code &#8217 for the single quote, which is not traduced in button

Is it a wrong usage or a bug ?

The semicolon is missing, but the & character is actually escaped.
<button class="f-btn f-fbtn" type="submit" name="login" value="S&#8217authentifier" title="S&#8217authentifier">S&#8217authentifier</button>

I think it would be more correct to replace Decimal Code with a Unicode symbol.

Ok
You'd prefer with ’ ?

I don't see any visual difference in these symbols.

Ok. I understand know what you meant, single quote didn't need to be escaped. Thank for the correction and the merge.
I already started to work on a follow up PR cause there is still a lot of typos, conjugation and stuff like that I did wrong


PHP: Use phpcs for PhpSdkDev Linting

Add PHP Code Sniffer

Configured to lint against standards: PSR1 and PSR12

Can be called through the PhpSdkDev.Lint
Added to to Dev module in the same way as Python's Linting works.

@helderco I've created two issues for the suggested follow ups: #8124 and #8125.
I will do those separately so we can keep the PRs small and easier for review.


Comment Section

Hello! As I have seen many of my peers getting stuck at how to add comment section using php ..I want to create a sample website showing a basic comment section..
Can you assign it to me under Hactoberfest ?

sir it is not showing hacktoberfest label...if possible please add it

Hey @AryanSahoo-2003 actually this repository was also having the same name as the previous one that's why unfortunately it also got excluded and I'm extremely sorry for that. So now you are requested to make your contribution here in this repository -> https://github.com/SR-Sunny-Raj/Hacktoberfest2022-for-everyone


Leif/feature/open weather map

Description
Add an OpenWeatherMap Service.
https://openweathermap.org/api

Test Suite 'All tests' passed at 2023-04-25 18:01:30.169.
Executed 18 tests, with 0 failures (0 unexpected) in 1.312 (1.320) seconds


Add bookshelf keypair and bifrost superuser id to bootstrap bundle

Chef server hands and presigned URLs in the sandbox API, and thus all the automate frontends need to agree on the access key/secret key pair for bookshelf.
The ha chef server tests now load balance between the multiple frontends instead of running the tests on each frontend
Pulled the bifrost superuser id into the bootstrap bundle. I think the tests require the frontends agree on this, although nothing should be broken without it outside the tests.

think the tests require the frontends agree on this, although nothing should be broken without it outside the tests.

Thanks for this clarification, was a bit confused why this would matter


Make coverage calculation encompass the entire umbrella app

Fixes #806, a proposition of a fix
TODO:

[ ] groom commit history to just a single commit
[ ] post something in the excoveralls issue

Overview
mix coveralls via mix test --cover always calculates test coverage of an umbrella sub-app only by using that sub-apps own tests.
Since we have some code split across sub-apps (e.g. the _rpc bunch), some code only gets covered in foreign sub-apps of the umbrella.
C.f. this issue https://github.com/parroty/excoveralls/issues/23
Changes
excoveralls has been updated to a derivative (rebase) of one of the forks proposed in the issue above.
Some adjustments were needed on our side to have both the (new) mix coveralls --umbrella and the usual mix test invocations work.
Testing
existing tests, and an increase in test coverage as demonstrated by coveralls.io

Coverage increased (+4.1%) to 84.939% when pulling 05541b76570dcfb0c4ca2b95050d77cc2bedde3e on 806/fix_coverage3 into 38f47e67c24f9808ffe9962d130756b85730d6b6 on master.


Glow sending lots of data

Hi and thanks a lot for this great project! I was able to setup my HA Glow on a ESP32 with this photo diode (https://www.ebay.de/itm/274430239184) and integrated it in to home assistant. I sticked the sensor on my meter (ISKRA MT681) And now it's sending data. A lot of data. :)
On the webserver I can see an output of around 10 values per second for power consumption. The values are quite correct, no strange spikes.
Although I like detailed statistics. I am afraid to kill home assistant with this amount of data.
Any advice to limit the output to maybe one value every 10 seconds?
Thanks very much for help!

I tried the changes from this pull request, and it seems to be working very well.
https://github.com/klaasnicolaas/home-assistant-glow/pull/269

What pulse rate do you use?

I'm using a rate of 10000.
Right now the pulse meter seems to work very well. The total kwh seems ok too. But the total daily energy sensor stopped working. I added heartbeat: 60s in the filter section of the total daily energy sensor and now it is sending the same value on and on.

Alright, it seems the problem solved itself over night. After the reset of the daily sensor at midnight it's counting correctly. Don't have enough data yet to see how accurate the measurement is compared to the meter, but until now it looks primising. Thanks again for your help and this great little device!


Be able to specify base path, not only subfolder

This tool is great, but I would like to be able to specify where the boxes go, not just a subfolder under documents.
if able to send the whole path, we could use
getApplicationSupportDirectory();
what is perfect for my app on windows, as it points to the Roaming data folder.

You can initialize Hive with Hive.init(customPath) instead of initFlutter.


Displaying schemas in the sidebar

From what I've seen, there is currently no way to display the schema definitions in the sidebar. What I'm looking for is how Spectacle does it, in the "Schema Definitions" section. Is there an existing way to do this or plans for it?

I'd like this too. Instead of putting it in a Schema category, I'd just put it as the first entry for each Dropdown thingy. So Cheese > Cheese Object

Having Cheese > Cheese Object wouldn't be much different from how its currently displayed since those schemas appear in the request body. I'd rather have a separate section where I can explicitly list and describe the schemas outside of the requests

Oh, that was your request.
I was thinking a different schema thing to show the whole object, since not everything might be in the requests.

This would be achievable once this PR gets merged.

Awesome, hopefully he can review it soon

@nanov can you give an example of how to add object-descriptions to the spec for use with the cli? When I tried to modify my spec like demo/openapi.yaml and passed it to the cli, it just output the react component as a string.


Copilot Chat Failing with Proxy Due to Unknown Kerberos Issue

I am having an issue where Copilot and Copilot Chat fail to fetch results after a few minutes of VS Code being opened while connected to a corporate proxy (using an Enterprise Copilot License). If I close and reopen VS Code (or VS COde Insider) the issue goes away briefly and I am able to get results both in chat as well as in code suggestions. I have no Kerberos configurations in place that should be causing this issue not any SPNs configured in VS Code settings. If I go off the proxy and on direct internet instead behind corporate VPN (not ideal) I am able to work with copilot without issues. This was working before however I am not sure when this broke as I had about a month of downtime.

VS Code Version: 1.88.0-insider (Universal) & 1.87.2 (Universal)
OS Version: Mac OS X Sonoma 14.4 (M1 Mac)
Logs:

2024-03-15 11:03:46.045 [info] [FetcherService] Using Helix fetcher
2024-03-15 11:03:46.045 [info] [gitExtensionService] Initializing Git extension service.
2024-03-15 11:03:46.045 [info] [gitExtensionService] Successfully activated the vscode.git extension.
2024-03-15 11:03:46.045 [info] [gitExtensionService] Enablement state of the vscode.git extension: true.
2024-03-15 11:03:46.045 [info] [gitExtensionService] Successfully registered Git commit message provider.
2024-03-15 11:03:47.022 [info] [auth] Logged in as MYCOPILOTUSER
2024-03-15 11:03:47.804 [info] [chat] copilot token chat_enabled: true
2024-03-15 11:03:47.804 [info] [githubTitleAndDescriptionProvider] Initializing GitHub PR title and description provider provider.
2024-03-15 11:03:47.804 [info] [githubTitleAndDescriptionProvider] GitHub.vscode-pull-request-github extension is not yet activated.
2024-03-15 11:03:47.813 [info] [auth] Got Copilot token for MYCOPILOTUSER
2024-03-15 11:04:20.793 [info] [auth] Logged in as MYCOPILOTUSER
2024-03-15 11:04:20.794 [info] [auth] Logged in as MYCOPILOTUSER
2024-03-15 11:04:21.836 [info] [chat] copilot token chat_enabled: true
2024-03-15 11:04:21.836 [info] [auth] Got Copilot token for MYCOPILOTUSER
2024-03-15 11:04:21.928 [info] [chat] copilot token chat_enabled: true
2024-03-15 11:04:21.928 [info] [auth] Got Copilot token for MYCOPILOTUSER
2024-03-15 11:05:34.264 [info] [FetcherService] Using Helix fetcher
2024-03-15 11:05:34.264 [info] [gitExtensionService] Initializing Git extension service.
2024-03-15 11:05:34.866 [info] [gitExtensionService] Successfully activated the vscode.git extension.
2024-03-15 11:05:34.866 [info] [gitExtensionService] Enablement state of the vscode.git extension: true.
2024-03-15 11:05:34.866 [info] [gitExtensionService] Successfully registered Git commit message provider.
2024-03-15 11:05:35.214 [info] [auth] Logged in as MYCOPILOTUSER
2024-03-15 11:05:36.170 [info] [chat] copilot token chat_enabled: true
2024-03-15 11:05:36.170 [info] [githubTitleAndDescriptionProvider] Initializing GitHub PR title and description provider provider.
2024-03-15 11:05:36.170 [info] [githubTitleAndDescriptionProvider] GitHub.vscode-pull-request-github extension is not yet activated.
2024-03-15 11:05:36.184 [info] [auth] Got Copilot token for MYCOPILOTUSER
2024-03-15 11:05:54.349 [info] [chat fetch] url https://api.githubcopilot.com/chat/completions
2024-03-15 11:05:54.350 [info] [chat fetch] modelMaxPromptTokens 3072
2024-03-15 11:05:54.350 [info] [chat fetch] modelMaxResponseTokens 3692
2024-03-15 11:05:54.350 [info] [chat fetch] chat model gpt-4
2024-03-15 11:05:54.528 [info] [extension] Error on conversation request: oie:  Miscellaneous failure (see text): Server<EMAIL_ADDRESS>unknown while looking up<EMAIL_ADDRESS>(cached result, timeout in 1197 sec) (negative cache)
    at D3e (/Users/MYCOPILOTUSER/.vscode-insiders/extensions/github.copilot-chat-0.14.2024031501/dist/extension.js:94:29560)
    at rht (/Users/MYCOPILOTUSER/.vscode-insiders/extensions/github.copilot-chat-0.14.2024031501/dist/extension.js:94:31585)
    at hU.fetch (/Users/MYCOPILOTUSER/.vscode-insiders/extensions/github.copilot-chat-0.14.2024031501/dist/extension.js:1107:30801)
    at ZDe (/Users/MYCOPILOTUSER/.vscode-insiders/extensions/github.copilot-chat-0.14.2024031501/dist/extension.js:1100:7970)
    at U0.fetchMany (/Users/MYCOPILOTUSER/.vscode-insiders/extensions/github.copilot-chat-0.14.2024031501/dist/extension.js:1100:12960)
    at U0.fetchOne (/Users/MYCOPILOTUSER/.vscode-insiders/extensions/github.copilot-chat-0.14.2024031501/dist/extension.js:1100:12042)
    at RS.fetchConversationResponse (/Users/MYCOPILOTUSER/.vscode-insiders/extensions/github.copilot-chat-0.14.2024031501/dist/extension.js:895:2481)
    at RS._provideResponseWithProgress (/Users/MYCOPILOTUSER/.vscode-insiders/extensions/github.copilot-chat-0.14.2024031501/dist/extension.js:895:1536)
    at RS.provideResponseWithProgress (/Users/MYCOPILOTUSER/.vscode-insiders/extensions/github.copilot-chat-0.14.2024031501/dist/extension.js:893:1830)
    at r.z (/Users/MYCOPILOTUSER/.vscode-insiders/extensions/github.copilot-chat-0.14.2024031501/dist/extension.js:905:773)
    at i.$invokeAgent (/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:152:43832)

Steps to Reproduce:

Configure proxy within VSCode settings and restart VS Code
Ask chat for some information. Initially this works.
Wait a few minutes and try asking another question. Receive the error log above and an error telling me to "Please check your firewall rules and network connection then try again. Error Code: undefined."

Hi @alexdima. Any thoughts/updates on this issue?

@ryorke1 Could you please try configuring:
"github.copilot.advanced": {
  "debug.useElectronFetcher": true
}


Rename CliActivationResponse & CliActivation, and change them from inner classes to classes

This PR renames the class CliActivation and CliActivationResponse
and makes them available to be accessed from another package, because
REST call can use both of the classes as well.
This PR is the necessary step of test case refactor for rest implementation.

Can you explain how you want to tackle the migration from Wsk to WskRest or link a respective issue? I could not distill that from the open pull-requests which have no apparent connection. Would it make sense to merge some of those to one PR?

@markusthoemmes I will link all of the PRs regarding REST to an issue, with the explanation of how to do it step by step.


[MODIFY] Avoid conflicts with the std library max function

Title: Correctly Invoke std::numeric_limits::max as a Function to Prevent Macro Conflicts
Body:
Problem Description
The existing template implementation in Cesium-native uses std::numeric_limits::max without parentheses. This can lead to conflicts with preprocessor macros, especially in environments where max is defined as a macro, resulting in incorrect preprocessor expansion and compilation errors.
Proposed Change
To prevent this issue and ensure that max is treated as a function returning the maximum value of type T, I propose modifying the syntax to explicitly include function-call parentheses. This change will avoid macro conflicts and ensure consistent behavior across various compilers.
Implementation Details
Here is the specific change applied to the template that handles AccessorView<AccessorTypes::VEC2>:
Before
u /= std::numeric_limits<T>::max;  // Potential macro conflict
v /= std::numeric_limits<T>::max;  // Potential macro conflict

After
u /= (std::numeric_limits<T>::max)();  // Clear function call with parentheses
v /= (std::numeric_limits<T>::max)();  // Clear function call with parentheses

Expected Impact
This minor syntax correction will eliminate the risk of macro interference by ensuring that std::numeric_limits::max is treated strictly as a function. This is particularly important for maintaining the stability and reliability of the template code across different compilation environments that may define max as a macro.
Request for Feedback
I invite feedback from the community on this change, particularly from those who may have experienced similar macro conflicts or have suggestions on ensuring template code robustness.
Conclusion
Thank you for considering this improvement. I look forward to any feedback and hope this modification will enhance the clarity and robustness of the Cesium-native project's code.

Thanks for the PR @No-needto-recall. I don't think we will accept this PR, though. As you can see in your diff, there were already function call parenthesis in the original code. You've just added some additional, unnecessary ones.
If your own code is defining a macro named max, I suggest you change this. It's very poor practice. If some other third-party header is doing this (a common culprit is windows.h), the best practice is to isolate the code that needs that problematic header into its own .cpp file and make sure that .cpp doesn't include anything from cesium-native. Think of it as definining an interface to that other misbehaving code that protects the rest of your code base from it.
If you're specifically fighting with windows.h, adding #define NOMINMAX before the #include <windows.h> will solve it.

Thanks for the PR @No-needto-recall. I don't think we will accept this PR, though. As you can see in your diff, there were already function call parenthesis in the original code. You've just added some additional, unnecessary ones.
If your own code is defining a macro named max, I suggest you change this. It's very poor practice. If some other third-party header is doing this (a common culprit is windows.h), the best practice is to isolate the code that needs that problematic header into its own .cpp file and make sure that .cpp doesn't include anything from cesium-native. Think of it as definining an interface to that other misbehaving code that protects the rest of your code base from it.
If you're specifically fighting with windows.h, adding #define NOMINMAX before the #include <windows.h> will solve it.

Thank you for your reply and suggestions!
Regarding the addition of parentheses, my original intention was to ensure that std::numeric_limits::max could be explicitly called as a function in compilation environments where macro definitions might interfere. I have rechecked the original code and compilation environment, and indeed found that in my specific scenario (which might include certain third-party libraries or project settings), the original code did not correctly prevent macro conflicts.
However, based on your suggestion, using #define NOMINMAX or isolating the related code is indeed a clearer and more professional solution. I will adjust my project settings accordingly and will withdraw this PR.
Thank you very much for your guidance and assistance! I look forward to more interactions and cooperation in the future.


Creating additional NAV instance inside container

Are there any special requirements to allow me to create a new NAV Instance inside the container?
We are connecting our container to an external (external to the container) SQL Database - and when we create a new instance using powershell we get all kinds of SQL Authentication errors.
Am I missing a powershell step or setting that sets the account under which I should run the new instance service?
Any examples would be really helpful.

That isn't a supported scenario. Create another container instead - if you are running process isolation that will be more or less the same thing.


More test on network dependency import

Write more tests regarding network dependent import.
import "https://example.com/dir/file.js"

And ensure these import can be cached at some point, either by the compile server or an other mecanism.
Network dependent import are already supported but I think they are not cached.
In other words you need network connection to execute code that is network dependent while jsenv could fetch it once and put it in cache.

It would be great to cache those to avoid network dependency of course. But no real use case for now.

It would be great to cache those to avoid network dependency of course. But no real use case for now.


eth_stm32: allow MAC address to be set from application before interface goes up

Is your enhancement proposal related to a problem? Please describe.
The application I'm writing stores the ethernet MAC address in EEPROM, which means it can't be specified using the local-mac-address device tree property. The best way I've found so far to do this at all is this:
net_if_down(iface);

struct ethernet_req_params params = /* load from EEPROM */;
net_mgmt(NET_REQUEST_ETHERNET_SET_MAC_ADDRESS, iface, &params, sizeof(params));

net_if_up(iface);

However, this still causes the interface to use its default MAC address (derived from device ID) during startup, and a couple frames go out with this address.
Describe the solution you'd like
There should be a way to set the ethernet MAC address before the interface goes up for the first time, i.e. by delaying interface startup until the application says so.
Describe alternatives you've considered
-
Additional context
-

Network stack has a built-in mechanism to prevent network interface from being brough up at boot, by setting NET_IF_NO_AUTO_START flag on the interface. This however needs to be supported by particular L2/driver in order to work, as the flag needs to be set during initialization.
Some L2s define a Kconfig to skip auto-start on boot, see for example:
https://github.com/zephyrproject-rtos/zephyr/blob/main/drivers/ieee802154/Kconfig#L16
It can then be used during the initialization to set the flag on the interface:
https://github.com/zephyrproject-rtos/zephyr/blob/main/subsys/net/l2/ieee802154/ieee802154.c#L459
I think that similiar could be implemented for Ethernet L2. Feel free to send a PR, this should be a pretty straightforward change.

I would recommend you to use a SYS_INIT(), with a priority higher than the ethernet driver and lower than CONFIG_NET_CONFIG_INIT_PRIO, if  you still want to use the auto init. With that so you can do the part you described above before the network subsystem brings the interfaces up.


Broken Example In Repo

What I did

Clone the repository
Ran npm install
Ran npm start

What I expected

A working Geosuggest example at http://localhost:8000

What actually happened

And using the debugger...

Led me to think that the reason it wasn't working was because I needed to add NODE_ENV=production to the npm start command; however, that just gives me a minified error.

Thanks for reporting! :+1: for providing detailed information!
I can reproduce this, but have no idea why that is happening…

Seems to be a problem with the require('Geosuggest') statement in the example app.js. If you replace it with: import Geosuggest from '../../src/Geosuggest'; the example works.

Here is an explanation for the problem (babel 6 is the cause): http://stackoverflow.com/questions/33704714/cant-require-default-export-value-in-babel-6-x


Update gitops repo samples for upgrade related changes

/cc @irinamihai
/cc @Missxiaoguo

LGTM, except I’m not sure if we want to add a comment for upgradeDefaults: upgrade-defaults-v1 indicating that it is optional and intended for upgrade use only, or will there be document to highlight/describe the field/files that should be prepared and added for upgrades?

Another sample to update (at least for required field)
https://github.com/openshift-kni/oran-o2ims/blob/main/config/samples/v1alpha1_clustertemplate.yaml

Another sample to update (at least for required field) https://github.com/openshift-kni/oran-o2ims/blob/main/config/samples/v1alpha1_clustertemplate.yaml

It's updated in this PR

/lgtm

LGTM, except I’m not sure if we want to add a comment for upgradeDefaults: upgrade-defaults-v1 indicating that it is optional and intended for upgrade use only, or will there be document to highlight/describe the field/files that should be prepared and added for upgrades?

Good question. Not sure if it should be optional or mandatory. Will address this in the next doc PR once we agree on the seedgen and template update workflow.

LGTM, except I’m not sure if we want to add a comment for upgradeDefaults: upgrade-defaults-v1 indicating that it is optional and intended for upgrade use only, or will there be document to highlight/describe the field/files that should be prepared and added for upgrades?

Good question. Not sure if it should be optional or mandatory. Will address this in the next doc PR once we agree on the seedgen and template update workflow.

The upgradeDefaults needs to be optional. A simple example is the first release used to install an SNO will never be used in an upgrade. I think I would prefer not to add this to the cluster templates in the version_4.Y.Z directory, but instead create a new version4.Y.Z+1 directory as an example for the upgrade. But would like to hear what others think.

@jc-rh The clusterinstance schema and default configmap were updated in https://github.com/openshift-kni/oran-o2ims/pull/289, which was just merged last Friday. The new templates need to match the latest version now.

@jc-rh The clusterinstance schema and default configmap were updated in #289, which was just merged last Friday. The new templates need to match the latest version now.

Updated

/lgtm

/lgtm

/lgtm

/approve


iOS10 Crash - Requires Permissions..

Not a bug - a note for other users. You may find this component crashes due to iOS10 needing addition descriptions in info.plist.
NSPhotoLibraryUsageDescription
NSCameraUsageDescription
Might be only related to using XCode - 8 beta.

Might like to add that to the iOS installation instructions.

Same issue here. @Gnative could you describe a little more explicitly what needs to be done to prevent the crash?

@yn5 you just need to add the NSPhotoLibraryUsageDescription and NSCameraUsageDescription keys to your Info.plist. The values should be strings describing why your app needs each permission.
I will add this to the README, thanks @Gnative.


#25 Add Carthage support

add Carthage support as requested in #25

[x] create framework
[x] share framework scheme
[x] add documentation

Thanks.

Thanks alot :+1:


Contribution from TV2: vizMSE, Sisyfos and more!

This PR contains things contributed from TV2 Denmark.

New device: vizMSE, for control of viz-engines graphics, via media-sequencer.
Support for a new data-flow: expectedPlayoutItems, for things that needs preparing on the playout-side (like viz-graphics).
CHANGES sisyfos data interface and implements support for the new one. Might need some blueprint-changes to support this one.
Adds CasparCG-features: previewWhenNotOnAir and retryInterval.

Merged in 8687ec9e0668163ef8a7f1b7e1cf03dcebde8bd3


HighScores::GetPlayerName() throws ArgumentOutOfRangeException when highscores.dat is empty.

When the highscores.dat is empty, it'd probably be a good idea to populate the list highScores with defaults to avoid this.

[08/05/18 20:56:39] Fatal Error: System.ArgumentOutOfRangeException thrown. Specified argument was out of the range of valid values.
Parameter name: row
Stack trace:
at HighScores.GetPlayerName(UInt32 row) in c:\projects\project ball buster\src\pbb\game\highscores.h:line 105
at HighScoreTable..ctor(Int32 x, Int32 y, Int32 numberOfRows, Int32 vertialSpacing, Int32 indexXPosition, String rowNumberFont, Int32 PlayerNameXPosition, String playerNameFont, Int32 scoreXPosition, String scoreFont) in c:\projects\project ball buster\src\pbb\game\highscoretable.cpp:line 106
at SceneFactory.ParseHighScoreTable(XElement element) in c:\projects\project ball buster\src\pbb\game\scenefactory.cpp:line 212
at SceneFactory.Read(XElement sceneXML) in c:\projects\project ball buster\src\pbb\game\scenefactory.cpp:line 365
at SceneManager.Initialise(XElement scenesXML) in c:\projects\project ball buster\src\pbb\game\scenemanager.cpp:line 40
at Game.Initialise(HINSTANCE__* hInstance, HWND__* hWnd) in c:\projects\project ball buster\src\pbb\game\game.cpp:line 106
at WinMain(HINSTANCE__* hInstance, HINSTANCE__* hPrevInstance, SByte* lpCmdLine, Int32 nCmdShow) in c:\projects\project ball buster\src\pbb\game\main.cpp:line 175

fixed in commit e27e7163800eeb90fa853a8b29e6277b305516db.


Give an ability to catch exceptions in consumers

The current implementation of the library swallows exceptions in consumers (I noticed that in one of our apps while testing). It means developers using the lib must catch errors in consumers on their own.
class MyHandler
  def call(data)
    raise 'Something went wrong'
  rescue => e
    # log an error
  end
end

This behavior wasn't expectable. So, this PR provides an API to catch errors and log them if it is a case. :smile:
PTT.register_error_handler(-> (error, data_in_json) {
  # log the error somewhere
})

Another option was to re-raise an exception, so an app will get it. In this case Bunny catches it and wraps into its own error.
ERROR -- #<Bunny::Session:0xb4651f8 guest@localhost:5672, vhost=gohiring, addresses=[localhost:5672]>: Uncaught exception from consumer #<Bunny::Consumer:93660300 @channel_id=1 @queue=postings.feedback.revisions> @consumer_tag=bunny-1507558682000-934839818707>: #<NoMethodError: undefined method `error' for main:Object> @ /home/dnesteryuk/projects/gohiring/api/config/initializers/ptt.rb:5:in `block (2 levels) in <top (required)>'

Thus, the payload isn't reachable anymore, so the debugging might be harder.

First of all thank you @dnesteryuk for the PR and especially for bringing the spotlight to the topic of better error handling. Though I'm not sure about the proposed solution. There are some questions I cannot answer. For example:

If a global error handler is introduced, shall it expected to use the handler everywhere in the library?
Does that really make sense to assign an error handler to each consumer instance, when the handler is global?  So I looked inside of the gem and found this part. That led me to Bunny::Channel#on_uncaught_exception method:

#on_uncaught_exception(&block) ⇒ Object
Defines a handler for uncaught exceptions in consumers (e.g. delivered message handlers).

By default it returns the message you've mentioned above, however that is changeable behaviour. Have you considered this method?
I think we could make use of Bunny::Channel#on_uncaught_exception and improve current error handling situation. Below I'll try to draft how it could be done.

Do not ignore exceptions, but re-raise them in consumers after rejecting failed messages. In this case errors will appear in the log without any change in apps using ptt gem. That's already a step forward 😄

module PTT
  class Consumer
    def receive(delivery_info, properties, body)
      @handler.call(JSON.parse(body))
      @channel.ack(delivery_info.delivery_tag)
    rescue => e
      @channel.reject(delivery_info.delivery_tag, false)
      raise e
    end
  end
end

Let a developer to define a reaction for handler errors via Bunny::Channel#on_uncaught_exception. Currently I haven't decided yet how to pass the error handling block to that method (e.g. via configuration on PTT, or via direct access to client.channel.on_uncaught_exception, or something else), but hope it's still possible to understand what I mean.

So what do you think?


Trailing commas in Environments

When I tweak my environment, I'm constantly cutting and pasting lines of JSON here and there. Having to worry about adding/removing trailing commas just to keep the tool happy is really quite annoying.
Is there a reason why Insomnia won't just allow and ignore trailing commas?
This is similar to issue #770 but that one is about JSON request body so I felt it's best to submit a separate request.

This is due to the JSON specification not allowing trailing commas. An idea we could explore is treating it as a JS Object, rather than using the notation form. This way trailing commas could be supported. The issue then becomes that this opens up a security vulnerability vector.

Pretty please?

I totalllllly feel yah on this one.  It's too bad that JSON was developed before ES5 when trailing commas were added, otherwise JSON would likely have trailing commas, itself.
There is a third option, which is to use a json parser that will accept the trailing comma.  If we do this, I'd like us to use https://github.com/json5/json5.
Would you be open to making a PR for this?  I could help.
The thing to keep in mind here is the we need to keep the environment natively serializable to actual json for exports (json5 is not json), so when we export an environment we'll have to lose any comments or trailing commas.


IOError: [Errno 2] No such file or directory: '/data/private/voice/LJSpeech-1.0/transcript.csv'

I made the directory data = "/data/private/voice/LJSpeech-1.0" form hyperparams.py . I have the transcript.csv in these directory "/data/private/voice/LJSpeech-1.0" yet when I run python prepro.py I am getting these error and yet I still have the transcript.csv in that folder.What could be the problem.I have set prepro True`.Why these error yet I have these directory and the transcript.csv. Infact I have also tried to put metadata.csv from the original file. It has not worked for me for 2 days. These is the error
Traceback (most recent call last):
  File "prepro.py", line 17, in <module>
    fpaths, _, _ = load_data() # list
  File "/home/rutherford/Speech/tacotron-master/data_load.py", line 41, in load_data
    lines = codecs.open(transcript, 'r', 'utf-8').readlines()
  File "/usr/lib/python2.7/codecs.py", line 898, in open
    file = __builtin__.open(filename, mode, buffering)
IOError: [Errno 2] No such file or directory: '/data/private/voice/LJSpeech-1.0/transcript.csv'

Are you sure that the path for the transcript file is correct?


Version 1.73.0

Changes
Update to API version 1.145.
Checks

[x] The version constant is updated in Client.php
[x] The changelog is updated (when applicable)
[x] The supported Cluster API version is updated in the README (when applicable)

The server_software_name seems to be missing from the VirtualHosts -> update call. We ran into an issue on this version while updating the virtual host server_aliases:
{
"loc": [
"body",
"server_software_name"
],
"msg": "field required",
"type": "value_error.missing"
}
]

Hi @mbardelmeijer! I will take a look at this later today.

@mbardelmeijer
Fixed in 48463b4. The branch it is in will be merged to main ASAP.

Fixed in 1.74.0.
If you encounter any issues, feel free to open an issue as comments on merged pull requests might be missed.

@dvdheiden cheers! Makes sense, willdo next time! :)


fix: added linting and formatting

Added linting and formatting on pr to every branch
resolves #7

/bounty $25

/bounty $25

@hkirat how do i claim the bounty 😶

ping @rookie on discord


Added an overlay to the Prayer plugin to alert the player when to dri…

Added an overlay to the Prayer plugin to alert the player when to drink a prayer potion.
https://i.imgur.com/6P4cyVT.png

You have a lot of CheckStyle errors, please read this link so you can see how to fix your build.

Suggestion, you should add an option to only show overlay if there is a prayer restoring potion in the inventory.


Add footer component

the contrast of the logo in the footer is atrocious

fixed in<PHONE_NUMBER>a6a4ed434e48db0805c33443beba2c

That's a little better, thanks for fixing this 😄


validate schema and warehouse

Fix: https://github.com/keboola/db-writer-snowflake/issues/34 a https://github.com/keboola/db-writer-snowflake/issues/18

omg :-)  diky!


Add URI parameter to getRequestMeatadata.

A revised version of request #11 that is non-breaking for callers, which should make the staging easier.

Revised to use URI.create in the test code.

There was some discussion about whether URI should be part of getRequestMetadata. The revised PR has both overloads and removed a comment indicating one would be deprecated. This makes it a non-breaking change for the transport and we can evaluate both for use with gRPC.

@anthmgoogle, other than the strange imports, LGTM

Updated to remove unintended changes to imports.

@anthmgoogle, LGTM

LGTM


ModuleNotFoundError: No module named 'elftools'

Discussed in https://github.com/zephyrproject-rtos/zephyr/discussions/51069

Originally posted by WajahatRiaz October  7, 2022
Describe the bug:
I'm trying to build a simple blinky application for my stm32f103rb board but I'm getting the ModuleNotFoundError: No module named 'elftools' error over and over again. I tried it for different boards and QEMU. The trivial solutuon of installing pyetools also didn't work because it's already installed. All efforst are in vain. I used the following guide to setup the zephyr project for my Windows based host.
https://docs.zephyrproject.org/latest/develop/getting_started/index.html
To Reproduce:
cd %HOMEPATH%\zephyrproject\zephyr
west build -p always -c -b nucleo_f103rb samples\basic\blinky
Expected behavior:
A successful build.
Impact
Unable to build and run application.
Logs and console output:

Environment (please complete the following information):

OS: Windows
Toolchain: Zephyr SDK
Version: latest

Additional context:
Someone mentioned that it may be some issue with the dependencies so I ran the following commands:
cd %HOMEPATH%\zephyrproject\zephyr
pip3 install --user --upgrade -r scripts/requirements.txt
All requirements were already installed and updated. Especially the pyelftools

Issues are not for questions/asking for help. Please keep using the discussion for that.
The upstream build environment is regularly tested and no such error has been observed. This is very likely an issue with your local environment set-up.

I actually pointed out some of the flaws in your documentation. I was unable to narrow down to a solution. Also, if you didn't know the answer you could have at least guided me.

I actually pointed out some of the flaws in your documentation.

Where did you do that?
If you have followed the Getting Started Guide down to every line (i.e. run as admin, install without --user), this problem would not have happened.
Also, we use GitHub issues to keep track of bugs, enhancements, etc, and weekly go through them in a meeting. That is why this was converted to a discussion -- because in its form, it is neither a bug nor an enhancement.

I actually pointed out some of the flaws in your documentation.

Where did you do that?
If you have followed the Getting Started Guide down to every line (i.e. run as admin, install without --user), this problem would not have happened.
Also, we use GitHub issues to keep track of bugs, enhancements, etc, and weekly go through them in a meeting. That is why this was converted to a discussion -- because in its current form, it is neither a bug nor an enhancement.

Installing with or without the --user had no effect. Alas, it's pointless to debate with you. Thank you for your time.


Separate path and query information in RequestUri.

The hyper::uri::RequestUri enum currently defines a variant AbsolutePath(String) where the string is both the (required) path and optional query parameters. It would be better if these two parts were separated.
I suggest either defining it as AbsolutePath(String, Optional<String>) or creating a new struct, e.g.
enum RequestUri {
    AbsolutePath(QueryPath),
    \\ ...
}

struct QueryPath {
    path: String,
    query: Optional<String>,
}

similar to what is currently done for AbsoluteUrl(Url).

This looks like a duplicate (or is superseded by) #298

Yep, the solution is described in #298


Activities. Any user can get the resource's activities using the file-id

Similar to: https://github.com/owncloud/ocis/issues/9849
Steps to reproduce

create a folder as alice user

as alice, create some files and perform some actions (edit/delete) in folder

as demo user, check the folder activities using resource(folder) id with cURL request:
curl 'https://localhost:9200/graph/v1beta1/extensions/org.libregraph/activities?kql=itemid%3A{folder-fileid}' \
-udemo:demo -vk | jq

{"value": [
  {
   ... # activities
  }
]}

Expected behavior
Expected not to get the list of activities when requested by random user.
Actual behavior
Gets the list of all the activities in the folder.

I prioritized as prio2 because IMHO it's the security hole

Steps:

admin shares folder f1 to einstein
einstein opens folder f1 in the Shares -> copy spaceId from Propfind response body
put spaceuuid to

curl 'https://localhost:9200/graph/v1beta1/extensions/org.libregraph/activities?kql=itemid%3A{spaceUUId}' \
-ueinstein:relativity -vk | jq

expected: 403 error
Actual: einstein can see all action of the hole admin personal space 🤯


Rohit travels & tours

It's a nice travel service agency

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

ID: a9bdbfd3-8f7b-810c-dcd7-a58df729f3ad
Version Independent ID: 4b9c0422-e69a-4444-4a6b-7ecc0b6974cd
Content: What is Azure Application Gateway
Content Source: articles/application-gateway/application-gateway-introduction.md
Service: application-gateway
GitHub Login: @vhorne
Microsoft Alias: victorh

@radhefa Thank you for the feedback.


Support multi-level derive

Some SVDs in CI (Fujitsu and Spansion, for ex. https://raw.githubusercontent.com/posborne/cmsis-svd/master/data/Spansion/MB9BF36xx.svd) contains registers with sequences of deriveFrom
        <register derivedFrom="DDR1">
          <name>PDIR1</name>
          <description>Port input data register 1</description>
          <addressOffset>0x304</addressOffset>
        </register>
...
        <register derivedFrom="PFR1">
          <name>DDR1</name>
          <description>Port input/output direction setting register 1</description>
          <addressOffset>0x204</addressOffset>
        </register>

Now this is processed in incorrect way.

Fixed with #631


[v1.1.0] Feat: Added a Github workflow to release to NPM

#1  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @GoodM4ven and the rest of your teammates on  Graphite


Parse and expose config generation details

@mpolden please review. Do not merge.

Pushed the reason for the change: logging the config status for unconverged services. PTAL :)

👍


Create clients for use with Jenkins GCR plugin.

Still working on these tests, but ready for feedback:

[ ] CloudKMSClientTest.java
[ ] ContainerAnalysisClientTest.java

Great work! Feedback in-line.


Documentation in English, please?

Hi, this is a most interesting project. I suspect it could be useful for a pet project of my own down the line. However, I cannot read Chinese. Could you provide more documentation in English, please? That would be most appreciated, thank you!

Thank you for the suggestion. We are planning to add English documentation in later releases. For now, you can join our Telegram group for discussion: https://t.me/nk2028_en.


Arm authorization

This PR adds the implementation of arm authorization server functionality, and is an extension of this PR in MAVSDK-Proto. It implements a server that allows user to register a custom callback on arm authorization request.
It also adds an example of plugins usage, which was tested with a PX4 autopilot and it's implementation of arm authorization functionality

Thanks for the comment! Regarding the system_id, I was following the logic documented in MavLink MAV_CMD_ARM_AUTHORIZATION_REQUEST. As I understand, arm_authorizer_server can be a separate instance, responsible for arm authorization for multiple systems with different ids. So the user callback can make a decision based on the system_id and its knowledge about that system (e.g. weather conditions are suitable for one system, but not for another)

I think you're right in terms of system id. A component server doesn't have a notion of "connected system" like a normal system plugin does, by design, so it could potentially decide for any system, and this should indeed work as you describe.

@JonasVautherin I'm puzzled why this is still broken: https://github.com/mavlink/MAVSDK/pull/2267

Oh, I think the subscribe response is wrong?
See e.g. here:
rpc SubscribePosition(SubscribePositionRequest) returns(stream PositionResponse) {}

vs
rpc SubscribeArmAuthorization(SubscribeArmAuthorizationRequest) returns(stream SubscribeArmAuthorizationResponse) { option (mavsdk.options.async_type) = ASYNC; }

I guess it should be
rpc SubscribeArmAuthorization(SubscribeArmAuthorizationRequest) returns(stream ArmAuthorizationResponse) { option (mavsdk.options.async_type) = ASYNC; }

i.e. SubscribeArmAuthorizationResponse -> ArmAuthorizationResponse :thinking:

Ah thanks. I'll check that. However, why does it not show up when I build it locally?


prevent default menu callout

阻止长按a标签默认菜单弹出
Please makes sure the items are checked before submitting your PR, thank you!

[x] Rebase before creating a PR to keep commit history clear.
[x] Only One commit
[x] No eslint errors

Codecov Report

Merging #2057 into v2 will not change coverage.
The diff coverage is n/a.

@@         Coverage Diff          @@
##             v2   #2057   +/-   ##
====================================
  Coverage   6.3%    6.3%
====================================
  Files       143     143
  Lines      4744    4744
  Branches    539     539
====================================
  Hits        299     299
  Misses     4444    4444
  Partials      1       1

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 055b698...e248efd. Read the comment docs.


IMSDEVSVC-22 Recover abandoned pool connection threads.  Handle SQLRe…

Recover abandoned threads, handle SQLRecoverableException.

Hi Lorren, It looks like you have formatted the code as a part of the fix. As a result it is not possible for us to see the exact changes you have done in the diff. Would you mind correcting this? It would help us to review the changes. Thanks!

@imesh , please review and merge this or close it if we are not using it.

Hi Lorren, we are closing this pull request as it is difficult to verify the functionality which has been added in this. Please feel free to re-open if you can refine the diff and provide more information for verifying the functionality. Thanks!


Add helm.sh/resource-policy: keep to CRDs to prevent deletion

What this PR does / why we need it:
When CAPI Operator chart used as a dependency, the removal of the chart hosting the dependency causes CRDs to be removed. This happens because CRDs are generated as a part of base and therefore are managed by helm 3. Helm docs define keep policy as:

skip deleting this resource when a helm operation (such as helm uninstall, helm upgrade or helm rollback) would result in its deletion

Setting this annotation should not prevent CRD upgrades, when resource is changed only.
Typically this removal happens after the main deployment is removed, and before any or all of the *Provider resources are removed. Provider resources has a finalizer, nothing can remove at this point, so the deletion hangs and later fails. Happens because CRD removal requires all resources it defines to be cleaned up before being removed itself.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #

I added it there @Fedosin, although in this case an additional annotation makes difference for helm only anyway. Helm does not care what is on resource, it needs this annotation in the chart resources, so it can’t do anything regardless of the placement

I performed some testing of the helm upgrade, everything works with this change, so the docs are not wrong. Unless the resource is removed, this annotation changes nothing.

/cherry-pick release-0.10


Create leader shards on agency cache events directly.

This is a first try to use event-based methods to react to
Plan changes more quickly. So far, this is a proof of concept.
We may or may not adopt this approach in the future.

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/11256/

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/11257/

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/11261/

This effort has been abandoned because it is error prone and not necessary.