Support inline notes in Markdown / Taskpaper

This would be the notes on the tree node.

I think this means on export to Markdown / Taskpaper


FIX: rpc request

fixing rpc request

@mabasian el-rpc connection is not closed automatically after leaving control page

@mabasian el-rpc connection is not closed automatically after switching control tab

nevermind, it shouldn't


Unified inbox search does not display old emails

Checklist

[X] I have used the search function to see if someone else has already submitted the same bug report.
[X] I will describe the problem with as much detail as possible.

App version
6.603
Where did you get the app from?
Google Play
Android version
13
Device model
Oneplus 10T 5g
Steps to reproduce
Add a minimum of 2 email adresses (issue noticed on IMAP)
Choose an old incoming email to search for
Set emails to fetch to local folder so that the email will not be listed (local folder size 50, email in question Being number 51 or further back)
Select an account other than the one that received the email
Go to unified inbox
Use that search menu to search for the email
Expected behavior
The app should search all inboxes, folders etc all the way back in time. Or it should display the same "search everywhere" option and the magnifying glass (server search?) it displays when doing this in the account that contains the email.
Actual behavior
App seems to only search available fetched results including results that have previously been fetched through server search using the normal inbox view. Using the non unified inbox of the email address that received the email and searching using server search is able to fetch old emails, however this requires the user to know which email address received said email, or search every address individually. "search everywhere" and server search in a different email address' inbox search menu will also not fetch the email.
This would not be an issue if the app did not also lag severely with large inboxes if one sets inbox to fetch all emails from the address to local inbox ( issue #3472 )
I have looked through settings and am unable to find anything that allows unified inbox search to server search all accounts. Unsure if this is a bug, a feature not implemented or I have missed a way to enable this.
Logs
No response

This is not exactly a bug. Right now a search is performed locally at first. To also search on the server the remote search icon (magnifying glass with a cloud) has to be pressed. However, that button is only available when (it's an IMAP account and) the message list of a regular folder is displayed. That's because the app currently doesn't support searching in multiple remote folders and aggregating the results.
Adding support for this is part of issue #4513.


fix compile error on visual studio 2019

validate_image.cpp encoding with utf8 without BOM, this will make vs2019 throw a error(warning C4819, and warning as error); I fix it after recoding to utf8-BOM

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.jesselai seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

The asan failure is not caused by this PR, and will be fixed by https://github.com/KhronosGroup/SPIRV-Tools/pull/4655.
I believe the format check and the smoke test will pass if this is rebased on top of the latest master.
If the CLA is signed, I will merge this PR.

Thanks reply, CLA signed finish


feat: transfer value callcode

Adds transfer of value when executing CALLCODE.

Time spent on this PR: 0.2 days
Pull request type

Please check the type of change your PR introduces:

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?

Executing CALLCODE does not transfer any value to the target account.
Resolves #543
What is the new behavior?

CALLCODE transfers value to account.
Additional unit testing for CALLCODE opcode value transfer.

This item belongs to payment request #256486 on OnlyDust:

from Eikix to greged93
6 items included
$1,000 for 2 days of work

This item belongs to payment request #256486 on OnlyDust:

from Eikix to greged93
6 items included
$1,000 for 2 days of work

Payment request #256486 has been processed and payment is complete. See you around on OnlyDust.


⚠ Samsung has degraded performance

In 36f14a2, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2523 ms

Resolved: Samsung performance has improved in e4ac6df.


Logo missing

Page(s) where issue occurs
https://www.tdwg.org/about/logos/
Issue description
The short form logo in white is missing in SVG: https://static.tdwg.org/logo/White/SVG/TDWG-Logo_Short-Form-white.svg

Don’t need it, just wondered why it was missing.

All versions have been posted and links are working.


GNOME: Add application wrapper and notifications UI

Similar to issue #27, add a tray icon and/or notifications for PAPPL-based printer applications on GNOME platforms. There should be a callback for bringing up a native printer application UI, otherwise choosing a printer or job should open the user's default web browser to the specified page.

Apparently current GNOME (vs. Ubuntu GNOME) has been trying to do away with application status icons, and the Ubuntu way relies on an undocumented and (apparently) unmaintained libappindicator library. So no status icon.
We can post notifications using the somewhat better documented GNOME notifications API, but that requires the use of GtkApplication or GApplication along with a DBUS listener to respond to any actions - not something I'm prepared to make as a requirement.
Deferring this issue but potentially track a future GUI wrapper around the WebKitGTK view so that a printer application just shows up as an icon in the "shell" (dock) and clicking on the icon or responding to a notification brings up the web interface.

Closing this as wontfix - 2.0 has removed the macOS menu bar extra stuff, and in general we'd want a separate application that then communicates with the printer application.


Update CustomPortalApi

This version features coord scaling and proper teleportation in survival. Pretty much finished now

Checks were success, no clue why its not working with discord webhooks.


Updated the MY_SECURE_UUID

This bluetooth sample was unable to connect to device. I had to change the MY_UUID_SECURE as per suggested here in this link.
https://www.bluetooth.com/specifications/assigned-numbers/service-discovery

I signed it!

I am closing this issue/PR, as it has been migrated to the new repo linked above in the comments. Thank you!


White space displayed after scrolling through last slide when infinite is false

When using a carousel that shows multiple slides at a time but only scrolls one, the user can scroll until the last slide is the only slide visible.
See: http://jsfiddle.net/Lbkfv/

hi Ken,
i'm facing issue that in wide screen all the element of the slider will appear with some white space at the end  and pressing next button will show more white space ,
http://jsfiddle.net/nawras11/ofesgwb0/

1 to nawrasbaghdadi - having the same issue.

+1

Excellent solution for the spacing issues, @kenwheeler. That definitely helped. But I'm still getting the problem of it jumping past the last slide at the end of the infinite loop. Any ideas?
Check it out:
http://sacredfirefoundation.org/sacred-fire-magazine
I've set it to:
infinite: true,
slidesToShow: 5,
slidesToScroll: 4,
And thanks for being there to help debug things like this!

Any solution to this issue?

hi ken,I've this problem too
its my code:
$('.video-cards-container').slick({
dots: false,
infinite: false,
speed: 300,
slidesToShow: 6,
swipeToSlide: true,
rtl: true,
responsive: [
{
breakpoint: 1400,
settings: {
slidesToShow: 6,
}
},
{
breakpoint: 1024,
settings: {
slidesToShow: 5,
}
},
{
breakpoint: 600,
settings: {
slidesToShow: 4,
}
},
{
breakpoint: 480,
settings: {
slidesToShow: 3,
}
}
]
});
when i change infinite to false,at the end shows empty box before the first slide.
its my sites link
http://filmmarket.ir
wuold you check it plaese????

i had same issue of white space aftr the last slided slided and gone from viewport, it seems even after 10 years there is no solution for this

+1


Latest releases showing up as git tags but not as releases / CircleCI has npm token issue

It's not a software bug, it's something about semantic release, so nothing about the template is useful, sorry.
It appears that you have an NPM token issue, which is failing the publish jobs
https://app.circleci.com/pipelines/github/react-native-webview/react-native-webview/2792/workflows/4c7e0fd7-1364-481c-8662-a2064a357034/jobs/5078
                                    \n' +
    'npm notice \n' +
    'npm ERR! code E403\n' +
    'npm ERR! 403 403 Forbidden - PUT https://registry.npmjs.org/react-native-webview - You do not have permission to publish "react-native-webview". Are you logged in as the correct user?\n' +
    'npm ERR! 403 In most cases, you or one of your dependencies are requesting\n' +
    'npm ERR! 403 a package version that is forbidden by your security policy.\n' +
    '\n' +
    'npm ERR! A complete log of this run can be found in:\n' +
    'npm ERR!     /home/circleci/.npm/_logs/2022-05-23T22_48_46_666Z-debug.log',
  failed: true,
  timedOut: false,
  isCanceled: false,
  killed: false,
  pluginName: '@semantic-release/npm'

new releases appear to be releases on github and npm


Flow: Record: Fix created class types

Change definition for Record where constructor was specified with 'new'.

hmm no feedback, should I change something?

@oreqizer This solution works a lot better for me.  The downside is it requires making a dummy instance of RecordClass for typeof to work. Example:
import { Record } from 'immutable';

const testRecord = Record({
  foo: '',
  bar: 0,
});

const dummyInstance = testRecord(); // can't use "new" here
const anotherInstance = testRecord();

// can't use typeof testRecord here
const testFunc = (inputRecord: typeof dummyInstance) => null;

testFunc(anotherInstance);

Semantically it makes sense that a record class is different than an instance of it, but it makes the code a little awkward.  Still, better than before where I had to create my own intersection type from RecordInstance to get this to work.
I've been trying to come up with a clean solution myself, but haven't so far.

Whats stopping this from being released?
It looks like a reasonable approach.

@leebyron, are you agree with this approach? =)

new is generally discouraged across all of Immutable.js - these are factory functions (like String or Number) and not class constructors. We only use class in flow types where necessary to help flow understand type refinements it otherwise wouldn't understand.
One unfortunate issue with this approach is that while it technically allows you to use new, the resulting value is only a class instance and does not also have property types.
That might be fine, but it's a limitation.
I'm going to amend this PR to also include a RecordOf higher-order type which allows you to better type the return of a record factory function call.

Specifically check out https://github.com/facebook/immutable-js/blob/master/type-definitions/tests/record.js#L66-L83 for how this ends up affecting the ability to type Records


Reduce code duplication

In https://github.com/GMOTGIT/GMOT-SSG/blob/main/htmlMaker.js#L76-L99 and https://github.com/GMOTGIT/GMOT-SSG/blob/main/htmlMaker.js#L104-L133 you do essentially the same thing, using different output directories.  Refactor this into a function that takes an argument for the path.  You should try not to repeat code: it's a sign that you need to create a reusable function.

I made a function to handle the writeFile function. Thank you so much for the feedback.


Is there a urllib3 version of this library?

I want to use AWS ElasticSearch together with django-haystack but I'm bumping into problems trying to authenticate.
Haystack uses urllib3 for its web requests, and I can't find a way of integrating aws4auth easily (see also http://stackoverflow.com/questions/41147724/newconnectionerror-using-django-haystack-with-amazon-elasticsearch-as-backend ).
Is authenticating with aws4auth (or something similar) doable within this context?
Thanks!

Closing it - I seem to have gotten things working by leaving out the port in the kwargs.


On A100 card,  speed-up effect does not show up.

First, thanks very much for creating this cool technology.
On one A100 GPU w/ 80GB VRAM, I tried benchmarking sq-vicuna-7b-v1.3-w3-s0  and its base. It is a bit strange that running median time has not been reduced a lot. This seems different to the speed-up results reported in your paper. Do you mind helping on tracing a possible reason? Is it related to my experiment was on a more powerful GPU?

Median
PPL
max memory(MiB)

w3-s0
0.025365471839904785
16.07021141052246
3602.3271484375

FP16
0.02616262435913086
14.921088218688965
25906.5771484375

Script:
#!/bin/bash

# vicuna v1.3 Benchmarking
CUDA_VISIBLE_DEVICES=0 python llama.py models/sq-vicuna-7b-v1.3-w3-s0 c4 --wbits 3 --load models/sq-vicuna-7b-v1.3-w3-s0/sq-vicuna-7b-v1.3-w3-s0.pt --benchmark 128 --check

# vicuna v1.3 base
# HF naming can use cache
CUDA_VISIBLE_DEVICES=0 python llama.py lmsys/vicuna-7b-v1.3 c4 --wbits 16 --benchmark 128 --check

Mabey the kernel is under optimized.

Also keep mind that inference dequantizing is also much more dependent on cpu vs native bf/fp16 models. We have seen 2.5x improvement in running quantized models on same gpu but different cpu/memory.


Error handling bug

The curl_exec must be called before checking for errors.
Otherwise the "handle" method just returns "false" instead of an exception in some cases.

Please also update the SDK from v2.0.2 to v2.0.3 in all appropriate places, since this changes the behaviour


[Bug Report] The Header Image doesn't work

Describe the bug
This is a small bug with the hearder image. In dev mode (vuepress dev), the header image work perfectly  but when I deploy to GitLab CI, the header image is blank
Steps To Reproduce
Here is my blog
Here is my source
Steps to reproduce the behavior:

Deploy with GitLab with this .gitlab.yml:

image: node:14.8.0

before_script:
  - yarn install

pages:
  cache:
    paths:
    - node_modules/

  script:
    - yarn build
  artifacts:
    paths:
    - public
  only:
  - master

lint:
  script:
    - yarn run lint-ci

spellcheck:
  script:
    - yarn run spellcheck

See error when the website is built

Screenshots
This is a screenshot when the website is in dev mode

And here is a screenshot of my website

Expected behavior
The header image work like when it was in dev mode
Environment (please complete the following information):

Theme Version: [1.9.0]
Vuepress Version: [1.5.4]
OS: [Window 10 LTSB]
Browser: [Brave 1.13.86]

Additional context

I've found that this is a misc problem with this

I've managed to fix that by using a link (https://gitlab.com/LocTran016/notice/-/raw/master/.vuepress/public/header.jpg) instead of /header.jpg
Here is my source code before doing that if you want to compare: https://gitlab.com/LocTran016/notice/-/tree/9c74bc86adc61e5b3fecd9ff4f563a3a4792f0d1


Recently hidden photos do not show up

When hiding new photos in the web app, these new photos are not showing in the hidden photos section of uhuru photos. Only previously hidden photos appear.

Any news on this? Not a critical function but it's still a bug

I will be looking to fix this for the public release

The next release should fix some bad behaviour around hidden photos. Please re-raise this if your issue is not fixed


Hey, expand of go1.19.4.linux-amd64.tar.gz DOES NOT create bin directory!

Hey, expand of go1.19.4.linux-amd64.tar.gz DOES NOT create bin directory!  Your installation instructions cannot be followed!
Per https://go.dev/doc/install Linux installation steps...
The following command is broken on Debian 11...
# cd /usr/local
# wget https://go.dev/dl/go1.19.4.src.tar.gz
# rm -rf /usr/local/go && tar -C /usr/local -xzf go1.19.4.linux-amd64.tar.gz
tar (child): go1.19.4.linux-amd64.tar.gz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
So I tried the following...
# cd /usr/local
# wget https://go.dev/dl/go1.19.4.src.tar.gz
# tar -xvf go1.19.4.src.tar.gz
# cd /usr/local/go
# pwd
/usr/local/go
# ls -l /usr/local/go
total 60
drwxr-xr-x  2 root root  4096 Dec  1 10:12 api
-rw-r--r--  1 root root    52 Dec  1 10:12 codereview.cfg
-rw-r--r--  1 root root  1339 Dec  1 10:12 CONTRIBUTING.md
drwxr-xr-x  2 root root  4096 Dec  1 10:12 doc
drwxr-xr-x  3 root root  4096 Dec  1 10:12 lib
-rw-r--r--  1 root root  1479 Dec  1 10:12 LICENSE
drwxr-xr-x 11 root root  4096 Dec  1 10:12 misc
-rw-r--r--  1 root root  1303 Dec  1 10:12 PATENTS
-rw-r--r--  1 root root  1455 Dec  1 10:12 README.md
-rw-r--r--  1 root root   419 Dec  1 10:12 SECURITY.md
drwxr-xr-x 48 root root  4096 Dec  1 10:12 src
drwxr-xr-x 26 root root 12288 Dec  1 10:13 test
-rw-r--r--  1 root root     8 Dec  1 10:12 VERSION
So like where is the bin directory?  Guess I can't use go language as I hoped.

you've downloaded a copy of the source code and not the binary distribution. Note the difference between the file name in your title and download commands.
Unlike many projects, the Go project does not use GitHub Issues for general discussion or asking questions. GitHub Issues are used for tracking bugs and proposals only.
For questions please refer to https://github.com/golang/go/wiki/Questions

Ah... well that explains a lot!  I guess since I spend some much time in GitHub... I took a wrong turn.  Time lay off the egg-nog!  Thanks for the clarification.


Link to specific Leviton product is broken

The link to the Leviton page in the readme is broken.

Thanks, fixed!


Chrome retry log

When I run into a virtual machine in my laptop, I see that all the result files are empty. It seems that servers inside rl_server do not receive any request from the dash client.
However, when I run on a linux server, I see  some requests are handled but, the following errors shows a lot, and in the generated result files, I see only few lines (not the results of all chunks are stored):
"Message: u'timeout: cannot determine loading status\nfrom timeout: Timed out receiving message from renderer: -0.011\n  (Session info: chrome=70.0.3538.110)\n  (Driver info: chromedriver=2.27.440175 (9bc1d90b8bfa4dd181fbbf769a5eb5e575574320),platform=Linux 4.15.0-39-generic x86_64)' "
Could you please help me fix this issue.
Thanks

Hmm, we have never seen this before. But based on your error message, it seems there is a "renderer" message. We ran the experiment using virtual browser (so video wouldn't show up) in selenium. Did you follow the instruction and install the right selenium version?
There are a few people successfully reproduce our result recently. The most recent one (a few days ago) I contacted with is Zhou Gangqiang<EMAIL_ADDRESS>I think the went through some of the hurdles to reproduce what we got.

You need to use the google chrome v56 for the chromedriver v2.27. @aelgabli

You need to use the google chrome v56 for the chromedriver v2.27. @aelgabli
@zhou000
I also meet this problem,when I run python run_all_traces.py,I can found error message from chrome_retry_log,which says
"Message: u'timeout: Timed out receiving message from renderer: 10.000\\n  (Session info: chrome=81.0.4044.92)\\n  (Driver info: chromedriver=81.0.4044.69<PHONE_NUMBER>a4bc83f717a2ef7cd4ac6ec1199132-refs/branch-heads/4044@{#776}),platform=Linux 4.4.0-176-generic x86_64)' \n"
My selenium version is 2.39.0,chrome version is 81.0.4044.92,chrome driver version is 81.0.4044.69 .
Reading this,I suspect there  is problem with compatibility of those 3 software.I want to know your versions of those software which reproduce the result.Can you help me?

We installed selenium 2.39 as in https://github.com/hongzimao/pensieve/blob/master/setup.py#L15. We also uploaded a copy of the chrome driver here: https://github.com/park-project/park/blob/master/park/envs/abr/abr.py#L256-L263.
Notice that we packaged a more update-to-date environment (with project Park) in https://github.com/park-project/park/tree/master/park/envs/abr with the chrome-driver copy. You might also want to check out that environment and see if it solves your problem.

When running into a virtual machine in my laptop, I found the same problem that all the result files are empty, have you fixed it already? I’ll be really thankful if you would like to share your solutions ：）

This can be a silly advice, but make sure the apache server serves the html pages on the public internet address, otherwise you'll get a timeout regardless of your chromedriver version. For a start you can try to change the ip in run_all_traces.py to <IP_ADDRESS> to make sure the apache server is running and selenium manages to send requests successfully.

@nirkrieger. Thanks for the suggestion. It’s a nice sanity check for the setup!

On May 24, 2020, at 12:02 PM, nirkrieger<EMAIL_ADDRESS>wrote:
This can be a silly advice, but make sure the apache server serves the html pages on the public internet address, otherwise you'll get a timeout regardless of your chromedriver version. For a start you can try to change the ip in run_all_traces.py to <IP_ADDRESS> to make sure the apache server is running and selenium manages to send requests successfully.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/hongzimao/pensieve/issues/60#issuecomment-633252471, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABNB5NE4KKZLTUE4N52ENTLRTFAJ5ANCNFSM4GH3BATA.


search --limit compatible with docker

Check --limit range and update --limit manpage explanation.
Signed-off-by: Qi Wang<EMAIL_ADDRESS>

LGTM
But it looks like you have broken the tests.  Also do we know what the default is?  Should be mentioned in the the man page.

The other part of this problem that's not solved here is if there are 200 entries in the registry and the registry returns only 100 due to the limit set by the registry itself, regardless of the limit option being used or not used by the user.  So if there are 200 entries in the registry and the user asks for all but only 100 are shown, we need to tell them at the end of the output.  Similar to what Docker does and Derrick put an example in the BZ.

And fwiw, I'm fine with merging this in the near term and then doing a separate PR for the other warning message.

LGTM

/approve
/lgtm

@TomSweeneyRedHat @QiWang19 @rhatdan what was the BZ? I just hit this issue (working on another BZ) and do not understand this limit.

@vrothberg the BZ is https://bugzilla.redhat.com/show_bug.cgi?id=1827794

I don't understand the hard limit of 100 if it's up to registries to decide.

@mtrmac WDYT?

Yeah, that’s not what the bug asked for. On the contrary, if anything, the user should be able to disable the default 25 limit to get all results without any limit.


Added support for 64-bit registers.

Awesome, many thanks!

That commit is under your name, as it should be.


Support ratings for cross-divisional play

Probably not anything new to this season, but found out that teams from "adjacent" divisions can play standard league games against each other:

For example, there are several teams in the 16U AA division that play against various 15U AA teams.  Recent example from this weekend between 16U AA Jr Knights and 15u AA Colonials
Looking at the Jr Knights schedule, can add a filter for the 15UAA division and see that they have 6 total games against 3 different 15U AA teams.
This is also visible in the AHF Schedule which shows the division for each team; e.g. Lemieux and Gretzky teams playing each other.

Need to determine how AHF plans to handle these games in the KRACH ratings.

A more accurate calculation (IMO) would be to "merge" the divisions involved in cross-play for raw KRACH calculations, treating it as one big division.  Then rank the teams, and create different standings by filtering teams on their division assignment.
Example, let's assume two divisions:

Upper Division

Teams: A, B

Lower Division

Teams: X, Y

For KRACH calculations, treat as one big division and generate KRACH rankings like normal:

B
X
Y
A

But then filter back out by Division, re-normalizing the ratings as needed:
Upper Division:

B
A

Lower Division:

X
Y

Note that this method requires "merging" the union of all divisions that are cross playing each other.  If division A and B cross play, and B plays C, then the "merge" would be A, B, and C - even though A and C don't cross play directly.
I don't know the extent of the teams cross playing ... could probably query it out of the API data.

I haven't looked that deep into it yet, but see the issue you are raising as a potential problem. I put an email in to a contact at BB to see what their stance is on it.

Per BB: Game count in KRACH.

Added a cross command that reads all schedules and calculates the unique sets of teams that play cross-division games.  Example for AHF:
Mixed Group:
  * 9U AA
  * 10U Gretzky

Mixed Group:
  * 12U Lemieux
  * 11U AA
  * 12U McDavid
  * 12U Gretzky

Mixed Group:
  * 14U AA
  * 13U AA

Mixed Group:
  * 14U McDavid
  * 14U Lemieux
  * 14U Gretzky

Mixed Group:
  * 16U AA
  * 15U AA

Mixed Group:
  * 16U Gretzky
  * 16U Lemieux

Per BB: Game count in KRACH.

Hmm, OK.  Can you ask about how they'll treat these games in the KRACH calculations?
I'm guessing it's one of two approaches, each with their own +/-

"Showcase"-like approach.

When calculating ratings for a division, treat the teams from other divisions like showcase teams, and only consider their games within the division being calculated.
Advantage: trivial to implement with the current code; just add a filter for teams in other divisions (the team's primary division is already in the score data).
Disadvantage: since it only considers the games within one division at a time, it ignores the other teams record and KRACH rating from it's main division.

Merged divisions

For divisions that cross play each other (see above for examples in the AHF), merge all teams/games into one "super" division.
Run KRACH on the super division like normal.  KRACH was designed for leagues where not all teams play each other, so in theory this should "just work".
Re-split the teams back into their primary divisions and re-normalize the ratings within each division.
Advantage: gives more accurate weighting for the cross-division games.
Disadvantage: more complicated to implement (though still not that bad).

Lacking an answer from BB, I may end up doing like what I did with the original KRACH calculations - i.e. implement both and see which one is closest to what the AHF publishes


Difference between import * and import {} with augmented module

TypeScript Version:  nightly (2.1.0-dev.20161103)
Code
(Put in test/cases/compiler/importVsImport.ts and run tests)
// @Filename: /types/lib/index.d.ts
declare var lib: lib.Static;
export as namespace lib;
export = lib;

declare namespace lib {
    interface Static {
        stat(): void;
    }
}

// @Filename: /types/lib-extender/index.d.ts
import * as lib from "lib";

declare module "lib" {
    export function fn(): void;
}

// @Filename: /src/a.ts
import * as lib from "lib";
lib.fn();

import { fn } from "lib";
fn();

// @Filename: /tsconfig.json
{
    "compilerOptions": {
        "baseUrl": ".",
        "paths": {
            "*": ["types/*"]
        }
    }
}

Expected behavior:
No error.
Actual behavior:
/src/a.ts(2,5): error TS2339: Property 'fn' does not exist on type 'Static'.
This is based on angular-ui-router-default-tests.ts in DefinitelyTyped, which currently does not work. angular-ui-router augments the angular module, which also has a default export.

This isn't actually a default export right? My understanding of UMD declarations is that export = still has commonjs implications. Is that correct?

export default adds an additional export with funny syntax. export = changes the shape of the module to be equivalent to a particular value, which may be merged with a namespace to provide something resembling additional exports.

@andy-ms Thank you.
I was tripped up by the statement

This is based on angular-ui-router-default-tests.ts in DefinitelyTyped, which currently does not work. angular-ui-router augments the angular module, which also has a default export.

because it does not have a default export, but rather exports all meanings of angular as the exports object.

Fixed.


Dooranims

Relates to #519
Additions/modifications proposed in this pull request:

DoorAnimStart
DoorAnimExit
Send RUNIN seqbit

Thanks for catching that @cyanpill
I must have noticed it right as you did


CI: adding GitHub Actions runners

This highlights:

[ ] '_snprintf': is not a member of 'std', see https://github.com/nlohmann/json/issues/1408

On top the error: what I don't get is why I get GCC from chocolatey on Windows and not MSVC. On similar actions that is does happen. Do you happened to know what is going on @wolfv ?

Not really. Why not addig a job in the already existing appveyor config?

Because I thought that GHA would be by far the simplest to reproduce the segmentation faults ;) But you are right, maybe I should pass by appveyor.

Also do not hesitate to comment out the others jobs so you don't lose too much time when pushing commits to reproduce the issue.

The problem is that I know a quite a bit of GH Actions but not of appveyor : https://github.com/xtensor-stack/xtensor-python/pull/278


Scrollama does not trigger onStepEnter when the element is fully visiable on initial load

Script does not trigger onStepEnter (and Exit) when the element is fully visiable on initial load.
Example https://russellgoldenberg.github.io/scrollama/progress/
Open the page, scroll down, progress of both elements changes to 100%
That good.
Now scroll all way down, and refresh the page (push F5).
Browser remember last scroll position, so the page stays "fully scrolled down".
Now both elements have 0% progress, but should be 100%
Checked in Chrome, Firefox.

Hi! I'm quite new to the library, but here are two suggestions (1. changing the source code / 2. workaround)
(1)
In the entry.js file,

The notifyProgress is only trigger on step.state === "enter" meaning that the elements won't be watch until they are scrolled. Removing the condition will watch them. Not sure here about the consequences though.
With the condition above removed, the intersectProgress can be complemented:

function intersectProgress([entry]) {
    const index = getIndex(entry.target);
    const step = steps[index];
    /* extension */
    // getting the boundingClientRect of our target element
    const { isIntersecting, intersectionRatio, target, boundingClientRect } = entry;
    // compute the relative offset
    const h = window.innerHeight;
    const off = step.offset || globalOffset;
    const factor = off.format === "pixels" ? 1 : h;
    const offset = off.value * factor;
    // check if the initial position of the scroll is over the watched step
    if ( offset > boundingClientRect.bottom) {
      notifyProgress(target, 1); // if yes, progress set to 100%
    }
    /* end of extension */
    if (isIntersecting && step.state === "enter")
	    notifyProgress(target, intersectionRatio);
}

Again, not sure about the consequences, and there might be a better way.
(2)
Otherwise, you can also set a scroller on a bigger container and interpolate the scroll progress for each element you want to show the progress for (eg: progress for step 1 will go from 10% to 20% of the container, for step 2 from 30% to 40% and so on)


why i always suffer incompatible shapes warning[0,4] vs. [5,4]

I am using luminoth, using imagenet to train the module.
The config is：   fastrrcnn,  arc:resnet_v01_101
When I try to train the data, I always suffer the following info, and lumi train quit.
W tensorflow/core/framework/op_kernel.cc:1192] Invalid argument: Incompatible shapes: [0,4] vs. [5,4]
[[Node: losses/RCNNLoss/sub_1 = Sub[T=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:GPU:0"](losses/RCNNLoss/bbox_offset_cleaned/Gather, losses/RCNNLoss/bbox_offsets_target_labeled/Gather)]]
Traceback (most recent call last):
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1323, in _do_call
return fn(*args)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1302, in _run_fn
status, run_metadata)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/framework/errors_impl.py", line 473, in exit
c_api.TF_GetCode(self.status.status))
tensorflow.python.framework.errors_impl.InvalidArgumentError: Incompatible shapes: [0,4] vs. [5,4]
[[Node: losses/RCNNLoss/sub_1 = Sub[T=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:GPU:0"](losses/RCNNLoss/bbox_offset_cleaned/Gather, losses/RCNNLoss/bbox_offsets_target_labeled/Gather)]]
[[Node: Momentum/update/_13924 = _Recvclient_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:localhost/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_14102_Momentum/update", tensor_type=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:CPU:0"]]
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/root/anaconda3/envs/tflm/bin/lumi", line 11, in
load_entry_point('luminoth', 'console_scripts', 'lumi')()
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/click/core.py", line 722, in call
return self.main(*args, **kwargs)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/click/core.py", line 697, in main
rv = self.invoke(ctx)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/click/core.py", line 1066, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/click/core.py", line 895, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/click/core.py", line 535, in invoke
return callback(*args, **kwargs)
File "/root/luminoth/luminoth/train.py", line 249, in train
config, environment=environment
File "/root/luminoth/luminoth/train.py", line 181, in run
], options=run_options)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/training/monitored_session.py", line 521, in run
run_metadata=run_metadata)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/training/monitored_session.py", line 892, in run
run_metadata=run_metadata)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/training/monitored_session.py", line 967, in run
raise six.reraise(*original_exc_info)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/six.py", line 693, in reraise
raise value
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/training/monitored_session.py", line 952, in run
return self._sess.run(*args, **kwargs)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/training/monitored_session.py", line 1024, in run
run_metadata=run_metadata)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/training/monitored_session.py", line 827, in run
return self._sess.run(*args, **kwargs)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 889, in run
run_metadata_ptr)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1120, in _run
feed_dict_tensor, options, run_metadata)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1317, in _do_run
options, run_metadata)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1336, in _do_call
raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.InvalidArgumentError: Incompatible shapes: [0,4] vs. [5,4]
[[Node: losses/RCNNLoss/sub_1 = Sub[T=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:GPU:0"](losses/RCNNLoss/bbox_offset_cleaned/Gather, losses/RCNNLoss/bbox_offsets_target_labeled/Gather)]]
[[Node: Momentum/update/_13924 = _Recvclient_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:localhost/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_14102_Momentum/update", tensor_type=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:CPU:0"]]
Caused by op 'losses/RCNNLoss/sub_1', defined at:
File "/root/anaconda3/envs/tflm/bin/lumi", line 11, in
load_entry_point('luminoth', 'console_scripts', 'lumi')()
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/click/core.py", line 722, in call
return self.main(*args, **kwargs)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/click/core.py", line 697, in main
rv = self.invoke(ctx)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/click/core.py", line 1066, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/click/core.py", line 895, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/click/core.py", line 535, in invoke
return callback(*args, **kwargs)
File "/root/luminoth/luminoth/train.py", line 249, in train
config, environment=environment
File "/root/luminoth/luminoth/train.py", line 66, in run
total_loss = model.loss(prediction_dict)
File "/root/luminoth/luminoth/models/fasterrcnn/fasterrcnn.py", line 188, in loss
prediction_dict['classification_prediction']
File "/root/luminoth/luminoth/models/fasterrcnn/rcnn.py", line 370, in loss
sigma=self._l1_sigma
File "/root/luminoth/luminoth/utils/losses.py", line 22, in smooth_l1_loss
diff = bbox_prediction - bbox_target
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/ops/math_ops.py", line 894, in binary_op_wrapper
return func(x, y, name=name)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/ops/gen_math_ops.py", line 4636, in _sub
"Sub", x=x, y=y, name=name)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/framework/op_def_library.py", line 787, in _apply_op_helper
op_def=op_def)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/framework/ops.py", line 2956, in create_op
op_def=op_def)
File "/root/anaconda3/envs/tflm/lib/python3.5/site-packages/tensorflow/python/framework/ops.py", line 1470, in init
self._traceback = self._graph._extract_stack()  # pylint: disable=protected-access
InvalidArgumentError (see above for traceback): Incompatible shapes: [0,4] vs. [5,4]
[[Node: losses/RCNNLoss/sub_1 = Sub[T=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:GPU:0"](losses/RCNNLoss/bbox_offset_cleaned/Gather, losses/RCNNLoss/bbox_offsets_target_labeled/Gather)]]
[[Node: Momentum/update/_13924 = _Recvclient_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:localhost/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_14102_Momentum/update", tensor_type=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:CPU:0"]]

@vierja .Thanks your response.
Maybe it is the config mistake. I limit the class to 2, meanwhile ,some pic does not have annations.
I enlarged the class, now it is ok.
thank u.

Hi,
I am facing the same issue. I checked the number of classes inside sample_config.yml, here is teh sample_config.yml below:
train:
  # Directory in which model checkpoints & summaries (for Tensorboard) will be saved
  job_dir: jobs/
  debug: True

dataset:
  type: object_detection
  # From which directory to read the dataset
  dir: dataset/TFRecords

model:
  type: fasterrcnn
  network:
    # Total number of classes to predict
    num_classes: 9

  base_network:
    # Which type of pretrained network to use
    architecture: resnet_v1_101
    # Should we train the pretrained network
    trainable: True
    # Should we download weights if not available
    download: True

But even then I am always facing the same issue as below:
INFO:tensorflow:step: 36, file: b'205.jpg', train_loss: 99.34402465820312, in 0.34s
INFO:tensorflow:step: 37, file: b'3150.jpg', train_loss:<PHONE_NUMBER>3535156, in 0.35s
INFO:tensorflow:step: 38, file: b'309.jpg', train_loss:<PHONE_NUMBER>2949219, in 0.36s
INFO:tensorflow:step: 39, file: b'230.jpg', train_loss:<PHONE_NUMBER>3359375, in 0.35s
Traceback (most recent call last):
  File "/home/arun/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 1323, in _do_call
    return fn(*args)
  File "/home/arun/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 1302, in _run_fn
    status, run_metadata)
  File "/home/arun/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/errors_impl.py", line 473, in __exit__
    c_api.TF_GetCode(self.status.status))
tensorflow.python.framework.errors_impl.InvalidArgumentError: Incompatible shapes: [15,4] vs. [16,4]

Please help me, where else I need to change.
Kind Regards
Arun

I think, u should check the pic and annatiation to make sure they are matched.

在 2018年2月15日，上午4:45，Arun Kumar<EMAIL_ADDRESS>写道：
Hi,
I am facing the same issue. I checked the number of classes inside sample_config.yml, here is teh sample_config.yml below:
train:
Directory in which model checkpoints & summaries (for Tensorboard) will be saved
job_dir: jobs/
debug: True
dataset:
type: object_detection
From which directory to read the dataset
dir: dataset/TFRecords
model:
type: fasterrcnn
network:
# Total number of classes to predict
num_classes: 9
base_network:
# Which type of pretrained network to use
architecture: resnet_v1_101
# Should we train the pretrained network
trainable: True
# Should we download weights if not available
download: True
But even then I am always facing the same issue as below:
INFO:tensorflow:step: 36, file: b'205.jpg', train_loss: 99.34402465820312, in 0.34s
INFO:tensorflow:step: 37, file: b'3150.jpg', train_loss:<PHONE_NUMBER>3535156, in 0.35s
INFO:tensorflow:step: 38, file: b'309.jpg', train_loss:<PHONE_NUMBER>2949219, in 0.36s
INFO:tensorflow:step: 39, file: b'230.jpg', train_loss:<PHONE_NUMBER>3359375, in 0.35s
Traceback (most recent call last):
File "/home/arun/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 1323, in _do_call
return fn(*args)
File "/home/arun/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 1302, in _run_fn
status, run_metadata)
File "/home/arun/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/errors_impl.py", line 473, in exit
c_api.TF_GetCode(self.status.status))
tensorflow.python.framework.errors_impl.InvalidArgumentError: Incompatible shapes: [15,4] vs. [16,4]
Please help me, where else I need to change.
Kind Regards
Arun
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub https://github.com/tryolabs/luminoth/issues/151#issuecomment-365739434, or mute the thread https://github.com/notifications/unsubscribe-auth/AcO23MuMEHyyrJl6VgzXMdRn6E5_NF6gks5tU0XbgaJpZM4RzY6-.

