Release tracking

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
<EMAIL_ADDRESS>Minor Changes

#2378 c35c2ac9 Thanks @broccolinisoup! - UnderlineNav2: Introducing loading states for counters

#2297 cad2bc0c Thanks @broccolinisoup! - UnderlineNav2: Introducing overflow behavior for fine and coarse pointer devices

#2366 13b44608 Thanks @joshblack! - Update "exports" config to use "import" and "require" for ESM and CommonJS bundles

#2367 252a605d Thanks @iansan5653! - Remove non-tab elements from TabNav focus zone

#2368 aeb6152c Thanks @iansan5653! - Add pasteUrlsAsPlainText prop to control URL pasting behavior in MarkdownEditor

Patch Changes

#2388 d459364a Thanks @colebemis! - TreeView: Add TreeView.LoadingItem component

#2375 96f3b8a1 Thanks @colebemis! - TreeView: Fix focus styles in styled-components v5.2+

#2258 270157a6 Thanks @josepmartins! - Add new accessible frontmatter variable

#2251 4a4e47c0 Thanks @joshblack! - Add support for the dvh unit in PageLayout in order to correctly display pane contents on iOS devices

#2357 143286ed Thanks @colebemis! - Add support for typeahead search of items in a TreeView

#2391 845001b1 Thanks @joshblack! - Update the files field in package.json to include all package artifacts

#2327 df2a834c Thanks @joshblack! - [Internal] Update build process to use rollup. This change should be transparent as generated entrypoints remain the same

#2376 33ba836f Thanks @colebemis! - TreeView: Increase touch target size for coarse pointers

#2373 e4af7a74 Thanks @colebemis! - TreeView: Allow expanded state to be controlled

#2383 81013a7d Thanks @colebemis! - TreeView: Add support for leading and trailing visuals

I tried to install @primer/react@next in Memex and ran into this error:
@colebemis ➜ /workspaces/memex (main ✗) $ npm i @primer/react@next
npm ERR! code ETARGET
npm ERR! notarget No matching version found for<EMAIL_ADDRESS>npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/codespace/.npm/_logs/2022-09-29T20_09_35_241Z-debug.log

It looks like<EMAIL_ADDRESS>is published on npm but not on the Github package registry.

It looks like the compiled output of lib has a few dependencies that might not be properly externalized
lib/drafts/hooks/useCombobox
var index = require('../../node_modules/@github/combobox-nav/dist/index.js');

vs lib-esm/drafts/hooks/useCombobox
import Combobox from '@github/combobox-nav';

the node_modules relative path, is to the file on disk in the non-transpiled primer src, not relative to the installed version.

FAIL .....
● Test suite failed to run

Cannot find module<EMAIL_ADDRESS>from<EMAIL_ADDRESS>
https://github.com/github/memex/actions/runs/3181669954/jobs/5186690610

Opened up https://github.com/primer/react/pull/2404 to help out with @mattcosta7's comment. Can inspect the output at: https://unpkg.com/browse/<EMAIL_ADDRESS>

Opened up #2404 to help out with @mattcosta7's comment. Can inspect the output at: https://unpkg.com/browse/<EMAIL_ADDRESS>
https://github.com/github/memex/pull/12478
Checking this out here.  looks like this handles the tests properly, after mocking out CSS.supports in jest (which would likely be needed by consumers as well of components that use it)

Release update -
Issue 1
@github/paste-markdownwas updated to a new version in @primer/react in 35.11.x. This version is not available in GHPR (GitHub Package Registry) but only in npm's package registry. There are two solutions to this
Publish @github/paste-markdownin GHPR. Cole merged in a PR to do this but the release errored because of a missing auth-token. (Question - What auth-token would make this pass and where does it need to be configured?)
Switch memex to using npm's package registry only. This has further problems
Memex's dependabot configuration depends on GHPR. (Not sure how to fix this.)
There are other packages in memex that are only published in GHPR. (These are private packages and will not go into npm registry).
I feel we should pursue Option 1 since this means @github/paste-markdownshould consistently be published to both registries as there may be other consumers of this package too.
Issue 2 - A rollup config is causing dependencies in libfolder not work correctly. Josh has a fix open for it. https://github.com/primer/react/pull/2404/files
I think this looks good, but would be good to get another review on it.
Once these blockers are resolved, we can go ahead and publish a new primer/react release.
tl;dr - Whats the auth-token for @github/paste-markdown  to be published to GHPR ?

https://github.com/primer/react/pull/2408
this might be worth landing for the release as well, to avoid blocking react 18 consumption of the MarkdownEditor

Update 1: paste-markdown published to github registry: https://github.com/github/paste-markdown/actions/runs/3220920799/jobs/5268224253
Update 2: there are CI checks that fail in memex: https://github.com/github/memex/pull/12589

Update 1: paste-markdown published to github registry: https://github.com/github/paste-markdown/actions/runs/3220920799/jobs/5268224253
Update 2: there are CI checks that fail in memex: github/memex#12589. Do we need to mock CSS.supports for jest?

@siddharthkp re 2 - https://github.com/github/memex/pull/12478/files#diff-0aae7d3a8cad9eaa160c8b69c90947dd09dddfe9fa4c92e30adc2c9ad912f31bR12
I had a PR adding this in memex from a prerelease build earlier of this release channel.  should be easy to drop that in


Sample bookinfo product page doesn't load Glyphicons fonts

Describe the bug
The latest docker image (1.11.0) for the sample bookinfo product page has switched (#12646) to using a packaged bootstrap.min.css introduced in #12218 which defines the Glyphicons Halflings font as follows:
@font-face {
    font-family: 'Glyphicons Halflings';
    src: url(../fonts/glyphicons-halflings-regular.eot);
    src: url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff2) format('woff2'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')
}

The problem with this is that the docker image doesn't contain the referenced font files nor are they checked in to the repo and thus the star & user fonts appear as broken font figures
Expected behavior
Running the latest istio/examples-bookinfo-productpage-v1 docker image produces a site without broken glyphicon fonts
Steps to reproduce the bug

docker run -p 9080:9080 istio/examples-bookinfo-productpage-v1:1.11.0
navigate to http://localhost:9080/productpage
check console for errors

If istio/examples-bookinfo-reviews-v2 or istio/examples-bookinfo-reviews-v3 backend is setup then broken fonts will appear under the Book Reviews section
If no other backend is setup then a broken user font will appear after signing in using the "Sign in" button at the top right

Version
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.11", GitCommit:"637c7e288581ee40ab4ca210618a89a555b6e7e9", GitTreeState:"clean", BuildDate:"2018-11-26T14:38:32Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"windows/amd64"}
Server Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.11", GitCommit:"637c7e288581ee40ab4ca210618a89a555b6e7e9", GitTreeState:"clean", BuildDate:"2018-11-26T14:25:46Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}

Installation
N/A
Environment
Docker-Desktop (v<IP_ADDRESS>-stable) for Windows 10 Enterprise 2016 LTSB

Should be fixed with 1.12.0

Broken again in 1.15.0
Why would the css not be loaded ?


Add 4.5.0 compatible AppSupport instructions

There are some other places which had updated instructions already before, I'll need to change them as well to use appsupport-attach

Fixed all lxc-attach invocations to use appsupport-attach instead


Required ASSUME_NO_MOVING_GC_UNSAFE_RISK_IT_WITH=go1.18

** General info (please complete the following information):**

OS: all
Helmwave Version 0.19.2

panic: Something in this program imports go4.org/unsafe/assume-no-moving-gc to declare that it assumes a non-moving garbage collector, but your version of go4.org/unsafe/assume-no-moving-gc hasn't been updated to assert that it's safe against the go1.18 runtime. If you want to risk it, run with environment variable ASSUME_NO_MOVING_GC_UNSAFE_RISK_IT_WITH=go1.18 set. Notably, if go1.18 adds a moving garbage collector, this program is unsafe to use.

goroutine 1 [running]:
go4.org/unsafe/assume-no-moving-gc.init.0()

The same issue with me

This issue about go 1.18 runtime and go mod
go mod why go4.org/unsafe/assume-no-moving-gc
# go4.org/unsafe/assume-no-moving-gc
github.com/helmwave/helmwave/pkg/template
github.com/hairyhenderson/gomplate/v3
github.com/hairyhenderson/gomplate/v3/funcs
inet.af/netaddr
go4.org/intern
go4.org/unsafe/assume-no-moving-gc


Use pre-1.9.3 friendly version of i18n

:information_desk_person: The trunk version of the i18n gem (~> 0.7.0) only supports Ruby >= 1.9.3, which has resulted in a series of broken builds. These changes add a conditional for legacy versions of Ruby so that this gem can be installed.

Hi @sgerrand , thanks for the contribution!
I see that the tests failed. The rubinius tests uses to fail, but the Ruby 1.9.2 ones don't. Could you investigate those tests and try to make them pass?

@hugobarauna Of course. :bow:

Superseeded by #34, which finally fixes the build, sorry it took so long @sgerrand


Release v0.4.0

PR for the release.
This PR is slightly messed up because dev was accidentally merged on Friday.
Please review the CHANGES.md
Thanks!

LGTM


armhf build not working / connecting

Hi there,
I've tried to build librespot via the docker image for armhf with various flags.
None of the builds are working. Librespot does not connect and stops at
2019-12-07T08:31:54Z INFO  librespot] librespot f67a38d (2019-12-03). Built on 2019-12-04. Build ID: d6Ol89kL [2019-12-07T08:31:54Z DEBUG librespot_connect::discovery] Zeroconf server listening on <IP_ADDRESS>:42450
I want to use pipe backend (for snapcast) and user/password authentication

./librespot -n testname -u<EMAIL_ADDRESS>-p secretpass --disable-audio-cache -v --backend "pipe" --device /tmp/snapfifo &

Also: librespot does not respond to ctrl+c at that point
Any help?
Amd64 build is connecting and works as it should. Likewise the java version of librespot - but I would prefer the native build.

@praul Did you ever figure out what was going on?


Added Irish language support

Pull Request Checklist
Note to first-time contributors: Please open a discussion post in Discussions and describe your changes before submitting a pull request.
Before submitting, make sure you've checked the following:

[x] Target branch: Please verify that the pull request targets the dev branch.

[x] Description: Provide a concise description of the changes made in this pull request.

[x] Changelog: Ensure a changelog entry following the format of Keep a Changelog is added at the bottom of the PR description.

[x] Documentation: Have you updated relevant documentation Open WebUI Docs, or other documentation sources?

