merge 了4月20日的 commit 之后 sw.js 报错

Checklist

[x] I have read the tutorials and know the correct effect of the functional design.
[x] There are no similar reports on existing issues (including closed ones).
[x] I found the bug on the latest code of master branch.

Describe the bug

merge 了4月20日的 commit 之后，控制台出现以下报错：
Uncaught (in promise) TypeError: Failed to fetch                      sw.js:1

同时，控制台对 googletagmanager 发出警告：
The FetchEvent for "<URL>" resulted in a network error response: the promise was rejected.
The FetchEvent for "https://www.googletagmanager.com/gtag/js?id=" resulted in a network error response: the promise was rejected.
Promise.then (async)
(anonymous)  @ sw.js:1

我很确信在 merge 4月20日的 commit 之前没有出现这些问题。
To Reproduce
Steps to reproduce the behavior:

Expected behavior

Screenshots

Software

Ruby version: 3.0.1p64
Gem version: 3.2.15
Bundler version: 2.2.16
Jekyll version: 4.2.0

Desktop

OS: Manjaro (Lastest)
Browser: Chrome 90.0.4430.85

Smartphone

Additional context

merge 最新 commit 之后问题消失，关闭该 issue。

很抱歉重开一下issue，问题仍然存在


Have some questions

Hi. i saw about human36m_batch_128.pkl.
but i don't understand some points.

when i read pkl file, ['images'] shape are (128, 4, 384, 384, 3). what is mean about 4?? num of cameras??

['detections'] shapes are (128, 4, 5). thoese bbox coordinates in second?? or third?? if in second, what does mean about 5?

the last key of dict, ['indexes']. what is this mean?? files index number?? Why is this necessary?

code:
import pickle
import numpy as np

with open('./learnable-triangulation-pytorch/data/human36m_batch_128.pkl', 'rb') as f:
    data = pickle.load(f)
# print(type(data))
key_list = list(data.keys())
# print(key_list)
# ['images', 'detections', 'cameras', 'keypoints_3d', 'indexes']

images = np.array(data['images'])
print("IMAGE_SHAPE : ", images.shape)

detections = np.array(data['detections'])
print("BOUNDING_BOX : ", detections.shape)

cameras = np.array(data['cameras'])
print("CAMERA_CALIBRATION : ", cameras.shape)

keypoints_3d = np.array(data['keypoints_3d'])
print("JOINTS_COORDINATES : ", keypoints_3d.shape)

indexes = np.array(data['indexes'])
print(indexes.shape)

outputs:
IMAGE_SHAPE :  (128, 4, 384, 384, 3)
BOUNDING_BOX :  (128, 4, 5)
CAMERA_CALIBRATION :  (4, 128)
JOINTS_COORDINATES :  (128, 17, 4)
(128,)

Hi,

4?? num of cameras??
Yes.