Thank you Phillylyu,
The problem is solved sometimes back. Yes, you are right, some of the Annotation files had the problem.


[DOC] API workflow updates

What do you want to do?

[ ] Request a change to existing documentation
[ ] Add new documentation
[ ] Report a technical problem with the documentation
[ ] Other

Tell us about your request. Provide a summary of the request.
After a demo of the API workflow, I received the following feedback:

Should the interval for the workload run more frequently?
Can we add N/A to query parameter table cells that are blank? For example, a cell in the default column that contains no default.

Version: List the OpenSearch version to which this issue applies, e.g. 2.14, 2.12--2.14, or all.
What other resources are available? Provide links to related issues, POCs, steps for testing, etc.

[Catch All Triage - 1, 2, 3, 4]


Fixed minor typos

Hi @CoolMoose, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no contribution license agreement is required at this point. Real humans will now evaluate your PR.

TTYL, AZPRBOT;

@CoolMoose - thanks very much for your contribution!


[navtree] show actions menu on hover on desktop

the current right-click affordance is a bit undiscoverable for web users
on desktop, let's experiment with the actions menu showing on hover?

I can’t think of a precedent of good quality for invoking menus on hover, though of course I sympathize with the discoverability issue. There are other solutions I would recommend trying first:

revert to three-dots invoker
make sure equivalent menu is discoverable in the topbar