[x] Dependencies: Are there any new dependencies? Have you updated the dependency versions in the documentation?

[x] Testing: Have you written and run sufficient tests for validating the changes?

[x] Code review: Have you performed a self-review of your code, addressing any coding standard issues and ensuring adherence to the project's coding standards?

[x] Prefix: To cleary categorize this pull request, prefix the pull request title, using one of the following:
BREAKING CHANGE: Significant changes that may affect compatibility
build: Changes that affect the build system or external dependencies
ci: Changes to our continuous integration processes or workflows
chore: Refactor, cleanup, or other non-functional code changes
docs: Documentation update or addition
feat: Introduces a new feature or enhancement to the codebase
fix: Bug fix or error correction
i18n: Internationalization or localization changes
perf: Performance improvement
refactor: Code restructuring for better maintainability, readability, or scalability
style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc.)
test: Adding missing tests or correcting existing tests
WIP: Work in progress, a temporary label for incomplete or ongoing work

Changelog Entry
Added
Added src/lib/i18n/locales/ie-GA/translation.json file: Added Irish translation

Changed
Modified src/lib/i18n/locales/languages.json file: Added Irish language option.

Description
Added Irish language (Gaeilge) translation to Open WebUI project.
Language English Name: Irish
Language Native Name: Gaeilge
Language Code: ga
Added
open-webui/src/lib/i18n/locales/ie-GA/translation.json
Changed
open-webui/src/lib/i18n/locales/languages.json

Thanks!

Thank you very much!


Add hook to enable monkeypatching in Debian and unblock distutils adoption in Setuptools.

Create hooks and implement Debian's patches against those hooks. Fixes #2.
Scheme now uses 'posix'
Add a hook on import of distutils that will allow Debian to override the default behavior. Fixes #2.

Part of this PR includes https://github.com/pypa/distutils/blob/115da201da0e648d003dabbbd597d285d0d271f2/_distutils_system_mod.py. Debian maintainers can add this file somewhere to sys.path (plus augment install schemes in sysconfig) to allow this latest version of distutils to adopt the Debian patches as found in Python 3.9.
@doko42 Would you take a look and confirm this approach will unblock the use of this distutils in Setuptools?
This change may also help unblock issues like pypa/pip#10647.
cc @FFY00

It occurs to me that it may be easier to evaluate this approach by merging it and getting it into Setuptools such that a platform could experiment and test, so I'm going to proceed with the intention of iterating. I still welcome any feedback on the implementation.

In https://github.com/pypa/setuptools/issues/2956#issuecomment-1000895920 (https://github.com/pypa/distutils/commit/69f85733543b9f6257e89c4f79f9507f20d06b49), I extended the _distutils_system_mod to include an additional change to support Debian environments.


chore(docs): update hashes page to pull in code

Description
Problem*
Resolves https://github.com/noir-lang/noir/issues/4176
Summary*
Additional Context
Documentation*
Check one:

[ ] No documentation needed.
[x] Documentation included in this PR.
[ ] [Exceptional Case] Documentation to be submitted in a separate PR.

PR Checklist*

[x] I have tested the changes locally.
[x] I have formatted the changes with Prettier and/or cargo fmt on default settings.

Thank you @TomAFrench!
Would the use of #include_code work as intended when docs are cut into versioned_docs?
As in for example if #include_code is used in versioned_docs/version-v0.23.0, would it pull code at v0.23.0's commit instead of from the latest master?

Not perfectly.
The way it works is that on the release PR, we'll generate a version in versioned_docs with the snippets resolved to the code as of the release PR. The markdown is then frozen with the content as of that commit (i.e. we don't codegen for versioned docs after when the version is cut), the links however will still point towards master and so will become stale over time.
We could modify this so that the links point towards the release tag however in future.

Clarification appreciated. Will make sure to copy content rather than codegen for the retro additions into v0.23.0 in that case.

Yep those retro additions wouldn't be codegen-ed anyway so the page would look terrible 😊 so it's hard to make a mistake there


Fix return type for goog.structs.Trie.getKeyAndPrefixes.

The return type was correct before - Object keys are always strings, and you run into problems if you treat them otherwise.
If you want to pursue the test change we can do that separately.

Created internal issue b/133367790 to track this

Tracked by internal b/133368820

Hmm. So I guess I'm confused because the code in this method is treating the keys as numbers. Are those implicitly converted to strings or something?
What I really want is to find the longest prefix of a string that is contained in the trie.
I added the test because there's no example of how to use the return value of getKeyAndPrefixes.
To find the maximal length prefix I thought I would do something like Math.max(...goog.object.keys(trie.getKeyAndPrefixes(str))
Are you saying there's going to be problems with that?

That should work, but only because of how JavaScript does implicit coercion between numbers and strings.  All JavaScript Object and Array keys are technically strings (they may be stored as numbers internally to the VM, but this is unobservable) - you can see this by doing a for-in loop over an array (note: this is generally considered a bad idea) and you'll see that the type of the "numbers" you get out is actually string:
const arr = ['a', 'b', 'c'];
for (const i in arr) {
  console.log(`${i} [${typeof i}]`);
}

This logs
0 [string]
1 [string]
2 [string]

But you generally don't run into problems because there's just so much coercion going on.  If you use the index as a number (e.g. by passing it to Math.max), it will just parse it and turn it into a number right there.
This is why generally it's better to use the newer ES6 data structures, like Map, which actually preserves its keys correctly, without stringifying them all.

I'm working on merging a commit to close this internally.


fix: only reset esbuild bin path if it was overwritten

Fixes #189

FYI, this build failure seems to be due to a workflow misconfiguration and not your change. I'm looking into it.


Issue about commend line operation

Hello, nice job! Does your PhageScope provide command-line operations? Because we have data on a Linux server, if the tools can provide command-line operations, it can be much more convenient.

Hi, thanks for your interest in PhageScope. Currently, PhageScope does not support command-line operations, but the uploaded fasta file (<10MB) could contain multiple phage sequences, and PhageScope will return the annotations for all the sequences.


fixed RN60 CocoaPods installation

@netbull why don't we just move the existing podspec in ios/RNAudioRecorderPlayer.podspec to the root to avoid duplicates? Or we can just delete the old one.

I’m not really sure... I saw that it is the same in the package of react-native-cameraroll and it works...

@NRamirezCR yes, the podspec file inside ios/ was not needed.

@hyochan any update on this?

Related #99 #98


[Nomination] Cros Nest

Who are you nominating?
The Cros Nest team
What are you nominating them for?

Writing Relayer instructions
Running a relayer
Helping the community on Discord and Telegram

Please provide links to their work.

Relayer instructions
Relayer
Look for @theBro, @Galadrin, @emuLOAD, and @Florent Discord and Telegram

Nice boards! Seems, you were inspired by our work.


Invoke sparql from live code block

See a full description here

Ah, so would you want something like a button on the Sparql code block?  And the results to be outputted as children of the code block?

Not really. And better not. Running it from the command pallette should be
fine and whoever wants will make a custom hotkey.
On Sun, 22 Oct 2023, 20:19 Michael Gartner, @.***>
wrote:

Ah, so would you want something like a button on the Sparql code block?
And the results to be outputted as children of the code block?
[image: image]
https://user-images.githubusercontent.com/3792666/277183368-d4d343af-6a8c-4460-b0a0-250b108911bc.png
—
Reply to this email directly, view it on GitHub
https://github.com/RoamJS/developer/issues/6#issuecomment-1774163095,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABZYZ4PDTYPHI4J5ZQKRRL3YAVPR5AVCNFSM6AAAAAAUR4CEFGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZUGE3DGMBZGU
.
You are receiving this because you commented.Message ID:
@.***>

Alright.  So I added a new command Run SPARQL Query: Custom
This will load to the Custom Query page initially and grab the last edited sparql code block from the current page.
What left would then be:

[ ] define endpoint / output format
[ ] import endpoint / output format with command
[ ] support block refs

Hopefully this will be helpful in the interim.

Wouldn't it be easier to run the command when the cursor is on the query block or its parent?
In addition, it would be nice to be able to start it from the block menu as is the case with some other extensions.

BTW, what do you mean by

import endpoint / output format with command

Wouldn't it be easier to run the command when the cursor is on the query block or its parent?

Depends on the use case, I guess.  I believe currently it imports at the cursor position, so that functionality would be lost.  But I'd be happy to add this feature to the list.

In addition, it would be nice to be able to start it from the block menu as is the case with some other extensions.

This can be added to the list as well.

import endpoint / output format with command

This was referring to grabbing the endpoint from a comment in the sparql query block and updating the endpoint in the dialog


test: add tests for rsa.go

Fixes #10

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 67.23%. Comparing base (bd9cd8b) to head (23932d5).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##             main      #11       +/-   ##
===========================================
+ Coverage   24.46%   67.23%   +42.77%
===========================================
  Files           4        4
  Lines         233      235        +2
===========================================
+ Hits           57      158      +101
+ Misses        175       76       -99
  Partials        1        1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Updating Stat with Lesser Value Problem

I cannot update a stat with a lesser value:

Our docs aren't yet clear about how this work.  We will fix the docs soon.
Global leaderboards currently remember the highest (or lowest, depending on config) value you set, but this may change in the future.
Therefore we recommend the value of the stats always either increases or decreases vs doing both

Is there a way to "reset" stats on Dev Center? For example, I'm testing and I want to reset what I have.
It appears to me that I would first need to delete all my stats pragmatically (https://github.com/Microsoft/xbox-live-api/blob/master/Source/Services/Stats/Manager/WinRT/StatisticManager_WinRT.h#L132), and then recreate them on Dev Center. Is this the correct approach?
Is there any way to create the stats on Dev Center pragmatically?

For now, delete them all pragmatically.  No need to delete or recreate them on Dev Center as that just configures how you view stats (either as a Feature Stat, or as a Leaderboard).

Please reopen this isn't working


Apply standard formatting across solution

I hope this can be a step towards avoiding accidental formatting changes in future. Up to now there has been a legacy of inconsistent formatting which is a problem when then trying to format our own changes using ctrl+k+d or whatever other tool you like to use.
I've manually done two things:

Run dotnet-format
Use ctrl+k+d on each project file

I'm not an expert at editorconfig files, nor am I hugely opinionated about which conventions we use (spaces or tabs etc., I don't really mind). But I think it would be great to get things standardised as part of a check-in hook or just a validation that dotnet-format doesn't caused any changed when run in the build script.

I'll have a look at it tomorrow. 👍

I've verified that no functional change is present. Would you mind if I also ran JetBrains Rider code cleanup and add to this PR? To make it final once and for all.

Go for it (I love resharper by the way). I think rider can pick up settings from editorconfig, so hopefully over time the two methods will align

I don’t see an editorconfig file, correct?
If so, how do we want to keep the code in sync with this formatting? Different tools have different preferences :).

