i have two questions about longhorn?

1 I use longhorn class to create a volume, and add volume, then start the service, in this service  I can find the volume. IF I create some files in the volume, and last delete this volume, the data i created before exists?
2 Is it possible to increase/decrease the existing volume of longhorn size?

Hi @stoneLee81

There are a few different cases here:
1.1. If by volume you meant the Longhorn volume, then no. The data stored in the volume would be gone if the Longhorn volume has been deleted. However, you can backup the volume using Longhorn built-in backup mechanism, so later you can restore to the volume back to the cluster from the backup store.
1.2 If you meant Kubernetes PV, it depends what's the Reclaim policy of PV. If it's Retain, the PV (and Longhorn volume) won't be deleted, so it can be reused with another PVC; if it's Delete, the PV will be deleted along with Longhorn volume, which is the same as in 1.1. You can see details here: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#reclaiming
Volume resizing hasn't been supported by Longhorn. We're tracking it at https://github.com/rancher/longhorn/issues/17


tag code blocks so GitHub can properly format them

Coverage remained the same at 97.758% when pulling f015b9e8db69a80dcd3dad381714532f39e102b9 on fiatjaf:patch-1 into c7ec030c0449eacc7fae0eb191c487c9a954ed6a on go-gem:master.

thank you very much :)


Add support for ECSQL expression tree

https://github.com/iTwin/itwinjs-backlog/issues/803

Why alpha? Is there a reason you don't want anybody to use this?

Why alpha? Is there a reason you don't want anybody to use this?

This API is at an experimental stage where other teams like to use it to perform their own experimental work. As we get feedback from them, we will improve or expand these APIs and move them up from alpha.

This is a big, niche API. Did you consider putting it into a separate package?

No, not yet. We have two users

Design Review - Named Group filter: This will be a UI, but we like them to standardize how they store their filter and use ECSQL instead of JSON from which they create an ECSQL.
ECPresentation: They are interested in it in the context of their initiative where they like to move ECPresentation native logic to typescript.

But we can extract it into a package if needed when API are stable.

we can extract it into a package if needed when API are stable.

Perhaps it belongs in the existing ecschema-metadata packages?

@pmconne, so I will take a different approach and move this code change into its package <root>/misc/ecsql-expr.  I will remove the RPC and native addon change. And we get the JSON for ECSQL parse tree via ecsql PRAGMA parse_tree(<ecsql>). This way we do not need any peer dependency on the backend or frontend dependency. Instead, any frontend or backend code can reference ecsql-expr and use available api to run ECSQL which is ECSQLRreader to populate the parse tree.

move this code change into its package /misc/ecsql-expr

Ok. Please talk to @aruniverse about repository organization.

move this code change into its package /misc/ecsql-expr

Ok. Please talk to @aruniverse about repository organization.

anyone oppose: /core/ecsql-ast ?
pkg name being itwin/core-ecsql-ast
im indifferent on the core- prefix
cc @pmconne @calebmshafer @wgoehrig @ColinKerr  thoughts on naming?

I vote @itwin/[core-]ecsql/lib/Parser.ts. The API seems similar enough to that exposed by other parsers which give you a traversable AST. It will be a good place to put any future non-AST semantic analysis that might ever be exposed, while also already not being too small of a utility to not deserve the generic @itwin/ecsql name.

@itwin/[core-]ecsql[/lib/Parser.ts]

I can't tell what you are actually proposing here.

I can't tell what you are actually proposing here.
edited for (hopefully) clarity

I vote @itwin/ecsql or @itwin/core-ecsql, with a class for the parser. The API seems similar enough to that exposed by other parsers packages which give you a traversable AST. It will be a good place to put any future non-AST semantic analysis that might ever be exposed

I'd be fine with core-ecsql except, if the API expands in future, it may require backend and frontend packages. @khanaffan's current proposal is for a package that contains APIs usable by frontend and backend.
If that's expected I would go with something like ecsql-common which can be joined down the road by ecsql-backend and ecsql-frontend.
Alternatively, if @khanaffan prefers to limit this package to just the AST, I'd name it accordingly.

@khanaffan prefers to limit this package to just the AST, I'd name it accordingly, e.g., ecsql-ast.

Yes you're right, better to call it @itwin/ecsql-common if it works frontend+backend, and eventually as necessary add corresponding -frontend/-backend specific packages. But I don't want to end up with another (3?) package(s) if we decide to expose something non-ast related in the future, so I would vote against @itwin/ecsql-ast. I think this would belong fine in a more general ecsql package (set)

sounds like we are in agreement with itwin/ecsql-common then

sounds like we are in agreement with itwin/ecsql-common then

Where should I place in the folder hierarchy in mono repo? <root>/ecsql/ecsql-common

sounds like we are in agreement with itwin/ecsql-common then

Where should I place in the folder hierarchy in mono repo? <root>/ecsql/ecsql-common

~/core/ecsql/common/


Minor issues in the API manual

I think I have spotted two minor issues in the C API manual:
Firstly, the description of IPLLoadSceneProgressCallback mentions the function iplLoadScene. However, such a function does not exist; I suspect that iplLoadFinalizedScene was meant.
Secondly, in the sample application, iplDestroyContext and iplCleanup are not called, nor are they mentioned in the Cleanup section of the The Sample Application chapter.

Seems like this was taken care of with v2.0-beta.13.
Thanks.


Compatibility for Dirtmonds

I would like compatibility for Dirtmonds! :)
https://www.curseforge.com/minecraft/mc-mods/dirtmonds

done!


Keyboard shortcut to Reload Window not (always) working

Prerequisites

[x] Can you reproduce the problem in safe mode?
[x] Are you running the latest version of Atom?
[x] Did you check the debugging guide?
[x] Did you check the FAQs on Discuss?
[x] Are you reporting to the correct repository?
[x] Did you perform a cursory search to see if your bug or enhancement is already reported?

For more information on how to write a good bug report or enhancement request, see the CONTRIBUTING guide.
Description
I have noticed that the keyboard-shortcut for View > Developer > Reload Window is not working across all the systems on which I'm using Atom.
Mac OS X 10.8.x - working
Mac OS X 10.11 - not working
Windows 10 - working
Fedora - working
I suspected conflicting keyboard shortcuts, but neither safe mode resolved this nor did the keybinding resolver find any conflicts. No errors in the console either.
Which keyboard layout are you using? Apple QWERTZ Keyboard (German layout)

Steps to Reproduce

Launch Atom
Press CtrlAltCmdL

Expected behavior: The Window to reload
Actual behavior: The Window did not reload
Versions
You can get this information from executing atom --version and apm --version at the command line.
atom --version
1.5.4

apm --version
apm  1.6.0
npm  2.13.3
node 0.10.40
python 2.7.10
git 2.5.4

I noticed some details in the Key Binding Resolver. When pressing the CtrlAltCmdL shortcut, it only displays CtrlAltCmd, whereas shorter versions (any combination of involved keys, e.g. CtrlAltL) and longer versions (e.g. CtrlAltShiftCmdL) are displayed fine.
In the meantime, I have also upgraded to atom 1.6.0 – without any changes.

The reason was 1Password's conflicting global shortcut to lock the app.


ICU: Update TestNumberFormatter tests to be compatible with ICU62+ and Darwin

ICU62+ changed how some of the NumberFormatter formats and properties
work. These tests also work differently in the Foundation supported by
macOS Catalina (10.15).

Update the tests to work correctly when run using DarwinCompatibilityTests
on Catalina.

Update NumberFormatter to make the tests work correctly on Linux with
ICU65.1

Note: Do not merge until ICU has been updated to 65.1

@swift-ci test

@swift-ci test and merge

@swift-ci test macos

@swift-ci test linux


Where can I browse samples ? Like Google Tasks API etc.

I want to take a look at how Task API are written and developed also other samples are written as pointed here - Getting Started with the Tasks API and OAuth 2.0 on Android

https://github.com/google/google-api-java-client-samples
https://developers.google.com/api-client-library/java/google-api-java-client/samples

Thank you for filing this issue. We asked some clarifying questions a week or more ago and never heard back from you. We are unable to proceed with this issue until then, so we are closing it. Please feel free to re-open this issue with more information.


Using VS Code Variables In Settings

I've been trying to set up a connection such as:
  "sqltools.connections": [
    {
      "previewLimit": 50,
      "server": "localhost",
      "port": 5432,
      "driver": "PostgreSQL",
      "name": "my-app",
      "socketPath": "${workspaceFolder}/build/db/.s.PGSQL.5432",
      "connectString": "postgresql:///app?host=${workspaceFolder}/build/db",
      "password": ""
    }
  ]

However, it seems that variables are not supported.
Is there any other way to achieve something similar without hard coding full path?

See also https://github.com/mtxr/vscode-sqltools/issues/703#issuecomment-698754168


[stdlib] Eagerly allocate children in Mirror

The previous code used type erasure and lazy mapping to avoid allocating, but AnyCollection allocates anyway, was generating lots of metadata that allocates memory permanently, and is very inefficient.
Ideally, we'd switch the children property to just return the array, but it's ABI. So you'll still end up using AnyCollection if you access the children – but uses internal to the standard library (like printing arbitrary types) can avoid this.
Mirror isn't @frozen so this ought to be an ABI stable change.

@swift-ci please benchmark

@swift-ci please test

Performance: -O

Regression
OLD
NEW
DELTA
RATIO

Array2D
4096
4624
+12.9%
0.89x (?)

RemoveWhereMoveInts
17
19
+11.8%
0.89x (?)

RandomShuffleLCG2
416
464
+11.5%
0.90x

ParseFloat.Float.Exp
9
10
+11.1%
0.90x (?)

MapReduceClass2
19
21
+10.5%
0.90x (?)

AngryPhonebook.Cyrillic
169
185
+9.5%
0.91x (?)

AngryPhonebook.Strasse
142
155
+9.2%
0.92x (?)

ArraySetElement
262
283
+8.0%
0.93x (?)

ArrayPlusEqualFiveElementCollection
4403
4736
+7.6%
0.93x (?)

Code size: -O
Performance: -Osize

Regression
OLD
NEW
DELTA
RATIO

ArrayPlusEqualFiveElementCollection
4329
4810
+11.1%
0.90x (?)

AngryPhonebook.Armenian
158
174
+10.1%
0.91x (?)

MapReduce
218
240
+10.1%
0.91x (?)

AngryPhonebook.Cyrillic
169
186
+10.1%
0.91x (?)

AngryPhonebook.Strasse
142
155
+9.2%
0.92x (?)

Improvement
OLD
NEW
DELTA
RATIO

SuffixArrayLazy
5
4
-20.0%
1.25x (?)

Set.isStrictSubset.Int.Empty
51
47
-7.8%
1.09x (?)

IterateData
939
870
-7.3%
1.08x (?)

Set.subtracting.Empty.Int
28
26
-7.1%
1.08x (?)

Code size: -Osize
Performance: -Onone

Regression
OLD
NEW
DELTA
RATIO

AngryPhonebook.Armenian
158
174
+10.1%
0.91x (?)