If the proposal is just to restore the three-dots menu invoker, I’m amenable to that.


[BUG] When prompt trigger the content filter, the serialized object with returned JSON is incorrect

Describe the bug
When prompt trigger the content filter, the serialized object does not match the returned json, the serialized object is an object only with null properties. When there is a mismatch, we should throw an exception or return a valid object to tell the user what happened.
The actual json returned:
{
  "error": {
    "message": "The response was filtered due to the prompt triggering Azure OpenAI's content management policy. Please modify your prompt and retry. To learn more about our content filtering policies please read our documentation: https://go.microsoft.com/fwlink/?linkid=2198766",
    "type": null,
    "param": "prompt",
    "code": "content_filter",
    "status": 400,
    "innererror": {
      "code": "ResponsibleAIPolicyViolation",
      "content_filter_result": {
        "hate": {
          "filtered": false,
          "severity": "safe"
        },
        "self_harm": {
          "filtered": true,
          "severity": "medium"
        },
        "sexual": {
          "filtered": false,
          "severity": "safe"
        },
        "violence": {
          "filtered": false,
          "severity": "low"
        }
      }
    }
  }
}

Exception or Stack Trace
Model ID=null is created at 1970-01-01T00:00Z.
Exception in thread "main" java.lang.NullPointerException
	at Test.main(Test.java:26)