There is one, you added it 🙂
https://github.com/hvanbakel/CsprojToVs2017/blob/master/.editorconfig

Different tools have different preferences

That's true, do you use resharper/rider? For settings beyond the current scope of editorconfig, we could add solution wide resharper preferences. At least @andrew-boyarshin and I are using it.

@andrew-boyarshin Would you mind if I also ran JetBrains Rider code cleanup
Actually, by code cleanup, do you mean just formatting or also things like removing unused methods? I wouldn't want that sort of API change here because previously it has broken my custom use of the library (when AssemblyName was removed). Unused usings removal would be fine.

There is one, you added it 🙂
https://github.com/hvanbakel/CsprojToVs2017/blob/master/.editorconfig

😄  I saw the comment about editorconfig and figured there must not have been one given the issues addressed here but I guess not every tool used leverages it.

I'm gonna merge this formatting PR, @andrew-boyarshin, you can always add rider formatting later if you like. I read that the new resharper can export it's settings to editorconfig so that might be useful in future


Fix typo

typo of Spring Boot

@gumuxiansheng Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.


Power up error and Notifications improvement

How do I power up? I clicked on the link in my wallet but it asks me for a target steem account and when I enter mine, it just transfers to myself the same amount, no powering up actually happens. So what am I doing wrong?

Is there a way to filter my in-app notifications - I don't want to see the upvotes, only the comments, mentions and transfers, etc. I see there is an option for the push notifications but I couldn't find one for the in-app ones, those counting at the small bell icon at the bottom

With regards to 1. there was no error, it simply sends the same amount of STEEM to from my wallet to my wallet.
Any plans to change 2. soon? I have lots of votes daily so it is hard to notice the mot important stuff unless I use the drop down filter but that is for each different action and takes much more time. Another thing I noticed - today I got mentioned by a spammy bot with reputation -17 like hundred times, is there a way to hide the activities from accounts I have muted? I keep getting those and it's a bit irritating, thanks in advance.

Beep, boop, I'm a bot! This issue was created by @horpey in #📲-esteem-mobile.

Really good one! We can work on them...
@mistikk 1st issue might be related to our recent change with powerup page, please check
@talhasch lets hide notifications if source (user) has less than 25 reputation or muted by target (user)
@horpeyloaded numbers on activities icon shows everything and filtering those doesn't seem good solution. If you use dropdown, you should still see unread comments and/or mentions. Once you done reviewing them, you can ignore votes and click read all button to mark everything read. That's how I personally use it, check mentions and replies first after that mark everything as read.


Kirkstone humble rethinkrobotics

Which way is this going? Master to kirkstone... or vice versa? PR says something but there is also this commit which is the other way around.

@jari-hodju The merge is happening to master. The last commit is a conflict fix which I did in the last moment.


Allow post-validation FromInputValue errors

Required for #975
Synopsis
At the moment, FromInputValue fallibility is considered during input operation validation only. Also, the real error is erased, due to Option<T> usage, thus argument absence is unobviously mixed with convertion errors over the code base.
Being applicable to most cases, still there are some situations where the error may occur only during resolution after passing the validation (from #975 it's deserializing json::Value into Json<T: Deserialize>). At the moment, we're ending up with runtime panics in such situation, which is not good.
Solution
Make FromInputValue returning Result with the actual error preservation. Require this error be IntoFieldError convertible, so it may naturally bubble-up during operation execution.
Checklist

[ ] tests renewed
[ ] documentation updated
[ ] CHANGELOG entry described

cc @ilslv
Before continuing this, make sure master is built OK on latest nightly, and update it (if required) in a separate PR.

@tyranron PR is ready for review

@tyranron this PR is ready for review


Tracking the performance of -Zchecksum-freshness

This issue is intended for tracking performance related discussion and benchmarks for #14136. #14136 itself is for overall progress reports.
Useful cargo script to summarize number and size of files got checksum'd

#!/usr/bin/env cargo
---cargo
[dependencies]
walkdir = "2"
---

use std::collections::HashMap;
use std::ffi::OsStr;
use std::fs::File;
use std::io::prelude::*;
use std::io::BufReader;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let walker = walkdir::WalkDir::new("target/debug/deps")
        .into_iter()
        .filter_entry(|e| e.file_type().is_dir() || e.path().extension() == Some(OsStr::new("d")));

    let mut map = HashMap::with_capacity(8192);

    for entry in walker {
        let entry = entry?;
        if entry.file_type().is_dir() {
            continue;
        }
        for line in BufReader::new(File::open(entry.path())?).lines() {
            let line = line?;
            let Some(rest) = line.strip_prefix("# checksum:") else {
                continue;
            };
            let mut parts = rest.splitn(3, ' ');
            let (_, size, path) = (parts.next(), parts.next().unwrap(), parts.next().unwrap());
            let size: u64 = size.strip_prefix("file_len:").unwrap().parse()?;
            if let Some(old_size) = map.insert(path.to_string(), size) {
                assert_eq!(old_size, size, "size doesn't match for {path}: {old_size} vs {size}");
            }
        }
    }

    let mut stdout = std::io::stdout().lock();
    writeln!(stdout, "number of files: {}", map.len())?;
    writeln!(stdout, "total file size: {}", map.values().sum::<u64>())?;

    Ok(())
}

Originally posted at https://github.com/rust-lang/cargo/issues/14136#issuecomment-2430876726.
Here is a result of a performance benchmark that mostly tests the rustc part.

It adds<EMAIL_ADDRESS>as a dependency and runs cargo clean && cargo check.
rg 'checksum:blake3' target/debug/deps | wc -l shows 8313 matches. It means rustc roughly computes blake3 checksum 8313 times.
Checksum computations on Cargo side are mostly ignored because Cargo assumes registry are immutable and won't do either mtime or checksum check .

Result: On par if you have zero local code.

Command
Mean [s]
Min [s]
Max [s]
Relative

cargo +nightly check --frozen
52.986 ± 0.366
52.549
53.681
1.00

cargo +nightly check --frozen -Zchecksum-freshness
53.020 ± 0.315
52.442
53.480
1.00 ± 0.01

Benchmark details

Setup package
cargo new foo --lib
cd foo
cargo add aws-sdk-ec2

Benchmark script
hyperfine --warmup 1 \
  --setup "cargo fetch" \
  --min-runs 20 \
  --prepare "cargo clean" \
  --export-markdown result.md \
  "cargo +nightly check --frozen" \
  "cargo +nightly check --frozen -Zchecksum-freshness"

Platform information
cargo 1.82.0 (8f40fc59f 2024-08-21)
release: 1.82.0
commit-hash: 8f40fc59fb0c8df91c97405785197f3c630304ea
commit-date: 2024-08-21
host: x86_64-unknown-linux-gnu
libgit2: 1.8.1 (sys:0.19.0 vendored)
libcurl: 8.9.0-DEV (sys:0.4.74+curl-8.9.0 vendored ssl:OpenSSL/1.1.1w)
ssl: OpenSSL 1.1.1w  11 Sep 2023
os: Amazon Linux AMI 2.0.0 [64-bit] (r7a.24xlarge)

Originally posted by @Xaeroxe at https://github.com/rust-lang/cargo/issues/14136#issuecomment-2430959657.
Do the slower benchmarks appear to be I/O bound or CPU bound? If they are CPU bound, are all the cores saturated?
I knew going into this that performance would suffer. So unless we can improve these numbers a lot I'd be inclined to make this feature opt-in. Use it if you know you need it.

Originally posted by @epage at https://github.com/rust-lang/cargo/issues/14136#issuecomment-2431313931.

rg 'checksum:blake3' target/debug/deps | wc -l shows 8313 matches. It means rustc roughly computes blake3 checksum 8313 times.

Should we avoid passing this flag to rustc for immutable dependencies?  I know your benchmark didn't show much of a difference but figure there might be other relevant cases

@epage My impression is that rustc already computes file checksums, just with a different algorithm. The performance might be less interesting.
After some discussions with @Muscraft, I can think of some relevant cases:

Zbinary-dep-depinfo would hash large binary files. This might be improved by using mmap or rayon update in blake3 crate on rustc side. Not sure if it leaves traces for Cargo to know it is binary files, though we can do that on demand when the file size exceeds a threshold.

As of 42f41439b24b71c024aeb1d8b967fdde09b25544 in Cargo fingerprint, and rust-lang/rust@814df6e50 in rustc, we use 16KiB buffer size for blake3. In blake3 it uses a larger buffer size 64KiB via update_reader function. We might want to switch to it. Here is a list of large files we might want a larger buffer when digesting.
Top 20 largest files in rust-lang/cargo

308K    CHANGELOG.md
188K    tests/testsuite/build.rs
184K    tests/testsuite/package.rs
156K    tests/testsuite/build_script.rs
136K    tests/testsuite/test.rs
120K    tests/testsuite/publish.rs
120K    tests/testsuite/metadata.rs
116K    tests/testsuite/registry.rs
112K    tests/testsuite/git.rs
112K    src/cargo/util/context/mod.rs
108K    src/cargo/util/toml/mod.rs
108K    src/cargo/core/compiler/fingerprint/mod.rs
100K    tests/testsuite/artifact_dep.rs
92K     tests/testsuite/freshness_checksum.rs
92K     src/doc/src/images/auth-level-acl.png
92K     benches/workspaces/substrate.tgz
88K     tests/testsuite/freshness.rs
84K     tests/testsuite/patch.rs
84K     tests/testsuite/install.rs
84K     src/doc/src/reference/unstable.md

Originally posted by @Xaeroxe at #14136 (comment).
Do the slower benchmarks appear to be I/O bound or CPU bound? If they are CPU bound, are all the cores saturated?
I knew going into this that performance would suffer. So unless we can improve these numbers a lot I'd be inclined to make this feature opt-in. Use it if you know you need it.

It's more like I/O bound. @Muscraft has done the same benchmark on their 16 cores machine with a fancy SSD. the performance difference between the two was a bit smaller than this benchmark result https://github.com/rust-lang/cargo/issues/14722#issuecomment-2432282977, even r7a.24xlarge is a way powerful machine in terms of cores and RAM.