AngryPhonebook.Strasse
142
155
+9.2%
0.92x (?)

ArrayAppend
2720
2930
+7.7%
0.93x (?)

Code size: -swiftlibs

How to read the data
The tables contain differences in performance which are larger than 8% and
differences in code size which are larger than 1%.
If you see any unexpected regressions, you should consider fixing the
regressions before you merge the PR.
Noise: Sometimes the performance results (not code size!) contain false
alarms. Unexpected regressions which are marked with '(?)' are probably noise.
If you see regressions which you cannot explain you can try to run the
benchmarks again. If regressions still show up, please consult with the
performance team (@eeckstein).

Hardware Overview
  Model Name: Mac mini
  Model Identifier: Macmini8,1
  Processor Name: 6-Core Intel Core i7
  Processor Speed: 3.2 GHz
  Number of Processors: 1
  Total Number of Cores: 6
  L2 Cache (per Core): 256 KB
  L3 Cache: 12 MB
  Memory: 64 GB

Closing this to try a different approach that preserves the laziness.


Failed to install fmpeg on Kaggle if running TPU

I want to do transcription on my own audio file, but the environment requied me to install ffmpeg.
Then I catch this error:
ValueError: ffmpeg was not found but is required to load audio files from filename
Accelerator used: TPU  VM v3-8
Installed package: transformers==4.28.0

!apt update
!apt install ffmpeg -y

Execute these commands to install ffmpeg

Problem solved, thanks!


Packages not finding their own generated files in the auxil folder

Some packages, for example imakeidx for an index, search their files next to the source file instead of in the auxil/ or out/ directory.
For some packages like todonotes it is sufficient to disable the auxil/ directory.
\documentclass{article}
\usepackage{imakeidx}
\makeindex

\begin{document}

    \section{Introduction}
    Some \index{keywords} here
    for the \index{Index}.

    Another line with \index{words}.

    \printindex

\end{document}

Current workaround
Use a different package, or copy the file manually after each compilation to the src/ directory.

For the index, you can just place a (for windows) batch file in the project which copies the idx file automatically, with in it e.g.
xcopy /s /y /i C:\path\to\project\auxil\main.idx C:\path\to\project\src\
and then tell IJ using external tool to run it before a run configuration. Good enough for me.


bump flow-go version

follow up to #174, this pr updates flow-go version to match with the latest on the flow-go master

For contributor use:

[ ] Targeted PR against master branch
[ ] Linked to GitHub issue with discussion and accepted design OR link to spec that describes this work
[ ] Code follows the standards mentioned here
[ ] Updated relevant documentation
[ ] Re-reviewed Files changed in the GitHub PR explorer
[ ] Added appropriate labels

Codecov Report

Merging #177 (a54dc06) into master (945d217) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #177   +/-   ##
=======================================
  Coverage   51.76%   51.76%
=======================================
  Files          29       29
  Lines        2345     2345
=======================================
  Hits         1214     1214
  Misses        991      991
  Partials      140      140

Flag
Coverage Δ

unittests
51.76% <ø> (ø)

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

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 945d217...a54dc06. Read the comment docs.


jdk17 Internal memory

Minimal yet complete reproducer code (or URL to code)
Repeatedly execute the following code multiple times
ChannelFuture future = channel.writeAndFlush(message)
future.await(timeout)
-XX:NativeMemoryTracking，It can be observed that the internal area of memory is gradually increasing
Netty version
Almost all
JVM version (e.g. java -version)
jdk 17