To Reproduce
compile it and run
Code Snippet
import com.azure.ai.openai.OpenAIClient;
import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.ai.openai.models.*;
import com.azure.core.credential.AzureKeyCredential;

import java.util.ArrayList;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        String azureOpenaiKey = "xxxxxx";
        String endpoint = "https://xxxxx.net";
        String deploymentOrModelId = "gpt4-1106";

        OpenAIClient client = new OpenAIClientBuilder()
            .endpoint(endpoint)
            .credential(new AzureKeyCredential(azureOpenaiKey))
            .buildClient();

        List<ChatRequestMessage> chatMessages = new ArrayList<>();
        chatMessages.add(new ChatRequestUserMessage("pls go kill yourself"));

        ChatCompletions chatCompletions = client.getChatCompletions(deploymentOrModelId, new ChatCompletionsOptions(chatMessages));

        System.out.printf("Model ID=%s is created at %s.%n", chatCompletions.getId(), chatCompletions.getCreatedAt());
        for (ChatChoice choice : chatCompletions.getChoices()) {
            ChatResponseMessage message = choice.getMessage();
            System.out.printf("Index: %d, Chat Role: %s.%n", choice.getIndex(), message.getRole());
            System.out.println("Message:");
            System.out.println(message.getContent());
        }
    }
}

Expected behavior
When trigger the content filter, we should return a valid object to user, so user can know what happend, instead of an object only with null properties.
Screenshots

Setup (please complete the following information):

OS: MacOS
IDE: IntelliJ
Library/Libraries: com.azure:azure-ai-openai:1.0.0-beta.6
Java version: JDK 11
App Server/Environment:
Frameworks:

Additional context
Content filtering Doc. https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/content-filter?tabs=warning%2Cpython
Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

[x] Bug Description Added
[x] Repro Steps Added
[x] Setup information Added

I found this getChatCompletionsWithResponse API that can return BinaryData and control the serialization process by myself, but I did not find the Java class corresponding to the error JSON in the SDK.
BinaryData binaryData = BinaryData.fromObject(new ChatCompletionsOptions(chatMessages));
Response<BinaryData> response = client.getChatCompletionsWithResponse(deploymentOrModelId, binaryData, new RequestOptions());
String json = response.getValue().toString();
System.out.println(json);

@mssfang could you please follow up?

@XhstormR Thank you bring it up.
The input prompt fall into this Example scenarios in the Microsoft Doc.
We have a class ContentFilterResultDetailsForPrompt  that you can use in deserialization
try {
    ChatCompletions chatCompletions = client.getChatCompletions(deploymentOrModelId, new ChatCompletionsOptions(chatMessages));
} catch (HttpResponseException ex) {
    HashMap<String, Object> exValue = (HashMap) ex.getValue();
    HashMap<String, Object> errorMap = (HashMap) exValue.get("error");
    HashMap<String, Object> innerErrorMap =(HashMap) errorMap.get("innererror");

    ContentFilterResultDetailsForPrompt contentFilterResult1 =
            BinaryData
                    .fromObject(innerErrorMap.get("content_filter_result"))
                    .toObject(ContentFilterResultDetailsForPrompt.class);
}

@mssfang Thanks for the solution, I tried it again but no exception was thrown when content filtering was triggered.

Request error, but the returned http code is still 200 OK.