I am curious how often "time to prove build is fresh" is relevant to cargo's user satisfaction. Are users more likely to be upset about an incorrect freshness check, or a long duration to prove the workspace is fresh?
I'll admit that the mtime check gets it right most of the time. However thinking from the perspective of a user I think I'd rather wait a little longer and be confident that the check was correct. However I'm biased. I'm curious about other people's thoughts on it.

Some more benchmark results with a permutation of -Zchecksum-freshness * -Zbinary-dep-depinfo, using the same script from https://github.com/rust-lang/cargo/issues/14722#issuecomment-2432282977:

Command
Mean [ms]
Min [ms]
Max [ms]
Relative

check -p aws-sdk-ec2 --frozen
584.2 ± 2.8
580.5
591.9
1.00

check -p aws-sdk-ec2 --frozen -Zbinary-dep-depinfo
588.2 ± 2.6
582.8
593.4
1.01 ± 0.01

check -p aws-sdk-ec2 --frozen -Zchecksum-freshness
699.3 ± 3.5
692.0
707.4
1.20 ± 0.01

check -p aws-sdk-ec2 --frozen -Zchecksum-freshness -Zbinary-dep-depinfo
773.4 ± 4.2
767.2
786.0
1.32 ± 0.01

number of files: 8435
total file size: 259031218 (~247 MiB)

Command
Mean [s]
Min [s]
Max [s]
Relative

check --frozen
2.072 ± 0.061
2.042
2.258
1.00

check --frozen -Zbinary-dep-depinfo
2.630 ± 0.010
2.611
2.645
1.27 ± 0.04

check --frozen -Zchecksum-freshness
5.096 ± 0.076
5.052
5.275
2.46 ± 0.08

check --frozen -Zchecksum-freshness -Zbinary-dep-depinfo
5.854 ± 0.017
5.825
5.906
2.82 ± 0.08

number of files: 192533
total file size:<PHONE_NUMBER> (~1587 MiB)

I found the result is fairly stable btw.

I am curious how often "time to prove build is fresh" is relevant to cargo's user satisfaction. Are users more likely to be upset about an incorrect freshness check, or a long duration to prove the workspace is fresh?

@Xaeroxe Personally I am with you. In this case correctness is more important to me than a few seconds lag for no-op builds. Though there are tools heavily calling cargo check and it's better to control the  perf regression in a reasonable level.

Would it be possible to have a mode where the checksums are computed only when mtime shows that the file is touched to avoid unnecessary recompiles when nothing actually changed? This would still have the same correctness issues as mtime, but speed up some cases that behave badly with mtime. For example in cg_clif's test suite this would be really useful to avoid unnecessarily rebuilding crates whose sources are copied and patched before building.

The main reason I'm excited about this is because I'm running on CI, and all my mtimes change with each run, so my valid cache contents are never used. I think this is an extremely common problem.
If folks decide the overhead of always doing the checksum every time slows down the nothing-to-do case too much, please consider defaulting to an alternative scheme:

do the existing mtime/size/whatever check; if it says the file is unchanged, it's unchanged.
if it says the file is changed, look more closely with the checksum. There's really no harm in this; the IO is likely warming the cache for later rather than doubling the cost. And the CPU used for blake3 is insignificant compared to the actual compile.

and all my mtimes change with each run, so my valid cache contents are never used.

The current implementation probably doesn't really help if your package have build scripts involved in your dependency graph. This remains unresolved (I may work on it if I find some free time, or someone else).

Would it be possible to have a mode where the checksums are computed only when mtime shows that the file is touched to avoid unnecessary recompiles when nothing actually changed?

Not sure about this. Mtime detection works well for most of the time, but fails some corner cases, either excessive rebuilds or not rebuild at all. And yes Cargo could potentially provide a config saying you trust you system mtime and doesn't ever compute checksums. I think that is kinda the last resort. Personally I'd like to drop mtime entirely 😆.

do the existing mtime/size/whatever check; if it says the file is unchanged, it's unchanged.

Yes in the first implementation Cargo checks size as an optimization, though in a different (but more reliable) way — if its size changed, it reports the file dirty and don't bother computing checksums.
https://github.com/rust-lang/cargo/blob/edd36eba5e0d6e0cfcb84bd0cc651ba8bf5e7f83/src/cargo/core/compiler/fingerprint/mod.rs?plain=1#L2023-L2029

Build scripts

I intend to see this to completion and will do that once build-rs is properly adopted.


Bugfix: the service does not start if it can't write its PID file

When installing the service using the upstream repository, it will not start because the /var/run/ directory is not writable by the mongodb user (the upstream Debian packaging is not done the same way the distrib one is).

There seems to be an issue with travis-ci, tests should be re-triggered.

What version of mongodb is this on? Is this using the Debian packaging or upstream? Does this apply to other versions?

@hunner / @olbat If running Mongo 2.6, https://github.com/puppetlabs/puppetlabs-mongodb/pull/278 may well fix this... It's in master now if you want to try...

@hunner, I got this issue with the upstream packaged version of MongoDB 2.6.
@fatmcgav, I'm not sure #278 fixes the issue since it does not ensure that $pidfilepath is writable by the MongoDB user. I opened this issue long time ago so I'm not 100% sure, but I think the main problem here is that the post-installation script of the deb package of MongoDB 2.6 does not ensure that the directory containing the PID of the service file is writable by the MongoDB user (or group).

@olbat I'm out and about atm, but I'm pretty sure there's a function in the init script to create the pid directory if it doesn't exist...
The issue #278 fixes is that the init script couldn't detect the pid file path correctly...

@fatmcgav For sure there wasn't any in the code I tried to fix with this PR because the service wasn't able to run because it wasn't able to create the PID file (tested on Debian with a fresh Docker image). Maybe something was added after, I'll try to look at the code when I'll find some time.

Up ?

@fe80 this branch needs to be rebased, we can't merge it at the moment. Are you interested in doing this?

Due to its age I'm closing this PR. Feel free to open a new one with more recent code.


Update electron to 4.0.8

Fixes: https://github.com/meetfranz/franz/issues/1317
Update required in order to fix performance degradation due to memory leak issue https://github.com/electron/electron/pull/16772.

Description

Bumps version of electron in package.json from 4.0.4 to 4.0.8
Motivation and Context

Due to a memory leak issue found in version 4.0.4 of electron, host machine resource utilization was going through the roof.
How Has This Been Tested?

Ran the local environment with 4.0.4 and then with 4.0.8 and checked CPU temperature sensors.
Screenshots (if appropriate):
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[x] My code follows the code style of this project (run $ yarn lint).

Thanks for taking care of this!


Apache : v2.1.7 renewed fine, typo ?

Renewed with v2.1.7 all went fine.
I saw now in the menu which was a little confusing for me:
 N: Create renewal (default settings)
 M: Create renewal (full options)

I prefer to make it (again) :
 N: Create new certificate (default settings)
 M:  Create new certificate (full options)

Is it a typo ?

Looks like a typo yes, or a bit to much copy & pasting :)

It was not a typo actually. I changed it to reflect that since this release, a renewal doesn't necessarely translate to a single certificate anymore (with the arrival of order plugins, a renewal may be expanded into multiple certificates).
Also it's more consistent with the other primary menu options (manage and run). But if you have suggestions on more clear wording then I'm open to suggestions of course.

Understand for renewal, but not to create a new one.
Where is a menu description with  create a new certificate ?
Have already a  certificate with a few hosts in it, and his renewal went fine.   I have now a new host to create a separate certificate, did not find a menu option.
Little afraid to use the M option. Question is how to create this new certificate ?

Running v<IP_ADDRESS> all went fine. And I saw the menu is changed back to :
 N: Create certificate (default settings)
 M: Create certificate (full options)

Thanks


LeftController is not valid

Running toolkit example scene for motion controller in unity latest MRTP, with .NET3.5/4.6 and getting the following error from within the scene. please advice.
transform.localRotation assign attempt for 'LeftController' is not valid. Input rotation is { NaN, 0.000000, 0.000000, 0.000000 }.
UnityEngine.Transform:set_localRotation(Quaternion)
HoloToolkit.Unity.InputModule.MotionControllerVisualizer:Update() (at Assets/HoloToolkit/Input/Scripts/Utilities/MotionControllerVisualizer.cs:128)

Duplicate of #1200


[Toolbar] : Fix existing toolbar design flaws by using flex

The existing Toolbar component is designed using floats and display:blocks etc. Owing to this
there were issues with respect to a very long title text overflowing and breaking the toolbar.
The issue is currently fixed using a temporary solution of including a width attribute as an inline style in the implementation example which the user can override to suit a particular use-case. It was decided to address the existing design issues using flexbox design.
The change involved converting the toolbar component as a flex-container and the inner ToolbarGroup will be its flex-item and also act as flex-container for the component it contains.
That way the elements will grow and shrink as per the space available around them and there is no need to hardcode width for any individual component.
Resolves https://github.com/callemall/material-ui/issues/3192

@newoga @alitaheri : I made changes in css and incorporated the flex box design paradigm.
@oliviertassinari : No width required anymore. I bet that should make you happy :smile:

@tintin1343 Can you verify that it is working as intended in the latest version of each browser? (I haven't checked, but best with flex stuff to make sure)

@nathanmarks :  I was working on chrome. I did check the [compatibility] (http://caniuse.com/#feat=flexbox) as per the documentation. However, let me do a thorough check.

@nathanmarks : Works fine in Mozilla 44.0.2 and Chrome 48.0.2564.116 .The dropdown icon does not stay fixed in Safari Version 9.0.3 (can be fixed) but the flex box functionality works fine.
I still have to check it on IE11/ Edge though.

@tintin1343 I can check it out this evening on ie11/edge for you.

@nathanmarks : Cool. Thanks !Let me know if you see any anomalies.

@tintin1343 the only anomaly will be having internet explorer open

I made the suggested changes.

This is looking good to me, @callemall/material-ui guys review and merge if it's alright, thanks :+1:

@alitaheri : I knew you would be happy seeing the flexbox :grin:

Yeah :heart_eyes: :heart_eyes:

@alitaheri @tintin1343
When can we get rid of the ToolbarGroup? :smile: :smile_cat:

@callemall/material-ui  : I would want everyones opinion on
https://gist.github.com/tintin1343/c35827b320b0d81ee6cf
and if we should be going forward with redesigning it completely.

@tintin1343 I think @alitaheri would prefer to get this in now, and save a breaking change for the next version.

@nathanmarks : Cool ! Sounds reasonable.

@tintin1343 left a few more tiny comments -- and i'll check this properly tonight in IE as well.
One of comments is RE a prop you didn't add, but I'm not 100% sure why we even need it.

One of comments is RE a prop you didn't add, but I'm not 100% sure why we even need it.

Did not understand this comment. Could you elaborate on this?

@tintin1343 sure, display: flex is a block level element, so I'm not sure what we need width: 100% for. Looks like an opportunity to cut some fat off if it doesn't affect anything :+1:

@nathanmarks : I've done the changes.

Hey @tintin1343 I just checked this out in IE11 and Edge13 and it looks good :+1:

Just rerunning the CI build again.

@nathanmarks : cool ! these tests had passed yesterday!

@tintin1343 Master is failing right now. I'm going to accept this but put it as on hold + needs review until master is passing.

https://github.com/eslint/eslint/issues/5476

@tintin1343 One final pedantic change before we merge - please could you update the commit title to match the current PR title? It'll help keep the git history clean. Thanks! :+1:

@mbrookes : Done. Will keep that thing in mind. Thanks !

:+1:

So the float property has been removed right ? The doc is not up to date on that point.
Also, if we just want one group in the toolbar fixed to the right, there is no way to do it without applying our own style ?
You either change the justify-content of the Toolbar or add an empty ToolbarGroup inside your Toolbar ?

@Birssan : Yes you are right you will need to override the styles for specific use-cases. Regarding the docs , I agree they have not been updated.

You either change the justify-content of the Toolbar or add an empty ToolbarGroup inside your Toolbar ?

Yes. Another way would be to use alignSelf: 'flex-end'; on the specific toolbar so that it sticks to the end which is right in your case.
https://css-tricks.com/snippets/css/a-guide-to-flexbox/ : This is a good point of reference.
Do let me know if you need further help.

Using align-self: flex-end on the specific ToolbarGroup wouldn't work unless the Toolbar itslef is using column direction (which is not the case by default)

@Birssan easiest way is to add a component in between using flex-grow, that's what I do.

Yes that would work, but I find it kinda dirty to put an empty component just so my actual component is pushed to the right...
Right now I just use CSS, it's fine, I just think it would have been nice to keep the option to push a group to the right or to the left.
On the other hand I'm really glad the flexbox system is used here :)

@Birssan : use  justifyContent: 'flex-end' on the toolbar it should give you the desired effect.

I agree right now there is no way to just align a specific ToolbarGroup to the right.

On the other hand I'm really glad the flexbox system is used here :)

Even we are glad we went ahead with it.

That's what I did using a class though.
It was just a suggestion to add this as an option :)

@Birssan : Thanks for reporting this. We are planning a re-write of the toolbar component. I will make it a point to include this use-case.
If you have time, you can submit a PR too. Thanks!

Thanks, I'm new to React but i'll see if I kind manage this little change :)


🔎 Added SEO descriptions to Consulting Pages

Closes #501

Used ChatGPT to generate descriptions for pages using the following prompt:

Generate a simple SEO description for this markdown page using important keywords to enable greater discoverability. Do not include questions.

As per my conversation with @camillars, she is happy for the new descriptions to go live without review since they are currently empty.


I want to show full contact list instead of searching for contacts via name,phone number.

I want to show full contact list instead of searching for contacts via name,phone number. Is it possible to do like that. And if user tap click on that button chat should be happen. Can you help me how to do that?

Why not have a look at how public groups are displayed as there isn't (as far as i know) a filter and it shows every single public thread. You might be able to change the path and show contacts instead

Thanks for your reply. I will check that.


defmt.ferrous-systems.com is outdated (?)

at least the timestamp section still documents the #[defmt::timestamp] attribute.

The new stuff is on https://defmt-next.ferrous-systems.com/

How/Where did we set up the different subdomains?

This is now fixed, but the Netlify setup is still evil


Add Ubuntu 22.04 repository registration for mssql-tools18

I think this would be useful for those who copy paste without paying to much attention like myself.

@rwestMSFT
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

Great addition, @therealisc.


Refactorized permissions api to use promises as the standard w3c spec

As we agreed on #120 i've refactorized the code related with Push.Permission.request() in order to use Promises instead of callbacks. All related tests have been fixed in order to support this change.
This currently breaks the old behavior in Push.js. Should we keep the callbacks support?

Coverage increased (+0.5%) to 87.967% when pulling 80cef40b00901572c509f7fa176f901e35f0081d on basiclines:permissions-as-promise into c990321f90e1a205cafadc03809018cba7692c36 on Nickersoft:master.

Yeah, I'd say so. Don't want to break anyone's current implementation. I'd say the safest thing to do is depreciate the current method signature (see here) just to let people know they should change their implementation. However, you can't overload methods in JavaScript so I'd look an implementation such as this one to support both signatures.

Coverage decreased (-1.2%) to 86.29% when pulling c7c5526213d9b6da3d110b7ee5bae6a11dc52fee on basiclines:permissions-as-promise into c990321f90e1a205cafadc03809018cba7692c36 on Nickersoft:master.

I've decided to create 2 new methods (_requestWithCallback and _requestAsPromise) using de facto standard of _ which implies those are internal methods for the library. In this way, we get a cleaner code than creating 2 inner functions inside the main request method.
Maybe i should maintain tests for both implementations, but i'm not sure about it, as the callback implementation is deprecated and there shouldn't be any future changes affecting it.

I've added the old test back while keeping the new ones for the promise based API, mostly to keep codeclimate coverage all up.

Coverage decreased (-16.9%) to 70.565% when pulling 97d09c8da5f5de9c9df26fef3a174dfac9025950 on basiclines:permissions-as-promise into c990321f90e1a205cafadc03809018cba7692c36 on Nickersoft:master.

@basiclines Could you see if you could get the coverage back up? It's okay if there are some things that are hard to test, but 16.9% seems to be a hard hit to the code coverage.

I have to rebase the branch first. About the code coverage, i don't really know why has dropped so much, when actually i've committed new tests to the branch.

Coverage increased (+0.5%) to 87.952% when pulling 4a727d1edb6f924f2dab49a3b79497941139b3e1 on basiclines:permissions-as-promise into 9f2ed04a2423b1cd081a52996aefaa558db2a594 on Nickersoft:master.

All fixed and running clean @Nickersoft 😄

I got you :) Thanks for the contribution!


Enhance model health notifications by registering, removing, and monitoring message events.

Description
Enhance model health notifications by registering, removing, and monitoring message events.
How Has This Been Tested?

config .env kafka setting
setup  dbgpt
add model or  stop model
view kafka

Snapshots:
Include snapshots for easier review.
Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have already rebased the commits and make the commit message conform to the project standard.
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] Any dependent changes have been merged and published in downstream modules

@jsRuner Thanks. But there are some issues that need to be discussed.
I think we can consider introducing an event notification interface instead of a specific implementation. And the registry is a very lightweight module and should not directly usekafka-python.

@jsRuner Thanks. But there are some issues that need to be discussed. I think we can consider introducing an event notification interface instead of a specific implementation. And the registry is a very lightweight module and should not directly usekafka-python.

@jsRuner Thanks. But there are some issues that need to be discussed. I think we can consider introducing an event notification interface instead of a specific implementation. And the registry is a very lightweight module and should not directly usekafka-python.

Okay, I'll think about it again. My original intention is to use DB-GPT as a kernel for external programs to utilize. However, the model may be in an unhealthy state, so it is more stable to determine its availability through a message queue


Document Path Invalid - Objects not being created on update

Describe the bug
If you have a field that is of type object, that is not required (so the field is not created when you create the record), then you perform an update that attempts to populate subfields in that object, you will get the following error: "OneTable execute failed "update" for "example". The document path provided in the update expression is invalid for update"
To Reproduce
Fairly easy to reproduce:  https://gist.github.com/AXSJ/ceb2f3c54c59acea46250245e6a6b8d0
Follow the steps in the above Gist.
Cut/Paste
Output Logs:
error OneTable exception in "update" on "Example" {
    "err": {
        "name": "ValidationException",
        "$fault": "client",
        "$metadata": {
            "httpStatusCode": 400,
            "requestId": "3ILKG8PJ3UUJG77KFS4A4N79V7VV4KQNSO5AEMVJF66Q9ASUAAJG",
            "attempts": 1,
            "totalRetryDelay": 0
        },
        "__type": "com.amazon.coral.validate#ValidationException",
        "message": "The document path provided in the update expression is invalid for update"
    },
    "trace": {
        "model": "Example",
        "cmd": {
            "ConditionExpression": "(attribute_exists(#_0)) and (attribute_exists(#_1))",
            "ExpressionAttributeNames": {
                "#_0": "pk",
                "#_1": "sk",
                "#_2": "exampleField",
                "#_3": "exampleSubField",
                "#_4": "id",
                "#_5": "updated"
            },
            "ExpressionAttributeValues": {
                ":_0": {
                    "S": "test"
                },
                ":_1": {
                    "S": "01GTT384PEX0SFV5ADW769AS63"
                },
                ":_2": {
                    "S": "2023-03-06T00:05:15.009Z"
                }
            },
            "TableName": "",
            "ReturnValues": "ALL_NEW",
            "UpdateExpression": "set #_2.#_3 = :_0, #_4 = :_1, #_5 = :_2",
            "Key": {
                "pk": {
                    "S": "Example#01GTT384PEX0SFV5ADW769AS63"
                },
                "sk": {
                    "S": "Example#"
                }
            }
        },
        "op": "update",
        "properties": {
            "exampleField": {
                "exampleSubField": "test"
            },
            "pk": "Example#01GTT384PEX0SFV5ADW769AS63",
            "sk": "Example#",
            "id": "01GTT384PEX0SFV5ADW769AS63",
            "_type": "Example",
            "updated": "2023-03-06T00:05:15.009Z"
        }
    }
}

Expected behavior
For the update to carry out. So create the exampleField field along with any subfields passed in the update payload.
Environment (please complete the following information):

OS - MacOS Ventura 13.2.1
Node Version - v16.19.0
OneTable Version -<EMAIL_ADDRESS>TypeScript Version
Any other relevant environment information

Possibly caused by the partial setting. Have you tried it with the schema partial field set to false? This would probably not fix it for your requirements (ability to update just specific nested fields) but would could help the devs locate an issue faster.
My guess would be that the partial update feature doesn't yet support updating fields in a nested object when the object doesn't yet exist.

Setting default to {} is not regarded as a hack and is the default solution.
To work with missing parent objects would require additional conditional checks on all updates which will have a performance impact. The failing request would then need to be caught and the parent would need to be created and then the original request retried.