or third??
Yes. 5 is four coordinates plus detection confidence (like in any object detector; range is 0.0 to 1.0; you likely won't need it).

['indexes']. what is this mean?? files index number??
Index of sample in dataset (e.g. Human36MMultiViewDataset). Like so. I don't remember why we needed it, probably just for debugging or visualization, or maybe for proper alignment with ground truth.

@shrubb
I really appreciate to answering the question. thank you.
Because I couldn't get the human 3.6 data set, so currently working on training your model on a custom dataset I have.


serde: Allow users to set custom max msg size limit

Background
Currently, there is a global 1mb limit for msgs, but some users(@liamsi) would like to have per-protocol customization.
Implementation ideas

Extend Write with one more max param (unlikely)
Add additional interface for msgs(preffered):

// BoundedMessage can be implemented by msgs to set a customized size limit.
type BoundedMessage interface {
	Message

	MaxSize() int
}

The Write should then check if msg implements the interface and if it is, limit max allowed msg size.

An alternative and easier option is to check if io.LimitReader is passed, which should override MaxMessageSize


require lint before tests

Use golangci/golangci-lint-action instead of reviewdog/action-golangci-lint as the second was not reporting any failures even if there was some.
Report code coverage with codecov/codecov-action
I have set some flags per dialect and go version
Several linters has been fixed, some disabled so the build can pass

Codecov Report

Merging #4959 (d49308d) into master (90f139a) will decrease coverage by 47.06%.
The diff coverage is 23.20%.

@@             Coverage Diff             @@
##           master    #4959       +/-   ##
===========================================
- Coverage   78.16%   31.10%   -47.07%
===========================================
  Files          24       37       +13
  Lines        3032     5061     +2029
===========================================
- Hits         2370     1574      -796
- Misses        562     3356     +2794
- Partials      100      131       +31

Flag
Coverage Δ

go-1.16
31.10% <23.20%> (?)

go-1.17
31.10% <23.20%> (?)

mysql
31.10% <23.20%> (?)

postgres
31.10% <23.20%> (?)

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

Impacted Files
Coverage Δ

association.go
0.00% <0.00%> (-91.55%)
:arrow_down:

callbacks.go
0.00% <0.00%> (ø)

chainable_api.go
0.00% <0.00%> (ø)

clause/on_conflict.go
0.00% <0.00%> (ø)

finisher_api.go
0.00% <0.00%> (ø)

gorm.go
0.00% <0.00%> (ø)

migrator.go
0.00% <0.00%> (ø)

prepare_stmt.go
0.00% <0.00%> (ø)

scan.go
0.00% <ø> (ø)

schema/check.go
100.00% <ø> (ø)

... and 28 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 2c3fc2d...d49308d. Read the comment docs.

closing due to merge conflicts


Restore CAP_NET_RAW

Add CAP_NET_RAW back to the default list of granted capabilities.
Add capabilities lists to inspect output.

Interested in how/why this came about.
Did something break that required this capability?
How is the default list of kernel caps determined?

Me too.  I know that it is needed for ping, but not sure of anything else.  I want to remove it from CRI-O by default also.

The actual changes LGTM, but am interested in the conversation started by others.

This won't help unprivileged users, who currently won't get CAP_NET_RAW abilities on the host's network namespace, and privileged users are served equally well by #818, so dropping this one in favor of that.


feat(component-library): make AlertModal heading semibold

overview
This PR serves as its own ticket.
This might have been going from the start of AlertModal, but it seems that design has a semibold heading to the AlertModal but in code it's at a normal font weight. This PR makes the default AlertModal heading semibold.

Affects all AlertModals (and derivations like ContinueModal and others) across PD, Run App, and Labware Library
Exception: some AlertModals don't use the heading prop, but either omit the header or put in their own header. These uses won't get affected by semibolding the header. If they should be changed to match design, please point that out b/c now's a good time to address those problems.

changelog

Change AlertModel's heading to be semibold

List of affected components:
Run App

AddLabwareFailureModal
ConfirmResetPathModal
AddManualIp
RestartAppModal
UpdateAppModal
CalibrateDeck -- ExitAlertModal
CalibrateDeck -- InUseModal
CalibrateDeck -- NoPipetteModal
CalibrateLabware -- ProceedToRun
ChangePipette -- ExitAlertModal
ClearDeckAlertModal
ConfigurePipette update error
LostConnectionAlert
TemperatureControl modal
ModuleUpdate modal
PrepareModules modal "Open TC lid for calibration" modal
ReviewDeck - "Position latch to hold down plate" modal
AdvancedSettingsCard - 'Robot Logging' modal
ConnectAlertModal
ResetRobotModal ('Robot Configuration Reset')
connect form modal (ConnectModal/FormModal/index.js)
Successfully Connected / Disconnected modal (ResultModal)
DownloadUpdateModal
InstallModal
MigrationWarningModal ('Robot Operating System Update Available')
ReleaseNotesModal
VersionInfoModal ("It looks like your robot is already up to date, but if you're experiencing issues you can re-apply the latest update." / 'Robot is up to date')
ConfirmCancelModal ('Are you sure you want to cancel this run?')
ConfirmUploadModal ('Are you sure you want to open a new protocol?')
Tip probe ErrorModal
AppSettings ErrorModal
"Unable to home" ErrorModal

Labware Library -> Labware Creator

ImportErrorModal ("Cannot import file")
"Cannot export file" modal

Protocol Designer

Export warning modal (no commands/unused pipettes/unused modules)
Hint modals
Blocking hints
"Are you sure you want to make this change?" eg after edit pipettes
File upload modal (for older file upload)
labware upload message modal
Experimental feature warning

review requests

[ ] Reviewing every single modal that's getting bolded is probably overkill, I think sanity check is OK.
[ ] Double-checking: this is indeed the desired styling right?

risk assessment
This is a small styling change, but has a very broad scope across all our FE applications. Shouldn't break anything, at worst it could maybe cause line returns to happen that mess up layouts??

lol

lol


Add symb links to autogenerated notebooks

Let's reuse the sphinx generated notebooks, for that purpose i'm doing a softlink to them.

Shouldn't the softlink be the the way around? I though the notebooks should be out of the "doc" folder.

Shouldn't the softlink be the other way around? I though the notebooks should be out of the "doc" folder.

The notebooks generated by Sphinx are in the doc folder, so instead of copy them or re-generate them, I just did a symbolic link to them.
But now, checking the Files tab, it shows my local path, I mean it is not relative. I will investigate that.

@RobPasMue can you have a look? Windows makes absolute path sym links

Ok. I got it how to edit those symb links to be relative.... If someone has the repo locally and can check them, I would appreciate it.

@RobPasMue can you have a look? Windows makes absolute path sym links

Ok. I got it how to edit those symb links to be relative.... If someone has the repo locally and can check them, I would appreciate it.

Full time on PyGeometry right now... @GuillemBarroso  culd you do the check? Otherwise I'll do it tonight


java.lang.NoClassDefFoundError: Failed resolution of: Lnet/butterflytv/rtmp_client/RTMPMuxer;

How to solve this problem?

Do you include dependencies?
in build.gradle include
implementation 'net.butterflytv.utils:rtmp-client:3.0.1'


Build test suite

This one's been a long time coming...
Until now, I've been painstakingly and manually testing each and every feature with a test.py file I've gitignored. Mostly because testing requires a Gmail account and a phone number to test with. So I'd write a quick Shawk script, add some behaviors, and test whatever feature or bug I needed to with my own Gmail and phone.
I'd like to build a test suite that incorporates an email 'spoofer' in a sense that it...

does not require a real phone
preferably does not require a Gmail account

The first being a requirement, and the second being a nicety.
What I can see we need is a means to spoof an email address like<EMAIL_ADDRESS>to spoof a Verizon address, and an IMAP server to spoof. The IMAP server spoof may be unnecessary, since we can limit its impact on the outside world. For instance, ideally, we could prevent replying to spoofed numbers somehow - so maybe our __sendmail() function is just disabled entirely. We know it works, so we can instead wire this test Shawk instance up to print the input passed to __sendmail() to determine what would happen. That way we can test IMAP features like moving folders, but can't impact the outside world beyond that.
Additionally, we could configure the IMAP server to be read only. Not sure that's necessary or useful, though.
Would like to incorporate pytest for this effort.

It looks like using MiniMock should make mocking SMTP / IMAP calls feasible. If we go that route, it looks like testing receiving an actual message will be tough - so I'm thinking we'll just spoof calls to the handlers that we'll test anyway. That assumes that IMAP can connect and receive messages, and we'll later assume that IMAP can also modify labels of messages. That doesn't seem too unreasonable, assuming users are able to connect to the IMAP server in the first place.
So a lot of assumptions in that route - but I think most of them are fair.
Furthermore, I think I'll write a module to spoof a phone that we can use for interactive teststhat simulates SMS interactions with a Shawk Client. It'll provide a means to spoof a Client's IMAP connection receiving messages, so its messages will be handled by the message handlers, without ever actually interacting with SMTP or IMAP. This may be useful for custom user interaction testing, so it may be worth packaging it as shawk.Spoofer or similar.
Finally, looks like using PyTest ($ pip install pytest) is the way to go here. I've started creating a test suite over on the 'test' branch.


add annotations for flags

cobra.Command can make use of annotation in order to generate better
bash_completions

Merged as 18d831e


Fix missing default admin port for pinot-server

Description
The PR (https://github.com/apache/incubator-pinot/pull/6418) removed the default value of admin port for pinot-server. This makes pinot-servers  which don't have specified admin port in their instance configs fail to start the admin endpoints.
Before this fix:
$  lsof -i -P -n | grep LISTEN
java    140  ...  ...  IPv6 ...      0t0  TCP *:15507 (LISTEN)
java    140  ... ...  IPv6 ...      0t0  TCP *:8001 (LISTEN)

After this fix:
java    1231  ...  ...  IPv6 ...      0t0  TCP *:15507 (LISTEN)
java    1231  ...  ...  IPv6 ...      0t0  TCP *:8097 (LISTEN)
java    1231  ... ...  IPv6 ...      0t0  TCP *:8001 (LISTEN)

Upgrade Notes
Does this PR prevent a zero down-time upgrade? (Assume upgrade order: Controller, Broker, Server, Minion)

[ ] Yes (Please label as backward-incompat, and complete the section below on Release Notes)

Does this PR fix a zero-downtime upgrade introduced earlier?

[ ] Yes (Please label this as backward-incompat, and complete the section below on Release Notes)

Does this PR otherwise need attention when creating release notes? Things to consider:

New configuration options
Deprecation of configurations
Signature changes to public methods/interfaces
New plugins added or old plugins removed

[ ] Yes (Please label this PR as release-notes and complete the section on Release Notes)

Release Notes
If you have tagged this as either backward-incompat or release-notes,
you MUST add text here that you would like to see appear in release notes of the
next release.
If you have a series of commits adding or enabling a feature, then
add this section only in final commit that marks the feature completed.
Refer to earlier release notes to see examples of text
Documentation
If you have introduced a new feature or configuration, please add it to the documentation as well.
See https://docs.pinot.apache.org/developers/developers-and-contributors/update-document

It seems the issue's been fixed in this PR (https://github.com/apache/incubator-pinot/pull/6515) where it fixes not only for pinot-controller, pinot-broker but also for pinot-server as well.
We can close this PR now since it's duplicate.


Latex in notebook markdown not rendering correctly

Snippet
To insert a mathematical formula we use the dollar symbol $, as follows:

Euler's identity: $ e^{i \pi} + 1 = 0 $

To isolate and center the formulas and enter in math display mode, we use 2 dollars symbol:

$$
...
$$

Euler's identity: $$ e^{i \pi} + 1 = 0 $$

Jupyter

VS Code

Notice how the two places where latex is used doesn't render using latex and there is a duplication with the ...

Isn't is same as #118262 ?

This is because there are spaces around the $. This is a limitation of the library we use for math formulas
Closing as upstream. Long term, we don't want to maintain math support as part of VS Code core

Removing the milestone since this comes up during endgame testing


Several reference in rougescore

In the Name of God.
hello
I write followed code for usinge rougescore:
`import rougescore
summary = "I am a teacher."
reference = "I 'm a teacher."
result = rougescore.rouge_1(summary, reference,0)
print(result)`
How can I have four reference?
thank you

Hi,
This should be better documented, but all of the rouge functions take lists of models and references as arguments. The sentences must also be tokenized beforehand; otherwise you are computing character-level accuracy.
summaries = [summary.split()]
references = [reference1.split(), reference2.split(), ...]
result = rougescore.rouge_1(summaries, references, 0)

Hope this helps.

In the name of God
Hi

The sentences must also be tokenized beforehand; otherwise you are computing character-level accuracy.

I don 't understand. May you give a real example?
thank you

The arguments must be lists of sentences, and the sentences must be lists of words.
summaries = [['I', 'am', 'a', 'teacher', '.']]
references = [['I', "'m", 'a', 'teacher', '.'], ['I', 'am', 'a', 'teacher', '.']]
result = rougescore.rouge_1(summaries, references, 0)

In the name of GOD
Hi,
Is followed code possible?
import rougescore

summaries =  ['I', "am", 'a', 'teacher', '.']

#  [['I', "'m", 'a', 'teacher', '.'], ['I', 'am', 'a', 'teacher', '.']] is ref1
              # ['I', "am", 'a', 'teacher', '.'] is ref2

references = [['I', "'m", 'a', 'teacher', '.'], ['I', 'am', 'a', 'teacher', '.']],['I', "am", 'a', 'teacher', '.']

result = rougescore.rouge_2(summaries, references, 0)

print(result)

thank you

summaries should be a list of sentences (list of lists of strings):
summaries =  [['I', "am", 'a', 'teacher', '.']]

Why does ref1 have two sentences? references should also be a list of sentences.

In the name of God
Hi,

summaries should be a list of sentences (list of lists of strings):

Result of bottom code is 0.
import rougescore

# system summary & reference summary

#summaries =  ['I', 'am', 'a', 'teacher', '.']
summaries =  [['I', "am", 'a', 'teacher', '.']]

references = [['I', "'m", 'a', 'teacher', '.'], ['I', 'am', 'a', 'teacher', '.']]

# If you evaluate ROUGE by sentence list as above, set files=False
result = rougescore.rouge_2(summaries, references, 0)

print(result)

And result of bottom code is 0.75.
import rougescore

# system summary & reference summary

#summaries =  ['I', 'am', 'a', 'teacher', '.']
summaries =  ['I', "am", 'a', 'teacher', '.']

references = [['I', "'m", 'a', 'teacher', '.'], ['I', 'am', 'a', 'teacher', '.']]

# If you evaluate ROUGE by sentence list as above, set files=False
result = rougescore.rouge_2(summaries, references, 0.5)

print(result)

Why is result 0, when summarize is list of lists of string? Is it logical?

Why does ref1 have two sentences? references should also be a list of sentences.

Real mode references have several sentences. Have to be they merge?
Thank you

Ah, my mistake, you're correct. Each function accepts only a single summary (via peer) and multiple references (via models). So your second snippet of code was correct.
import rougescore
summary =  ['I', "am", 'a', 'teacher', '.']
references = [['I', "'m", 'a', 'teacher', '.'], ['I', 'am', 'a', 'teacher', '.']]
result = rougescore.rouge_2(summary, references, 0.5)
print(result)

This is why it's good to document things. :)

In the name of God
Hi,
Please bring a Example for ref1 have 2 sentence and ref2 have 1 sentence and etc.
Thank you

You can concatenate two sentences into one list.
import rougescore
summary = ['I', "am", 'a', 'teacher', '.']
references = [['I', "'m", 'a', 'teacher', '.', 'I', 'am', 'a', 'teacher', '.'], ['I', "am", 'a', 'teacher', '.']]
result = rougescore.rouge_2(summary, references, 0)
print(result)

In the Name of God
Hello,
Thank you very much for answer.
Good luck.


add capability constructors

mp ipv4/ipv6 and add path to start

#36 added mp capability constructor

add-path added in https://github.com/jwhited/corebgp/commit/8393cb68c8f205e0f2fea0c895631a7125dfdc9c


Error: Missing required option (option.bitproxies.apiKey)

proxy-lists getProxies --countries="'us, ca"
Getting proxies...
Error: Missing required option (option.bitproxies.apiKey): You can get an API key for this service by creating an account at https://bitproxies.eu/
Error: Missing required option (option.kingproxies.apiKey): You can get an API key for this service by creating an account at https://kingproxies.com/register
Writing output to C:\Users\ADMIN\Desktop\appsearch\myapp/proxies.txt
TypeError: Cannot read property 'toString' of undefined
how to fix error.

Error: Missing required option (option.bitproxies.apiKey): You can get an API key for this service by creating an account at https://bitproxies.eu/
Error: Missing required option (option.kingproxies.apiKey): You can get an API key for this service by creating an account at https://kingproxies.com/register

You can safely ignore these errors. If you want to get proxies from either of these sources, you will need to create an account at those services and input your API key as an option when using proxy-lists.

TypeError: Cannot read property 'toString' of undefined

This error is the only one that concerns me. It could be a temporary problem with one of the proxy sources, or one of the source could have changed the structure of their output. I'll have a look when I have some spare time.

and input your API key as an option when using proxy-lists.
And how does the config for this should look like?

there's zero documentation on how to configure API keys from what I can see, can you please explain more?


[CPDNPQ-2076] Admin Management

Context
Ticket: https://dfedigital.atlassian.net/browse/CPDNPQ-2076
Implement admin management currently at /admin/admins as new version at /npq-separation/admin/admins

Looking good so far. I left a suggestion on the naming as having an 'admins' section inside the admin section feels like it could be a bit confusing. Perhaps referring to DfE people as 'staff' would make things easier? (there's a fair chance that could just make everything more confusing - worth having a chat with the team).

@cwrw aren't we deleting the old admin section and replacing it with the new one at the point of separation?

@cwrw aren't we deleting the old admin section and replacing it with the new one at the point of separation?

In an ideal world yes, but unfortunately due to time constraints we are only adding missing functionality to the admin which includes the finance dashboards and all the other ECF tools. After separation the admin dashboard can be fully cleaned up and moved to the new world.
Appreciate this can be confusing but we have discussed this with the NPQ team and they are happy with the approach for now.


Use ELD-AAC for HomeKit cameras

Hi,
I would like to know if there's a way to use eld-aac rather than opus for HomeKit audio since opus has known issue for choppy sounds. I tried to use ffmpeg args suggested here (-c:a libfdk_aac -profile:a aac_eld) with custom (nonfree) build ffmpeg binary, but it is recognized as MPEG4-GENERIC only and on the other hand, comsumer (HomeKit) only accept OPUS currently.
{
    "producers": [
        {
            "type": "RTSP active producer",
            "url": "...",
            "remote_addr": "...",
            "user_agent": "go2rtc/1.8.4",
            "sdp": "v=0\r\no=- 1 1 IN IP4 <IP_ADDRESS>\r\ns=go2rtc/1.8.4\r\nc=IN IP4 <IP_ADDRESS>\r\nt=0 0\r\nm=audio 0 RTP/AVP 96\r\na=rtpmap:96 MPEG4-GENERIC/8000\r\na=fmtp:96 profile-level-id=1;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3; config=F8F62000\r\na=control:trackID=0\r\nm=video 0 RTP/AVP 97\r\na=rtpmap:97 H264/90000\r\na=fmtp:97 packetization-mode=1; sprop-parameter-sets=Z01AKKaAeAIn5ZsgAAADACAAAAMCkIA=,aO48gA==; profile-level-id=4D4028\r\na=control:trackID=1\r\n",
            "medias": [
                "audio, recvonly, MPEG4-GENERIC/8000",
                "video, recvonly, H.264 Main 4.0"
            ],
            "receivers": [
                "97 H264, bytes=912956, senders=1"
            ],
            "recv": 1015365
        }
    ],
    "consumers": [
        {
            "type": "HomeKit passive consumer",
            "remote_addr": "<IP_ADDRESS>:51815",
            "sdp": "{CodecType:0 CodecParams:[{ProfileID:[1] Level:[2] PacketizationMode:0 CVOEnabled:[] CVOID:[]}] VideoAttrs:[{Width:1280 Height:720 Framerate:30}] RTPParams:[{PayloadType:99 SSRC:75540579 MaxBitrate:299 RTCPInterval:0.5 MaxMTU:[1378] ComfortNoisePayloadType:[]}]}\n{CodecType:3 CodecParams:[{Channels:1 Bitrate:0 SampleRate:[1] RTPTime:[20]}] RTPParams:[{PayloadType:110 SSRC:2778159904 MaxBitrate:24 RTCPInterval:5 MaxMTU:[] ComfortNoisePayloadType:[13]}] ComfortNoise:[0]}",
            "medias": [
                "video, sendonly, H264",
                "audio, sendonly, OPUS"
            ],
            "senders": [
                "97 H264, bytes=912956, receivers=1"
            ],
            "send": 936228
        }
    ]
}

Thanks!

This format not supported yet because require to have not default FFmpeg version.


how could we adding extra header into LitellmChatModel

@prompt(     "Say hello",     model=LitellmChatModel(         model = "gpt-4o",         api_base = "",         custom_llm_provider="azureopen",         extra_header= {              "Api-Key": "xxxx",             "Content-Type": "application/json"         }     ), ) def say_hello_litellm() -> str: ...
format seem as above. Currently, litellm can support me to add the extra_header
response = completion(     model="gpt-4o",      messages=[{ "content": "Hello, how are you? say something","role": "user"}],     api_base="",     custom_llm_provider="azure", # litellm will use the openai.ChatCompletion to make the request,     extra_headers = {         "Api-Key": "xxx",         "Content-Type": "application/json"     } )

Hi @ashinwz Currently there isn't a way to do this in magentic. What do you put in the extra headers?
I would accept a PR to add this as an init parameter for the LitellmChatModel. For an example of that see PR https://github.com/jackmpcollins/magentic/pull/185 or PR https://github.com/jackmpcollins/magentic/pull/221


Anonymous user field should check on existed users while saving

For example:
http://apptest.admin.kademi-beta.co/manageApps/

Go to the URL shorteter app settings
Enter invalid username or email (or anything else)
Push save
It should warn you that there no such user existed in that org.

Good suggestion!

Done

Works ok!


ERROR: Failed to access: http://namecheck.fontdata.com.

Observed behaviour
 >> com.google.fonts/check/fontdata_namecheck
    Familyname must be unique according to namecheck.fontdata.com
    with ./Fonts/ttf/Petrona-ExtraBoldItalic.ttf

      Rationale:
      We need to check names are not already used, and today the best place to
      check that is http://namecheck.fontdata.com

    * ERROR: Failed to access: http://namecheck.fontdata.com.
Please report this issue at: https://github.com/googlefonts/fontbakery/issues [code: namecheck-service]

It told me to report, so I did.
I hope a unique name won't lead to a failure anyway, because some fonts that we add are actually already listed there.

@felipesanches @yanone,
I'm getting the same thing.

💔 ERROR Failed to access: http://namecheck.fontdata.com.
Please report this issue at: https://github.com/googlefonts/fontbakery/issues [code: namecheck-service]

I prefer to keep this as an ERROR because we want people to report it here whenever the site stops working, as we may need to address eventual changes in the integration with the service. And FAIL is dedicated to problems with the font project, while ERRORs are for problems with the setup.

Ok. Then maybe catch that ERROR, add some explanation, about what is happening, like:
This check relies on the external service  http://namecheck.fontdata.com via the internet.
While the service cannot be reached or does not respond this check is broken.
You can exclude this check with the command line option:
       "-x com.google.fonts/check/fontdata_namecheck"
or wait until the service is available again. If the problem persists please report this
issue at: https://github.com/googlefonts/fontbakery/issues.

original error message: {error.message}

And raise it as new ERROR again.

OK, I like that!

May I suggest to look into implementing the Fontdata API instead and/or update the current request URL to use https instead?

instead

Using the API and/or using HTTPS will not spare us from an unresponding service or bad network.

implementing the Fontdata API

All I can find about the API is https://namecheck.fontdata.com/about/

Developers / API
Even this tool is in an very early stage there is an API provided to programtically access the data.

@larsschwarz where is the documentation on how to use the API?

@graphicore  See https://github.com/googlefonts/fontbakery/issues/2684#issuecomment-559297019

@larsschwarz thanks. Yeah, that's pretty straight forward.

I'm having the same error with Fontbakery too right now :/


Compatibility with Vim Visual Multi plugin

fixes https://github.com/folke/which-key.nvim/issues/115
hack but works.  The underlying problem is caused by which-key popup, which invalidates visual-multi state. This PR checks if before opening WKey popup we were in Visual-multi-mode, if so, then reapply last visual multi state - vim.cmd[[normal \gS]]

@folke would you be opposed to merging this PR (sorry for the ping) this multi cursor plugin is essentially the de facto MC plugin and the incompatibility between these two plugins is pretty inconvenient 🙏🏿

@akinsho done! :)


RCG generates incorrect offsets for no aggr Reports

A Report view with no FRA, and 'As Data' set for both sort keys (i.e. no aggregation in MR88) creates DTEs in the XLT but with incorrect offsets. It looks like it's getting confused that it doesn't have CTEs.
See SAFRWBGD, Env 795, View 12200.
Generated on 2024-07-19 0:0:0
       1     0 HD

       2     0 RENX  10201
------------
View 0012200
------------
       3     0 NV   DETAIL  LR=10243 SKA=20, STA=0, DTA=12, CTC=0 Source Number=1
       4     1 SKE    10201   10243  400584   11  10 X (U/0,0 NONE)  ->     1  10 X (U/0,0 NONE)
       5     2 SKE    10201   10243  400583    1  10 X (U/0,0 NONE)  ->    11  10 X (U/0,0 NONE)
       6     3 DTE    10201   10243  400590   32   6 P (S/0,2 NONE)  ->     1   6 P (S/0,2 NONE)
       7     4 DTE    10201   10243  400591   38   6 P (S/0,2 NONE)  ->    14   6 P (S/0,2 NONE)
       8     0 WRXT Dest=Extract
       9     0 ES   10201
      10     0 EN

Just a note that MR91 has the same error

Just as an extra note, it doesn't seem to matter if the sort keys are set as 'As Data' or 'Categorize', or 'Print' or 'Print Suppress', the problem seems to happen when:

there is no FRA, and
there are columns with the Group Aggregation Function set to a value

It used to be that the Group Aggregation Function could be blank, so avoid this error, but now blank is not allowed. That is another question for debate - should we allow the Group Aggregation Function to be blank again?

Another piece of information - GVBMR88 expects numeric columns to be in CT columns, if any subtotaling function (record or group) is specified. If the compiler generates DT columns only, and there is a Group Aggregation Function set, then MR88 will return all zeros, because it's trying to use CT columns that aren't there. MR88 should probably handle this better, with at least an error message.


React Native build works on iPhone Simulator but fails on a real device

Description
My React Native build works on an "iPhone 11 Pro" Simulator but fails on a real "iPhone 11 Pro" with a "unable to attach DB" error:
> npx react-native run-ios --device
warn Multiple Podfiles were found: ios/Podfile,vendor/bundle/ruby/2.7.0/gems/cocoapods-core-1.11.3/lib/cocoapods-core/Podfile. Choosing ios/Podfile automatically. If you would like to select a different one, you can configure it via "project.ios.sourceDir". You can learn more about it here: https://github.com/react-native-community/cli/blob/master/docs/configuration.md
info Found Xcode workspace "MovieMagic.xcworkspace"
info Found booted Kunal’s iPhone, iPhone 11 Pro
info Building (using "xcodebuild -workspace MovieMagic.xcworkspace -configuration Debug -scheme MovieMagic -destination id=00008030-001245CA3A02802E")
error Failed to build iOS project. We ran "xcodebuild" command but it exited with error code 65. To debug build logs further, consider building your app with Xcode.app, by opening MovieMagic.xcworkspace.
Command line invocation:
    /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -workspace MovieMagic.xcworkspace -configuration Debug -scheme MovieMagic -destination id=00008030-001245CA3A02802E

User defaults from command line:
    IDEPackageSupportUseBuiltinSCM = YES

Prepare packages

Computing target dependency graph and provisioning inputs

Create build description
Build description signature: 3ecfc7c39566fa70c09c9f500a168ade
Build description path: /Users/nareshbhatia/Library/Developer/Xcode/DerivedData/MovieMagic-eyukdevunxkksvclqodiaeztayqs/Build/Intermediates.noindex/XCBuildData/3ecfc7c39566fa70c09c9f500a168ade-desc.xcbuild

note: Building targets in dependency order
error: unable to attach DB: error: accessing build database "/Users/nareshbhatia/Library/Developer/Xcode/DerivedData/MovieMagic-eyukdevunxkksvclqodiaeztayqs/Build/Intermediates.noindex/XCBuildData/build.db": database is locked Possibly there are two concurrent builds running in the same filesystem location.
warning: Run script build phase 'Bundle React Native code and images' will be run during every build because it does not specify any outputs. To address this warning, either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the script phase. (in target 'MovieMagic' from project 'MovieMagic')
warning: Run script build phase 'Start Packager' will be run during every build because it does not specify any outputs. To address this warning, either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the script phase. (in target 'MovieMagic' from project 'MovieMagic')

** BUILD FAILED **

React Native Version
0.71.4
Output of npx react-native info
info Fetching system and libraries information...
System:
    OS: macOS 13.2.1
    CPU: (4) x64 Intel(R) Core(TM) i5-7600K CPU @ 3.80GHz
    Memory: 2.26 GB / 16.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 16.17.1 - ~/.nvm/versions/node/v16.17.1/bin/node
    Yarn: 1.22.19 - ~/.yarn/bin/yarn
    npm: 8.15.0 - ~/.nvm/versions/node/v16.17.1/bin/npm
    Watchman: 2<IP_ADDRESS> - /usr/local/bin/watchman
  Managers:
    CocoaPods: 1.11.3 - /Users/nareshbhatia/.rvm/gems/ruby-2.7.6/bin/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 22.2, iOS 16.2, macOS 13.1, tvOS 16.1, watchOS 9.1
    Android SDK: Not Found
  IDEs:
    Android Studio: Not Found
    Xcode: 14.2/14C18 - /usr/bin/xcodebuild
  Languages:
    Java: Not Found
  npmPackages:
    @react-native-community/cli: Not Found
    react: 18.2.0 => 18.2.0
    react-native: 0.71.4 => 0.71.4
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Steps to reproduce
Cannot reproduce with unmodified app created using the following command:
npx react-native init ReactNativeDemo --template react-native-template-typescript

Can only reproduce using my app which was created using the above command and additional dependencies were added. No existing dependencies were modified, e.g.
{
  "dependencies": {
    "react": "18.2.0",
    "react-native": "0.71.4"
  },
  "devDependencies": {
    "metro-react-native-babel-preset": "0.73.8",
    "typescript": "4.8.4"
  }
}

Steps to reproduce:

Clone https://github.com/nareshbhatia/movie-magic-2-react-native
yarn
yarn pod-install
npx react-native run-ios - this runs successfully on the simulator
npx react-native run-ios --device - this fails with "unable to attach DB" error, app is never installed on the attached device

Snack, code example, screenshot, or link to a repository
https://github.com/nareshbhatia/movie-magic-2-react-native

When I tried all the above steps through the terminal, I also got the same error message like DB blocked, but when I tried the following steps app installed on my device

Clone https://github.com/nareshbhatia/movie-magic-2-react-native
yarn
yarn pod-install
open the workspace in xcode and try to run
terminal popup and try ios, the application installed on my device.

XCODE Version: 14.2
iOS Version: 16.2
MacOS Version: 12.6.2 (21G320)

I have identified the issue to be with the next version of nativewind (see https://github.com/marklawlor/nativewind/issues/363). The build never finishes and hence metro gets blocked. Closing this issue.


Hostile entity with name tag despawn

BkCommonLib version: 1.15.2-v3
TrainCarts version: 1.15.2-v2-611
Paper version: 1.15.2-165

Problem or bug:
Hostile entities with name tag despawn in minecart.
Expected behaviour:
Not despawn.
Steps to reproduce:

Run clean server with this plugins in default config.
Use name tag on hostile entity (zombie, creeper, etc.).
Push entity to minecart.
Go 500 blocks away from the minecart.
Go back to entity.

Hostile mobs don't despawn from minecarts in vanilla Minecraft right? Yep sounds like a bug, either no mobs should despawn, i.e. they come back when the cart does, or they follow vanilla convention to not despawn when named.

Oh sorry, it is not a bug in your plugin. I reproduce same bug in vanilla.
Is it possible to fix it in your plugin?

strange that this exists in vanilla. Is this something that is also reported on the mojang bug tracker or is this 'expected behavior'? I would think nametagged entities should never despawn, whether in a minecart or not.

I mean, the logic is understandable, unnamed entities despawn, along with every single passenger, so unnamed minecarts despawn, ignoring whether the passenger is named or not.

A month has passed, I assume the word is not patchable or don't want to patch?

Since a workaround exists (nametags) I don't think it is really needed to patch this, since people that want entities in minecarts deliberately would already set a tag to begin with

No, listen, hostile mobs despawn even with nametags.

Those that are inside minecarts despawn with the cart and don't come back.

Ohhh...well yeah that sounds kinda serious. Especially if they despawn with the minecart. Can leave this open then, as I know people have mobs in trains as a decorative thing too.


Add Gemma 2 2B

Adding Gemma 2 2B model checkpoints weights. This works because of the great prior work of @Andrei-Aksionov !

Thanks Sebastian!


[Infinite loop] Parser error with I002 (required imports) and F401 (unused import)

I ran into a fun error:
PS> ruff -V
ruff 0.5.4
PS> ruff check --isolated --select I002,F401 --fix --unsafe-fixes --config "lint.isort.required-imports=['from path import Path']" bug.py

error: Failed to converge after 100 iterations.

This indicates a bug in Ruff. If you could open an issue at:

    https://github.com/astral-sh/ruff/issues/new?title=%5BInfinite%20loop%5D

...quoting the contents of `bug.py`, the rule codes I002, along with the `pyproject.toml` settings and executed command, we'd be very appreciative!

bug.py:1:1: I002 Missing required import: `from path import Path`
Found 101 errors (100 fixed, 1 remaining).
[*] 1 fixable with the --fix option.

PS> type bug.py
_ = 'Path'

The content of bug.py is "_ = 'Path'\n". If you remove the assignment, all works (one imagines as the string is parsed as a docstring).
_ = 'Path'

The error exists going back at least as far as 0.2.2 (0.2.1 gives errors with mixing --isolated and --config).
I can't see any similar issues, but if I've missed one please close this!
A

Thanks, this makes sense. Will fix.

It's kind of an obvious failure, whoops -- but it's never come up because "required imports" is typically used for from __future imports, which are never marked as unused.

As background, this came up in the context of (attempting to) moving Sphinx to pathlib globally. I wanted to add from pathlib import Path to every module to avoid undefined name errors when doing simple regex-based refactorings, but when I ran ruff check . --fix I had this error.
I'm not sure which of the required import or the undefined name should take priority (instict says the required import, as the user has requested it), but hopefully Ruff shouldn't crash!
Thank you for the quick response as always Charlie!
Best,
Adam

Totally. That's a clever trick! (I'm guessing you can workaround by running I002 first with the required-import, then F401 second, without the required-import?)
Agree that the required import should take priority. Think we just need to respect that in F401.

I'm guessing you can workaround by running I002 first with the required-import, then F401 second, without the required-import?

Yep, running with --select fixed things -- I just wanted to report upstream to make the team aware!
A

Thanks Charlie!
A


Support CosmWasm v1.1 schema response types

first we supported the schema https://github.com/CosmWasm/ts-codegen/pull/60
Now we need to add response type support

[ ] createQueryInterface
[ ] createWasmQueryMethod
[ ] createReactQueryHooks
[ ] createRecoilSelector

should close with #63


Login page for doctor

Hi, can I work on this I am new to open source. Thanks!

Are you a participant at Student Code-in? And what's your name?

Hi I am Divanshu Agarwal, but I am not a part of Student Code-in.

Completed the front-end of the login page


Error Calibrating IMU and failed to receive IMU frames when stream Depth Color IMU at the same time

Required Info

Camera Model
D435i

Firmware Version
<IP_ADDRESS>

Operating System & Version
JetPack 4.3

Kernel Version (Linux Only)
Linux 4.9.140-tegra aarch64

Platform
NVIDIA Jetson Nano

SDK Version
2.32.1

Language
Python

Segment
Robot

Issue Description
I'm having some troubles with my realsense. First, I got this error when I open realsense-viewer
 09/05 04:24:38,836 WARNING [548395409856] (types.cpp:49) Accel Sensitivity:hwmon command 0x4f failed. Error type: No data to return (-21).

After looking for the solution, I tried to calibrate my realsense with the rs-imu-calibration.py provided in SDK. But after calibration, it failed to write the results to the eeprom:
Writing files:
accel_ast.txt
gyro_ast.txt
[-2.77070314e-03  7.31204644e-06 -3.71226973e-05]
[1000 1000 1000 1000 1000 1000]
using 6000 measurements.
[[ 1.02466962  0.02833392 -0.00701211]
 [-0.01204428  1.01828694  0.03595002]
 [ 0.00251626 -0.00895735  1.01212725]
 [-0.06575837  0.04205819  0.02977264]]
residuals: [  4.46210107  42.70104708<PHONE_NUMBER>3]
rank: 4
singular: [438.4666239<PHONE_NUMBER>5<PHONE_NUMBER>6  77.4509522 ]
norm (raw data  ): 9.626653
norm (fixed data): 9.803630 A good calibration will be near 9.806650
Would you like to write the results to the camera's eeprom? (Y/N)Y
Writing calibration to device.

Done. failed to set power state

I'm wondering what's wrong with my device?
Also I'm having a lot of problems with Python Wrapper. I can't stream Color + Depth + IMU at the same time. Similar to #5628 and #6031 . I run their kindly provided code, and it didn't succeed to read the IMU frames. But strangely, sometimes after I restart my Jetson Nano, the code worked! But on the second time running, IMU frames timeout! I've stop the pipeline properly, so I think that's not the problem. I think that's a bug. I've been restarting my device frequently to find out the problem.
I'm using only 1 realsense, and I'm using USB cable provided in the product box. I also powered my Jetson Nano properly with sufficient power supply, if you would guess those. :)

I considered the calibration EEPROM writing problem carefully.  As a first step to try, I would recommend performing a "gold reset" on the camera to return it to factory defaults.  If there is a corruption in the calibration table that is stored inside the camera then the gold reset can correct it.
https://forums.intel.com/s/question/0D70P000006EFHESA4
There have been a couple of previous cases related to dificulty with using Python to stream color, depth and IMU together.   I hope that the links below will provide useful insights.
https://github.com/IntelRealSense/librealsense/issues/5628
https://github.com/IntelRealSense/librealsense/issues/6031

I considered the calibration EEPROM writing problem carefully. As a first step to try, I would recommend performing a "gold reset" on the camera to return it to factory defaults. If there is a corruption in the calibration table that is stored inside the camera then the gold reset can correct it.
https://forums.intel.com/s/question/0D70P000006EFHESA4
There have been a couple of previous cases related to difficulty with using Python to stream color, depth and IMU together. I hope that the links below will provide useful insights.
#5628
#6031
The second link relates specifically to streaming color, depth and IMU at the same time on Nano.

Thank you for your reply! Sure, for the problems with Python stream color depth and IMU together, already tried those solutions and their codes. But it didn't work as well. But let leave that aside while trying to fix the calibration error. Maybe after that it will work fine!
Refering to https://www.intel.com/content/dam/support/us/en/documents/emerging-technologies/intel-realsense-technology/RealSense_D400_Dyn_Calib_User_Guide.pdf. I failed to get the deb package.
$ sudo apt-key adv --keyserver keys.gnupg.net --recv-key C8B3A55A6F3EFCDE || sudo apt-key adv -- keyserver hkp://keyserver.ubuntu.com:80 --recv-key C8B3A55A6F3EFCDE
Executing: /tmp/apt-key-gpghome.gtcD6BCs9P/gpg.1.sh --keyserver keys.gnupg.net --recv-key C8B3A55A6F3EFCDE
gpg: key C8B3A55A6F3EFCDE: ""CN = Intel(R) Intel(R) Realsense", O=Intel Corporation" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1

$ sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo xenial main" -u
Get:1 file:/var/cuda-repo-10-0-local-10.0.326  InRelease
Ign:1 file:/var/cuda-repo-10-0-local-10.0.326  InRelease
Get:2 file:/var/visionworks-repo  InRelease
Ign:2 file:/var/visionworks-repo  InRelease
Get:3 file:/var/visionworks-sfm-repo  InRelease
Ign:3 file:/var/visionworks-sfm-repo  InRelease
Get:4 file:/var/visionworks-tracking-repo  InRelease
Ign:4 file:/var/visionworks-tracking-repo  InRelease
Get:5 file:/var/cuda-repo-10-0-local-10.0.326  Release [574 B]
Get:6 file:/var/visionworks-repo  Release [1.999 B]
Get:7 file:/var/visionworks-sfm-repo  Release [2.003 B]
Get:5 file:/var/cuda-repo-10-0-local-10.0.326  Release [574 B]
Get:8 file:/var/visionworks-tracking-repo  Release [2.008 B]
Get:6 file:/var/visionworks-repo  Release [1.999 B]
Get:7 file:/var/visionworks-sfm-repo  Release [2.003 B]
Get:8 file:/var/visionworks-tracking-repo  Release [2.008 B]
Hit:11 http://ports.ubuntu.com/ubuntu-ports bionic InRelease
Hit:14 http://ports.ubuntu.com/ubuntu-ports bionic-updates InRelease
Get:15 http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo bionic InRelease [3.230 B]
Hit:16 http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo xenial InRelease
Hit:17 http://ports.ubuntu.com/ubuntu-ports bionic-backports InRelease
Hit:18 http://ports.ubuntu.com/ubuntu-ports bionic-security InRelease
Get:19 https://repo.download.nvidia.com/jetson/common r32 InRelease [2.541 B]
Get:20 https://repo.download.nvidia.com/jetson/t210 r32 InRelease [2.555 B]
Fetched 8.326 B in 4s (2.053 B/s)
Reading package lists... Done

$ sudo rm -f /etc/apt/sources.list.d/realsense-public.list

$ sudo apt-get update
...

$ sudo apt-get install librscalibrationapi
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package librscalibrationapi

can you help me with this problem before I perform the gold reset?

Someone else had problems installing librscalibrationapi but were able to install librscalibrationtool.
https://forums.intel.com/s/question/0D50P00004WIrgvSAD/possible-to-calibrate-d435-from-ubuntu-1804?language=en_US
librscalibrationtool is actually the one that you want.  The 'Calibration API' is a more advanced tool for users who want to create their own custom calibration tool.
If you installed librscalibrationtool first and then tried installing the optional librscalibrationapi second, then that second optional step can be skipped as you do not need the custom calibration tool creation functions.

@MartyG-RealSense yes, same error with librescalibrationtool. It cannot find the package. But that's okay I used Windows and it worked. I got result:
>Intel.Realsense.CustomTW.exe -g
CustomRW for Intel Realsense D400, Version: <IP_ADDRESS>

  Device PID: 0B3A
  Device name: Intel RealSense D435I
  Serial number: 8**********8
  Firmware version: <IP_ADDRESS>

Calibration on device successfully reset to default gold factory settings.

And then I performed again rs-imu-calibration same error:
Would you like to write the results to the camera's eeprom? (Y/N)Y
Writing calibration to device.

Done. failed to set power state

Okay, thanks for trying the gold reset.  At least we have eliminated the calibration table as a potential cause of your problem.
Your opening mention of having sufficient power supply suggests that you are using a mains electricity powered USB 3 hub connected to a wall power socket?

Okay, thanks for trying the gold reset. At least we have eliminated the calibration table as a potential cause of your problem.
Your opening mention of having sufficient power supply suggests that you are using a mains electricity powered USB 3 hub connected to a wall power socket?

Thanks! I don't use any USB 3 Hub, I connect it directly to the Jetson Nano USB Port, but my Jetson Nano is powered with 5V Barrel Jack with maximum current 3.5A. I never have (yet) any issue with my Jetson Nano failed to power any USB device through it's USB port. I also could perform stream depth+color with Python code continuously. (Which it means it could work, and I don't think EEPROM writing or IMU calibration needs more power than depth+color stream, am I wrong?)

It's more an issue of whether the power supplied to the USB port is stable, rather than the overall amount of power supplied to the board.  An enterprise computer with a big power supply can still experience USB port problems.
What a mains powered USB hub does is provide stable power to the USB port, because the hub is supplied from the mains electricity.  Whereas if the camera is plugged directly into the computer's USB port, it is still a "passive" connection that relies on the computer's power supply (whilst a mains powered USB hub is an "active" connection).
This guide to the Nano power supply suggests having both a barrel jack and a powered hub:
https://desertbot.io/blog/jetson-nano-power-supply-barrel-vs-micro-usb
Having said that, you are able to run all three streams on the first run of the program, so the hardware is capable of performing it without the help of a powered hub.  I have also heard of cases like this, where the application fails on a subsequent run, seemingly because something was not closed properly after the first run.
Are you using syncer instead of pipeline in your program, please?  There was a reported problem earlier this week with syncer not being shut down properly after the stop and then close of a sensor.
https://github.com/IntelRealSense/librealsense/issues/6337

@MartyG-RealSense So the idea about using Jetson Nano and RealSense was to make a portable wearable device and battery powered. I'm afraid it is not possible for me to use powered hub while designing a simple portable battery powered wearable device.
Sure, I also aware of that pipeline, so I said earlier in the first post that I stop all my pipelines correctly. I didn't use syncer since I used and still modified many sample codes provided. I even try to stop the pipelines twice (in case my try .. finally ... statement didn't work, but I got cannot stop pipeline before start in second stop, which means that my pipelines stop (2 stop, 1 for imu pipeline and 1 for rgb+color pipeline) worked correctly.
Also when I open realsense-viewer it could stream through IMU depth and color. Maybe if you want me to check or try something, I could try to provide it.

It is not unusual for a process to work fine in the RealSense Viewer (which uses C++ language) but be more problematic to reproduce in the Python language due to differences between the languages.
Could you test please whether the problem with IMU occurs if you reset the camera (but not the Nano) by unplugging the camera after the first successful run and then plugging it back in before starting the program for the second time?

This in my code:
import pyrealsense2 as rs
import numpy as np
import cv2
import time

print('\nusing librealsense sdk version: ' + str(rs.__version__))

# Stream Setting
device_id = None  # Default: None
enable_imu = True
accel_fps = 63
gyro_fps = 200
enable_depth = True
depth_resolution = (640, 360)
depth_fps = 60
enable_rgb = True
rgb_resolution = (640, 360)
rgb_fps = 60
do_align = True
if do_align and (not enable_depth or not enable_rgb):
    print('do align only if depth and color enabled!')
    exit()

if enable_imu:
    imu_pipeline = rs.pipeline()
    imu_config = rs.config()
    if device_id is not None:
        imu_config.enable_device(device_id)
    imu_config.enable_stream(rs.stream.accel, rs.format.motion_xyz32f, accel_fps)
    imu_config.enable_stream(rs.stream.gyro, rs.format.motion_xyz32f, gyro_fps)
    imu_profile = imu_pipeline.start(imu_config)

if enable_depth or enable_rgb:
    pipeline = rs.pipeline()
    config = rs.config()
    if device_id is not None:
        config.enable_device(device_id)
    if enable_depth:
        config.enable_stream(rs.stream.depth, depth_resolution[0], depth_resolution[1], rs.format.z16, depth_fps)
    if enable_rgb:
        config.enable_stream(rs.stream.color, rgb_resolution[0], rgb_resolution[1], rs.format.bgr8, rgb_fps)
    profile = pipeline.start(config)
    if do_align:
        depth_sensor = profile.get_device().first_depth_sensor()
        depth_scale = depth_sensor.get_depth_scale()
        align_to = rs.stream.color
        align = rs.align(align_to)

time.sleep(2)  # Delay after starting pipeline(s)

try:
    frame_count = 0  # If needed
    while True:
        time1 = time.time()
        if enable_imu and do_align:
            frames = pipeline.wait_for_frames()
            imu_frames = imu_pipeline.wait_for_frames()
            aligned_frames = align.process(frames)
            aligned_depth_frame = aligned_frames.get_depth_frame()
            aligned_color_frame = aligned_frames.get_color_frame()
            accel_frame = imu_frames.first_or_default(rs.stream.accel).as_motion_frame()
            gyro_frame = imu_frames.first_or_default(rs.stream.gyro).as_motion_frame()
            if (not aligned_depth_frame or not aligned_color_frame) and (not accel_frame and not gyro_frame):
                print('aligned_depth_frame: %r' % aligned_depth_frame)
                print('aligned_color_frame: %r' % aligned_color_frame)
                print('accel_frame        : %r' % accel_frame)
                print('gyro_frame         : %r' % gyro_frame)
                continue

            if aligned_depth_frame and aligned_color_frame:
                depth_image = np.asanyarray(aligned_depth_frame.get_data())
                color_image = np.asanyarray(aligned_color_frame.get_data())
            else:
                depth_image = None
                color_image = None
            if accel_frame:
                accel_sample = np.asanyarray(accel_frame.get_motion_data())
            else:
                accel_sample = None
            if gyro_frame:
                gyro_sample = np.asanyarray(gyro_frame.get_motion_data())
            else:
                gyro_sample = None

        depth_colormap = cv2.applyColorMap(cv2.convertScaleAbs(depth_image, alpha=0.03), cv2.COLORMAP_JET)
        cv2.imshow("Color", color_image)
        cv2.imshow("Depth Colormap", depth_colormap)
        print('Accelerometer: ' + str(accel_sample))
        print('Gyroscope: ' + str(gyro_sample))
        key = cv2.waitKey(1)
        if key == 27:
#            if enable_imu:
#                imu_pipeline.stop()
#            if enable_depth or enable_rgb:
#                pipeline.stop()
            break
        print('Done 1 Frame! Time: {0:0.3f}ms & FPS: {1:0.2f}'.format(
            (time.time()-time1)*1000,
            1/(time.time()-time1)
        ))

finally:
    if enable_imu:
        imu_pipeline.stop()
    if enable_depth or enable_rgb:
        pipeline.stop()
    cv2.destroyAllWindows

First, after restart: worked, then exit properly.
$ python3 stream3in1.py

using librealsense sdk version: 2.32.1
Accelerometer: x: 0.284393, y: -9.64974, z: 0.509946
Gyroscope: x: 0, y: 0.00349066, z: 0
Done 1 Frame! Time: 213.311ms & FPS: 4.69
Accelerometer: x: 0.26478, y: -9.66936, z: 0.490332
Gyroscope: x: -0.00174533, y: 0.00349066, z: 0
Done 1 Frame! Time: 71.718ms & FPS: 13.94
Accelerometer: x: 0.284393, y: -9.66936, z: 0.490332
Gyroscope: x: -0.00523599, y: -0.00174533, z: 0
Done 1 Frame! Time: 70.885ms & FPS: 14.11
Accelerometer: x: 0.304006, y: -9.66936, z: 0.490332
Gyroscope: x: 0, y: -0.00174533, z: -0.00349066
Done 1 Frame! Time: 31.395ms & FPS: 31.85
Accelerometer: x: 0.304006, y: -9.64974, z: 0.490332
Gyroscope: x: 0, y: 0, z: 0
Done 1 Frame! Time: 67.800ms & FPS: 14.75
Accelerometer: x: 0.284393, y: -9.64974, z: 0.490332
Gyroscope: x: 0, y: -0.00523599, z: 0
Done 1 Frame! Time: 29.272ms & FPS: 34.16
Accelerometer: x: 0.284393, y: -9.68897, z: 0.509946
Gyroscope: x: -0.00523599, y: 0, z: 0.00349066
Done 1 Frame! Time: 43.204ms & FPS: 23.14
Accelerometer: x: 0.304006, y: -9.66936, z: 0.529559
Gyroscope: x: -0.00349066, y: 0.00174533, z: 0
Done 1 Frame! Time: 56.655ms & FPS: 17.65
Accelerometer: x: 0.284393, y: -9.66936, z: 0.490332
Gyroscope: x: 0, y: 0.00174533, z: -0.00349066
Done 1 Frame! Time: 34.464ms & FPS: 29.01
Accelerometer: x: 0.26478, y: -9.66936, z: 0.490332
Gyroscope: x: -0.00698132, y: 0.00174533, z: 0
Done 1 Frame! Time: 58.594ms & FPS: 17.07
Accelerometer: x: 0.284393, y: -9.66936, z: 0.509946
Gyroscope: x: -0, y: -0.00349066, z: 0.00174533
Done 1 Frame! Time: 61.028ms & FPS: 16.38
Accelerometer: x: 0.284393, y: -9.66936, z: 0.509946
Gyroscope: x: -0.00523599, y: -0.00174533, z: 0
Done 1 Frame! Time: 55.823ms & FPS: 17.91
Accelerometer: x: 0.284393, y: -9.66936, z: 0.490332
Gyroscope: x: -0.00698132, y: 0, z: 0
Done 1 Frame! Time: 46.720ms & FPS: 21.39
Accelerometer: x: 0.284393, y: -9.68897, z: 0.470719
Gyroscope: x: -0.00349066, y: 0, z: 0
Done 1 Frame! Time: 51.219ms & FPS: 19.52
Accelerometer: x: 0.284393, y: -9.64974, z: 0.490332
Gyroscope: x: -0.00174533, y: 0.00174533, z: 0
Done 1 Frame! Time: 41.964ms & FPS: 23.83
Accelerometer: x: 0.304006, y: -9.66936, z: 0.509946
Gyroscope: x: 0, y: 0.00349066, z: 0
Done 1 Frame! Time: 33.170ms & FPS: 30.14
Accelerometer: x: 0.304006, y: -9.66936, z: 0.490332
Gyroscope: x: 0, y: 0.00523599, z: -0.00174533
Done 1 Frame! Time: 35.163ms & FPS: 28.44
Accelerometer: x: 0.284393, y: -9.64974, z: 0.509946
Gyroscope: x: -0.00349066, y: 0, z: 0
Done 1 Frame! Time: 56.777ms & FPS: 17.61
Accelerometer: x: 0.284393, y: -9.66936, z: 0.509946
Gyroscope: x: -0.00174533, y: -0.00174533, z: -0.00174533
Done 1 Frame! Time: 29.440ms & FPS: 33.96
Accelerometer: x: 0.304006, y: -9.66936, z: 0.509946
Gyroscope: x: -0.00698132, y: 0, z: 0.00174533
Done 1 Frame! Time: 43.360ms & FPS: 23.06
Accelerometer: x: 0.284393, y: -9.68897, z: 0.509946
Gyroscope: x: -0.00174533, y: 0, z: 0
Done 1 Frame! Time: 45.114ms & FPS: 22.16
Accelerometer: x: 0.284393, y: -9.66936, z: 0.509946
Gyroscope: x: -0.00523599, y: 0, z: -0.00174533
Done 1 Frame! Time: 35.628ms & FPS: 28.06

Second, tried to run the program again:
$ python3 stream3in1.py

using librealsense sdk version: 2.32.1
Accelerometer: x: 0.284393, y: -9.68897, z: 0.509946
Gyroscope: x: -0.00174533, y: 0, z: 0.00174533
Done 1 Frame! Time: 3570.331ms & FPS: 0.28
Traceback (most recent call last):
  File "stream3in1.py", line 57, in <module>
    imu_frames = imu_pipeline.wait_for_frames()
RuntimeError: Frame didn't arrive within 5000

Third, unplug the RealSense for a minute, and plug it back, and run the program again:
$ python3 stream3in1.py

using librealsense sdk version: 2.32.1
Accelerometer: x: 0.166713, y: -8.50237, z: 0.402073
Gyroscope: x: -0.00523599, y: 0, z: 0
Done 1 Frame! Time: 3551.788ms & FPS: 0.28
Traceback (most recent call last):
  File "stream3in1.py", line 57, in <module>
    imu_frames = imu_pipeline.wait_for_frames()
RuntimeError: Frame didn't arrive within 5000

I realized it managed to get the first IMU frames, but with no depth+color (the cv2.imwrite() didn't show anything). I tried once more to make sure:
$ python3 stream3in1.py

using librealsense sdk version: 2.32.1
Traceback (most recent call last):
  File "stream3in1.py", line 57, in <module>
    imu_frames = imu_pipeline.wait_for_frames()
RuntimeError: Frame didn't arrive within 5000

Now it didn't manage to get the first IMU frames. Very strange huh!

Frame didn't arrive within 5000 is a useful indicator.  It suggests that the pipeline might be getting jammed up with frames because they are not being released properly, causing timeouts due to the pipeline not being able to respond to a poll for new frames in a timely manner.

@MartyG-RealSense sure, thank you for your explanation. I didn't understand about how the pipeline work, for example if I have pipeline for gyros and accel with different FPS, at what FPS would I get the timeline frame?

The discussion in the link below is a good reference for the timing differences between the depth and IMU streams
https://github.com/IntelRealSense/librealsense/issues/3205.

Okay, so I've tried callback function to deal with it. If I may conclude, the problem of this error when stream depth + rgb + imu is the more-than-one pipelines. I don't know why, but if I open one pipeline only, and stream through three of them with callback function, I can get all the IMU (Accelerometer and Gyroscope with different FPS), Depth only (corupted). If I use 2 pipelines, then one of the pipeline would not working correctly, or receive the frame very rare (like 1 every 5-15 seconds).
@MartyG-RealSense if I may ask, do you know any reference about Python Callback function only give 1 frame and not a composite_frame if I stream through RGB and depth? I read in c++ callback example code, it suppose to receive a frameset (which I think it is composite_frame in Python) in callback function. That's why I said depth only because when the callback function (of pipeline with color + depth enabled) called, it only receive 1 frame with type of stream.depth, but the frame cannot be cast as depth_frame.
I will provide the script latter.

This subject is somewhat outside of my current level of programming knowledge.  I did though find a reference for using callback with depth and RGB in Python.
https://github.com/IntelRealSense/librealsense/issues/5417

This subject is somewhat outside of my current level of programming knowledge. I did though find a reference for using callback with depth and RGB in Python.
#5417

WOW! Right on target. Thank you very much! Yes it works and it helps me a lot! I also tried to search other issues but didn't find that one, should be more thorough.
Okay I think this three stream problem is solved. Maybe this is just imperfect feature, since frameset is from c++ and I don't know what's the difference between it and composite-frame, also why the developer made it different  in c++ and python. But still, I can't align it directly since the align function needs composite-frame data type. I think I can manage to make a new composite-frame with depth and color data from #5417 technique. I will share my code after I do some tests. Can I propose this as enhancement ?
And last but not least about the IMU calibration. Currently, this uncalibrated IMU don't affect me, but I'm thrilled to find the reason why. Again, thanks!

I'm very glad that the link was able to help you!
Yes, feel free to post a new issue containing your feature request and I will label it as Enhancement.
My understanding of the reason for calibrating the IMU is that otherwise, you can get non-zero values in the accelerometer and gyro even when the camera is stationary, when the values should be reading zero.
I'm off-shift now as it is midnight in my time zone.   I will be back in 7 hours from the time of writing this to pick up any new comments left.  Good luck!

Case closed due to no further comments received.   Thanks again!

@juliussin do you have updated code you could share? Did you end up using/testing with two pipelines? Can you share at what frame rates you actually receive gyroscope & accelerometer data (were you able to get them at 200 fps & 63 fps using the callback)?
I am getting the null pointer passed for argument "frame_ref" error. I was not able to see how #5417 resolved the issue for extracting IMU or RGB data; I tried using a similar call to their example:  frame.as_frameset().get_motion_frame().get_data() but returned an error.

Hi, I'm getting Segmentation fault when trying to use a callback on the pipeline for handling framesets. As mentioned here: https://github.com/IntelRealSense/librealsense/issues/5417
This is my code:
import pyrealsense2 as rs

pipeline = rs.pipeline()
def test_callback(fs):
    depth_data = fs.as_frameset().get_depth_frame().get_data()
    pipeline.stop()
profile = pipeline.start(test_callback)

Hi @a7u7a   I looked at your code carefully.  Your script does not seem to have a definition for what the contents of fs should be.  So you could instead use the default frame in its place.  I would also change test_callback to callback, and edit the pipeline start instruction appropriately to reflet this change.
Also, I believe that you cannot call pipeline.stop() before pipeline.start() if the pipeline has not already been started.  So I moved pipeline.stop() below the start statement.
import pyrealsense2 as rs
pipeline = rs.pipeline()
def callback(frame):
depth_data = frame.as_frameset().get_depth_frame().get_data()
profile = pipeline.start(callback)
pipeline.stop()

Hi MartyG, Sorry for the late reply. Your comment was very helpful, many thanks!

Hi @a7u7a I looked at your code carefully. Your script does not seem to have a definition for what the contents of fs should be. So you could instead use the default frame in its place. I would also change test_callback to callback, and edit the pipeline start instruction appropriately to reflet this change.
Also, I believe that you cannot call pipeline.stop() before pipeline.start() if the pipeline has not already been started. So I moved pipeline.stop() below the start statement.
import pyrealsense2 as rs
pipeline = rs.pipeline()
def callback(frame):
depth_data = frame.as_frameset().get_depth_frame().get_data()
profile = pipeline.start(callback)
pipeline.stop()

Hi @MartyG-RealSense , i tried this sample script, but it seems the callback function doesn't seem to be invoked in my case.  i'm using D455 device. i kept some print statements in the call back function which doesn't get printed confirming that call back function is not getting invoked

Hi @a7u7a I looked at your code carefully. Your script does not seem to have a definition for what the contents of fs should be. So you could instead use the default frame in its place. I would also change test_callback to callback, and edit the pipeline start instruction appropriately to reflet this change.
Also, I believe that you cannot call pipeline.stop() before pipeline.start() if the pipeline has not already been started. So I moved pipeline.stop() below the start statement.
import pyrealsense2 as rs
pipeline = rs.pipeline()
def callback(frame):
depth_data = frame.as_frameset().get_depth_frame().get_data()
profile = pipeline.start(callback)
pipeline.stop()

Hi @MartyG-RealSense , i tried this sample script, but it seems the callback function doesn't seem to be invoked in my case. i'm using D455 device. i kept some print statements in the call back function which doesn't get printed confirming that call back function is not getting invoked

Issue cleared! adding delay of few milliseconds, before accessing call back data did the trick

Hi @07hokage   It is great to hear that you succeeded - thanks very much for the update!


Support custom exporter for customized metrics

Add a new exporter for moneo: custom_exporter

User can enable custom exporter by --custom_metrics_file_path <custom_metrics_file_path>
Support Linux service function for custom_exporter
Add documentation for custom_exporter

Hey Yang, there are a couple of things missing for the moneo linux services to make this work. Maybe can you back out the changes for the Linux services and let me make a PR for it?

Hey Yang, there are a couple of things missing for the moneo linux services to make this work. Maybe can you back out the changes for the Linux services and let me make a PR for it?
Sure, let me remove this part. Thanks a lot!


[SP-3359][PDI-16029] fix setting absolute path if file is zip

https://github.com/pentaho/pentaho-kettle/pull/3543
@mchen-len-son please review.

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
ant -Dtestreports.dir=bin/reports/unit-test -f engine/build.xml clean-all resolve jacoco && ant -f engine/build.xml checkstyle publish-local

Cleanup Commands
rm -r ~/.ivy2/local || echo no publish local to remove

Changed files
  engine/src/org/pentaho/di/kitchen/Kitchen.java
  engine/src/org/pentaho/di/pan/Pan.java
  engine/test-src/org/pentaho/di/kitchen/Job.kjb
  engine/test-src/org/pentaho/di/kitchen/KitchenIT.java
  engine/test-src/org/pentaho/di/kitchen/test-kjb.zip
  engine/test-src/org/pentaho/di/pan/Pan.ktr
  engine/test-src/org/pentaho/di/pan/PanIT.java
  engine/test-src/org/pentaho/di/pan/test-ktr.zip

Unit test coverage change
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.
org.pentaho.di.job.entries.evalfilesmetrics.JobEntryEvalFilesMetrics

Branch Change:  + .39%
Complexity Change:  + .51%
Instruction Change:  + .08%

org.pentaho.di.job.entries.getpop.MailConnectionMeta

Branch Change: -1.00%:small_red_triangle_down:
Complexity Change: -1.41%:small_red_triangle_down:
Instruction Change: -.30%:small_red_triangle_down:

org.pentaho.di.job.entries.waitforsql.JobEntryWaitForSQL

Branch Change: -.66%:small_red_triangle_down:
Complexity Change: -.93%:small_red_triangle_down:
Instruction Change: -.13%:small_red_triangle_down:

org.pentaho.di.pan.Pan

Branch Change: -.02%:small_red_triangle_down:
Complexity Change: -.04%:small_red_triangle_down:
Instruction Change: -.01%:small_red_triangle_down:

org.pentaho.di.repository.kdr.KettleDatabaseRepositoryCreationHelper

Branch Change: -1.64%:small_red_triangle_down:
Complexity Change: -.69%:small_red_triangle_down:
Instruction Change: -2.40%:small_red_triangle_down:
Line Change: -3.51%:small_red_triangle_down:

org.pentaho.di.trans.steps.csvinput.CsvInputMeta

Instruction Change:  + .05%

org.pentaho.di.trans.steps.datagrid.DataGridMeta

Instruction Change:  + .09%

org.pentaho.di.trans.steps.dimensionlookup.DimensionLookupMeta

Branch Change: -.66%:small_red_triangle_down:
Complexity Change: -.41%:small_red_triangle_down:
Instruction Change: -.50%:small_red_triangle_down:
Line Change: -.24%:small_red_triangle_down:

org.pentaho.di.trans.steps.ifnull.IfNullMeta

Branch Change: -2.00%:small_red_triangle_down:
Complexity Change: -1.89%:small_red_triangle_down:
Instruction Change: -.17%:small_red_triangle_down:

org.pentaho.di.trans.steps.insertupdate.InsertUpdateMeta

Instruction Change:  + .05%

org.pentaho.di.trans.steps.ldapoutput.LDAPOutputMeta

Instruction Change:  + .06%

org.pentaho.di.trans.steps.memgroupby.MemoryGroupByMeta

Branch Change: -2.35%:small_red_triangle_down:
Complexity Change: -2.70%:small_red_triangle_down:

org.pentaho.di.trans.steps.processfiles.ProcessFilesMeta

Branch Change:  + 3.57%
Complexity Change:  + 2.13%
Instruction Change:  + .33%

org.pentaho.di.trans.steps.replacestring.ReplaceStringMeta

Instruction Change: -.07%:small_red_triangle_down:

org.pentaho.di.trans.steps.tableoutput.TableOutputMeta

Branch Change: -.91%:small_red_triangle_down:
Complexity Change: -.82%:small_red_triangle_down:

org.pentaho.di.trans.steps.uniquerows.UniqueRowsMeta

Instruction Change:  + .18%


 For Windows it's lighter since, because contrary to Linux not all symbols are exported.

It's because someone forgot to remove the cache from the build...


Fix broken tests

I honestly don't know how anybody was using this plugin, it was so broken...
This PR fixes up the issues.

Hmm, I see, lots of similar changes are in #73.
I'm happy to help out getting all of this lot merged together, the changes are fairly simple but very important, since the current npm version (5.0.1) just flat out doesn't work.

@fiznool do you plan on taking the reigns and supporting this repo?  Just wondering if we can rely on updates out of your fork or whether we need to fork and maintain this ourselves?

@rclayton-the-terrible I'm happy to maintain the codebase, at least for the time being, so it can be stabilised somewhat.

@niftylettuce :wave: I know you were looking for somebody to help maintain the repo. I think this might be your person :)

Awesome - @fiznool can you get this cleaned up, documented, and then ping me<EMAIL_ADDRESS>- once you have a PR here ready to go - I will accept and give you NPM ownership.  I don't have ability to give you ownership on here.  Someone would need to contact GitHub and also relatives or friends for information regarding ownership in this scenario.


The package list command is not merging subcommand and app packages

During manual tests we noticed that installed package information is not getting merged.
dcos package list
NAME       VERSION  APP              COMMAND    DESCRIPTION
cassandra  0.2.0-1  ---              cassandra  Apache Cassandra running on Apache Mesos
cassandra  0.2.0-1  /cassandra/dcos  ---        Apache Cassandra running on Apache Mesos
marathon   0.11.1   /marathon-user   ---        A cluster-wide init and control system for services in cgroups or Docker containers.

It looks like dcos package list is not merging the subcommand and apps because the source is wrong for subcommand:
    "packageSource": "http://localhost:7070/",

Here is the full example:
  {
    "command": {
      "name": "cassandra"
    },
    "description": "Apache Cassandra running on Apache Mesos",
    "framework": true,
    "images": null,
    "licenses": [
      {
        "name": "Apache License Version 2.0",
        "url": "https://github.com/mesosphere/cassandra-mesos/blob/master/LICENSE.txt"
      }
    ],
    "maintainer"<EMAIL_ADDRESS>    "name": "cassandra",
    "packageSource": "http://localhost:7070/",
    "packagingVersion": "2.0",
    "postInstallNotes": "Thank you for installing the Apache Cassandra DCOS Service.\n\n\tDocumentation: http://mesosphere.github.io/cassandra-mesos/\n\tIssues: https://github.com/mesosphere/cassandra-mesos/issues",
    "postUninstallNotes": "The Apache Cassandra DCOS Service has been uninstalled and will no longer run.\nPlease follow the instructions at http://docs.mesosphere.com/services/cassandra/#uninstall to clean up any persisted state",
    "preInstallNotes": "The Apache Cassandra DCOS Service implementation is alpha and there may be bugs, incomplete features, incorrect documentation or other discrepancies.\nThe default configuration requires 3 nodes each with 0.3 CPU shares, 1184MB of memory and 272MB of disk.",
    "releaseVersion": "cosmos0.2.0-1",
    "scm": "https://github.com/mesosphere/cassandra-mesos.git",
    "tags": [
      "data",
      "database",
      "nosql"
    ],
    "version": "0.2.0-1",
    "website": null
  }


Bad filling in AreaSeries

Hi guys, nice lib you've built - lots of good out-of-the-box functionality. 👍
I believe there is a bug with the current AreaSeries fill logic.
follows an example reproducing the issue:
https://codesandbox.io/s/hardcore-meninsky-e9f2h
data points: [{ x: 0, y: 0 }, { x: 5, y: 5 }, { x: 0, y: 10 }]
yDomain: [-10, 10]
fill result:

I believe the result should just be a triangle.

From what I could observe, this happens because AreaSeries is only made to paint "vertically" (hence y0 being the offset)
is there any straightforward way of using area-series to paint "horizontally"?

I typically use polygon series for that type of thing! IF this is something mission critical for you, i'd welcome a PR.


Window Terminal version for Linux, BSD, MasOS - Native Gui or Wine

Description of the new feature/enhancement
Create a Windows Terminal package release chain for use on Linux/BSD/MacOS.
Possibilities:

Package that runs directly in the graphical environment of the operating system (Gnome and sons, KDE and sons.)
Adjust the package for Windows so that it works as properly as possible in Wine (and similar)

Proposed technical implementation details (optional)
I don't have a technical proposition on how to implement this!
I don't even know how feasible this is technically speaking...
However, taking most MegaThreads as a reference, most of them have some comparison of functionality with terminal tools that are used on Linux, BSD, and MacOS.
I have the impression that if it were possible for this tool to be more accessible to users of Linux, BSD, and MacOS, it would bring these more controversial problems to the table more explicitly. Both for the really technical development discussions, and for the functionality comparison discussions.
This probably doesn't make much sense if we think that the primary focus of Windows Terminal is on the good interoperability of the Command Prompt with the terminal tool through its API. But I think this can bring benefits, including the idea of popularizing the use of Powershell in the Linux environment.

This one's already in the FAQ:

Unfortunately no, and we have no plans to make the Terminal available on operating systems below version 1903. There are some important operating system features we depend on. Namely:

XAML Islands is the technology we use to host our XAML UI in a Win32 process. Without that, we'd be unable to display anything. Since XAML Islands is only complete as of 1903, there's nothing we can do about it.
1903 Also added support for side-by-side WinRT component activation, something deep in the COM stack that lets us find our DLLs when they're right next to our EXE.

The answer is actually basically the same as the above. Windows Terminal requires a good number of Windows-specific technologies. We unfortunately won't be supporting it on Mac or anywhere else any time soon. There are some really good terminals on OS X, including iTerm and Hyper, and an uncountable number of good terminals on Linux.


Update http.py

now this should fix the issue :D

Summary

Checklist

[ ] If code changes were made then they have been tested.

[ ] I have updated the documentation to reflect the changes.

[x] This PR fixes an issue.
[ ] This PR adds something new (e.g. new method or parameters).
[ ] This PR is a breaking change (e.g. methods or parameters removed/renamed)
[ ] This PR is not a code change (e.g. documentation, README, ...)

I have tested it, this will fix the issue, then fetch_guild will work good again :D


Can you please fix the completion handler for dismissWithDelay?

When completion is used inside completionBlock, the completion parameter is nil, making so that dismissWithDelay trailing completion block is not called

It seems to work just fine.
self.view.backgroundColor = .blue
IHProgressHUD.show()
IHProgressHUD.dismissWithDelay(10.0, completion: {
    self.view.backgroundColor = .red
})

Please let me know if I do not get your issue correctly


fix: capitalize the P in WordPress

What kind of changes does this PR include?

Minor content fixes

Description
Properly capitalize the "p" in WordPress.

Hi @lukemcdonald! Thanks for spotting these lower-case Ps, and welcome to Team Docs! :partying_face:


@franknoirot post

Adds new blog post based on this draft, "Why we're building APIs first".
Also adds a new documentation-assets directory that will be copied over into the website's public directory at build time after a separate PR over there, allowing us to co-locate blog posts and their assets.

@jessfraz I added a section about dogfooding and conclusion stating that one of the hard parts for our future is imagining the new types of hardware design tools that are possible with this new paradigm, lmk your thoughts!


Interface goes beyond the aisles of the screen [Android Editor]

Tested versions
Godot 4.3 stable (Android)
System information
Godot v4.3.stable - ArrowOS Arrow-v11.0-vayu-OFFICIAL-20210928-GAPPS - Vulkan (Mobile) - integrated Adreno (TM) 640 -  (7 Threads)
Issue description
When the script editor is selected, as well as the shader editor, the entire lower part of the interface goes beyond the screen.
If one of these editors is not selected, the interface looks fine.

Steps to reproduce

Open Godot Engine on your phone
Select the script editor in the upper panel and the shader editor in the lower panel.

Minimal reproduction project (MRP)
N/A

This also happens if the Audio editor is selected on the bottom panel

Thanks for the report! Consolidating in https://github.com/godotengine/godot/issues/26835.


Make KubeTest.sh more generally usable

This PR adds parameters to KubeTest.sh so that it can be used to test any arbitrary manager and mixer images.
For example, you can (should) run the full bookinfo integration test before committing changes by invoking something like the following command after a successful run of manager/bin/e2e.sh:
istio/tests/kubeTest.sh -m "docker.io/frankb,ubuntu_20170404_151557" -i istioctl

The -m argument is the manager hub and tag to use, formatted as <hub>,<tag>
A similar -x <hub>,<tag> argument can be used to specify a mixer image to use.
The -i argument is the location of a suitable istioctl binary.

This change is

I updated this PR with the changes needed to make the demo run with latest manager and mixer builds. It does need @esibles istioctl fix to run: https://github.com/istio/manager/pull/446/commits/57c6c434549c74ff07449cee9b05f77f800e4550
One interesting change is that with @kuat's latest changes, istioctl doesn't work until the manager config is created, so I needed to start the istio services before doing the kube-inject.

Jenkins job istio/presubmit passed

I incorporated the improvements from #112 in this PR. I think there are additional improvements we can make (e.g., get rid of the diff files for rules, maybe invoke update.sh from kubeTest.sh when needed), but it does work as it is now, so I think we should go ahead and merge and then make additional changes in another PR.

Jenkins job istio/presubmit passed

Jenkins job istio/presubmit passed


Fix rayjob will not resume after preempted

What type of PR is this?
/kind bug

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes https://github.com/kubernetes-sigs/kueue/issues/1146
Fixes https://github.com/kubernetes-sigs/kueue/issues/1150
Special notes for your reviewer:
Does this PR introduce a user-facing change?

Fix resuming of RayJob after preempted.

@kerthcet please also set the release note, maybe "Fix resuming of RayJob after preempted".

Fix resuming of RayJob after preempted"

It sounds like a great suggestion!
/release-note edit Fix resuming of RayJob after preempted.

/release-note edit Fix resuming of RayJob after preempted.

Let me try:
/release-note-edit Fix resuming of RayJob after preempted.

/release-note-edit Fix resuming of RayJob after preempted.

This command wouldn't be work fine 😞

/cc

Updated based on the comments.

I think we should cherry-pick this bug fix.

/lgtm
@assign @tenzen-y

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

Title: Fix rayjob will not resume after preempted
Summary: |-
 This PR fixes an issue where a RayJob would not resume after it was preempted.
 The issue was caused by a bug in the RayJob controller, which prevented the job from being resumed after it was preempted.
 This PR introduces a fix for this issue, which ensures that a preempted RayJob is resumed correctly.
Types:
 - bugfix
Main Files Walkthrough:
 - filename: pkg/controller/jobs/rayjob/rayjob_controller.go
   changes in file:
     - Fixes a bug in the RayJob controller that prevented preempted RayJobs from being resumed correctly.
     - Adds a new function to the RayJob controller that handles the resumption of preempted RayJobs.
     - Updates the existing function to use the new function to handle preempted RayJobs.
 - filename: test/integration/controller/jobs/rayjob/rayjob_controller_test.go
   changes in file:
     - Adds a new test case that verifies the fix for the issue.
     - Updates the existing test cases to use the new test case.

@kerthcet what's the above?

Sorry, I'm benchmarking the code LM, forgot to delete the comment.🥺