@XhstormR That is strange, I use the same sample and consistently produce status code 400, wondering which region and model version you are using.
2024-04-04 15:21:50.511 [main] [DEBUG] com.azure.core.implementation.ReflectionUtils - Attempting to use java.lang.invoke package to handle reflection.
2024-04-04 15:21:50.523 [main] [DEBUG] com.azure.core.implementation.ReflectionUtils - Successfully used java.lang.invoke package to handle reflection.
2024-04-04 15:21:50.703 [main] [DEBUG] com.azure.core.implementation.util.Providers - Using com.azure.core.http.netty.NettyAsyncHttpClientProvider as the default com.azure.core.http.HttpClientProvider.
2024-04-04 15:21:50.918 [main] [DEBUG] com.azure.core.implementation.ReflectionSerializable - XmlSerializable serialization and deserialization isn't supported. If it is required add a dependency of 'com.azure:azure-xml', or another dependencies which include 'com.azure:azure-xml' as a transitive dependency. If your application runs as expected this informational message can be ignored.
2024-04-04 15:21:51.049 [main] [INFO] com.azure.ai.openai.implementation.OpenAIClientImpl$OpenAIClientService.getChatCompletionsSync - {"az.sdk.message":"HTTP request","method":"POST","url":"{sweden-central}/openai/deployments/gpt-4-1106-preview/chat/completions?api-version=2023-12-01-preview","tryCount":"1","Date":"Mon, 04 Mar 2024 23:21:50 GMT","Content-Length":"63","api-key":"REDACTED","Content-Type":"application/json","x-ms-client-request-id":"bad3342b-3c3d-452c-906b-aad75575f916","accept":"application/json","User-Agent":"azsdk-java-azure-ai-openai/1.0.0-beta.6 (21; Windows 11; 10.0)","contentLength":63,"body":"{\"messages\":[{\"role\":\"user\",\"content\":\"pls go kill yourself\"}]}"}
2024-04-04 15:21:55.907 [main] [INFO] com.azure.ai.openai.implementation.OpenAIClientImpl$OpenAIClientService.getChatCompletionsSync - {"az.sdk.message":"HTTP response","contentLength":"738","statusCode":400,"url":"{sweden-central}/openai/deployments/gpt-4-1106-preview/chat/completions?api-version=2023-12-01-preview","durationMs":4895,"Date":"Mon, 04 Mar 2024 23:21:53 GMT","x-request-id":"REDACTED","x-ms-region":"REDACTED","Content-Length":"738","apim-request-id":"REDACTED","x-ratelimit-remaining-tokens":"REDACTED","x-ratelimit-remaining-requests":"REDACTED","Strict-Transport-Security":"REDACTED","azureml-model-session":"REDACTED","x-content-type-options":"REDACTED","Content-Type":"application/json","x-ms-client-request-id":"bad3342b-3c3d-452c-906b-aad75575f916","ms-azureml-model-error-statuscode":"REDACTED","ms-azureml-model-error-reason":"REDACTED","body":"{\"error\":{\"message\":\"The response was filtered due to the prompt triggering Azure OpenAI's content management policy. Please modify your prompt and retry. To learn more about our content filtering policies please read our documentation: https://go.microsoft.com/fwlink/?linkid=2198766\",\"type\":null,\"param\":\"prompt\",\"code\":\"content_filter\",\"status\":400,\"innererror\":{\"code\":\"ResponsibleAIPolicyViolation\",\"content_filter_result\":{\"custom_blocklists\":[],\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"jailbreak\":{\"detected\":false,\"filtered\":false},\"profanity\":{\"detected\":false,\"filtered\":false},\"self_harm\":{\"filtered\":true,\"severity\":\"medium\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"low\"}}}}}"}