Thank you for your help. Greatly appreciated. However, my project requires the Partial setting set to true.
For now, I have added a "default" value of {}. However, this is more of a hack and not a solution. OneTable needs to be updated.

The way Dynamodb works means that this cannot be done in a single update call as it's not possible to add attributes to an object that does not exist. So you have to have a do the first update with a conditional check that the attribute exists.
If the update fails due to this conditional check then you make the update request again but this time adding an object as the attribute rather than trying to set a value on it.
I imagine the framework could be updated to handle this but as @dev-embedthis this would probably have a performance impact. If you feel the solution suggested is too much of a hack for you then you can implement the above flow through onetable:

Update with partial true and a conditional check
If it fails due to the conditional check then do the update again but with partial set to false and no conditional check

Ok thank you everyone! Greatly appreciate the help and the knowledge. I will use the default {} solution. Thank you for explaining @AlexStansfield. And thank you @dev-embedthis for your contribution.

Just a few notes to summarize. You can get the message: "The document path provided in the update expression is invalid for update" two ways:

An object with nested properties does not exist
In an array with nested objects and properties, the nested object does not exist.

You can address both by using {partial: false} on the specific update API. In that case you must provide the complete top level property with all items.
The issue is that detecting a missing top level property is difficult as the message from DynamoDB is not specific as to the document path that is causing the problem. To pre-check the existing of a top level property with nested items would be prohibitive.
This problem mostly manifests when you ADD a new nested schema without a default value of {}. Best dealt with in migrations when you add the property to ensure all items have the required new property set to {}.
If you are using arrays of nested items, it is more difficult as you can't set a default of [{}] as that would imply an array length of 1. Setting the default to [] is desirable but insufficient as when you do the update, the {} element won't exist. So best to use {partial: false} and update the entire property.
Unless anyone can think of a better solution.


.

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like this: [x])
Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2018.12.09. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2018.12.09

Before submitting an issue make sure you have:

[x] At least skimmed through the README, most notably the FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones
[x] Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add the -v flag to your command line you run youtube-dl with (youtube-dl -v <your command line>), copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', _[insert link here]_, '--list-formats']
[debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252
[debug] youtube-dl version 2018.12.09
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.17134
[debug] exe versions: ffmpeg N-73189-g7728d23, phantomjs 2.1.1, rtmpdump 2.5
[debug] Proxy map: {}

...
<end of log>

Description of your issue, suggested solution and other information
Explanation of your issue in arbitrary form goes here. Please make sure the description is worded well enough to be understood. Provide as much context and examples as possible.
If work on your issue requires account credentials please provide them or explain how one can obtain them.
Yeah, yt-dl was working well with vrv until yesterday. I keep getting hit with this error:
ERROR: Unable to extract inital state; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
This is a pretty useful tool to watch things offline, so please fix this soon.


add codecov

Current coverage is 86.91% (diff: 100%)

No coverage report found for master at 7b36ff7.

Powered by Codecov. Last update 7b36ff7...9c1e680

made my day. :-)


Restore from recycle bin failed

Describe the bug
Somebody deleted a page. I've tried to restore it (Recycle bin -> restore). Now: page isn't in recycle bin even restored (can't find that page)
Steps To Reproduce
Steps to reproduce the behavior:

Click on "restore page"
Confirm
Successfully restored pages: 0

Expected behavior
Successfully resotred page with link in clipboard / smth like this.
Screenshots
N/A
Your Configuration (please complete the following information):

Exact BookStack Version (Found in settings): 0.31.2 (after that upgraded to latest)
PHP Version: v7.4.13
Hosting Method (Nginx/Apache/Docker): Apache2 + mod_php

Additional context
Add any other context about the problem here.

Hi @dusatvoj,
There are some edge cases that can cause issues that we've fixed in more recent patch releases. I'm not sure what the latest in your issue refers to, but it's worth updating to v0.31.8 to help prevent these.
It may be the case you hit an issue that prevented the permissions for the page being built correctly.
You could attempt to regenerate these, after updating, by using the php artisan bookstack:regenerate-permissions command: https://www.bookstackapp.com/docs/admin/commands/#regenerate-access-permissions

Hi @ssddanbrown ,
Yep, I mean latest release ... it's 0.31.8. I've tried to regenerate permissions php artisan bookstack:regenerate-permissions but the page looks lost. Maybe it's caused by some bug in v0.31.2 (the version I've tried to restore page). There's in DB still deleted_at date. Is that correct? (Maybe there's just something stuck in DB ... IDK)

There's in DB still deleted_at date. Is that correct? (Maybe there's just something stuck in DB ... IDK)

Hmm, No, That's not correct if it's been restored.
Setting the deleted_at date to null should make it re-appear.

@dusatvoj As an extra note, is the parent book/chapter definitely not also in the recycle bin? That could also cause this behavior.