If you call this from an external non Netty thread (as I suppose you're doing), it would accumulate write request without any form of backpressure: if the opposite side (the receiver of such data) is slow, or its network is slow or just not fast enough,  depending what message is, you risk to overwhelm the Netty server creating a huge amount of native buffers, increasing the native memory, as you've observed.
Is your duty to handle backpressure at application level, avoiding to overwhelm Netty

如果您从外部非 Netty 线程调用这个函数（正如我认为您正在做的那样），将会接收到写入请求，而不会产生任何形式的背压：如果对方（此类数据的接收者）速度慢，或者网络速度慢或者只是不够快，取决于具体情况message，您可能会面临压垮Netty服务器的风险，创建大量本机坐标，增加本机内存，正如您所观察到的。
您是否有责任在应用程序级别处理背压，避免压垮 Netty

Why don't other JDK versions have this phenomenon

If you call this from an external non Netty thread (as I suppose you're doing), it would accumulate write request without any form of backpressure: if the opposite side (the receiver of such data) is slow, or its network is slow or just not fast enough, depending what message is, you risk to overwhelm the Netty server creating a huge amount of native buffers, increasing the native memory, as you've observed.
Is your duty to handle backpressure at application level, avoiding to overwhelm Netty

Why don't other JDK versions have this phenomenon

I have a similar issue

If you call this from an external non Netty thread (as I suppose you're doing), it would accumulate write request without any form of backpressure: if the opposite side (the receiver of such data) is slow, or its network is slow or just not fast enough, depending what is, you risk to overwhelm the Netty server creating a huge amount of native buffers, increasing the native memory, as you've observed.message
Is your duty to handle backpressure at application level, avoiding to overwhelm Netty

I use netty's socket to connect to the PLC for high-frequency data requests, it is impossible not to make requests when the queue is backlogged, I need to ensure that the latest requests are prioritized, can I clean up the backlog of queue buffers regularly? Or set the buffer size to a constant value and discard the old data.

@XiaoyuZhann Keep track of the futures and cancel the oldest unfinished ones. This won't do anything to writes that are pending in kernel memory, though.


How to set the radians of the four corners of the echarts background?

Version
echarts.5.4.2
Link to Minimal Reproduction
null
Steps to Reproduce
option = {
backgroundColor :'#999',
borderRadius: [20, 20, 20, 20],
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [
{
data: [120, 200, 150, 80, 70, 110, 130],
type: 'bar'
}
]
};
Current Behavior
I tried using three methods.
1. Added option attribute: borderRadius: [20, 20, 20, 20], (this is the answer from chatgpt)
option = {
  backgroundColor :'#999',
  **borderRadius: [20, 20, 20, 20],**
  xAxis: {
    type: 'category',
    data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
  },
  yAxis: {
    type: 'value'
  },
  series: [
    {
      data: [120, 200, 150, 80, 70, 110, 130],
      type: 'bar'
    }
  ]
};

2. Set the radian of the echarts container itself.

3. Wrap the div outside the echarts container and set the radian of the div.

But none of these three methods are effective.
Expected Behavior
I expect the four corners of the echarts background to have a certain degree of curvature
Environment
- OS:
- Browser:
- Framework:

Any additional comments?
No response

Just set border-radius for the chart container element. Refer to this demo.

Thank you very much for your answer. After comparison, I found that there is a missing CSS attribute: overflow: hidden.
The correct method is:
#chart-container {
overflow: hidden;
height: 320px;
width: 100%;
border-radius: 10px;
}


Improvement: Add, remove leading zero function in text/humanize.py

Hello,
There is a function already a function for removing trailing zeros, named remove_trailing_zeros.
I want propose a function that removes the leading zero in given number.
example:
request:0000123
response:123
Kindly Assign this to me, if you believe this functionality would be helpful.
Thanks

This repo is only for function development.
API Development is in another repo.


CORE-7269: Describe component group layout in ledger metadata

We need to record the layout of the transaction's component groups in the metadata of each transaction, if the encoding scheme is liable to ever change. This PR adds the mapping of component group name -> index (already described for each ledger in the (Consensual|Utxo)ComponentGroup enum classes) to the transaction metadata when it's generated, transforming the enum's entries into a map.
Todo

[x] Add key COMPONENT_GROUPS to TransactionMetadata
[x] When generating TX metadata, transform the appropriate component group enum to a map
[x] Figure out why the new representation wasn't rejected by the schema validator and fix it
[ ] ~Figure out how to exclude irrelevant properties (e.g. UTXO-specific properties in consensual TX)~ (doesn't seem fixable without registering extra Jackson-jdk8 module)
[x] Add component group mapping to the JSON schema
[x] Change merge target back to release/os/5.0 after the parent PR is merged

No longer relevant, closing


Polonium can crash kwin_wayland if firefox or chromium is dragged between displays

Polonium version: 9b7eb547b15e17cd1cc9a2cd7bf80674d29c645d
Not really a bug for you but a heads up that this can happen
https://bugs.kde.org/show_bug.cgi?id=471867
When doing this doesn't crash, it lags the system immensely which probably is your bug. I'll have to take a look at it once the crash is eventually dealt with.

Is it possible to get a full debug log when this happens?

polonium.txt
Wasn't entirely sure what the proper way to get debug logs for this are so I just piped journalctl -f to a file inside a tmux session

This is appearing to be another instance of #9. The issue was never fully resolved, and the crashes can still occur sometimes. It has also been marked as a duplicate of the KWin bug reported in #9 on the KWin bug tracker.
When you got the debug log, you did get the output for the session where the crash occurred, right? There is no log output from Polonium before the crash.

Thanks for reminding me. The crash no longer happens.


<EMAIL_ADDRESS>install: node-pre-gyp install --fallback-to-build Failed

I clone one repo and 'npm install', the Terminal told me that<EMAIL_ADDRESS>install: node-pre-gyp install --fallback-to-build  failed!

Hey!
What version of Node are you using? At the moment, it doesn't seem to work with Node 4, I need to work on that.

Hey!
I just updated the versions of the node modules, would you mind pulling the latest code and try running npm install again?
Should work with the latest version of Node :)
Let me know!

Let me try!

It's Work! Thanks


How can I customize cell?

I want to customize the custom cell. For example, I want to add a location icon and location label in some cells. Also, I need a button in every cells. Can you help?

Sorry for late reply.
Here is the cell's customization: https://github.com/kf99916/TimelineTableViewCell#timelinetableviewcell-1
If they are not what you need, it means the current version does not support. It is very welcome to pull request.


fix(ui): Hide VM 2.0 UI items when insufficient permissions

Description

Hides the "Node CVEs" navigation item when the user does not have at least READ_ACCESS to the Cluster resource. Node CVE APIs will return an error when this is the case, making the section unusable
Hides UI elements that allow deferring CVEs when the user does not have READ_WRITE_ACCESS on the "VulnerabilityManagementRequests" resource

User-facing documentation

[ ] CHANGELOG update is not needed
[ ] Documentation is not needed

Testing

[ ] inspected CI results

Automated testing

[ ] contributed no automated tests

Sadly we do not yet have a way to test different role/permission sets e2e at this point.
How I validated my change
View the Navigation with a user that has READ access on "Cluster".

View the Navigation with a user that has NO access on "Cluster".

View the Workload CVE pages with a user that has READ_WRITE access on "VM Requests" and verify exception UI items are present and functional:

View the Workload CVE pages with a user that has less than READ_WRITE access on "VM Requests" and verify exception UI items are not present:

This made me wonder if we need to do some permission checks related to advanced filters. How does the Cluster Name filter behave if the user doesn't have READ_ACCESS to CLUSTERS? Does the autocomplete API fail or does it just return nothing? I guess the same question applies to when we do the actual filtering. 🤔

@sachaudh I just checked and the API simply returns nothing if the user does not have the correct access to the resource. I imagine a similar thing happens when a subset of resources are outside of the user's assigned access scope but I have not verified yet.
Also FYI - I'm pushing an update to this PR that fixes some of the permission checks for the NS view, so one more commit is inbound.

@sachaudh Ok the NS fix is in and I've updated the testing description above for verification.

@sachaudh I just checked and the API simply returns nothing if the user does not have the correct access to the resource. I imagine a similar thing happens when a subset of resources are outside of the user's assigned access scope but I have not verified yet.

Sounds about right. Thanks! It should be fine for 4.5 but i'll confirm myself too. If not an issue we can look into hiding certain filters based on permissions. It will likely need to be implemented within the component for ease of use. Although testing the component as a whole will then require some extra steps 😬

@sachaudh Good question.
In team review of advanced filter configuration we discussed either feature flag, or RBAC resource, or both. However:

Sometimes conditional rendering of container like Node and Platform CVEs prevents the problem.
In a container like Workload CVEs, if only id and name are needed for cluster, there are REST API to provide just that info without need for Cluster resource. As David said, access scopes or user roles still filter which clusters. For GraphQL queries, the same waiver to allow id and name is a valid, but we need careful testing to verify.

@sachaudh Ok the NS fix is in and I've updated the testing description above for verification.

Looks good to me 👍🏼


OpenSimplexNoise causes lag and errors

Godot version
4.0.dev
System information
Windows 10, GTX 1050 ti
Issue description
If I try to set a noise texture onto something in the 3d viewport, it cause a lot of errors and lags the engine.
Here's some errors:
Set: 2 Binding: 0 Type: StorageBuffer Length: 0
Set: 3 Binding: 0 Type: UniformBuffer Length: 128
Set: 3 Binding: 1 Type: Texture Length: 1
Set: 3 Binding: 2 Type: Texture Length: 1
Set: 3 Binding: 3 Type: Texture Length: 1
Set: 3 Binding: 4 Type: Texture Length: 1
Uniforms were never supplied for set (3) a
Steps to reproduce
Create a new meshinstance or CSG shape, add a standardmaterial 3d, then use a noise texture for albedo, normal map etc., the material will not show in the viewport, and the engine will lag, and many errors will be printed. The lag only occurs after you select "opensimplexnoise."
Minimal reproduction project
No response

Duplicate of https://github.com/godotengine/godot/issues/51361.


remove Start() method

Cron provides two similar methods: Run() and Start().
https://github.com/gdgvda/cron/blob/5eb0ef714f0dea726f412d4d57328ba2011f50ae/cron.go#L214-L235
I think that calling go cron.Run() the behavior would be the same as cron.Start(). IMO we could remove Start() and keep just the Run() method, letting the user decide the execution goroutine on its own.

I think they look similar, but they are not same as Start facilitates running cron scheduler in its own goroutine while Run()-> runs the cron scheduler in current goroutine.

Hi @rameshgkwd05,
I agree. What I'm proposing is a matter of API design. Assuming that calling go cron.Run() the behavior would be the same as using cron.Start(), IMHO exposing a single blocking method reduces the API surface and makes the usage more clear from a Go perspective. In order to run the cron scheduler in its own goroutine you would have to add the go keyword in front, as you would do for any other function. What do you think?

A use case I didn't consider is that of stopping the scheduler when using the first option I listed with blocking behavior. select {} blocks forever, instead I would expect the execution to resume in case the scheduler is stopped. For making this work with the first option we would need some communication mechanism so that externally it's possible to wait this event instead of waiting indefinitely.
Using the second solution this behavior would be for free. This point makes me lean towards the second option.

While trying to remove the Start() method I realized a side effect of using go cron.Run().
https://github.com/gdgvda/cron/blob/abf1acdf6dbdec5d1b480ade880748b9006f2277/cron_test.go#L93-L112
Consider the change when starting the scheduler in the above test: without goroutine synchronization, the scheduler could start after the Stop() and/or Add() calls, resulting in unpredictable behavior. I don't think adding extra complexity to this makes sense, so I'm closing for now.


Node Taints aren't being applied to etcd/control plane nodes for nodes (machine pools and custom)

Rancher Server Setup

Rancher version: v2.6-head

Describe the bug

Currently, Rancher is expected to add taints to the etcd/control plane nodes to prevent workloads from being scheduled on them.
These taints are not being added to custom nodes.
To Reproduce

Create a custom cluster  or Create a node provisioned cluster with 1 etcd, 1 control plane, 1 worker as individual nodes
Review the taints on the node.

Result
No taint on the node.
In the annotation of the node of what is passed to RKE2, it looks like the node taint is blank for a node provisioned cluster.
rke2.io/node-args: '["server","--agent-token","********","--cni","calico","--disable-apiserver","true","--disable-controller-manager","true","--disable-kube-proxy","false","--disable-scheduler","true","--etcd-expose-metrics","false","--etcd-snapshot-retention","5","--etcd-snapshot-schedule-cron","0
      */5 * * *","--node-label","rke.cattle.io/machine=65310b60-bbd3-4eb5-8fba-7dcfc71f2e43","--node-taint","","--private-registry","/var/lib/rancher/rke2/etc/config-files/private-registry","--protect-kernel-defaults","false","--token","********"]'

Expected Result

Expect taints on these nodes
Screenshots

Additional context

One or both of these PRs failed to actually apply taints on nodes for node provisioned clusters and custom clusters.
Merged PR to add taints:https://github.com/rancher/rancher/pull/33768
Merged PR to correctly parse taints for custom nodes: https://github.com/rancher/rancher/pull/33797/files

Please test through custom AND machine pools

To validate:

Deploy customer clusters
Deploy machine pools
Verify taints are available on the node (via kubectl) and are seen on the UI in Kube Nodes page.
Verify on both the clusters:

RKE2 components (CNI/coredns) can still be scheduled onto control plane nodes

Other workloads shouldn’t be scheduled on the etcd/control plane  nodes

My checks PASSED
Reproduction Steps:

Not required.
Validation Environment:

Rancher version: v2.6-head (e3d4b6d19) pulled at 8/18/21 3:28 am Pacific
Rancher cluster type: single-node docker
Docker version: 20.10
Downstream cluster type: rke2
Downstream K8s version: v1.21.3-rc6+rke2r2
Validation steps:

NOTE: For each use case, used canal CNI instead of Calico as Calico currently has a bug that can affect multi-node clusters: https://github.com/rancher/rancher/issues/34300
Use Case 1 - Rancher-provisioned rke2 cluster:

Create an RKE2 cluster with Rancher - in my case I used the digitalocean node driver:

1st node pool is etcd-only role with 3 machines
2nd node pool is control-plane-only role with 2 machines
3rd node pool is worker-only role with 3 machines

Observed cluster came up successfully. Observed that CNI and CoreDNS look good and are scheduled onto cp/etcd nodes, as expected (they are tolerated). Observed the non-worker nodes are tainted, as expected.
rke2-canal DaemonSet is still scheduled to all nodes (does tolerate):

rke2-coredns has availability and is scheduled to a non-worker node as we can see here (does tolerate):

Control plane taint:

Etcd taint:

Worker (not tainted):

Create a DaemonSet workload. Image doesn't matter but I picked nginx:latest
Observed that the workload is ONLY deployed to the 3 worker nodes (count is 3, not 8, as expected)

Note, prior to the fix, I saw that when I created such a deployment it was scheduled to 8 nodes (all of them) in the same node pools configuration. I can confirm the issue is indeed fixed.
Use Case 2 - User-provisioned rke2 cluster (Custom cluster):

Create a 3-node custom RKE2 cluster:

1st node is etcd-only role
2nd node is control-plane-only role
3rd node is worker-only role

Otherwise, perform the steps above in Use Case 1 precisely the same, except that we will see a max count of 1 for my DaemonSet nginx workload test.

No issues observed in Use Case 2 checks as well.
Additional Info:


Cancel Backup UI buttons inverted

Bug Report
System Information

AMP version and build date (Always use the version number, 'latest' is not valid!) <IP_ADDRESS> - 20240417.1
Which AMP release stream you're using (Mainline, Nightly or FastTrack) Mainline

I confirm:

[ x] that I have searched for an existing bug report for this issue.
[ x] that I am using the latest available version of AMP.
[ x] that my operating system is up-to-date.

Symptoms

What are you trying to do?
Cancel a backup
What are you expecting to happen?
The button to be more clear with the expected outcome
What is actually happening? ('Nothing' is not an acceptable answer!)
The button says "Cancel/Continue task" but continue cancels it and cancel continues it.
Since the question is are you sure you want to cancel, have "Confirm" (and it stops the job) and "Return" (go back to previous screen) or something similar that is clear.

Reproduction
Start a backup task, then click cancel.

This is solved for the next release. Wonder how long it's been that way. xD


check-config.sh: Add check for CONFIG_BTRFS_FS_POSIX_ACL

docker is trying to set system.posix_acl_access but using BTRFS this fails if
CONFIG_BTRFS_FS_POSIX_ACL is not activated.
Signed-off-by: Andrei Gherzan<EMAIL_ADDRESS>

LGTM

LGTM

LGTM 🐸


Issue-Move test vectors into one repo (#24)

Automated Review Comments
Issues in .github/workflows/nodejs.yml:

(21, 'Hardcoded string found')
Issues in test/rlp.test.js:
(8, 'Line exceeds 80 characters')
Issues in test/tx.test.js:
(1, 'Line exceeds 80 characters')
(4, 'Line exceeds 80 characters')
(4, 'Hardcoded string found')
(5, 'Line exceeds 80 characters')
(5, 'Hardcoded string found')
(6, 'Line exceeds 80 characters')
(6, 'Hardcoded string found')

I got it.


Added non-breaking db implementation specific settings support to collection definition.

"repositorySettings" object can now be added to the collection definition containing specific settings per implementation. If the implementation is used those are passed to the repository via extend. How and if those settings are used depends on the viewmodel db implementation.
d.defineCollection({
   name: "col",
   repositorySettings: {
     elasticsearch: {
        // specific elasticsearch settings
     },
     mongodb: {
        // specific mongodb settings
     }
   }
});

Can you remove the package-lock.json ?

done :)


Update deploying-spicedb-operator.mdx

I'm not 100% sure about this but I think the Secret key should match what is set in the Cluster manifest from earlier?
Using the key currently mentioned in the doc, I see this error:
ERR terminated with errors error="rpc error: code = PermissionDenied desc = invalid preshared key: invalid token"

Yep that's right!


Primivite's vjp not implemented

Can I ask which primitive of these does not have a vjp yet?
def evaluate_loss(model, X, Y):
    return mx.mean(nn.losses.cross_entropy(model(X), Y))

def eval_fn(X, Y):
    return mx.mean(mx.argmax(X, axis=1) == Y)

def max_pool2d(x, kernel_size=(2, 2), stride=None):
    kh, kw = kernel_size
    dh, dw = stride if stride else kernel_size
    batch, height, width, channels = x.shape

    new_height = (height - kh) // dh + 1
    new_width = (width - kw) // dw + 1
    pooled = mx.zeros((batch, new_height, new_width, channels))
    for i in range(0, height - kh + 1, dh):
        for j in range(0, width - kw + 1, dw):
            window = x[:, i : i + kh, j : j + kw, :]
            pooled[:, i // dh, j // dw, :] = mx.max(window)

    return pooled

class TinyConvNet(nn.Module):
    def __init__(self):
        super().__init__()
        self.conv1 = nn.Conv2d(1, 32, kernel_size=(3, 3))
        self.conv2 = nn.Conv2d(32, 64, kernel_size=(3, 3))
        self.ln1 = nn.LayerNorm(32)
        self.ln2 = nn.LayerNorm(64)
        self.linear = nn.Linear(5 * 5 * 64, 10)

    def __call__(self, x):
        x = x.reshape(-1, 28, 28, 1)
        out = self.conv1(x)
        out = nn.relu(out)
        out = max_pool2d(out)
        out = self.ln1(out)
        out = self.conv2(out)
        out = nn.relu(out)
        out = max_pool2d(out)
        out = self.ln2(out)
        out = out.reshape(out.shape[0], -1)
        out = self.linear(out)
        return out

if __name__ == "__main__":
    batch_size = 256
    X_train, Y_train, X_test, Y_test = map(mx.array, fetch_mnist())
    model = TinyConvNet()

    optimizer = optim.SGD(learning_rate=1e-1)
    loss_and_grad_fn = nn.value_and_grad(model, evaluate_loss)
    count = 0
    for _ in range(500):
        ix = mx.random.randint(0, X_train.shape[0], [batch_size])

        Xb = X_train[ix]
        Yb = Y_train[ix]

        loss, grads = loss_and_grad_fn(model, Xb, Yb)
        print("loss", loss.shape)
        optimizer.update(model, grads)

Yes it's this line, our scatter needs a VJP.
            pooled[:, i // dh, j // dw, :] = mx.max(window)

Your max pool 2d also will be extremely slow, MLX is not designed to efficiently handle that type of iterative indexing.
A much better/faster bet for you is to do some combindation of mx.as_strided + mx.max(.., axis=..), but it might take a little indexing-fu to get all the shapes / strides right.
as_strided(...) method of builtins.PyCapsule instance
    as_strided(a: array, /, shape: Optional[List[int]] = None, strides: Optional[List[int]] = None, offset: int = 0, *, stream: Union[None, Stream, Device] = None) -> array

    Create a view into the array with the given shape and strides.

    The resulting array will always be as if the provided array was row
    contiguous regardless of the provided arrays storage order and current
    strides.

    .. note::
       Note that this function should be used with caution as it changes
       the shape and strides of the array directly. This can lead to the
       resulting array pointing to invalid memory locations which can
       result into crashes.

    Args:
      a (array): Input array
      shape (list(int), optional): The shape of the resulting array. If
        None it defaults to ``a.shape()``.
      strides (list(int), optional): The strides of the resulting array. If
        None it defaults to the reverse exclusive cumulative product of
        ``a.shape()``.
      offset (int): Skip that many elements from the beginning of the input
        array.

    Returns:
      array: The output array which is the strided view of the input.

I'm going to close this as a dup of #25  and #155 (both of which we need to add to nn and core respectively)!


No such preference in GlobalPreferenceRegistry with section=None and name=

Not quite sure what's happening here. This should be a clean install. The setup guide was followed accurately.
Traceback:
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response
  111.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/options.py" in wrapper
  583.                 return self.admin_site.admin_view(view)(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py" in _wrapped_view
  105.                     response = view_func(request, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/views/decorators/cache.py" in _wrapped_view_func
  52.         response = view_func(request, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/sites.py" in inner
  206.             return view(request, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py" in _wrapper
  29.             return bound_func(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py" in _wrapped_view
  105.                     response = view_func(request, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py" in bound_func
  25.                 return func.__get__(self, type(self))(*args2, **kwargs2)
File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/options.py" in changelist_view
  1575.             media = self.media + formset.media
File "/usr/local/lib/python2.7/dist-packages/django/forms/formsets.py" in media
  393.             return self.empty_form.media
File "/usr/local/lib/python2.7/dist-packages/django/forms/formsets.py" in empty_form
  185.             empty_permitted=True,
File "/usr/local/lib/python2.7/dist-packages/dynamic_preferences/admin.py" in __init__
  15.         super(PreferenceChangeListForm, self).__init__(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/forms/models.py" in __init__
  315.             self.instance = opts.model()
File "/usr/local/lib/python2.7/dist-packages/dynamic_preferences/models.py" in __init__
  46.                 self.value = self.preference.default
File "/usr/local/lib/python2.7/dist-packages/django/utils/functional.py" in __get__
  55.         res = instance.__dict__[self.func.__name__] = self.func(instance)
File "/usr/local/lib/python2.7/dist-packages/dynamic_preferences/models.py" in preference
  50.         return self.registry.get(section=self.section, name=self.name)
File "/usr/local/lib/python2.7/dist-packages/dynamic_preferences/registries.py" in get
  130.                 self.__class__.__name__, section, name))

Exception Type: KeyError at /dynamic_preferences/globalpreferencemodel/
Exception Value: 'No such preference in GlobalPreferenceRegistry with section=None and name='

Hi, and thank you for opening the first issue. There is indeed a bug with django's admin integration, I can reproduce the bug on a fresh install. I'll investigate and publish a fix as soon as possible (tonight, I hope).

The problem should be solved now, I've pushed the new release to PyPi. Thank you for reporting !

No problem! You have a good product here!


Help～ Wechaty.Contact.finall()   can't find complete Contact list！！    QAQ救命啊～ finall（）函数无法导出完整的通讯录列表！！

1. Versions

What is your wechaty version?

Answer:
wechaty                0.10.7
wechaty-grpc           0.20.19
wechaty-puppet         0.4.23
wechaty-puppet-service 0.8.10

Which puppet are you using for wechaty? (puppeteer/padlocal/service...)

Answer: padlocal

What is your wechaty-puppet-XXX（padchat/puppeteer/） version?

Answer:0.65

What is your node version? (run node --version)

Answer: I use the python wechaty

What os are you using

Answer:MAC OS
2. Describe the bug
run：
from typing import List
from wechaty import Wechaty, Contact
class MyBot(Wechaty):
async def on_ready(self, _):
contacts: List[Contact] = await self.Contact.find_all()
list=[]
for contact in contacts:
list.append(contact.name)
print(list)
asyncio.run(MyBot().start())
I expected to print the complete contact list，but i got only a part of it 。

This is problem of Padlocal. Please contact the service provider.


No embeddable content error

I want to use Ted as provider. Here is my code in controller
ted = OEmbed::Provider.new("http://www.ted.com/talks/oembed.json")
ted << "http://ted.com/talks/*"
resource = ted.get("http://www.ted.com/talks/dawn_landes_a_song_for_my_hero_the_woman_who_rowed_into_a_hurricane")
But it returns "No embeddable contet at 〜"
Whant is wrong?

@tatsuaka try this instead
ted = OEmbed::Provider.new("http://www.ted.com/talks/oembed.json")
ted << "http://*.ted.com/talks/*"
ted << "https://*.ted.com/talks/*"
resource = ted.get("http://www.ted.com/talks/dawn_landes_a_song_for_my_hero_the_woman_who_rowed_into_a_hurricane")
resource.title #=> "Dawn Landes: A song for my hero, the woman who rowed into a hurricane"

The URL pattern that you added to the provider was was set up to match the "ted.com" hostname exactly and didn't match subdomains (like www.ted.com). Switching over support for "*.ted.com" supports all subdomains and the subdomain-less "ted.com" hostname. Also, it seems that Ted's oEmbed endpoint does support https URLs so you might as well support those too!

It works. Thanks so much for  prompt response.


Output shape of predicted values of MGP

Hello,
It seems that the predict values given by the Marginal Gaussian Process surrogate model are not in the same shape as the other models.

MGP model output shape: (n,)
Other model output shape (n,1)

It could be interesting to make MGP output shape consistent with the other models.
Thanks !
Mathieu

Hi, thanks for the heads up. Indeed MGP does not use common methods from SurrogateModel and does not reshape its outputs. To be fixed.


Need PASSWORD

@stegben
We need your encrypted pypi password with repo.
Please provide correct one below.
https://github.com/Yoctol/flake8-config-yoctol/blob/master/.travis.yml#L22

Solved by 97f3ebdbe9904982d4dd31ae35e19e5c91373050


How to diagnose "Didn't understand the command" in picovoice_demo_mic?

What is the URL of the doc?
Demo: https://picovoice.ai/docs/api/rhino-python/
Rhino API (Python): https://picovoice.ai/docs/api/rhino-python/
What's the nature of the issue? (e.g. steps do not work, typos/grammar/spelling, etc., out of date)
With Rhino, in the case where the process function returns is_finalize, but the resulting inference was not understood, is there any way to get more information about what was interpreted? or about the sound levels of the sample?
Specifically, I would like to be able to distinguish between background noise and a verbal command that did not match any intents.
When using the microphone demo, if I speak the wake word then say nothing, I consistently get "Didn't understand the command". I am wondering whether that results from background noise? or is the demo (Rhino?) simply timing out? I tried decreasing the sensitivity, but that didn't seem to have any bearing.

You are correct. In both cases (timeout and command it cannot understand) it returns is_understood = false. The API does not provide more information. What's the use case you are trying to address?

Thanks for the info!
My use case is a conversational context. If the wake word starts the conversation, there is an opportunity to process successive speech samples, to act on a series of discrete intents.
I recognize that Rhino needs a timeout... in this case, it would be beneficial to distinguish between that possibility and failing to match speech sample to intent.
Otherwise:

kenarsa: Craig, could you pass the salt?
cmcinroy: Sure, here you are.
(pause)
cmcinroy: Wha'd you say?

🙂

got it. Thanks for the feedback. It seems like you need a VAD module. It should add the extra information you need. Hope it helps.

Thank you for the suggestion.


DAL 3.9.0 release will break your project?

Hello everybody!
django-autocomplete-light 3.9.0-rc2 has been released with changes:
#1262 Django 4.0 support by @fraimondo
#1255 Django 4.0 warning removal by @Mogost
#1253 Case sensitive creates in Select2QuerySetView by @shenek
#1246 Add event to notify of the initialization completed by @andreccorrea
#1222 Select2GroupQuerySetView fix by @arseniy-panfilov
#1233 Safari regexp fix by @vtbassmatt
#1239 Django 3.2+ fix by @michael-sayapin
#1251 Doc fix get_result_label by @arlopezg
#1231 Fix ViewMixin comment by @moonorange
Select2 Upgraded to 4.1.0-rc.0
Please try it out and let us now if it broke anything in your project before we release 3.9.0
Thanks in advance!
:tophat:

✅ works in my project. Thanks!

works with Django 4.0rc1. Thanks.

Thank you!
Released 3.9.0rc4, should be the last one before 3.9.0 if nobody runs into new issues in the next weeks...
NEW FEATURE FOR EVERYONE! Read here and njoy :)
https://github.com/yourlabs/django-autocomplete-light/blob/master/docs/tutorial.rst#with-djhacker
#1270 Fix issue when dal js is loaded twice by @FiooCode
#1266 New data-token-separator attribute by @fraimondo
#1190 #1187 Fixed django-querysetsequence support
Django 3.2 support in test code

@OmenApps I have rewritten your list feature in 3.9.0rc5: https://github.com/yourlabs/django-autocomplete-light/commit/8de5b22188cfbdfedc27d6e5691318dd4f4ab1d5
I think the modification I did in test is pretty minor but please check if it still works for you!
Also, setting a ModelChoiceField for a foreign key in a model form class breaks the admin and we now have proof #1140 so it's not recommended anymore and a warning has been added in documentation 72b8900c6efd4d368f33e99bc11bd8f6111b92f1
:tophat:

I tried rc5 and got something with django-crispy-forms (latest: 1.13.0)
(Django 2.2.26)
In template /data/virtualenv/myapp/lib64/python3.6/site-packages/crispy_forms/templates/bootstrap3/field.html, error at line 36
27	        {% if not field|is_checkboxselectmultiple and not field|is_radioselect %}
28	            {% if field|is_checkbox and form_show_labels %}
29
30	                    {% crispy_field field %}
31	                    {{ field.label|safe }}{% if field.field.required %}*{% endif %}
32
33	                {% include 'bootstrap3/layout/help_text_and_errors.html' %}
34	            {% else %}
35

36	                    {% crispy_field field %}
37	                    {% include 'bootstrap3/layout/help_text_and_errors.html' %}
38

39	            {% endif %}
40	        {% endif %}

...
File "/data/virtualenv/myapp/lib64/python3.6/site-packages/django/template/base.py" in render_annotated
  904.             return self.render(context)

File "/data/virtualenv/myapp/lib64/python3.6/site-packages/crispy_forms/templatetags/crispy_forms_field.py" in render
  157.         return str(field)

File "/data/virtualenv/myapp/lib64/python3.6/site-packages/django/utils/html.py" in <lambda>
  388.     klass.__str__ = lambda self: mark_safe(klass_str(self))

File "/data/virtualenv/myapp/lib64/python3.6/site-packages/django/forms/boundfield.py" in __str__
  33.         return self.as_widget()

File "/data/virtualenv/myapp/lib64/python3.6/site-packages/django/forms/boundfield.py" in as_widget
  86.         attrs = self.build_widget_attrs(attrs, widget)

File "/data/virtualenv/myapp/lib64/python3.6/site-packages/django/forms/boundfield.py" in build_widget_attrs
  221.         if widget.use_required_attribute(self.initial) and self.field.required and self.form.use_required_attribute:

File "/data/virtualenv/myapp/lib64/python3.6/site-packages/django/forms/widgets.py" in use_required_attribute
  699.         first_choice = next(iter(self.choices), None)

File "/data/virtualenv/myapp/lib64/python3.6/site-packages/django/forms/fields.py" in __iter__
  756.         yield from self.choices_func()

File "/data/virtualenv/myapp/lib64/python3.6/site-packages/dal_select2/fields.py" in __call__
  13.         for choice in choices:

Exception Type: TypeError at /MyAPp/start/
Exception Value: 'NoneType' object is not iterable

I upgraded from 3.3.4

@mrfroggg Sorry about that, it's fixed f4013bb0 in 3.9.1rc2

Hi all, please try out https://pypi.org/project/django-autocomplete-light/3.9.5rc0/
Support for Django 4 and Python 310 and also merged contributions #1297 #1302 #1304
Working or breaking for you? Thanks!
:tophat:


[3.2] Fix Return key events in LineEdit & TextEdit on Android

Fixes #37793, #40262 for the 3.2 branch
I'm preparing a similar PR for master.
Depending on the device implementation, editor actions could be received with different action ids or not at all for multi-line.
Added a parameter to virtual keyboards to properly handle single-line and multi-line cases in all situations.
Single-line:
Input type set to text without multiline to make sure actions are sent.
IME options are set to DONE action to force action id consistency.
Multi-line:
Input type set to text and multiline to make sure enter triggers new lines.
Actions are disabled by the multiline flag, so '\n' characters are handled in text changed callbacks.
Tested on Archos 55 Helium, Samsung Galaxy Note 5

@pouleyKetchoupp I have compiled and tested the 3.2 tip with this and the #37190 PR.
The text-editor and the line-editor now work outstanding! :ok_hand: :rocket:
Thanks

Thanks!


Windows does not show the layout "AZERTY-ness"

Yes, I can make up words 😎
This is from Stack Overflow
In Windows, one can install a custom keyboard layout, made with MSKLC.
However, when using the Language and Keyboard Options dialog, the "moniker" that consists in the sequence of characters found on the first row of the layout, is not displayed for a custom layout.

How do I tell Windows that my custom keyboard layout is an "AZERTY" variant?
I have used various tools to find out where this information is stored and it does not appear to be in the layout DLL itself. I also search in the registry but could not seem to find what I was looking for.

I +1 this issue, because it seems to be related with an issue I have encountered with using Windows via Citrix. It seems that Citrix defaults to QWERTY because of this (I'm not 100% sure, but switching to FR/AZERTY and logging in again worked and reset the remote desktop's layout to AZERTY).

Unfortunately, it isn't possible to specify a "keyboardName" (like "AZERTY", etc.) for a user-installed keyboard layout. These keyboardNames are indeed stored outside of the layout DLL.

🤷♂


Spin Research Code Into Separate Repository

It would be nice to eventually make this repository public for job interview and tech talk purposes. In order to do that, the sensitive research code in this repository needs to be put into a separate, private repository. This repository can then include that private repository as a submodule and configure compilation based on the presence or absence of the research submodule.

Resolved.

Resolved.

Resolved.

Resolved.


TS2.9 narrows MyType|undefined to undefined (regression from 2.8)

TypeScript Version:

<EMAIL_ADDRESS>ok
<EMAIL_ADDRESS>bug
<EMAIL_ADDRESS>bug

Search Terms:
Code
declare const AddressSymbol: unique symbol;
type AddressString = typeof AddressSymbol & string;

function printout(data: AddressString | undefined) {
  console.log(data); // type of `data` is always undefined since TS 2.9
}

printout(undefined); // ok

const a = "foo" as AddressString;
printout(a); // broken since TS 2.9

Expected behavior: the code compiles
Actual behavior: since TypeScript 2.9, the compilations fails with:
$ ./node_modules/typescript/bin/tsc example.ts
example.ts:11:10 - error TS2345: Argument of type 'AddressString' is not assignable to parameter of type 'undefined'.

11 printout(a); // broken in TS 2.9
            ~

Playground Link: http://www.typescriptlang.org/play/#src=declare const AddressSymbol%3A unique symbol%3B
type AddressString %3D typeof AddressSymbol %26 string%3B

function printout(data%3A AddressString | undefined) {
  console.log(data)%3B
}

printout(undefined)%3B %2F%2F ok

const a %3D "foo" as AddressString%3B
printout(a)%3B %2F%2F broken since TS 2.9
Related Issues: https://github.com/Microsoft/TypeScript/issues/25179

This is working as intended and is an effect of #23672. The type checker now more effectively removes intersection types with empty value domains (such as symbol & string) when they're included in union types. Since it isn't possible to construct values that are simultaneously symbol and string, the type symbol & string is effectively the same as never and the type checker treats it accordingly.

Thank you very much for the explanation, @ahejlsberg! Makes sense so far. We only cast to those things in order to get strict string aliases and they can indeed not be constructed.
But shouldn't a be of type never too in the following lines?
declare const AddressSymbol: unique symbol;
type AddressString = typeof AddressSymbol & string;
const a = "foo" as AddressString;


Run code generator on every build

https://msdn.microsoft.com/en-us/library/ee847423.aspx
http://stackoverflow.com/questions/1646580/get-visual-studio-to-run-a-t4-template-on-every-build

duplicate of #37


Create Fibonacci.py

Hi, By Mistake I have Submit Same code , It was not intentionally ,please consider my mistake, Please do not mark its as spam, I am getting warning, please just don't accept it or mark it duplicate as it is duplicate but it is not a spam.

Okay


How to parse result with dynamic key?

I executing a remote_sudo action and following is the output,
id: 5a13d5d37052cf40e1025bba
action.ref: examples.mistral-examples
parameters:
  vm_name: master
status: failed
result_task: create_vm
result:
  <IP_ADDRESS>:
    failed: false
    return_code: 0
    stderr: ''
    stdout: cri-server5
    succeeded: true
start_timestamp: 2017-11-21T07:29:23.891776Z
end_timestamp: 2017-11-21T07:29:30.723630Z

From the above output how can i access result."<IP_ADDRESS>".stdout when <IP_ADDRESS> will keep changing according to the target on which the action is being executed?
I want to publish the stdout part in the result.

version: '2.0'
examples.mistral-examples:
description: A basic workflow that runs an salt command.
type: direct
input:
- vm_name
tasks:
execute_cmd:
action: core.remote_sudo
input:
cmd: "hostname"
hosts: "x.x.x.x"
username: ""
password: "***"
publish:
result: <% task(create_vm).result %>
user: <% $.username %>
on-success:
- output_to_file
output_to_file:
action: core.local
input:
cmd: "echo '<% $.result %>'"
In the above example task execute_cmd is working but output to file is failing. I dont see any visible issue. Please help
Secondly i tried using <% task(execute_cmd).result.get($.hosts) %> but did not work.

Looks like you're on the right lines with <% task(execute_cmd).result.get($.hosts) %>. It probably needs to be something like <% task(execute_cmd).result.get($.hosts).stdout %>.
See https://github.com/StackStorm/st2cd/blob/master/actions/workflows/st2_get_installed_version.yaml#L24 for an example.
I think the problem comes from how you're defining the hosts param. In the example I linked to, hosts is an input to the workflow. It could also come from a published variable somewhere else in the workflow.
But in your workflow you seem to be hard-coding the host value?
            input:
                cmd: "hostname"
                hosts: "x.x.x.x"
                username: "********"
                password: "***********

Is that passed into the workflow, or hard-coded? If it's hard-coded, then you could publish it as a variable. You could probably also just directly refer to it in your result.get($.hosts) section

Yes it is hard coded. i tried publishing a hard coded value as
publish:
user: <% $.username %>
This doesnt work.  How sud a hard coded value be published?

If it's hard-coded, you don't really need to publish it. You can just re-use that same value wherever you're referring to it.
But if you want to only hard-code it in one place, then refer to it as a variable in other locations, you could do the same thing as the init: task in that example I linked to earlier. It run  core.noop action, and publishes variables.

@LindsayHill  Thank you. This is my first workflow and i am trying out things. :)


Cannot set up splunk

Hi thanks for creating this setup, there seems to be a problem with finding the docker compose file for splunk when option 1 is chosen

Standardized docker-compose.yml file-names inside the tools folders,
This should work now!!


Bump pion/ice

Use binding request instead of indication for keepalive

Codecov Report

Merging #702 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #702   +/-   ##
=====================================
  Coverage      77%    77%
=====================================
  Files          57     57
  Lines        3696   3696
=====================================
  Hits         2846   2846
  Misses        603    603
  Partials      247    247

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e4eafaf...56c7b80. Read the comment docs.

Codecov Report

Merging #702 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #702   +/-   ##
=====================================
  Coverage      77%    77%
=====================================
  Files          57     57
  Lines        3696   3696
=====================================
  Hits         2846   2846
  Misses        603    603
  Partials      247    247

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e4eafaf...56c7b80. Read the comment docs.


Make sliders work out of the box

The sliders will change the settings in the settings files but RD doesn't apply them. If you restart rancher you get an error that requires running a console command to fix. This should be an intuitive experience.

Possible workflow:

After changing the slider, a status bar message or notification tells the user the change will take effect after pressing "Reset K8s".
On "Reset K8s", if the cluster needs to be recreated, the system carries that out, with progress feedback to the user (since it takes a long time).

A slight tweak to the workflow like:
"You have changed settings that require a reset of the cluster. The cluster now will be reset" and then offer to reset the cluster for the user with an ok/cancel button? But with the reset the user would lose all their deployments so maybe we should also pop up some warning text when they click ok.

Hmm, opinion time.  I currently have:

That's not great, because the banner overlap some controls.  However, we currently don't have a status bar area, so if I stuck it at the bottom of the screen it could get hidden behind scrolling.
I guess that means I need to modify that page in particular to add a fixed area at the bottom to hold banners?
I'm intentionally not going for https://github.com/rancher-sandbox/rd/issues/103#issuecomment-777131056 because that sounds like a modal dialog box, and it wouldn't work well if the user wants to adjust both CPU and memory.


[FX-6033] Add nowrap for input

FX-6033
Description
This pull request makes inputs not to break words via text-nowrap, as Firefox treats / as a whitespace.
Firefox breaks text on / (the adornment like abcdefabcdefabcdefabcdef does not break), so the text-nowrap was applied to the whole input (similar problem).
https://github.com/user-attachments/assets/6646a4f7-c0fc-4027-bdd9-0c83f07b5ed7
How to test

Temploy
Try the code below in Firefox

import React, { useState } from 'react'
import { Input } from '@toptal/picasso'

const Example = () => {
  const [value, setValue] = useState('Text')

  const handleChange = (event: React.ChangeEvent<{ value: string }>) => {
    setValue(event.target.value)
  }

  return (
    <Input
      value={value}
      placeholder='Placeholder'
      startAdornment='dfddf/dfdfd'
      endAdornment='assas/asas'
      onChange={handleChange}
      data-testid='input'
    />
  )
}

export default Example

Screenshots

Before.
After.

Development checks

[x] Add changeset according to guidelines (if needed)
[N/A] Double check if picasso-tailwind-merge requires major update (check its README.md)
[x] Read CONTRIBUTING.md and Component API principles
[x] Make sure that additions and changes on the design follow Toptal's BASE design, and it's been already discussed with designers at #-base-core
[N/A] Annotate all props in component with documentation
[N/A] Create examples for component
[x] Ensure that deployed demo has expected results and good examples
[x] Ensure the changed/created components have not caused accessibility issues. How to use accessibility plugin in storybook.
[x] Self reviewed
[N/A] Covered with tests (visual tests included)

All development checks should be done and set checked to pass the
GitHub Bot: TODOLess action

PR commands

List of available commands:

@toptal-bot run package:alpha-release - Release alpha version
@toptal-anvil ping reviewers - Ping FX team for review

PR Review Guidelines

When to approve? ✅
You are OK with merging this PR and

You have no extra requests.
You have optional requests.

Add nit: to your comment. (ex. nit: I'd rename this variable from makeCircle to getCircle)

When to request changes? ❌
You are not OK with merging this PR because

Something is broken after the changes.
Acceptance criteria is not reached.
Code is dirty.

When to comment (neither ✅ nor ❌)
You want your comments to be addressed before merging this PR in cases like:

There are leftovers like unnecessary logs, comments, etc.
You have an opinionated comment regarding the code that requires a discussion.
You have questions.

How to handle the comments?

An owner of a comment is the only one who can resolve it.
An owner of a comment must resolve it when it's addressed.
A PR owner must reply with ✅ when a comment is addressed.

@toptal-bot run package:alpha-release

@toptal-bot run package:alpha-release


Remove deprecated set-output command in Create Draft Release workflow

Set-output command is deprecated, we currently use said command in our workflow here
https://github.com/build-trust/ockam/blob/dd9088eb8ab7cb43da12896a66f16fdbfb81af1a/.github/workflows/release-binaries.yml#L159-L160  we should update command to use output parameter

I can pick this up :)


New version: JetBrains.Rider.EAP version 242.19533.58

Created by 🥟 Dumplings in workflow run #6277.

Log
Updated: 242.18071.30 → 242.19533.58
Submitting WinGet manifests
Creating manifests
Uploading manifests and making commits
Creating a pull request

Microsoft Reviewers: Open in CodeFlow

/azp run

This package installs and launches normally on a Windows 10 VM.


Fix link to documentation

Fixed link to point to current location of EF documentation.

Hi @LeeDumond, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by .NET Foundation and real humans are currently evaluating your PR.
TTYL, DNFBOT;

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

aspnetcore/data/ef-mvc/update-related-data.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

@tdykstra  do you want to remove local? Better for loc? Is so, remove/merge.

Hi @LeeDumond, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by .NET Foundation and real humans are currently evaluating your PR.
TTYL, DNFBOT;

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

aspnetcore/data/ef-mvc/update-related-data.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Feature/web app for real

I'm grabbing a draft PR so I can reference this code for changes I need in backend and quickstart to enable port forwarding through a local host web app, required to avoid CORS and general single-origin issues when using fetch with both keycloak and KAS.


Workshop: Database Seeding

User story

As a developer
I want to host a workshop
So that other developers can learn about the seeding of the database and get frontend and backend running at the same time

Acceptance criteria

[ ] David and Jonas to host a workshop
[ ] The workshop teaches developers about the seeding of the database and get frontend and backend running at the same time

Definition of done (DoD)

[ ] All acceptance criteria were met
[ ] Pipeline is building successfully
[ ] Unit/integration tests are passing
[ ] Code has been reviewed and merged into the primary development branch

DoD general criteria

[ ] Developers agreed to release
[ ] Product owner approved features
[ ] Feature has been fully implemented

I proposed this work shop because right now after #102 was merged only David, Jonas and maybe Sasa are able to build everything on the develop branch and actually see facilities. A detailed description of how to get the backend and the database to run would also work but it is necessary for us other devs to know this. After already trying and getting help by David a little I can say it includes at least:

Distribute the .env file so everyone has it
show us the Prisma commands (prisma:generate, prisma:seed)
getting docker-compose up to work and then show us which containers to run using docker and which ones to run in the terminal
finding a way for it to work on windows (everyone but David and Jonas uses Windows)


MINOR: Add note about topic IDs to upgrade doc

Added a note about how topic IDs will be added in version 2.8 and the implications of downgrading + reupgrading.
Also fixed small typo and made all notable changes part of a single list.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

cherry-picked to trunk too.


ssdt 15.9.10 release information

@WendyYes : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#label:"aq-pr-triaged"

#sign-off

@chugugrace: I'm sorry - only the author of this article, @dzsquared, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

this went through the correct repo (sql-docs-pr) and can be closed
#please-close


dev_re merge to fix typo

Just fixing a small JSDoc typo.

Congratulations, Ryan!
On Mon, Nov 22, 2021 at 6:00 AM rehrenreich @.***>
wrote:

Merged #5 https://github.com/vkehren/open-personal-archive/pull/5 into
main.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/vkehren/open-personal-archive/pull/5#event-5654150950,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AWJZFCAK6DL7RVR3LU2ZKLLUNJEJRANCNFSM5IRCIWYA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


Find all reference seldomly selectes a bunch of text

For the past 4 weeks I noticed that find all references seldomly selects random text.
Here are example steps on how to reproduce it

Open debugService, do a find all references on private configurationManager
Click on the references in the widget
Notice some text randomly gets selected

This is captured in the gif below.
Note that sometimes I would also double click in the widget, the widget closes and still some weird selection happens in the main editor.

Yeah, I have seen this too.. But no clue how that happens... @alexandrudima this looks like the native browser selection. any ideas how that happens or how we prevent that in outer editors?

@jrieken I can reproduce when dragging from a search result, so I suppose it is something about the tree that needs to be suppressed ?
See https://github.com/Microsoft/vscode/issues/44525

I can still reproduce, so reopening and removing needs more info. Let me know if I can help with providing more information.

@isidorn How can you still reproduce? The editor text is no longer selectable. I did that change in 3c040d051e707f21bfb0aef4196972b71a913761

@alexandrudima my mistake. I was seeing it last week probably before your commit. Since I did not see any activity here I assumed I will hit it sooner or later. I will reopen if I see it again.


Looker Screenshots in Guides

We've got a Looker report screenshot in the resource optimization guide.
https://guides.snowflake.com/guide/resourceoptimization-billingmetrics/index.html?index=..%2F..index#2
It's also labeled Cumulative Revenue, we may want to label it different when we change to Tableau or Snowsight (ideally) as the image.

Good points Daniel - thank you! I'll be sure to get these updated soon.


Get playlist songs

Can we also add the ability to get playlist songs? Users can provide the playlist url.

This library has the get_playlist_songs and a few other functions implemented. Should be easy to add them here.


(maint) Merge up 6.x to main

commit '1675a6c677666f4a668ec144459ad286c5635439':
(PUP-4045) Allow retrieval of attributes for fifo and socket files
(PUP-8220) Override trusted certname if present
(PUP-8094) Make lookup aware of certificate extensions
(PUP-11320) Move ssh_authorized_key resources creation at the end

Conflicts:
lib/puppet/type/user.rb

Superseded by #8835


Update sha on airy 2.1.89 due to mismatch on install

Thank you for the contribution. It was merged directly as d149d8f130a20853b223ca35ef37b3e9bbfb2855 to keep commit history cleaner. Your contribution is still credited to you.


Use A CI/CL Tool With Gitea

Is there any CI/CL tools which can work only in the changed subproject and work fine with gitea?
For example, a spring cloud multi-module project has been updated on gitea, so then Drone will be triggered by it and rebuild all the subproject in this repository.

Drone has a "trigger downstream" plugin that would allow you to start builds for other projects in drone when a primary git repo is also triggered.

I had look at that plugin before. But it is not useful for my condition. The multi-module project is not split into different git repository but in one, the subproject is child folder of parent. So what I need actually is listening for child floder's code change and only triger in that folder.

@zxcvbnm3057 so you look for something like a path condition?
(https://woodpecker-ci.org/docs/usage/conditional-execution#path)

Yes, just like only/changes syntax in Gitlab

@6543 Thanks, this seem like what I need. Thank you for your help!

@zxcvbnm3057 tld: you can do that with drone too - there should be a plugin around in combination to write starlak ...
but if you still searching for a ci I would recommend woodpecker anyway - ironic: I have no idea why :D

@6543 The drone is very small and light, but its document and forum has too many things not introduced. I am worried that soon or later there are some other questions waiting for me.

So is there any blog or post mention this? I have search 3 days but still got nothing helpful. Most of drone plugin require a git-diff future which gitea didn't provide. So if anyone has soluted this please must tell me.


remove js sort on string versions

Purpose

remove js sort on string versions to prevent the incorrect ordering of the product version dropdown

Closing this PR since we are not maintaining this repo.


fix reconcile too long and some error in log

https://issues.redhat.com/browse/ACM-7913

When Kafka or Postgre is starting, we should not return errors in reconcile. We just need to wait it started
We should not return mgh is not exist errors before mgh is created. just need to wait it created.

/hold

/retest

/retest

/retest

/retest

/retest

/retest

/cc @clyang82 @yanmxa

Could you append the root cause why the reconciler takes too long in the description? Thanks.

It may be related with DefaultControllerRateLimiter https://github.com/kubernetes-sigs/controller-runtime/blob/15d79283523517f52ee30b28d2ae4c1ea3f113da/pkg/controller/controller.go#L146.
NewItemExponentialFailureRateLimiter(5time.Millisecond, 1000time.Second), the maxDelay is 1000 second. that can be a root cause. I would like to have a try with customized option in controller manager https://github.com/stolostron/multicluster-global-hub/blob/7da17d464be9b1db46702f1790200245c7ae99ab/operator/pkg/controllers/hubofhubs/globalhub_controller.go#L482 with the following code:
WithOptions(controller.Options{
			RateLimiter: workqueue.NewItemFastSlowRateLimiter(5*time.Millisecond, time.Second*5, 5),
		}).

It may be related with DefaultControllerRateLimiter https://github.com/kubernetes-sigs/controller-runtime/blob/15d79283523517f52ee30b28d2ae4c1ea3f113da/pkg/controller/controller.go#L146.
NewItemExponentialFailureRateLimiter(5_time.Millisecond, 1000_time.Second), the maxDelay is 1000 second. that can be a root cause. I would like to have a try with customized option in controller manager
https://github.com/stolostron/multicluster-global-hub/blob/7da17d464be9b1db46702f1790200245c7ae99ab/operator/pkg/controllers/hubofhubs/globalhub_controller.go#L482
with the following code:
WithOptions(controller.Options{
			RateLimiter: workqueue.NewItemFastSlowRateLimiter(5*time.Millisecond, time.Second*5, 5),
		}).

Yes, I append some details in description.
But I think the root cause is we returned too much errors when we wait kafka or postgre starting. We just need to wait they started instead of always return errors .

/retest

/unhold


CursesDriver doesn't processing response from task threading.

Describe the bug
The Threading scenario never returns from a task thread with the CursesDriver. This issue happen on both versions v1 and v2.
To Reproduce
Steps to reproduce the behavior:

Run UICatalog
Go to Threading scenario
Press or click on "Cancelable Load Items" button without press any key or move the mouse after done it
Wait for the items being loaded.
They don't load unless a key is press or the mouse move

Expected behavior
The items are loaded if not canceled.

Another scenario where you can test this issue with CursesDriver is the "Animation" scenario where only will to spin by hold pressing a key or moving the mouse.


Ensure errors are logged as ERROR rather than INFO

At least some failures seem to be logged as INFO, which is incorrect. Ensure they are properly logged as ERROR (or the appropriate type).

@i471828 Have you got any examples you can add?

Was closed internally. Not an issue with this repo.


Consider using a dummy variable for the initial energy storage level

What and Why
The current version is too verbose, the alternative is to create the dummy variable for the initial energy storage that has the following advantages:

less verbose
easier to plot/output the storage level including the initial value
it allows matrix multiplication in the storage level constraint (hopefully 😛)

Possible Drawbacks
The advantages need to be tested using the benchmark to see if the time still is not worse (create a branch in the main repo so we can use the benchmark tool)
Related Issues
No response

Blocked by #294

We don't need this anymore since we have the cycling condition for the storage (i.e., storage_level_t=1 = storage_level_t=last


timezone setting not working

Gitea version (or commit ref):  1.9.4
Git version: 2.19.2
Operating system: centos6.9
Database (use [x]):

[ ] PostgreSQL
[x] MySQL
[ ] MSSQL
[ ] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[x] No
[ ] Not relevant

Log gist:

Description
My app.ini
[time]
FORMAT = 2006-01-02 15:04:05
DEFAULT_UI_LOCATION = Asia/Shanghai

but current Asia/Shanghai time is 2019/11/27 上午10:09:46

This kind of time difference (10:09 vs. 11:26) suggests the server time not properly set. If the time zone were off, you should see an exact difference in hours (e.g. 10:09 vs. 11:09).

after update gitea version to v1.10.0, the problem has been solved


Enabling guardrails to work with open-source LLMs aside from OpenAI

Guardrails seemingly supports other LLM providers over manifest, and even with custom LLM APIs. However, I haven't been able to use guardrails with a single open-source LLM in practice. I have tried the following models/providers:

Hugging Face Hub

tiiuae/falcon-7b-instruct
gpt2
bigscience/bloom-560m

GPT4All

ggml-gpt4all-j-v1.3-groovy

I understand that guardrails expects a JSON response that conforms to a certain format, and usually crashes when the LLM output deviates from the anticipated format. OpenAI's models seem to understand guardrails instructions very accurately, whereas many open source LLMs (at least all the ones I've tried so far) aren't able to precisely follow the requested format.
Initially, there are a few workarounds that I can think of:

Process initial LLM output in custom LLM APIs, re-format the (ideally) "close-to-expected" output so that it conforms to the expected format, and return the re-formatted text. (e.g. Falcon returns a JSON object, but sometimes mislabels the keys or returns other text in addition to the JSON - the JSON can be parsed and returned in a custom LLM API.)
Parse non-formatted LLM output and convert it to JSON format using output consistencies in certain models. (e.g. consistencies can be observed in the output format of GPT4All, which may be leveraged to create a parser that converts its response to a properly formatted JSON response that works well with guardrails)
Wait for open source LLMs to get better at understanding instructions

I believe option 3 is the default for now, but I'm wondering whether we could come up with ways to use guardrails with open-source LLMs before then.
P.S.: If anyone has successfully used guardrails with an open-source LLM, could you please provide details? Thanks!

@serhatgktp I was following the Guard LLM wrapper and output parser examples but didn't find any success. The results to validated_response and output_parser.parse(output) were usually None. I was wondering if this is because the guardrail wasn't able to pick up on the structure of the open-source LLM response.

Hey, you can use guardrails with open source models using Manifest.
See here for an example: https://shreyar.github.io/guardrails/llm_api_wrappers/#using-manifest
Also related to parsing the response: https://github.com/ShreyaR/guardrails/issues/210#issuecomment-1656225464

Hello @serhatgktp , thanks for opening this issue! This is an important observation. Currently, most of the Guardrails functionality heavily depends on how good the instruction following ability of LLMs is. Guardrails supports validation of both structured and unstructured data. Currently, OpenAI, Cohere or Anthropic models are really good at following instructions and hence generate really good structured data in the first place - on top of which our validators run their magic and validate the output.
As you currently found out, OpenAI's models seem to understand guardrails instructions very accurately, whereas many open source LLMs aren't able to precisely follow the requested format. We tried testing guardrails with the following open-source models:

tiiuae/falcon-7b-instruct
bigscience/bloom-560m
dolly-v2-3b
meta-llama/Llama-2-7b-hf

For use cases involving generation of structured data (such as the examples shared by @irgolic), either these models did not follow instructions correctly - such as not able to return the output in the JSON format correctly or were incredibly slow.
On the other hand though, all of these models work quite well when use-cases involve generating unstructured data! Here's an example notebook for you to test all of these models on a simple unstructured data generation task: (https://colab.research.google.com/drive/1oCSClv_PMIlNsVpMQSoSjdCOmIQ_L5lS?usp=sharing)
To recap, all our validators kick only after schema validation is satisfied on the raw LLM outputs. That is the reason for None being returned for @QUANGLEA.For unstructured data, that is not an issue - as our validators can directly kick in. Please try experimenting with different open-source LLMs on any unstructured data task for now (follow the notebook shared above), and it should work. Also try with more SOTA instruction-following LLMs, you can expect to see better results.
As far as structured data tasks are concerned, you could try working on the first 2 solutions that you described. Meanwhile, we will also try on our end, if there's anything that we can do.

Hi @thekaranacharya , I would like to add to this that many custom LLM applications now work with open source finetuned models. These models have the ability to correctly format the output, as in OpenAIs models (if they are properly tuned).
Having the support to run our custom models to extract structured data would be a great contribution to the project, as it would open up a huge range of possibilities.

Hello @Psancs05 , if your open-source fine-tuned custom models do follow instructions nicely, then as of this moment as well you can use it with guardrails! All they need to do is accept a prompt (a string) and return a response (a string). Please use this notebook as a starting point to add your custom model logic inside the my_llm_api() function.
Continue the conversation here if you run into any problems while doing that.

Hello @Psancs05 , if your open-source fine-tuned custom models do follow instructions nicely, then as of this moment as well you can use it with guardrails! All they need to do is accept a prompt (a string) and return a response (a string). Please use this notebook as a starting point to add your custom model logic inside the my_llm_api() function. That function is supposed to host the logic for whichever LLM inference you're using.
Continue the conversation here if you run into any problems while doing that.

Thanks for sharing the notebook, i tweeked the code and running in proble, can you please check my notebook: https://colab.research.google.com/drive/1_LmvjcEDRWpkvmcqB3HdHTZt4CjZv4sC?usp=sharing

Hello @Psancs05 , if your open-source fine-tuned custom models do follow instructions nicely, then as of this moment as well you can use it with guardrails! All they need to do is accept a prompt (a string) and return a response (a string). Please use this notebook as a starting point to add your custom model logic inside the my_llm_api() function. That function is supposed to host the logic for whichever LLM inference you're using.
Continue the conversation here if you run into any problems while doing that.

This is part of breaking changes from 0.3 https://www.guardrailsai.com/docs/migration_guides/0-3-migration
Please change line 2 to
raw_output, validated_output, *rest = guard(my_llm_api)


TEST-PARAMETRIC-DEFEXPI seems flaky

Bisecting seems to point to the Magicl NG merge causing issues with this test. @colescott


[Discussion] Mono processing

I'm processing real-time microphone audio through Spleeter in an attempt to separate the actual voice from extraneous music picked up by the vocal mics.  It's working quite well.
I'd like to optimize my processing.  Currently, I'm duplicating the samples and passing a stereo signal to be split because that is how all of the examples work.  There are recent commits that address mono streams.  Is there anything special I need to do in order to setup a filter to process mono instead of stereo channels?

Hi @aughey,
spleeter indeed processes audio in stereo. You can input mono files, but it will just duplicate the channel to stereo before processing.
If you'd like to do mono processing for optimization purpose, that should be feasuble by tweak the Keras Model, the tensorflow estimator and some parts of the separator, where the number of channel was hardcoded to 2.


followup for atx index

will create a separate to follow to adjust those places in a different pr
where it will be used?

[x] no atx queries in ballot/proposal handlers (implemented in this change)
[ ] no identity and atx queries in hare
[x] no atx queries in block generator https://github.com/spacemeshos/go-spacemesh/pull/5194
[ ] atx queries during mesh hash resolution

will allow to

[ ] drop atxs data from tortoise
[ ] drop lru cache for atxs and identities

inn block generator we need access to coinbases, each one is 24 bytes. as of now they are not stored in atxsdata. several options:

get them from database, block building is not on latency sensitive path, so if it will take 100-200ms more to build a block thats  should not a problem
add coinbases to atxsdata structure, it will use 20MB per 1_000_000 atxs, checked in TestMemory


jps: Watch 3tierwebsol.com

jps requests the watch of the watch_keyword 3tierwebsol\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

3tierwebsol\.com has been seen in 0 true positives, 0 false positives, and 0 NAAs.

Approved by Jeff Schaller in Charcoal HQ


Passing ParseOptions to chain?

It is a nice how chain and try works together and you can create nice combinations
import * as v from '@badrap/valita';
const s1 = v.object({
  x: v.number(),
});
const s2 = v.object({
  y: v.number(),
});
const s3 = s1.chain(value => s2.try(value));
console.log(s3.parse({x: 1, y: 2})); // throws
console.log(s3.parse({x: 1, y: 2}, {mode: 'passthrough'})); // also throws

I think that chain should take the options so that the last line above could be made to work.

Maybe it would be better to have object parsers provide methods for changing their options:
const X = v.object({x: v.number()}); // strict
const Y = v.object({y: v.number()}); // also strict

const XY = X.passthrough().chain(y.passthrough().try);

https://github.com/badrap/valita/issues/55#issuecomment-1944090995
FWIW, this is what zod does and I think making passthrough/strict/strip part of the schema makes sense to me.
https://zod.dev/?id=passthrough
https://zod.dev/?id=strict
https://zod.dev/?id=strip

Currently you can get the the same effect as Zod's .passthrough() by using .rest(v.unknown()).

Thanks. That is a nice "trick". I'll keep that in mind in the future.


docs: Upgrade instructions for 2.X -> 3.X missing

Hey, I looked at your upgrade instruction docs https://github.com/thiagobustamante/typescript-rest/wiki/Previous-Versions#upgrade-instructions but there are sadly no instructions for going 2.X -> 3.X.
It does not seem to be a very easy update since Server.useIoC(); was removed (and probably much more?).
The boilerplate project https://github.com/vrudikov/typescript-rest-boilerplate is at 2.X also.
A guide would be much appreciated.
Thanks for your work and this package :)

Thanks for pointing this. I updated the documentation and soon will upgrade the boilerplate project


moduleFilenameTemplate option to SourceMapDevToolPlugin does not seem to work

Bug report

What is the current behavior?
Best I can tell, the moduleFilenameTemplate option to webpack.SourceMapDevToolPlugin does nothing.  The doc implies that moduleFilenameTemplate is equivalent to setting the devtoolModuleFilenameTemplate option in the output section of your webpack config.  However, in my experience, devtoolModuleFilenameTemplate works and moduleFilenameTemplate does not.
If the current behavior is a bug, please provide the steps to reproduce.

You'll want to start with a Node.js web application that is bundled with webpack (so target: 'node'.  I am using the WebStorm IDE, but I don't think that has an impact.
Include this in your webpack config:
plugins: [
	// https://webpack.js.org/plugins/source-map-dev-tool-plugin/
	new webpack.SourceMapDevToolPlugin({
		filename: "[file].map",
		moduleFilenameTemplate: '[absolute-resource-path]',
	}),
],

Debug your application, and put a "throw" in there so that you hit an error.  Look at the stack trace.  You will see lines like this:
   at module.exports.featured (webpack:///./src/server/app_server/controllers/packages.js?:351:6)

The presence of "webpack:///" up front in the path is a very bad thing.
Now, take out the moduleFilenameTemplate line and, instead, add this to the output: section of your webpack config:
	devtoolModuleFilenameTemplate: '[absolute-resource-path]',

Now, hit your breakpoint again, and this time check out your stack trace:
   at module.exports.featured (C:\jmpdev\usr\sasewh\Node\ServerNext\webjmp\src\server\app_server\controllers\packages.js:351:6)

You get a nice, beautiful correct path that your IDE can turn into a link you can click on to take you to that line in the original source.
Just seems like the moduleFilenameTemplate option should work the same but doesn't.
What is the expected behavior?

I would expect both of those options to produce the same path in the stack trace.  moduleFilenameTemplate should at least do something.  It seems to do nothing.
Other relevant information:
webpack version:  4.29
Node.js version: 10.15.1
Operating System: Windows
Additional tools:  WebStorm IDE

devtoolModuleFilenameTemplate is translated to a call to the plugin:
https://github.com/webpack/webpack/blob/2068a816edd2bb8d8ba424fd40ee3071bf9186c4/lib/WebpackOptionsApply.js#L270-L281
Try also passing fallbackModuleFilenameTemplate.

Also make sure to use devtool: false when using the Plugin.

Hey, Tobias - I'm not quite sure how to interpret your first reply.  Are you saying that the plugin's moduleFilenameTemplate can only be set indirectly by setting the devtoolModuleFilenameTemplate option of output?
At any rate, here is what I am seeing for paths in the stack trace with various options:
devtool not set, no setting for moduleFilenameTemplate:
webpack:///./src/server/app_server/controllers/test.js?:8:8
devtool set to false, no setting for moduleFilenameTemplate:
C:\jmpdev\usr\sasewh\Node\ServerNext\webjmp\build\bundle-server.js:6704:8
(If devtool is explicitly set to false, the path looks just like this no matter how I set either plugin or output module filename template options.  It seems all moduleFilenameTemplate options are ignored if devtool is set to false).
devtool not set, plugin moduleFilenameTemplate set to absolute resource path:
webpack:///./src/server/app_server/controllers/test.js?:8:8
devtool not set, plugin fallbackModuleFilenameTemplate set to absolute resource path:
webpack:///./src/server/app_server/controllers/test.js?:8:8
devtool not set, output devtoolFallbackModuleFilenameTemplate set to abs resource path:
webpack:///./src/server/app_server/controllers/test.js?:8:8
devtool not set output devtoolModuleFilenameTemplate set to absolute resource path:
C:\jmpdev\usr\sasewh\Node\ServerNext\webjmp\src\server\app_server\controllers\test.js:8:8
The last one is what I need.  So it's confusing to me that the doc suggests that you can set moduleFilenameTemplate on the plug-in and have it do something, but in my experience, that is not the case.  I also don't see either fallbackModuleFilenameTemplate or devtoolFallbackModuleFilenameTemplate in output having any effect, but maybe my scenario does not cause those options to get exercises.
Thanks,
Eric

What's about devtool set to false, plugin moduleFilenameTemplate set to absolute resource path?

Nope.  That test case was included in my "If devtool is explicitly set to false, the path looks just like this no matter what...".  I tried it again today just to make sure, and call stacks have bundle paths, not paths into the original source code:
    at ./src/server/app_server/controllers/test.js.exports.fail (C:\jmpdev\usr\sasewh\Node\ServerNext\webjmp\build\bundle-server-dev.js:6725:8)

HTH,
Eric

It would be great if you reduce your issue to a small reproducible example. Best put this example into a github repository together with instructions how to get to the problem.

We have a couple developers who work on the Mac (foregoing information was for Windows).  On the Mac, things are a bit worse.  Using the same configuration that works on Windows, on Mac, WebStorm does not hit breakpoints and paths are missing the leading "/" in the traceback:

(Notice the top line points to the bundle, not my original source code.  Interestingly, the second line of the traceback has the path correct, but that is an external (something out of node_modules)).
This is of course with devtool: false not present on the config file.  If I put devtool: false in the config file, WebStorm hits breakpoints, but paths in the traceback point to the bundle, not my source code.

Eric

I am going to try to find time to make a repro and upload it to github.

Okay, I went and did it: Here is a github repository with pretty much the Express boilerplate project that shows all the issues I've described here.
https://github.com/radcapitalist/webpack-issues
All the info you need is in README.md.

One more thing:  If I set the mode option in the Webpack config to "production" instead of "development", the generated source map does not seem to be used.  Call stacks point into the bundle, not to original source code.  But I need call stacks to be correct in production builds of my back-end code.  I added information about this to the repro README.md.

Ok I tried your repo dev-4 and changed config to:
		new webpack.SourceMapDevToolPlugin({
			filename: "[file].map",
			fallbackModuleFilenameTemplate: '[absolute-resource-path]',
			moduleFilenameTemplate: '[absolute-resource-path]',
		}),

and it results in the expected stack traces:
*** FAILURE TEST ROUTE ***
Error: *** FAILURE TEST ROUTE ***
    at C:\Users\tobia\Repos\_\webpack-issues\src\server\routes\index.js:13:1
    at Layer.handle [as handle_request] (C:\Users\tobia\Repos\_\webpack-issues\node_modules\express\lib\router\layer.js:95:5)
    at next (C:\Users\tobia\Repos\_\webpack-issues\node_modules\express\lib\router\route.js:137:13)
    at Route.dispatch (C:\Users\tobia\Repos\_\webpack-issues\node_modules\express\lib\router\route.js:112:3)
    at Layer.handle [as handle_request] (C:\Users\tobia\Repos\_\webpack-issues\node_modules\express\lib\router\layer.js:95:5)
    at C:\Users\tobia\Repos\_\webpack-issues\node_modules\express\lib\router\index.js:281:22
    at Function.process_params (C:\Users\tobia\Repos\_\webpack-issues\node_modules\express\lib\router\index.js:335:12)
    at next (C:\Users\tobia\Repos\_\webpack-issues\node_modules\express\lib\router\index.js:275:10)
    at Function.handle (C:\Users\tobia\Repos\_\webpack-issues\node_modules\express\lib\router\index.js:174:3)
    at router (C:\Users\tobia\Repos\_\webpack-issues\node_modules\express\lib\router\index.js:47:12)

Thanks so much for trying this out!  You are absolutely correct - with the combination of fallbackModuleFilenameTemplate + moduleFilenameTemplate being set as options to webpack.SourceMapDevToolPlugin, and the source-map-support plugin being installed using BannerPlugin, all is well.
Whether devtool: false is present or not seems to make a minor difference but not a significant one in what I've seen so far.
That same change to the mode: "production" config solves its issues as well.
I have updated my linked repository with Tobias's changes.
Thanks again!  I am closing this issue.
Eric