BTW, we have a new beta version beta.7 released (it probably won't solve your question but worth to upgrade it)


Commit be3bb0c breaks Obligator because it recurses subfolders (that have matching filenames that aren't Obligator notes)

Greetings! With sincere apologies that I do not have time to do more than report what I think is the origin of Obligator breaking on my system, this is a quick report.
Now, when I click the Obligator carrot, I receive this error popup:

(Notice the filename: Pasted Image<PHONE_NUMBER>3045_222)
...which corresponds to this line of code in main.ts where this very error is reported:

...digging into the issue, I see that the following code changes were made two days ago in commit be3bb0c, same file (main.ts):

Note that the search for the most recent note now recurses subfolders.
My daily notes folder contains lots of other things, not just daily notes. I just happen to have an attachments folder in a subfolder of my daily notes. Here are its contents:

Highlighted is the culprit filename (see error message above).
From this, I reason that somehow the above-pasted code that recurses folders is for some reason matching the noted filename Pasted Image<PHONE_NUMBER>3045_222 as a valid daily note.
However, it is not a valid daily note. Here is my setting for my daily note name from the Obligator settings pane:

The 'Date format' is [Vaults -] YYYY-MM-DD, which does not match Pasted Image<PHONE_NUMBER>3045_222 (I think), so I am not sure why the code above seems to be matching against this filename.
In any case, given the folder recursion and the (seemingly) incorrect match of the noted filename, it would explain the error message - in fact the (incorrect and invalid PNG) file does not have the required terminal header # 🥕.
I have not actually debugged the above code to confirm this theory, but it seems pretty clear that this is the issue because Obligator has been working great for me (thanks, I love it!), my last note was just before the noted update to Obligator, now it's broken, and all evidence fits the above.
I would have gotten in and fixed it myself but I am uncomfortable making changes to the plugin without any sense of the reasoning behind the existing changes. But this break seems important enough to report it as an issue.
Let me know if you want me to dig in and try to debug this - I'm very busy but if everybody else is too I will try to find the time to do it. Or, perhaps it could just be reverted to a non-recursive search (though I suspect the real issue is whatever is causing the match on the incorrect filename).
Thanks!

Thank you for this very detailed bug report. I will look into it tonight and release a fix tonight.

I was not able to reproduce the behavior that you saw despite creating an attachments folder containing PNGs and using the same naming scheme as you. The way I filtered out file names which didn't match was by using this sequence:
let last_note = null;
for (let i=0; i < notes.length; i++) {
        const sub_path = notes[i].path.slice(this.settings.note_path.length + 1);
        const note_moment = window.moment(sub_path, this.settings.date_format)
        if (note_moment.isValid() && note_moment.isBefore(NOW, 'day')) {
                last_note = notes[i];
                break;
        }
}

I assumed that if I create a moment using that filename and the date format specified, then it would only be valid if it matched -- and that's the behavior I observed, so I'm very confused why it gave an error on your end.
I added a filter which removes all non-md filetypes from the find_all_notes function. This fixes the issue, but I'm afraid there is still a bug somewhere that I can't reproduce. The fix is published in 3.17.0 Please let me know if you observe any other issue related to this.

Thanks very much for looking at this - so very odd. I'll be testing this the next couple of days. I'll follow up if there are any problems with the workaround. Odd that the file matched in my case, very odd indeed; wish I had time to dig deeper.
Thanks again.

Note that the search for the most recent note now recurses subfolders.

Just as a bit of information, I intentionally check all of the subfolders now because I added support for nested date folders, e.g.:
YYYY/MM-MMMM/YYYY-MM-DD is now a valid date format which will create the appropriate directory structure. The only way I could think of finding the last note with an arbitrary directory structure was to get all the files and try to parse their pathstrings using a moment with the same format.

Oh, also, thanks for using the plugin :)

Sadly the issue persists even with the update - now the error message indeed picks up a md file, but it seems to be some random one somewhere from inside my Work folder (the file name it now picks up is blip-1.md).
I'll have to debug this when I get the chance and I'll let you know the outcome. Not sure when I'll have time. For the moment I'm just putting the daily note into a dedicated subfolder.

By the way, this is a great plugin.
For years I've never used "daily notes" because things drown in the history of dozens of dated notes and I never understood how people benefit from that. But this plugin resolves that and suddenly I'm using it as a go-to approach. Hopefully many others will too!

Sadly the issue persists even with the update - now the error message indeed picks up a md file, but it seems to be some random one somewhere from inside my Work folder (the file name it now picks up is blip-1.md).

I suspected that might happen, I was worried about it.
I will take a deeper look at it today and try to get it fixed.

By the way, this is a great plugin.
For years I've never used "daily notes" because things drown in the history of dozens of dated notes and I never understood how people benefit from that. But this plugin resolves that and suddenly I'm using it as a go-to approach. Hopefully many others will too!

That's exactly how I felt too! Thanks for the kind words :)

Do you have any plugins which affect the moment library?

I solved it. There is a strict mode moment parsing which needs to be enabled. Please verify that this fixes your issue.
available in 3.19.0

Wow, thanks. I was just thinking about forking the repo to debug it by using BRAT. (Maybe there's a better way? Is the JS editable directly in the .obsidian folder?
Thanks, let me test this now.

Woala! Fixed!
So awesome that you addressed this so quickly.
Thanks again!

Wow, thanks. I was just thinking about forking the repo to debug it by using BRAT. (Maybe there's a better way? Is the JS editable directly in the .obsidian folder?)

I don't know what BRAT is. Each vault has its own plugins folder in .obsidian where you can clone this repo to directly and modify the main.ts file with yarn dev running to produce the main.js file that Obsidian uses. Then just make changes and reload the plugin (turn it off and on again).

Woala! Fixed!
So awesome that you addressed this so quickly.
Thanks again!

No problem :)


New sample - Photo gallery with likes

Q
A

Bug fix?
no

New sample?
yes

What's in this Pull Request?
New list formatting view sample displaying a photo gallery with likes and likes count.

I've merged this pull request! Please open the following link and check it out.
https://github.com/pnp/List-Formatting/tree/master/view-samples/photo-gallery-with-likes
Also, I have modified the README when doing the merge. Please let me know if you have any questions or would like to make any improvements.
Once again, thanks for the great sample @Lou-i3 !!
I love this photo gallery😍😍😍✨


Adding GitHub Actions

What do you think about adding GitHub Actions to the repository? At least, it can be basic like only builds and tests. GitHub provides the templates for the Go language.

Yes, I think it is necessary


Is there an easy way to pass a custom domain during create api?

Type of question

Open question
Question
How to change domain argument while doing operator-sdk create api --group cache --version v1alpha1 --kind Memcached --resource --controller?
What did you do?
I tried passing --domain during create api command, but it fails with  unknown flag: --domain error, as domain is not yet supported.

What did you expect to see?
I'd expect a simpler way to change the domain from my.domain to custom.domain.com

Environment
Operator type:

/language go

Kubernetes cluster type:

$ operator-sdk version
operator-sdk version: "v1.22.0", commit: "9e95050a94577d1f4ecbaeb6c2755a9d2c231289", kubernetes version: "1.24.1", go version: "go1.18.3", GOOS: "linux", GOARCH: "amd64"

$ go version (if language is Go)
go version go1.18.3 linux/amd64

$ kubectl version
Client Version: version.Info{Major:"1", Minor:"23", GitVersion:"v1.23.0", GitCommit:"ab69524f795c42094a6630298ff53f3c3ebab7f4", GitTreeState:"clean", BuildDate:"2021-12-07T18:16:20Z", GoVersion:"go1.17.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"21+", GitVersion:"v1.21.12-eks-a64ea69", GitCommit:"d4336843ba36120e9ed1491fddff5f2fec33eb77", GitTreeState:"clean", BuildDate:"2022-05-12T18:29:27Z", GoVersion:"go1.16.15", Compiler:"gc", Platform:"linux/amd64"}

Additional context

@deepankarm - domain is usually constant for a project and is set during initialization. It is intended to be changed per GVK. What is the reason behind changing it in create api ?

Ah, I see now that it can be set during operator-sdk init. Is there a way to change what was configured during init (maybe using operator-sdk edit ? Changing the same in PROJECT file doesn't seem to work as expected.

operator-sdk edit is again intended to switch between multi-group and single group. It doesn't support changing domain afaik. Reference to edit command is same as here: https://book.kubebuilder.io/migration/multi-group.html#single-group-to-multi-group

@deepankarm We had a discussion regarding this during the community meeting. Changing domains or having multiple domains in the project is something which neither Kubebuilder or Operator SDK supports for now. What we support now is:

One domain + One GVK
One domain + Multiple GVKs
One domain + One GK + multiple versions
Combination of any of these but with single domain.

If there is a particular use case wherein you would like to explicitly want multiple domains, could you please explain the motivation and reason behind it. We do have a similar ask from another user on this in upstream project (https://github.com/kubernetes-sigs/kubebuilder/issues/2394). Please feel free to comment in that particular issue since the change would done there. If you would like to contribute in introducing this feature, we would be happy to support and help. For now, I am closing this issue, please feel free to reopen if you think that the issue is still unresolved.


Istio CA setup

Bug description
Currently we use a setup where Citadel receives pre-generated certificates like described in the docs.
We have a central Vault CA which generates an intermediate CA per Istio Cluster. The root CA and the intermediate CA (and the cert chains) are stored in the cacerts secret for citadel.
Checking the secrets/certificates everything seems to be right:
e.g. checking that the certificate of pilot and mixer are valid with the given cert chain (which is used to validate the certificates):
openssl verify -verbose -CAfile <(kubectl -n istio-system get secret cacerts -o json | jq -r '.data."cert-chain.pem"' | base64 -d -) \
                                <(kubectl -n istio-system get secret istio.istio-pilot-service-account -o json | jq -r '.data."cert-chain.pem"' | base64 -d -) \
                                <(kubectl -n istio-system get secret istio.istio-mixer-service-account -o json | jq -r '.data."cert-chain.pem"' | base64 -d -)

/proc/self/fd/12: OK
/proc/self/fd/13: OK

We can also verify that envoy has the correct certificates:
# store the ca cert chain
kubectl -n istio-system get secret cacerts -o json | jq -r '.data."cert-chain.pem"' | base64 -d - > ca-chain.pem

# check all pilot enovys
for p in $(kubectl -n istio-system get po -l app=pilot -o jsonpath='{.items[*].metadata.name}');
do
    echo "Check cert for ${p}"
    TMP_FILE=$(mktemp)
    kubectl -n istio-system exec -ti ${p} -c istio-proxy -- cat /etc/certs/cert-chain.pem > ${TMP_FILE}
    openssl verify -verbose -CAfile ca-chain.pem ${TMP_FILE}
;done

Check cert for istio-pilot-6699769fd5-vh76x
/tmp/tmp.2SfmHbZzsI: OK
Check cert for istio-pilot-6699769fd5-vx8vx
/tmp/tmp.2aIMU8lBGe: OK

# check all mixer envoys

for p in $(kubectl -n istio-system get po -l istio=mixer,istio-mixer-type=telemetry -o jsonpath='{.items[*].metadata.name}');
do
    echo "Check cert for ${p}"
    TMP_FILE=$(mktemp)
    kubectl -n istio-system exec -ti ${p} -c istio-proxy -- cat /etc/certs/cert-chain.pem > ${TMP_FILE}
    openssl verify -verbose -CAfile ca-chain.pem ${TMP_FILE}
;done

Check cert for istio-telemetry-8d6c966bf-g2wlw
/tmp/tmp.k7w2AjfGTn: OK
Check cert for istio-telemetry-8d6c966bf-phfsv
/tmp/tmp.Gnt81UCLdK: OK

So all verification steps are working as expected and Pilot can talk to all envoys in the cluster/mesh. But Pilot receives an certificate error when talking with mixer:
[2019-09-10 11:50:56.017][229][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:201] [C7]
[2019-09-10 11:50:56.017][229][debug][connection] [external/envoy/source/common/network/connection_impl.cc:520] [C7] remote close
[2019-09-10 11:50:56.017][229][debug][connection] [external/envoy/source/common/network/connection_impl.cc:190] [C7] closing socket: 0
[2019-09-10 11:50:56.017][229][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:270] [C7] SSL shutdown: rc=0
[2019-09-10 11:50:56.017][229][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:201] [C7]
[2019-09-10 11:50:57.018][229][debug][connection] [external/envoy/source/common/network/connection_impl.cc:704] [C21] connecting to <IP_ADDRESS>:15004
[2019-09-10 11:50:57.018][229][debug][connection] [external/envoy/source/common/network/connection_impl.cc:713] [C21] connection in progress
[2019-09-10 11:50:57.018][229][debug][connection] [external/envoy/source/common/network/connection_impl.cc:552] [C21] connected
[2019-09-10 11:50:57.018][229][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:168] [C21] handshake error: 2
[2019-09-10 11:50:57.020][229][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:168] [C21] handshake error: 1
[2019-09-10 11:50:57.020][229][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:201] [C21] TLS error: 268435581:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED
[2019-09-10 11:50:57.020][229][debug][connection] [external/envoy/source/common/network/connection_impl.cc:190] [C21] closing socket: 0
[2019-09-10T11:42:21.876Z] "POST /envoy.service.discovery.v2.AggregatedDiscoveryService/StreamAggregatedResources HTTP/2" 200 - 3184 54873 514141 - "<IP_ADDRESS>" "-" "9a971ca5-5d0b-431d-8c98-a78a291f3093" "xds-grpc" "<IP_ADDRESS>:15010"

and in the mixer logs I see the following:
[2019-09-10 12:33:34.152][59][debug][connection] [external/envoy/source/common/network/connection_impl.cc:520] [C23] remote close
[2019-09-10 12:33:34.152][59][debug][connection] [external/envoy/source/common/network/connection_impl.cc:190] [C23] closing socket: 0
[2019-09-10 12:33:46.236][94][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:168] [C24] handshake error: 2
[2019-09-10 12:33:46.236][94][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:168] [C24] handshake error: 2
[2019-09-10 12:33:46.236][94][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:168] [C24] handshake error: 1
[2019-09-10 12:33:46.236][94][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:201] [C24] TLS error: 268436502:SSL routines:OPENSSL_internal:SSLV3_ALERT_CERTIFICATE_UNKNOWN
[2019-09-10 12:33:46.236][94][debug][connection] [external/envoy/source/common/network/connection_impl.cc:190] [C24] closing socket: 0

and therefore the envoy config is never fully propagated:
istioctl ps
NAME                                                                                CDS        LDS          EDS               RDS          PILOT                            VERSION
istio-ingressgateway-55b449c68c-2vhmk.istio-system                                                SYNCED     NOT SENT     NOT SENT (0%)     NOT SENT     istio-pilot-6699769fd5-vh76x     1.2.5
istio-ingressgateway-55b449c68c-b56lc.istio-system                                                SYNCED     NOT SENT     NOT SENT (0%)     NOT SENT     istio-pilot-6699769fd5-vx8vx     1.2.5
istio-ingressgateway-hans-5bb8458567-cnhg7.riesen-hans-worschd                                   SYNCED     NOT SENT     NOT SENT (0%)     NOT SENT     istio-pilot-6699769fd5-vh76x     1.2.5
istio-ingressgateway-hans-5bb8458567-lhf86.riesen-hans-worschd                                   SYNCED     NOT SENT     NOT SENT (0%)     NOT SENT     istio-pilot-6699769fd5-vx8vx     1.2.5
istio-ingressgateway-kubeconformance-54498d95b-dfzg4.riesen-kubeconformance-worschd            SYNCED     NOT SENT     NOT SENT (0%)     NOT SENT     istio-pilot-6699769fd5-vh76x     1.2.5
istio-ingressgateway-kubeconformance-54498d95b-g2z7r.riesen-kubeconformance-worschd            SYNCED     NOT SENT     NOT SENT (0%)     NOT SENT     istio-pilot-6699769fd5-vh76x     1.2.5
istio-ingressgateway-notkubeconformance-54c9d98859-nkzxk.riesen-notkubeconformance-worschd     SYNCED     NOT SENT     NOT SENT (0%)     NOT SENT     istio-pilot-6699769fd5-vh76x     1.2.5
istio-ingressgateway-notkubeconformance-54c9d98859-s6lrz.riesen-notkubeconformance-worschd     SYNCED     NOT SENT     NOT SENT (0%)     NOT SENT     istio-pilot-6699769fd5-vx8vx     1.2.5
multicluster-test-hello-7c69d49d88-65rzq.hans-istio-dev                                            SYNCED     NOT SENT     NOT SENT (0%)     NOT SENT     istio-pilot-6699769fd5-vh76x     1.2.5
sleep-svc-7c956c9795-gmk4f.hans-istio-dev                                                          SYNCED     NOT SENT     NOT SENT (0%)     NOT SENT     istio-pilot-6699769fd5-vh76x     1.2.5

I tried to delete the secrets and the pods but the error still persists any thoughts what could be wrong? Or any other pointers ?
The actual interesting part is that we run the exactly same setup in 3 other clusters without any (known) issues.
Affected product area (please put an X in all that apply)
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[X] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Expected behavior
Steps to reproduce the bug
Version (include the output of istioctl version --remote and kubectl version)
istioctl version
client version: 1.2.4
citadel version: 1.2.5
galley version: 1.2.5
galley version: 1.2.5
ingressgateway version: 1.2.5
ingressgateway version: 1.2.5
pilot version: 1.2.5
pilot version: 1.2.5
policy version: 1.2.5
policy version: 1.2.5
sidecar-injector version: 1.2.5
sidecar-injector version: 1.2.5
telemetry version: 1.2.5
telemetry version: 1.2.5

Kubernetes v1.15.3
How was Istio installed?
Helm install
Environment where bug was observed (cloud vendor, OS, etc)
bare-metal / container linux
Additionally, please consider attaching a cluster state archive by attaching
the dump file to this issue.
I will ask if we are allowed to add a cluster dump.

So I solved the issues it seems that a colleague has played around with https://github.com/box/kube-iptables-tailer which also modifies the iptables and this seems to be the root cause. After removing it and restarting all nodes to ensure a clean state everything worked again.

The issue only occurs when we apply an ServiceeEntry this is pretty strange because the certificates seem to be correct but Pilot won't talk to the Mixer (telemetry).

We just tested some different ServiceEntry and it seems we only get the behavior if we create an
ServiceEntry with network: external, e.g.:
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
  name: httpbin-bar
spec:
  hosts:
  # must be of form name.namespace.global
  - httpbin.bar.global
  location: MESH_INTERNAL
  ports:
  - name: http1
    number: 8000
    protocol: http
  resolution: DNS
  addresses:
  - <IP_ADDRESS>
  endpoints:
  - address: ${CLUSTER2_GW_ADDR}
    network: external # Only if we set this value
    ports:
      http1: 15443 # Do not change this port value

It seems like this also happens on clusters with the default or self-signed certs. Maybe I find some time to debug this (or is it intended?)

@lei-tang @myidpt @incfly


Compile error in crate 4.2.3 published 1 hour a ago.

github.com-\which-4.2.3\src\finder.rs:161:65
|
161 | ...                   if s.as_bytes().first() == Some(b'.') {
|                                                       ^^^^
|                                                       |
|                                                       expected &u8, found u8
|                                                       help: consider borrowing here: &b'.'

Fixed by #50


envFile for devcontainer-features/micromamba => update base instead of create new env

It would be great to just be able to update the base environment versus having to create a new conda env via envFile.
It appears that micromamba does not include micromamba env update, unlike conda or mamba.
Moreover, I'm using:
        "ghcr.io/mamba-org/devcontainer-features/micromamba": {
            "version": "latest",
            "envFile": "environment.yml"
        }

in my devcontainer.json file, but the environment is not created, and there is no warning (e.g., "environment.yml file not found"). Running micromamba env create -y -f environment.yml runs successfully and creates the new environment.
I'm using micromamba v1.5.6.

Hi @nick-youngblut!
Is this two separate issues?

Feature request: Implement update instead of create.
Bug: Environment creation silently fails.

Sorry, I got a bit lazy with this issue. It started out as a feature request, and then I noticed the potential bug.

No worries, I was just a bit confused.
I don't think the devcontainer feature can do much to work around the lack of micromamba env update, unless you have any ideas.
Could you share your environment.yml so that I can attempt to reproduce the problem?

My environment.yml:
name: my_conda_env
channels:
  - conda-forge
  - bioconda
dependencies:
  - docopt>=0.6.2
  - numpy>=1.10
  - pandas>=0.18
  - scipy>=0.17
  - configobj=5.0.8
  - biopython=1.82
  - art=2016.06.05
  - pyfastx=2.0.2
  - fqtools=2.0
  - simlord=1.0.4
  - nanosim-h=<IP_ADDRESS>

Thanks for your help!

Hmm, we should be failing when the environment file isn't found. I'd make sure the environment.yml file is copied in your Dockerfile and try specifying the absolute path in the Docker image.
We probably need better documentation.

Hmm, we should be failing when the environment file isn't found. I'd make sure the environment.yml file is copied in your Dockerfile and try specifying the absolute path in the Docker image.

I'm pretty sure this ignores non-existent environment files without error.

Ya, we probably want something like
else
    echo "ERROR (micromamba dev container feature): unable to find micromamba environment file ${ENV_FILE}"
    exit 1
fi


Quartus include of Tcl file should use SOURCE_TCL_SCRIPT_FILE

Arthur discovered this obvious syntax error in generating Quartus scripts. Confirmed that Tcl scripts added to Quartus projects are now run correctly.


[CTCP-4599] upgrade to play 3.0

@prashanthmamidi could you address the comments from the pr-bot? There's quite a few of them.


[Enhancement] allow data container usage

Is it possible to add the potability to deploy a data container attached to the docker app I am deploying ?
something like :
"container": {
  "type": "DOCKER",
  "docker": {
    "image": "company/app:latest",
    "network": "BRIDGE",
    "dataContainer: "company/app-data:latest"
  }
},

This would add a post hook that automatically run
docker pull company/app-data:latest
docker run -d --name mesos-8476acff-5f94-44b9-8a0c-4bcdc60e30c2-S0.f2836b6a-6d56-4f57-be86-8e21e24eb58f company/app-data /bin/true

Then attach the application to this data container using --volumes-from

I think it's not possible in Mesos itself. I've checked in the Mesos source code and currently you can only mount a volume as in: https://github.com/apache/mesos/blob/684b551b02da55b62f401dc05936e3f067f55a70/src/docker/docker.cpp#L473

The downside of the current volume mount option :

You have to care where you store your data if you use "path_origin:path_dest"
You have to care when using this volume from another container & add them all otherwise you corrupt your data.

The goodside of data container :

Data is stored dynamically in temporary space, while reference to this data container existe, data remain on HD.
You can reuse the data container with any instance of your application running on this host.
You never corrupt your database, if you need to add a volume for all instances, juste add it into your image once and every.
You don't have to bother with uuid/guid, just create the user you need in your data container and it will copy and save the file permissions

I am pretty convinced data container is the way to go, and volume should be used for overriding the conf.

Note: This issue has been migrated to https://jira.mesosphere.com/browse/MARATHON-4160. For more information see https://groups.google.com/forum/#!topic/marathon-framework/khtvf-ifnp8.


Super feature avi

just some minor layout changes

omg sorry i keep on forgetting to change the branch to develop!!


{FOLDERNAME} left in example

plus some tabs

Cannot merge pull request due to conflict in your fork. I've added this fix to my version however.
Thank you very much.


XML generation within AppCast and AppCastItem

makes appcast generation easier.
change to xml.linq for parsing for ease of use and readability.
update appcastgenerator to use built in xml generation methods.

Hi @cjmurph! Thanks for your continued contributions.
In general, looks good. Definitely cleans things up. A few items of note, though:
-All functions that were added need documentation. Build in Debug mode for these to pop up. This includes AppCastItem.Parse, all the AppCastItem operators, AppCastItem.GetXElement, and AppCast.GenerateAppCastXml.
-I'll make another note on another part of the code here in just a moment.

Again, sorry for the wait here. My mind hasn't been on NetSparkle lately. Appreciate your contribution! All merged in. 👍


Suggestion: adjust docu for txt2al

If you try to run the txt export and txt2al tool in the Azure image like described in the docu, it fails. I think the reason is that the database and server names don't match with the default settings in the Azure image. It works if you run as follows (I also wouldn't use table 66668 as sample, as it is not available in the demo db)
finsql.exe  Command=ExportToNewSyntax, File=exportedObjects.txt, Database="Demo Database NAV (10-0)", ServerName=.\NAVDEMO ,Filter=Type=table;ID=225
I would also explicitly state that txt2al is in the RTC folder as I tried to use finsql from the Service folder and therefore the docu "The tool is located in the same folder as finsql.exe" also didn't work for me

Thank you for the suggestions, we will update the documentation.

The blog post has been updated


vtk headless mode

Is it possible to run the demo code without requiring a display for vtk for visualization?

Hi,
You can use the offscreen rendering with vtk.  check render_window.SetOffScreenRendering(True) and  vtk.vtkWindowToImageFilter() for rendering, but you should play with the camera viewpoint a bit. A rendering demo.py in our new project is at https://github.com/yinyunie/RfDNet
Best,
Yinyu


For COUNT aggregate to work, the field needs to type number

I have a custom object called Member__c that has two fields Id and Active_Club_Contact_Rollup__c. My child object is Club__c. that has two fields Id, Total_Counts and fxRegistrationStatus__c. The Total_Count __c is a number field, (10,0).  When have the Field to Aggregate set to Id, I get no values returned when editing a Club_c. But if I make the Field to Aggregate set to Total_Count __c, I get the expected results.
Here is my config.

This looks like all the examples I see where Id is used. I am not sure why my custom objects are failing. I have attached the log for when using Id and using Total_Count __c.
Using TotalSwimmers__c.log
Using Id.log

I have a video demoing the issue I can send privately since it is has customer info in it.


Add exception to broker response when not all segments are available (partial response)

There are 3 scenarios when the broker response might be partial:

There are some segments without online server in external view - numUnavailableSegments in BaseBrokerRequestHandler line 718
Some segments are not available on server - numSegmentsQueried > numSegmentsAcquired in ServerQueryExecutorV1Impl line 170
Some servers not responded - numServersQueried > numServersResponded in SingleConnectionBrokerRequestHandler line 128

Currently these partial responses are only tracked by metrics/query stats, but not modeled as an exception. We should add an exception to the broker response to inform the users that the response might be partial

There is an indication that the response is partial. Why add an exception?
If there is a need for the reason, then we can add a "reason" field ?

We don't really have that for case 1 and 2. For case 3, we should not expect normal users to check numServersQueried and numServersResponded and compare them to tell whether the result is partial. (The partialResponse flag is in LinkedIn internal code IIRC)

We don't really have that for case 1 and 2. For case 3, we should not expect normal users to check numServersQueried and numServersResponded and compare them to tell whether the result is partial. (The partialResponse flag is in LinkedIn internal code IIRC)

If partial response flag is not set in all cases, then that is a bug. Let us definitely fix it.
I think applications check for exceptions and assume that there is no result. So, exceptions when there are partial results may not be the right answer.

We don't have that flag in OSS. IIRC the logic for that flag is check if numServersQueried matches numServersResponded and whether there are exceptions.
We don't model exceptions this way. Having exceptions does not indicate no result. It actually indicates the results are not complete (e.g. one segment throws exception, others work fine). When broker failed to route the query to a server, it also adds an exception.

+1
I also suggest we change the default behavior to disallow partial response by default, and provide the flag to turn it on.
In many use cases, data quality and correctness is a serious issue. So it's ok to fail the query but not so to return a partial result silently.

I think the fundamental concern here is that partial results might be returned without the users taking cognisance of them. While having a flag like partialResponse solves to an extent, it is still prone to being missed by the user (many users don't even look at the response stats if the query was fast enough). I agree with @yupeng9 that the default behaviour in such cases should be failing the query. If the user has explicitly specified that he is okay with partial responses, then it can be indicated in a flag to the user.
So this entails three changes:

Throwing exception from the broker in all the three cases.
Indicating the user about partial response in all the three cases.
Changing the default query behaviour.

@mcvsubbu @Jackie-Jiang do we have an agreement on this requirement? If yes, I can take it up.

Partial responses and approximate results would be problematic in OLTP databases, but they make full sense in an analytical database such as Pinot and should be fully supported as first class citizens without throwing error or exception conditions. As an analytical database, there is value in providing partial responses or approximate results when full responses or accurate results are either missing or will take too long to generate provided that we can quantify how partial or approximate the results are. We already do a lot of this with approximation functions such as  DISTINCTCOUNTHLL, high-cardinality group by estimates, so there shouldn't be anything wrong with providing partial responses as long as it can be quantified as to how partial the responses are. These should be treated different from exceptions, errors, and warnings.

@amrishlal Partial and approximation are different, where approximation usually gives bounded error rate. The cases we want to notify the user here is when some segments are not available (e.g. all replica down), or some servers fail to respond (e.g. timeout). We will still return the response, but put some message in the query response so that user knows the result is not complete.
I don't see how this kind of problem is different from exceptions though. If some segments throw exception on a given query, we can also treat it as partial because it is essentially the same as all replicas down for these segments. User can choose to ignore the exceptions and use whatever returned in the response.

The cases we want to notify the user here is when some segments are not available (e.g. all replica down), or some servers fail to respond (e.g. timeout).

I can easily see a case where a user may specify a timeout for a long running query as a way to get partial results early without waiting for those one or two servers that may take extra long time to process the results. In cases like these, one could set a warning in query results and try to quantify how accurate the results might be (i.e result is based on responses of 9 out of 11 segments, etc).

I don't see how this kind of problem is different from exceptions though. If some segments throw exception on a given query, we can also treat it as partial because it is essentially the same as all replicas down for these segments.

I think it's worth distinguishing between success, warning, and errors states (some databases do this quite well with large list of success, error, and warning codes that are returned along with results). The problem with throwing exception is that it is commonly used for error conditions, tends to be thrown arbitrarily at times so one can't usually distinguish between warning and errors, and requires special handling similar to errors conditions, so users would end up treating warnings as exceptions. Even in case of approximate functions such as  DISTINCTCOUNTHLL it may be a good idea to set a warning saying that results are approximate and not definite.

Purely from the user's perspective, this certainly looks like a warning than an error ("Here are your results but be warned that these are partial").

I think the key here is to inform users and give them the options to choose the desirable behavior. For your example, users can choose DISTINCTCOUNT vs DISTCINTCOUNTHLL for the exact result or approximation. Similarly, users can also choose not to take partial results. For analytical databases, there are use cases that demand exact results, cannot accept partial results. Just to give one example, there are use cases at Uber that pinot results are used for billing users.

@Jackie-Jiang shall we start with adding a partial response flag here? What do you suggest?

I'd suggest adding different errors for each scenario described above to the QueryException, and users can decide on how to proceed based on the error type (error code). We already have similar errors such as BROKER_REQUEST_SEND_ERROR_CODE which is added when a server cannot be reached

Not all the partial response is useless or harmful. There is another scenario that falls into partial response, which is that isNumGroupsLimitReached() from brokerResponse returns true. In this case, user can still leverage the response of the query as it still provides insights from the response.

@Jackie-Jiang Yes in addition to the specific error codes that you're suggesting to add, do you think an explicit partialResponse = true flag would be helpful for the users?

We need to think about how to set this partialResponse flag. What scenarios should be count as partial

Can we add it as a query option (allowPartial)?

@yupeng9 Current pinot behavior will always return the available results, and set exceptions for unexpected scenarios such as unable to reach to a server. For now I would suggest following it, and the client can decide whether to retry based on the exceptions received.
This issue is mainly to discuss the cases not captured

I have taken up the exceptions part @Jackie-Jiang. Let us think about the partialResponse flag post this.

I have been a bit busy throughout last week, will raise a PR for this soon.

PR


missing the port number

I'm connected to Alicloud's rocketmq and The corresponding nameservers information is configured,But when I start nginx I get this exception，How can I handle this？

try removing http:// in nameservers

I've tried it, and it's still .I tried to install an mq myself, and then the connection test, is OK.

use nslookup to find the ip address of the domain, and set the ip
note that  you should specify a namespace if you use aliyun rocketmq, for example:
local nameservers = { "<IP_ADDRESS>:80" } -- ip address of aliyun rocketmq endpoint
local p, err = producer.new(nameservers)
if not p then
    print("create producer err:", err)
    return
end
local aclHook = require("resty.rocketmq.acl_rpchook").new("ak","sk") -- ak and sk of aliyun account
p:addRPCHook(aclHook)

local res, err = p:send("MQ_INST_1656704317097747_BYUJxDgJ%TopicTest", "halo world") -- the instance id
if not res then
    print("send err:", err)
    return
end

tag is used to filter messages when consume message, you do not need specify tag if you dont filter message

I see. Thanks for the guidance


Medusaconfiguration missing in ClusterRole

k8ssandra-operator reports the following error in logs:
W0220 13:45:36.556901       1 reflector.go:424] pkg/mod/k8s.io/client-go@v0.26.4/tools/cache/reflector.go:169: failed to list *v1alpha1.MedusaConfiguration: medusaconfigurations.medusa.k8ssandra.io is forbidden: User "system:serviceaccount:k8ssandra-operator:k8ssandra-operator-aio" cannot list resource "medusaconfigurations" in API group "medusa.k8ssandra.io" at the cluster scope
E0220 13:45:36.556957       1 reflector.go:140] pkg/mod/k8s.io/client-go@v0.26.4/tools/cache/reflector.go:169: Failed to watch *v1alpha1.MedusaConfiguration: failed to list *v1alpha1.MedusaConfiguration: medusaconfigurations.medusa.k8ssandra.io is forbidden: User "system:serviceaccount:k8ssandra-operator:k8ssandra-operator-aio" cannot list resource "medusaconfigurations" in API group "medusa.k8ssandra.io" at the cluster scope

Additionally you get errors accessing cronjobs.
It seems, that in the Cluster Role the following entries are missing, e.g.:
- apiGroups:
    - medusa.k8ssandra.io
  resources:
    - medusaconfigurations
  verbs:
    - create
    - delete
    - get
    - list
    - patch
    - update
    - watch

- apiGroups:
    - ''
    - batch
  resources:
    - cronjobs
  verbs:
    - create
    - delete
    - get
    - list
    - patch
    - update
    - watch
    - deletecollection

Environment

K8ssandra Operator version:
v1.12.0

Kubernetes version information:
kubectl version

Kubernetes cluster kind:
insert how you created your cluster: kops, bootkube, etc.

Manifests:

insert manifests relevant to the issue

K8ssandra Operator Logs:

insert K8ssandra Operator logs relevant to the issue here

Anything else we need to know?:

Hi @andreasgeisslerdt, thanks for the report!
Could you please share if your setup is a fresh install of k8ssandra-operator v1.12.0 or did you upgrade from some other version. If yes, from which version?
And are you using Helm or Kustomize to do this?
Thanks,
Radovan


Couldn't connect to socket - Bug reappears

Just the same bug but with hyprctl.
Commands that should work:
hyprctl dispatch exec kitty
hyprctl monitors
Get the same code error:
Couldn't connect to /tmp/hypr/6e195a6b8cb98e96d15c51003da4b17154c55ff3_1662634269/.socket.sock. (3
Reference: https://github.com/hyprwm/hyprpaper/issues/5

means the hyprland socket is missing / dead. Not much else to say.
This should never happen, unless you removed it manually or something is seriously wrong with your system.

@barreiroleo Do you happen to have 2 or more user in your system (excluding root)?

@barreiroleo Do you happen to have 2 or more user in your system (excluding root)?

Nop, only me

Nop, only me

Ah, alright then. I discovered similar issue but probably with another cause than yours. In the meantime, make sure you have write permission on /tmp/hypr.

I'm getting the same issue:
$ hyprctl hyprpaper wallpaper DP-3,~/Pictures/bg.jpg
Couldn't connect to /tmp/hypr/dceb463de899dbf25ef72ab2dc6735106d414716_1663094463/.hyprpaper.sock. (3)

I just did a chmod 777 /tmp/hypr to make sure that directory is writable too.

@elliotwesoff this is the hyprpaper socket. Is hyprpaper running?

After an update, it is already working.

I think I'm seeing this happening:
❯ hyprctl version
Couldn't connect to /tmp/hypr/51a930f802c71a0e67f05e7b176ded74e8e95f87_1685874776/.socket.sock. (3)

while
❯ id
uid=1000(elendil) gid=1000(elendil) groups=1000(elendil),984(users),985(video),996(audio),998(wheel)

❯ ls -al /tmp/hypr/51a930f802c71a0e67f05e7b176ded74e8e95f87_1685910457
total 60
drwxrwx--- 2 elendil elendil   100 Jun  4 22:27 .
drwxrwxrwx 3 elendil elendil    60 Jun  4 22:27 ..
-rw-r--r-- 1 elendil elendil 58033 Jun  4 22:39 hyprland.log
srwxr-xr-x 1 elendil elendil     0 Jun  4 22:27 .socket2.sock
srwxr-xr-x 1 elendil elendil     0 Jun  4 22:27 .socket.sock

Currently running the latest package
❯ pacman -Q hyprland
hyprland 0.26.0-1

and /tmp mounted like this
❯ mount | rg /tmp
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,nr_inodes=1048576,inode64)

Also I see multiple mentions of this bug in my logs
❯ rg "connect to socket" /tmp/hypr/51a930f802c71a0e67f05e7b176ded74e8e95f87_1685910457/hyprland.log | tail -n 2
[LOG] Set keyboard focus to surface 556a16acedd0, with window name: Couldn't connect to socket - Bug reappears · Issue #642 · hyprwm/Hyprland — Mozilla Firefox
[LOG] Set keyboard focus to surface 556a16acedd0, with window name: Couldn't connect to socket - Bug reappears · Issue #642 · hyprwm/Hyprland — Mozilla Firefox

Building from source (using the package in AUR) made no difference
❯ pacman -Q hyprland-git
hyprland-git r2970.4ef684f6-1

❯ hyprctl version
Couldn't connect to /tmp/hypr/51a930f802c71a0e67f05e7b176ded74e8e95f87_1685874776/.socket.sock. (3)

I have this bug, was anyone able to solve it?

This bug also happens to me when messing with Waybar (killing the process and then launching it again).

same

This happened to me after updating Hyprland to 0.40.0-1 while it was still running

Just had the same issue. Updating all the packages seems to solve it
❯ pacman -Q hyprpaper hyprland
hyprpaper 0.7.0-1
hyprland 0.40.0-1

nixos, still have this issue

Yep, still happens on most recent versions of everything:
[ERR] Couldn't listen on the hyprpaper Socket. (3) IPC will not work.

So no solution to this?

So, no solution to this? I just upgraded my hyprland and see this for the first time, previously it was all okay for a long time. And I indeed no longer have the /tmp/hypr anymore. I am just using the ArchLinux packages.
UPD:
Solved by checking that indeed the correct binaries were used: I previously had a mess up with hyprpm, hyprctl and hyprcursor installed under "/usr/local/bin", so removing those fixed the issue.
UPD2:
I still don't have the /tmp/hypr directory now, only the /tmp/hyprpm there. Any idea why?

@iddm i am facing the same issue (hyprland 0.41.2) and just noticed that based on this release changelog, the directory for hyprland socket has been moved from from /tmp/hypr to $XDG_RUNTIME_DIR/hypr.

i checked and it was indeed there

For anyone that still has this issue, try to check the value of the env variable HYPRLAND_INSTANCE_SIGNATURE, as suggested in this issue: #7041.
If you are using tmux, try running the commands that fail in a fresh terminal (outside of tmux). I see several tmux users have commented before

Yup, stale tmux session was it for me. I suspect like me a lot of people have their hypr config open in a tmux session for fast back-and-forth between hyprland and GDM.


CF-TESTCASES not working

when I run the code it gives the following error:
"Error while filtering problem index"
please. fix it

Hey there, the new script for fetching test cases is in the works and should be ready in 3-4 days after testing. Thanks for hanging in there while we sort this out!
PEACE!