I've set page's deleted_at to null and it's restored now.
Yes, It was our fault. Our co-workers told me that they deleted a page but they deleted a whole book. I've tried restore a page and bookstack told me success: 0 and page dissappeared from trash but not restored.
Is there a possibility (if it's not done yet in v0.31.8) to leave page in trash if restore wasn't success? This was confusing :blush:

Thanks for confirming @dusatvoj.

Is there a possibility (if it's not done yet in v0.31.8) to leave page in trash if restore wasn't success? This was confusing

These edge-case scenarios get tricky. The page has been restored itself but the delete is still inferred by the parent. I'm pretty sure I handled this by showing a message when you attempt to restore an item in such a scenario:

Oh, I've missed the message under restore button.
Thank you for your time.

No problem! I'll keep this in mind though, If we start to see many other similar reports I'll look to tweak the user experience/feedback to make these more obvious.


Fix signature for URLs that contain colons (:)

s3browser is generating links with the wrong signature if the file path includes a colon.
This can be tested by creating a file test.txt and another text:colons.txt in the bucket root, and running the project with S3_SIGNED_URL=true. The link for test.txt works, but the one for text:colons.txt results in a SignatureDoesNotMatch error.

Sorry, I've just realised that this code is not being used in this repo - but on a fork.


react-native link react-native-permissions no auto link Android

react-native link react-native-permissions no auto link Android.
environment

"react-native": "0.57.5"
"react-native-permissions": "^1.1.1"

Why android does not have automatic link ?

android doesn't have native code
android use permissionAndroid

@git-Asir The description of this plugin is like this. Check and request user permissions in ReactNative (iOS and Android)

But it does not need to link anything against Android a React-Native provides AndroidPermissions module by default:
https://facebook.github.io/react-native/docs/permissionsandroid


We need to release the SELinux label when we destroy the sandbox

Closes https://github.com/kubernetes-incubator/cri-o/pull/1050
@mrunalp @rhatdan PTAL
Signed-off-by: Antonio Murdaca<EMAIL_ADDRESS>

:+1:
/test all

LGTM, but I'd like to hear from @rhatdan on the selinux logic.  Plus happy tests.

https://github.com/kubernetes-incubator/cri-o/pull/1050 does what this patch was attempting.  Closing.


The Edit button shouldn't be usable when initializing

A 'init mode' needs to be implemented

Closed by #31


Add plain text chat support

Please support chatting inside a room

solved by myself. look at the code and suggest improvements.
           webrtc.joinRoom(room);

			//For Text Chat ------------------------------------------------------------------
			// Await messages from others

			  webrtc.connection.on('message', function(data){
					if(data.type === 'chat'){
						  console.log('chat received',data);
						  $('#messages').append('
' + data.payload.nick + ':
' + data.payload.message);
					    }
					});

			// Send a chat message
			$('#send').click(function(){
			  var msg = $('#text').val();
			  webrtc.sendToAll('chat', {message: msg, nick: webrtc.config.nick});
			  $('#messages').append('
You:
' + msg);
			  $('#text').val('');
			});

Hi @azharuniverse, I include your code in my index.html and I can get "text" content inside my "messages" div, but the messages are not visible to other clients connecting to the same room.
Any help?

I'm trying to develop chat with simplewebrtc but could not. Someone found a remedy, please. Thank you.


Stop breaking semantic versioning

Between 2.0.11 and 2.0.15, two breaking changes were made to the API that broke the relatively tiny riot-state-renderer:

the mount function was changed to return an array of tags instead of a single tag. issue
calling unmount() no longer leaves the parent dom element. issue

The only way people will be able to npm install libraries that depend on riotjs with any hope that they will actually work is if you observe semantic versioning by bumping the minor version whenever a backwards-compatible feature is added, and bump the major version whenever a backwards-incompatible change is made.
For young libraries making lots of changes, this means living with the pain of having to maintain backwards compatibility, or lots of increments to the major version.  Such is life.
Please abide by semver and change your version numbers appropriately!

+1

@TehShrike I agree you are right.

Love the potential of Riot. I agree with @TehShrike, following semantic versioning will make using Riot easier to use both now and over time. Not just with the library itself for your own components but more importantly for using 3rd party components. Imagine Component-A requiring 2.x.7 and Component-B requiring 2.x.8 but they can't work together. You could easily end up with components being pegged to a particular version of Riot and the ecosystem around it languishing. I think leveraging semantic versioning is one of the primary reasons NPM has the most packages (245K+) of any packaging system.
Appreciate your consideration.

We all agree with this.
This was a mistake from our end and not intentional. We simply didn't have tests for those two breaking changes.

What about minor/feature version changes?  Even if those changes had not been breaking changes, (if they had just been adding a new optional argument, or adding a new returned value where nothing was returned before) they should have still been flagged as new features, requiring a minor version increment.

Are there no features or changes in 2.0.16?  Is it truly a patch release?
Going by the release notes, most of the recent releases were actually feature releases, not patches.  What is the mechanism for developers to indicate that their changes should require bumping the minor version, so that we can break this cycle of feature releases that only bump the patch version number?

Now we have a changelog.md file to track all the important API changes and we will try to follow the semver specs


Package request: libtorch

Project description
C++ API of the PyTorch machine learning framework
Metadata

homepage URL: https://pytorch.org/
source URL: https://pytorch.org/get-started/locally/
license: bsd3
platforms: linux

There's already a libtorch-bin package, but I believe that only copies the binaries of libtorch and doesn't actually build it from source. I think it would be beneficial to have a libtorch package that does build it from source, especially because building libtorch from source creates a Declarations.yaml file that other packages use to build torch interfaces for other languages/programs.

I second this. It would also make it possible to use libtorch on linux-aarch64, as there is not currently a binary for that.

Hi @mse63, I've made a start here: https://github.com/NixOS/nixpkgs/compare/master...expenses:nixpkgs:libtorch-src. It almost works, but fails in the installPhase due to this error:
error: builder for '/nix/store/xlvi49q70qb77c7yfwpx74dnyp8llzic-libtorch.drv' failed with exit code 2;
       last 10 log lines:
       > -- Set non-toolchain portion of runtime path of "/nix/store/1icla0nl2k9fzcw4fwvgnprgvxqg138z-libtorch/bin/protoc-<IP_ADDRESS>" to "$ORIGIN/..//nix/store/1icla0nl2k9fzcw4fwvgnprgvxqg138z-libtorch/lib"
       > CMake Error at third_party/protobuf/cmake/cmake_install.cmake:1721 (file):
       >   file INSTALL cannot find
       >   "/build/source/build/third_party/protobuf/cmake//nix/store/1icla0nl2k9fzcw4fwvgnprgvxqg138z-libtorch/lib/cmake/protobuf":
       >   No such file or directory.
       > Call Stack (most recent call first):
       >   cmake_install.cmake:47 (include)
       >
       >
       > make: *** [Makefile:110: install] Error 1
       For full logs, run 'nix log /nix/store/xlvi49q70qb77c7yfwpx74dnyp8llzic-libtorch.drv'.

I imagine that this is easily patched. Building takes a long time, libtorch with submodules is around 2GB and I believe there are around 7000 compilation units.

Hi @expenses, thanks so much for starting it off! I'll try taking a whack at it (in fact, I did try, less successfully than you), but I haven't packaged stuff for NixOS before.

Oh, sorry I should have mentioned this earlier, but I found that there's a from-source build of pytorch at python3Packages.pytorch. you can for example use that as a library (on aarch64, for example) with the python3Packages.pytorch.dev output


[ Feature Request ] Download progress indicator

Something like Spotify has where the ring around the download icon is like a progress indicator showing how far the download has come. Enhances user experience allowing users to easily track the progress of their downloads. :blush:

yeah this is on the list! and possibly can fix #17 too after resolving some download queue things


Can't view images when doing ssh-remote, port other than 22 is used.

VSCode Version: 1.46.0-insider
OS Version: Catalina 10.15.4; Darwin x64 19.4.0

Why I can't view an image through ssh-remote mode?
My situation is port22 is disabled, and I login by ssh -p NUMBER name@ip -A, where the host listens to that port.
Steps to Reproduce:

Login to ssh-remote with -p specified. Simply can't view images in any window/tab.

Does this issue occur when all extensions are disabled?: Yes

/needsMoreInfo
Please provide more detailed steps for how to reproduce the problem.
Are you using a VS Code Remote extension? What other extensions are you using?

Hi, @egamma

I disabled all extensions except for remote-ssh.
This happens only for insider-version. Since I also have a 1.45.1 code-stable-version, I tested on that, and all things went on well.
I can't say how to reproduce the problem. Since I just can't open an image or load a jupyter notebook(the kernel is started but the view doesn't appear) .

Could you give me some suggestions where to look for? like logfiles, check some port settings ?


training code

HI! can you release the training code? very thanks!

Looking forward to the training code as well.

any updates?

third party training code for your reference here


New cursor "messages" attribute to retrieve PRINT statements

Here is my attempt to implement a mechanism for retrieving errors, warnings, and PRINT statements from the database in the manner described in PEP-249, i.e. through the use of a "messages" attribute on cursor objects.  This functionality is being tracked in issue #495 .
Currently, it is not possible for pyodbc clients to retrieve any errors, warnings, or other messages that have been generated by the database.  For example, PRINT 'Start of Proc' outputs a message, but pyodbc currently ignores it.  These messages are made available by the driver manager as "diagnostic records" through the SQLGetDiagRec function.
PEP-249 suggests these messages should be made available as a list of tuples, where each tuple is made up of an "exception class" and an "exception message".  I'm not sure what that "exception class" is supposed to be, so for the moment I am simply including the SQLSTATE and the error number in the first element of the tuple, formatted in alignment with the current exception message format, and including the error message in the second element, e.g.:
crsr.execute("PRINT 'hello world'")
print(crsr.messages)

would output:
[('[01000] (0)', '[Microsoft][ODBC Driver 17 for SQL Server][SQL Server]hello world')]

Each time nextset() is called, the messages are deleted and replaced with new messages from the result set (if any).  It should be noted, each result set can include both row data and messages.  It's also possible to have a result set that includes messages but does not have any row data.  (This isn't a change in behavior, it's always been possible to have a results set with no actual data records.)  In that scenario, clients can read any messages with crsr.messages but if they try to call fetchall(), an exception is generated.  This behavior is per PEP-249.  Personally, I think it might have been easier if fetchall() just returned None if there weren't any records rather than raise an exception, but that's how PEP-249 is written.  On a brand new cursor object, the cursor message attribute starts out as None.  After calling execute() or nextset(), if no messages are available, an empty list is returned.
As part of this work, I exposed the method CopySqlState() by moving it from errors.cpp to errors.h so that it is available from cursor.cpp.
Memory management was checked using the psutil library.
A quick word on unit tests for the various databases.  SQL Server has a built-in PRINT statement, so that's relatively easy to test.  PostgreSQL doesn't support PRINT but has RAISE INFO instead.  For multiple RAISE INFO statements though, it appears only the last one is returned to the client.  As far as I can tell, MySQL doesn't have any way of returning commentary to the client.
Any and all thoughts welcome.

Wow.  That code is a pleasure to read!  Well done.

Wow.  That code is a pleasure to read!  Well done.

Wow, this is very exciting! Looking forward to the release.

I just checked it in my deployment pipeline. Everything works. Can't wait for the release.

when is this getting released, we are looking forward of this cur.messages object.

Only @mkleehammer can answer that.

Bookmarked and watching. This would be awesome.

any suggestion on how to get this to bubble up to sqlalchemy when using pyodbc?

You'll have to ask sqlalchemy to add code to read this attribute.

This can only retrieve one print message, when I executed two print messages with sql server, it can only show the first one.

@iwccsbfb Each .execute is a separate context, but if the PRINT statements are in the same SQL, they should be visible using .nextset():
import pyodbc
cnxn = pyodbc.connect(my_cnxn_str, autocommit=True)
crsr = cnxn.cursor()

crsr.execute("PRINT 'AAA'")
crsr.execute("PRINT 'BBB'")
print(crsr.messages)   # shows only BBB
print(crsr.nextset())  # returns False

crsr.execute("PRINT 'CCC'; PRINT 'DDD'")
print(crsr.messages)  # shows only CCC
print(crsr.nextset()) # returns True
print(crsr.messages)  # shows only DDD
print(crsr.nextset()) # returns False

crsr.close()
cnxn.close()

output:
[('[01000] (0)', '[Microsoft][ODBC Driver 17 for SQL Server][SQL Server]BBB')]
False
[('[01000] (0)', '[Microsoft][ODBC Driver 17 for SQL Server][SQL Server]CCC')]
True
[('[01000] (0)', '[Microsoft][ODBC Driver 17 for SQL Server][SQL Server]DDD')]
False

@keitherskine Thank you for the reply. This would work for me for multiple print statements, however, for non-print output, do you know how to capture it? For example, the update statement below would show
Completion time: 2021-12-06T15:31:55.0032644-05:00```
If I run in sql server or sqlcmd. However, I am not able to capture it with pyodbc.

code1 = '''
print ('output')
print ('output1')
UPDATE dbo."tbXXXX"
SET Name = 'XXX'
WHERE rowID=4
print ('output2')
print ('output3')
'''
if name == 'main':
conn = pyodbc.connect(config)
print (pyodbc.version)
cur = conn.cursor()
cur.execute(code1)
print(cur.messages)
while cur.nextset():
print( cur.messages )

[('[01000] (0)', '[Microsoft][ODBC Driver 17 for SQL Server][SQL Server]output')]
[('[01000] (0)', '[Microsoft][ODBC Driver 17 for SQL Server][SQL Server]output1')]
[]
[('[01000] (0)', '[Microsoft][ODBC Driver 17 for SQL Server][SQL Server]output2')]
[('[01000] (0)', '[Microsoft][ODBC Driver 17 for SQL Server][SQL Server]output3')]

@iwccsbfb I could be wrong, but as I understand it, output like (1 row affected) Completion time: 2021-12-06T15:31:55.0032644-05:00 is not directly part of the ODBC API.  It is output by the client application (SSMS, sqlcmd, etc.).  The number of rows comes from .rowcount and the completion time is, well, the time the SQL completes.  Hence, I believe you should be able to re-create that output if you really need it.


Not exporting certain fields correctly

When creating a .bib file, BetterBibTeX places the journal name in a "Journaltitle" field instead of the "Journal" field, and places the date in a "Date" field rather than the expected "Month" and "Year" fields, making LaTeX unable to read the journal or date.
Support log ID: PNLIHY5U-refs-euc

Are you perhaps exporting as biblatex rather than bibtex?

cloding for inactivity


Miss path delimiter on pipleline variables

https://docs.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml#pipeline-variables
Under Pipeline Variables, the path is missing the backslash.
C:\agent_work\1 should be C:\agent\_work\1

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

ID: 9ffebdc8-521c-44b5-cde4-4abdc1bd6f18
Version Independent ID: dc0effda-6d93-62aa-64c5-4e6f283b0826
Content: Predefined variables - Azure Pipelines
Content Source: docs/pipelines/build/variables.md
Product: devops
Technology: devops-cicd
GitHub Login: @juliakm
Microsoft Alias: jukullam

@StevenTCramer Thank you for the feedback.
The article seems to be using C:\agent_work as the example for any working folder, see agent variables, whereas C:\agent is the installation folder.

Closing the issue, please comment below if there are any concerns.


Upgrade drools mapping to 8.38.x on nightly

Fixed to use the correct 8.38.x branch, PR check looks good


santa story

[x] part 1: tony
[x] part 2: gordon

Gordon did part 1, so I did part 2. Part 2 is now done. Part 1 has images not yet implemented.


remove velero offline backup annotation

related to https://github.ibm.com/IBMPrivateCloud/roadmap/issues/63296 and https://github.ibm.com/PrivateCloud-analytics/CPD-Quality/issues/21623

/retest


test conversion to string_view

This is a problem with GCC 8.3 that doesn't have a solution on our side (users will have to upgrade). In our code we should just avoid using conversion from string to string_view and use string::subview instead.


Support for DuckDB Union datatype

e.g. CREATE TABLE tbl1 (u UNION(num INTEGER, str VARCHAR));
https://duckdb.org/docs/sql/data_types/union.html

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

93 of 94 (98.94%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.03%) to 89.039%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/parser/mod.rs
15
16
93.75%

Totals

Change from base Build<PHONE_NUMBER>:
0.03%

Covered Lines:
26369

Relevant Lines:
29615

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

88 of 89 (98.88%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.03%) to 89.037%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/parser/mod.rs
15
16
93.75%

Totals

Change from base Build<PHONE_NUMBER>:
0.03%

Covered Lines:
26364

Relevant Lines:
29610

💛  - Coveralls


authorization

Hi Anton,
We stacked with next problem, when we trying to do authorization with angular service thru standard API we get response "success:true" but cookies not saved on client side as you can see from screenshots, also we tried to do device/get and obviously "success:false". You can see console.log info on screenshots below. Thank you in advance for any help.
$http({
                method: 'POST',
                url: 'http://gps.cheetah.pro/api/login',
                headers: {
                    'Content-Type': 'application/x-www-form-urlencoded'
                },
                transformRequest: function(obj) {
                    var str = [];
                    for(var p in obj)
                        str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
                    return str.join("&");
                },
                data: {
                    email: 'admin',
                    password: 'admin'
                }
            }).success(function(res, status, headers){
                console.log(headers('Set-Cookie'));
                console.log(headers());
                console.log($cookies.getAll());
                //if(!res.data.success) {
                //    console.error("Invalid email or password");
                //    return false;
                //}

                //$timeout(function () {
                //    console.log(res, headers('JSESSIONID'));
                //    console.log($window.sessionStorage);
                //});

                $http.get('http://gps.cheetah.pro/api/device/get').then(function(data){
                    console.log(data);
                });

I think the problem is that you app and Traccar API are running on different hosts, so cookie doesn't work for this CORS request. Not sure why though.

Thank you for fast response, yes you right, we hosted our app and Traccar on different hosts, but shouldn't it be able to get logged in? I mean I thought that's the purpose of login API so you can use it with other services.

It should definitely be possible, but I haven't tried it myself, so there might be some issues. You can try to ask in #1434 if it works for @reviloera.

Okay, thank you.

Hello Anthon,
I think we need some kind of authorization with token, that sends as a parameter, cause cookies not working, browser not saving them. That's my code on plunker, maybe you can test it and give me some ideas please.
http://plnkr.co/edit/6SPmUWOWDZl2blVe4WP1

BTW am using angularjs and its working perfectly well.
Am using restangular for my API calls. I can share with you my code if you are intrested

It would be great, also I shared my plunker, maybe you can show me there?

angular.module('your-app', ['restangular'])
.constant('API_URL', 'http://xx.xxx.11.103:8082/')
.config(function(RestangularProvider){
RestangularProvider.setDefaultHttpFields({
      withCredentials: true   // this will handle cookie sessions for you
    });
});

// on your controller file you will have something like this
angular.module('your-app').controller('MainCtrl', function($scope, Restangular,API_URL,$q) {
  Restangular.setBaseUrl(API_URL); // set your api base url
 //asume we want to login
var login_url = Restangular.all('api/login');

var data = {
email<EMAIL_ADDRESS>password : 'pass'
};

var data_encoded = $.param(data);    // ensure you have jquery loaded on your application

login_url.customPOST(data_encoded,
          undefined,
          undefined,
          {'Content-Type': "application/x-www-form-urlencoded; charset=UTF-8"})
          .then(function(response){

// TODO   login success
})

// if you want to sync data
var devices_url = Restangular.all('api/');

devices_url.customGET('async').then(function (response) {
          var syncData = response.plain();
        });

});

Thank you, but I tried to use "withCredentials: true" and its give me error
XMLHttpRequest cannot load http://gps.cheetah.pro/api/login. Response to preflight request doesn't pass access control check: A wildcard '*' cannot be used in the 'Access-Control-Allow-Origin' header when the credentials flag is true. Origin 'http://example.com:5000' is therefore not allowed access.

I think the issue is with the CORS am sending you my configuration of this file then you recompile src/org/traccar/web/BaseServlet.java

Can you reattach it?

ok am sending

@reviloera , I'm still waiting
https://www.youtube.com/watch?v=dQw4w9WgXcQ

sent sorry my network is veeeery sloooow

I have sent check mail

Nothing in mail.
2015-11-13 12:12 GMT-08:00 reviloera<EMAIL_ADDRESS>
I have sent check mail
—
Reply to this email directly or view it on GitHub
https://github.com/tananaev/traccar/issues/1526#issuecomment-156544619.

Just copy paste it in here, it will work.

http://codeshare.io/qmdPp

Thank you, it must work, but is it open XSS attack possibilities?

yea its kind of unsecure , but it works if you have a better solutin share

Yes, I already asked if Anton will add token authorization.
https://github.com/tananaev/traccar/issues/1526#issuecomment-156485377

great that will  be owesome

Thank you for help.

welcome and sorry for my slow internet

I have merged #1510.

Basic Authorization is unsecured (as well as the solution given by @reviloera). Enabling Access-Control-Allow-Credentials is insecure. Therefore I'm coming up with the next possible ways to solve the problem:

Create a Origin white list in config file, which is reloaded upon every Traccar service restart.
Create a token-based auth (token (i.e. JSESSIONID or whatever) is sent after the successful authorization and can be used in further requests.

Can you provide some links explaining why Basic Authorization and Access-Control-Allow-Credentials are both insecure.

I did some research and I guess you are talking about "cross-site request forgery" issue. I think it makes sense to make Origin configurable.

Thank you.

Added new config parameter to specify Access-Control-Allow-Origin. Example of usage:
<entry key='web.origin'>http://mozilla.com</entry>

Sorry if I'm being annoying, just trying to use amazing service, and implement some features that would be useful, but I don't know java and can't do it by my self. With current update i can apply it for 1 domain, can you create something like list of ALLOWED_ORIGIN which separate all origins with comma

Added support for multiple domains.

Thank you, it worked.

Hello, I need your help. I added this line in traccar.xml
    <entry key='web.origin'>http://localhost:1080</entry>
but the problem persist. The error is
https://cloud.githubusercontent.com/assets/8376694/12899074/e7375572-ce81-11e5-9556-aca64e96131e.png
Please help me!

Check your port, on screenshot it's different
On Monday, 8 February 2016, vipien<EMAIL_ADDRESS>wrote:

Hello, I need your help. I added this line in traccar.xml
http://localhost:1080
but the problem persist. The error is
https://cloud.githubusercontent.com/assets/8376694/12899074/e7375572-ce81-11e5-9556-aca64e96131e.png
Please help me!
—
Reply to this email directly or view it on GitHub
https://github.com/tananaev/traccar/issues/1526#issuecomment-181568048.

--
Sent from Gmail Mobile

@vladamirk The port in web.origin is the origin url port? Please check my screenshoot again. Thanks


Provide a sample implementation that extends Android's RecognitionService

Provide a sample implementation that extends Android's RecognitionService (see: https://developer.android.com/reference/android/speech/RecognitionService.html) in order to reduce the integration effort for apps that already interact with a recognition service by calling SpeechRecognizer.createSpeechRecognizer (https://developer.android.com/reference/android/speech/SpeechRecognizer.html)

Hello @Kaljurand , this is a good idea. We will try to find some time to implement this... thank you for the feedback.


Connect4: Put 4

Please do not change the title. Just click "Submit new issue". You don't need to do anything else :D

Lol, that's awesome!


Add MySQL recommended monitor

What does this PR do?

Added recommended monitor for MySQL
Staging link
Motivation

Recommended monitor coverage
Additional Notes

This monitor ("alert in case of SELECT query rate below usual bounds") is inspired by the MySQL blog post and dashboard:

The current rate of queries will naturally rise and fall, and as such it’s not always an actionable metric based on fixed thresholds. But it is worthwhile to alert on sudden changes in query volume—drastic drops in throughput, especially, can indicate a serious problem.

Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[ ] PR title must be written as a CHANGELOG entry (see why)
[ ] Files changes must correspond to the primary purpose of the PR as described in the title (small unrelated changes should have their own PR)
[ ] PR must have changelog/ and integration/ labels attached

I think another recommended monitor should be if replication is OK, even if its a service check already


Broken link to the libc crate

https://doc.rust-lang.org/std/ -> click "libc" on the left column -> https://doc.rust-lang.org/libc/index.html which looks like a directory listing

Thanks for the report. I do think this is intentional since we are producing libc's for every supported platform. cc @alexcrichton

Yeah this is currently intentional, the idea is that you can go from there to look at the documentation for any architecture.

Albeit it could be styled much better

Understood it was intentional but can we achieve it natively with rustdoc ?
We already have src/windows.rs and src/unix/lib.rs... Can we just parallelly expose them to rustdoc?  To differentiate different flavors of Unix, how do you like:
## unix/lib.rs

cfg_if! {
    if #[(all(target_os = "linux", target_arch = "x86_64")] {
        mod linux_x86_64;
        pub use linux_x86_64::*;
    } else if #[(all(target_os = "android", target_arch = "arm")] {
        mod android_arm;
        pub use anrdoid_arm::*;
    }
}

pub mod linux_x86_64 {
}

While that may work for Unix/Windows that doesn't necessarily work for FreeBSD/Linux (for example) due to the way the source is structured.


[Improve][Manager] Support user defined properties in StreamSource

Description
No response
InLong Component
InLong Manager
Are you willing to submit PR?

[X] Yes, I am willing to submit a PR!

Code of Conduct

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

Have been finished in other pull requests


Migrate schedulers to kotlin

Towards #532

@JSunde  PTAL?

Codecov Report

Merging #1278 (38b257d) into master (aa0d9f5) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master    #1278   +/-   ##
=========================================
  Coverage     29.68%   29.68%
  Complexity      782      782
=========================================
  Files           290      290
  Lines          7034     7034
  Branches        399      399
=========================================
  Hits           2088     2088
  Misses         4837     4837
  Partials        109      109

Impacted Files
Coverage Δ

...und/com/google/android/ground/rx/RxSchedulers.java

...round/com/google/android/ground/rx/RxSchedulers.kt
0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Socket is closed

Hi Team,
I am not able to Retrieve Source From org through VS code. I am getting an error 'Socket is Closed'.
I have started facing this issue after I have updated the VS code with the latest updates.
Any suggestion would be of great help!!
Thanks in advance!!
Screenshot:

I have also tried uninstalling the application and then re-installing it again. But, I was still facing the same issue.