Disable sass prefix, AsyncComponent wraps now component with correct namespace

No need for custom sass prefix
From the version @redhat-cloud-services/frontend-components/v/3.3.14 from this PR RedHatInsights/frontend-components/pull/1239 it's not required to pass custom sass prefix to apply styles from/to different application. On contrary ROS app was affecting inventory by changing the inventory table styling.

Codecov Report

Merging #87 (7c6818c) into main (0b8b836) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #87   +/-   ##
=======================================
  Coverage   11.63%   11.63%
=======================================
  Files          29       29
  Lines         447      447
  Branches       95       95
=======================================
  Hits           52       52
  Misses        366      366
  Partials       29       29

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 0b8b836...7c6818c. Read the comment docs.


No Python Support for Robot

OS: Debian 8.2
IDE: IntelliJ Community Edition 15
Plugin: Python Community Edition 5
Python: Anaconda 2.3
I have the following message while opening my (working) project with a single robot file.
Note: the robot file is in a "tests" sub-folder.. differently I don't get any message like the following.
11:52:53 AM Intellibot: No Python Support for Robot: If you configure a python interpreter you will be able to get code completion around imported libraries in your robot files.

If you want to use python based keywords in your robot files you need to configure the interpreter so that things can correctly be found/parsed.  This info bubble appears if you do not have the python plugin installed to let you know you can install and configure it.
https://github.com/millennialmedia/intellibot/wiki/Python-Interpreter

Yes I have it. As I said I use "Python Community Edition" i.e. PyCharm, not simply "Python"..

sorry, slightly confused.  Are you using intellij or pycharm?
if intellij, you can install the python plugin to get support.
if pycharm, it should not show this warning and python should already be supported.

I use IntelliJ and I installed the "Python Community Edition" plugin....

Ok in that case, the instructions should work for you.  you just need to setup a python sdk and specify it as the interpreter in your project.

oh wait i see; let me take a look locally.

so you are saying you have this plugin: (python ce) https://plugins.jetbrains.com/plugin/7322?pr=
vs this plugin: (python) https://plugins.jetbrains.com/plugin/631?pr=
I should be able to make it so that one or the other is acceptable.

exactly

Maybe the reason is that I am using Anaconda as Python SDK....

if you open a python file in intellij does it resolve correctly or are there a bunch of errors (libs not found, or functions)?

If I open the referenced (Libraries) Python file, I have no issue.
By the way I verified the same problem in Windows, with the same Python+IDE: Anaconda+IntelliJ Community+Python Community

Ok.  I am pretty sure that the CE version must have a different plugin and this doesnt get registered.  If python files work fine, then the robot plugin ought to be able to find them.  I just need to get around to downloading the CE version to confirm.

#128
Juggling between CE and U is such fun :stuck_out_tongue_winking_eye:


Downloaded percentage

Added downloaded percentage indication.

swarm.downloaded only shows you the downloaded bytes for the current session. If you resume an existing torrent the percentage will be incorrect. What you really need is the number of verified pieces / total pieces.

Thanks @asapach!
I'll take a look.

@asapach What's a good way to test this?
I tried pausing the torrent with spacebar and seems to work ok there.
Also tried canceling and then starting again the same torrent, but it's not resuming, it starts again.

@codealchemist: try passing the -f option. You need to stop the process after downloading several pieces and start again; pausing the torrent is not enough.
The verified pieces are already accounted for here: https://github.com/mafintosh/peerflix/blob/22b477e539a9746a6c3137a947ca980cb4390eb4/app.js#L114
And the total number should be available as torrent.pieces.length

I tried using --path but still, doesn't resume.
The only way to make a download to resume is using -f / --path?

You need to have at least one piece verified for it to resume.
What OS are you on? Node version? Can you see the files created on disk and growing in size? What happens to them when you exit?

OSX 10.10.5 (Yosemite)
node: v6.2.2
Files are being created with their final size.

I'm running it on windows and linux and it works for me: the files grow in size and download resumes after I restart peerflix.
Try testing it on larger files (several gigs) - do those get created with their full size?

I just tried with a 6GB torrent and it is still creating a full size copy on disk while it downloads.
It doesn't resume after restarting peerflix.
Maybe an OSX thing?
I'll test on Windows. Thx.

Interesting, I just saw a similar behavior on Win10.

It depends on which pieces are downloaded first. If you run peerflix with vlc it will try downloading the container header first (which is at the start) and the index next (which is usually at the end), so it will span the entire file. But if you keep it running by itself without requesting anything it will start downloading pieces in mostly sequential order from the start and the file size should grow gradually.
@mafintosh please chime in if I'm wrong here.

to calcuate the initial percentage you want to traverse the bitfield and see which chunks have already been downloaded. something like the gist below should work
engine.on('ready', function () {
  var downloaded = 0
  for (var i = 0; i < engine.torrent.pieces.length; i++) {
    if (engine.bitfield.get(i)) downloaded++
  }

  console.log('download pct', downloaded / engine.torrent.pieces.length)

  engine.on('download', function () {
    downloaded++
    console.log('download pct', downloaded / engine.torrent.pieces.length)
  })
})

Thanks a lot @asapach and @mafintosh!
Now I'm getting downloaded percentage using your snippet @mafintosh.
Works like a charm!
Downloading existing files resumes, as you explained to me before @asapach, and now we can see and verify how much it was downloaded ;)

First run:

Canceled and restarted (resuming):

I think the second image is misleading: it makes you think that the file size is 18MB instead of 63MB. I'd still go with the verified pieces as the indicator of progress on the next line.

Fixed added on latest commit.
Thanks @asapach!

@asapach what do you think about the latest commit?
Instead of calculating it each time the screen is rendered I added the calculation to the verify event, where it will be executed less times and if the torrent was already downloaded it will run just 100 times when the app starts.
It also looks more readable to have just one variable in the screen template line, which is already really long.
Thanks!

The code looks OK. Thanks for addressing the comments.
I still think the ui might be confusing when resuming, but it's up to @mafintosh to decide.


ioutil is deprecated

Upload uses ioutil.WriteFile. ioutil has been deprecated since 1.16. Move to using os.WriteFile instead.
Signed-off-by: Brad P. Crochet<EMAIL_ADDRESS>

/lgtm

/lgtm

/approve

/approve no-issue


Replace recursive definitions of algebraic operations with axioms

I get annoyed when I see solutions to NNG levels in the wild which rely on definitional equality. We get confused people reporting bugs in NNG3 because they accidentally proved x + 0 = x by rfl and it worked. I tried to get around this by getting Jon/Alex to weaken rfl so that it wasn't solving stuff like this and 2 + 2 = 4, but apply and exact still manage to unify x and x + 0.
I decided that one approach to this could be to redefine addition, multiplication and exponentiation via opaque constants obeying axioms. All worlds apart from Algorithm World worked fine after the refactor, but this approach broke decide, which was no longer able to put 2 + 2 into a normal form. We have worked around this by making a custom simp set which knows the axioms defining + * and ^ and with another rule which makes numerals greater than 0 reduce to MyNat.succ (MyNat.succ ... (MyNat.succ 0))..); MyDecide applies this simp set and then runs decide. Thanks to all on the Zulip thread for suggestions.
Before:

(and user then shows up on Zulip confused about a "bug".)
After:

Maybe it is also possible to weaken tauto since it can solve Algorithm world 6,8 and tutorial world completely?

OK, it took me two weeks to find the time to push this over the line, but I think now it's ready. I modified the the decide tactic so that it runs a custom simp set to reduce MyNat numerals and expressions like 1 + 1 to a reduced normal form (MyNat.succ (MyNat.succ ... MyNat.zero))..., which is perfectly fine for what we're trying to do here. The diff looks acceptable to me, and users should not notice any difference with the game.

PS happy to squash-merge (but don't really know what I'm talking about)

Maybe it is also possible to weaken tauto since it can solve Algorithm world 6,8 and tutorial world completely?

This approach automatically weakens tauto too because a + 0 = a is no longer a tautology (it's an axiom, not true by definition).


403: Login is disabled

I receive the text "Login is disabled" using the latest version 1.32.0 if I try to access my dashboard:
Request headers:
GET /login HTTP/1.1
Host: analytics.mokkapps.de
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:101.0) Gecko/20100101 Firefox/101.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en,de;q=0.7,en-US;q=0.3
Accept-Encoding: gzip, deflate, br
Referer: https://analytics.mokkapps.de/dashboard
DNT: 1
Connection: keep-alive
Cookie: ahoy_visitor=a4ff9041-f02f-4cd6-b1cc-5ccfb1e5c670; ahoy_visit=65d06b23-c274-45a6-a76e-d7edf1198423; umami.auth=<AUTH_TOKEN>
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
Sec-Fetch-User: ?1
Sec-GPC: 1
Pragma: no-cache
Cache-Control: no-cache

Response headers:
HTTP/2 403 Forbidden
date: Fri, 17 Jun 2022 07:49:05 GMT
content-type: text/plain;charset=UTF-8
content-length: 17
cache-control: public, max-age=0, must-revalidate
server: Vercel
x-vercel-id: fra1::qp744-1655452145246-48560ee8e90a
strict-transport-security: max-age=63072000
x-vercel-cache: MISS
X-Firefox-Spdy: h2

Response:
Login is disabled

I'm also getting the same error in my newly installed instance on vercel. But when I installed the same code on qovery 3days ago, it wasn't disabled.

Strange, this should only happen if you have the DISABLE_LOGIN environment variable set. Check your variables and you try redeploying.

Strange, this should only happen if you have the DISABLE_LOGIN environment variable set. Check your variables and you try redeploying.

It wasn't defined. I had to make changes to the code https://github.com/waptik/umami/commit/2c905a32b41110f2379d361c9c0ec31a368bdc25. I'm left with porting #1203 over to my forked version

I never added this environment variable and I also cannot see it in Vercel 🤷♂

This seems to be a Vercel specific problem. I ran into it too, but when I redeployed it went away.

This seems to be a Vercel specific problem. I ran into it too, but when I redeployed it went away.

It might have worked for you, but it didn't work for me after I reverted back to uncomment the disableLogin() function.

You can check deployment of reverted changes and reployment

I also redeployed about five times and still get the same error 🤷♂

Same here 😪

I also redeployed about five times and still get the same error 🤷♂

I think It's an issue with vercel. Works fine with railway.

vercel Same here

vercel Same here

I've found the solution. Remove DisableLogin from middleware

Should be fixed now in v1.33.

Thanks

How about this issue?

Oh, I see. If I want to fix it myself, where should I look? @XahidEx

It was fixed in the abovementioned version, and later ones. Please, check your umami version before all, and update if needed. I'm not facing this issue anymore.


typo in docs: -idp should be --idp

Occurs in README and ldnode --help

Turns out that node or express doesn't allow multi-letter abbreviated command line params. (so, -i is ok but -idp is invalid). Fix pending.

Fixed in latest.
This is now --allow-signup


waf: 2.0.24 -> 2.0.25

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/waf/versions.
meta.description for waf is: Meta build system
meta.homepage for waf is: https://waf.io
Updates performed

Version update

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 2.0.25 with grep in /nix/store/z7r23z117mdvfmxp7i6dnwnp0dnv53c2-waf-2.0.25
found 2.0.25 in filename of file in /nix/store/z7r23z117mdvfmxp7i6dnwnp0dnv53c2-waf-2.0.25

Rebuild report (if merged into master) (click to expand)

3369 total rebuild path(s)

3369 package rebuild(s)

First fifty rebuilds by attrpath
CHOWTapeModel
ChowCentaur
ChowKick
ChowPhaser
CuboCore.corepdf
CuboCore.coretoppings
DisnixWebService
EmptyEpsilon
HentaiAtHome
LibreArp
LibreArp-lv2
MIDIVisualizer
MMA
PageEdit
R
SDL2
SDL2_gfx
SDL2_image
SDL2_mixer
SDL2_net
SDL2_sound
SDL2_ttf
SDL2_ttf_2_0_15
SDL_audiolib
SDL_compat
SDL_gpu
SDL_mixer
Sylk
_1oom
_20kly
_7kaa
_90secondportraits
a2jmidid
aaxtomp3
abbaye-des-morts
abcl
abuse
acoustidFingerprinter
adapta-gtk-theme
adl
adoptopenjdk-icedtea-web
aegisub
aeolus
aerc
aether-lv2
afew
agi
ahoviewer
airwindows-lv2
aitrack

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/z7r23z117mdvfmxp7i6dnwnp0dnv53c2-waf-2.0.25 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A waf https://github.com/r-ryantm/nixpkgs/archive/41f621c6177f4e3e963049450f54fb112b7785d8.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/z7r23z117mdvfmxp7i6dnwnp0dnv53c2-waf-2.0.25
ls -la /nix/store/z7r23z117mdvfmxp7i6dnwnp0dnv53c2-waf-2.0.25/bin

Pre-merge build results
NixPkgs review skipped

Maintainer pings
cc @vrthra for testing.

Changes: https://gitlab.com/ita1024/waf/-/blob/master/ChangeLog#L1


vdr: 2.4.0 -> 2.4.1

Motivation for this change
vdr got an update with fixes
Things done

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[X] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[X] Assured whether relevant documentation is up to date
[X] Fits CONTRIBUTING.md.

@GrahamcOfBorg build vdr
@GrahamcOfBorg build vdrPlugins


V1.0.0

Overall improved I2C driver implementation!
The first major feature here is support for configuring which I2C bus to use. All currently supported platforms support this feature, and examples of how to use are below. It basically amounts to calling qwiic_i2c.get_i2c_driver() with whatever parameters you need for your platform. If no parameters are provided, the default bus for your platform will be chosen.
Linux:
# Set the corresponding bus index
my_bus = qwiic_i2c.get_i2c_driver(iBus=1)

CircuitPython:
# Set the I2C pins and optionally set the frequency (defaults to 100kHz)
my_bus = qwiic_i2c.get_i2c_driver(sda = board.GP0, sda = board.GP1, freq = 100000)

MicroPython:
# Set the I2C pins and optionally set the frequency (defaults to 100kHz)
my_bus = qwiic_i2c.get_i2c_driver(sda = 0, sda = 1, freq = 100000)

The second major feature is that the CircuitPython driver has been fixed to correctly lock and unlock the bus. Thanks to @prattal17 for #10!
Other minor features and fixes:

Added snake case versions of all functions and methods to allow more Pythonic conventions
Moved isDeviceConnected() into platform specific drivers in order to use the correct bus instead of just the default one

Also added ping() as a shorter alternative

Changed isDeviceConnected() to no longer send an extra 0 byte. It was discovered that this can cause issues with some devices (eg. CAP1203)
If no parameters are provided to qwiic_i2c.get_i2c_driver(), the default bus will be cached so that subsequent calls are faster (helps when multiple devices are used on the default bus)
Improved CircuitPython platform detection and read/write implementations

Issues and pull requests addressed in this merge:

Resolves #4
Resolves #13
Resolves #15
Resolves #1
Resolves #8
Resolves #9
Resolves #10

Thank you very much, I'm glad I could help!
On Thu, Dec 21, 2023, 5:07 PM Kirk D. Benell @.***>
wrote:

@.**** approved this pull request.
Looks great - a lot of work. Thanks!
—
Reply to this email directly, view it on GitHub
https://github.com/sparkfun/Qwiic_I2C_Py/pull/16#pullrequestreview-1793771467,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AI6SEX47TFFTGXVVJQBGBD3YKS6JXAVCNFSM6AAAAABA65WBRKVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMYTOOJTG43TCNBWG4
.
You are receiving this because you were mentioned.Message ID:
@.***>


[web] No reaction to keyboard input in a TextField on iOS

This issue applies to Flutter Web. It is different from #32763 (Keyboard does not show up with TextField on iOS) and is also different from #32584 (iOS input keyboard sometimes stuck in flutter app).
To Reproduce

On iOS (a real device, not a simulator): Open Safari or Chrome.
Open the Flutter Gallery Demo App.
Go to Material > Text fields.
Click on the Name field. The keyboard may or may not appear. Continue clicking until you see the keyboard.
Type a letter. If the letter appears in the text field, press the Back arrow button and return to step 3. In a few attempts (second or third) the fields will stop responding to keyboard. As you type a letter, it will be simply ignored and the text field will remain blank.

I saw this on iPhone X v12.2 and iPad Pro v12.2. On a simulator, the issue also exists but the on-screen keyboard does not even appear as per #32763. I see the same behavior in my own app but I am referencing the demo app for simplicity. The issue does not exist on Android or on desktop.

I saw an exception in Chrome on MacOS that could very well be related to this bug. The exception occurred when I tried to type something in a text field:
Uncaught (in promise) Error: Unknown keymap for key events: android
    at Object.dart.throw (dart_sdk.js:4556)
    at Function.fromMessage (raw_keyboard.dart:269)
    at src__services__raw_keyboard.RawKeyboard.__._handleKeyEvent (raw_keyboard.dart:503)
    at _handleKeyEvent.next (<anonymous>)
    at runBody (dart_sdk.js:22333)
    at Object.async.async (dart_sdk.js:22361)
    at src__services__raw_keyboard.RawKeyboard.__.[_handleKeyEvent] (raw_keyboard.dart:502)
    at BasicMessageChannel.new.<anonymous> (platform_channel.dart:67)
    at Generator.next (<anonymous>)
    at runBody (dart_sdk.js:22333)
    at Object.async.async (dart_sdk.js:22361)
    at platform_channel.dart:66
    at handlePlatformMessage (platform_messages.dart:70)
    at handlePlatformMessage.next (<anonymous>)
    at runBody (dart_sdk.js:22333)
    at Object.async.async (dart_sdk.js:22361)
    at src__engine.EngineWindow.new.handlePlatformMessage (platform_messages.dart:65)
    at src__engine.Keyboard.__.[_handleHtmlEvent] (keyboard.dart:74)
    at keyboard.dart:25```

Is there anything we can do for a temporary fix?

It even worked in my Tesla web browser but not iOS lol

This also happens on an iPad Pro. So seems to be related to the mobile version of safari

We have sent quite some time to find workaround for this issue without luck. Problem lays very deep in a framework. We are even considering releasing iOS native app if it won't get fixed soon :/

So I have been thinking for about doing a native html text field and just use the html view to get the data from it.. I use a native file picker this way and it works really well. I will let you know how it goes. This would be really similar to the approach on platform_inputs package

Hi guys, Fixed this issue.

@OlehMarchenko95 , thank you for PR, closing issue.


Calling undefined method

In Model/Api/OrderInfo.php in the constructor the logger is called with withName.
However, logger is a Psr\Log\LoggerInterface, which does not include a withName method.
Our implementation of the LoggerInterface doesn't include the withName method, which causes the retrieval of an order to fail.

This problem is also located in Controller/Order/Info.php

Hi @rasperen thank you for notifying us of this issue. If I understand correctly this error occurred after an update to Magento 2.4.2. We have a fix available to resolve this issue and will release a new version of the extension as soon as possible.

Hi @rasperen we've released v1.0.6. Could you check if this fixes your problem?


Cipher support?

Hi,
I really love SQLitePCL.pretty and have used it quite a lot in one of my personal projects. I'd also love to use it in a new Xamarin+Android+iOS project I'm working on, but encryption of the DB is a requirement. The initial plan was to use the SQLCipher Xamarin component, but this imposes its own API choices that are far less agreeable than that of SQLitePCL.pretty.
So, I'm wondering whether encryption support is hidden away somewhere and I've just not been able to find it. Can you shed any light on this?

Glad you enjoy the API. I just released 1.0 that has some minor API changes, but I don't expect any further changes going forward.
SQLitePCL.raw (the underlying shim library used by pretty to SQLite) supports SQLCipher. In your project file and the following property:
packaged_sqlcipher
For more details see: https://github.com/ericsink/SQLitePCL.raw

That seems...amazingly simple. Thanks for the info.
It leads to an obvious question however: why is it that people are paying $500 for a Xamarin component? Do you know if there's any difference between the store component and what I'll get if I use raw's cypher support?

I'm not really familiar with SQLCipher. You might want to ask Eric who maintains SQLitePCL.raw. I'm guessing it has to with the open source vs. commercial support contract. See: https://www.zetetic.net/sqlcipher/support/

@ericsink can you provide any insight on @kentcb's question?

(1)  Level of support would be a big difference.  Zetetic are the authors of SQLCipher, so getting support from them is the best option.  The SQLitePCL.raw bundling of SQLCipher comes with no promise of support at all.
(2)  The SQLCipher feature of SQLitePCL.raw is reasonably new and not well tested.  One user is having trouble with it right now, and I'm trying to diagnose whether his config is messed up or if my bundling has some sort of problem.
(3)  There may be other differences between the feature in SQLitePCL.raw and what is included in the Xamarin component from Zetetic.  I don't know.

thanks for the info @ericsink
Presumably there's no way to have the raw/pretty APIs magically work against the Zetetic SQLite bundling?

I suppose that could probably be done, but it wouldn't be easy, much less "magical".

@kentcb You could attempt to take a Zetetic prebuild sqlite binary for iOS/Android and replace the per platform ones bundled with SQLitePCL.raw with them. Definitely would be worth experimenting with. Make sure the SQLite version is relatively recent (> 3.8) as pretty utilizes lots of newer features.
Also if you do go down this path, let me know if a SQLCiipher helper package would be helpful. It doesn't appear the at SQLitePCL.raw explicitly exposes the  SQLCipher c api, but it would be possible to add nicer functions in a pretty extension for the SQLCipher pragmas.


Document how to get a token for accessing the API via curl

Is your feature request related to a problem? Please describe.
The authentication flow from the Swagger Docs UI is clear, but what isn't discussed is how a user could use the API directly from curl, without reusing the token retrieved from the Swagger Docs authentication flow.
Describe the solution you'd like
A session-less/Swagger Doc-less way to use an API I protect with msal_auth.scheme. For example:
curl http://localhost:8000/users/me  # 401 Unauthorized: {"detail":"Not authenticated"}

So we need to login:
curl -v http://localhost:8000/login  # 307 Temporary Redirect
# location: https://login.microsoftonline.com/.../oauth2/v2.0/authorize?...&redirect_uri=http%3A%2F%2Flocalhost%3A8000%2Ftoken

So I ensure http://localhost:8000/token is added to my app registrations allowed redirect URIs. Then I open the location URI in my browser and go through the Azure authentication flow in the portal, just as with the Swagger Docs UI auth flow. It should redirect to my /token endpoint which will return a token for me to use later:
curl -H @auth.header.txt http://localhost:8000/users/me

Instead I get {"detail":"Authentication Error"} from my local API.
Describe alternatives you've considered
I've tried to look into service principals, and adding an App Role "Can Invoke my API" but I cannot actually set those up without tenant admin access. I should be able to accomplish my goals without requiring Admin access.
Additional context
Going a completely different direction, ideally, we should be able to protect our API with MSAL, but then internally once authenticated, be able to generate granular tokens for use via Curl, etc... i.e. a user might have admin access to the API via roles returned from MSAL, but then once logged into the local API, they should be able to generate a less-privileged token for use in their scripts. I have no idea how one might set that up though.

Could you progress on this issue? I am also trying to automate retrieval of a token

Session-less or bearer only
Your use case calls for a library that supports bearer only authentication. The underlying microsoft package msal is only intended to be used for authentication session management. This is, doing the initial login and then relying on a (cookie) session. Best I can recommend for session-less use case is https://github.com/busykoala/fastapi-opa. If you don't need OPA you can still copy the openid connect part.
Please don't use this package in a bearer only way it's not secure!
python MSAL does not do ANY cryptographic verification, I'm not making this up. See this issue about a reported vulnerability in pyJWT (a python package that can be used to cryptographically verify a JWT token) The response from MSAL authers was they don't use pyJWT for decoding.
Instead MSAL establishes trust from directly receiving the token from the identity provider and trusting the response came from a legitimate server by enforcing https.
I'm making this comment based on the README example:
@app.get("/users/me", response_model=UserInfo, response_model_exclude_none=True, response_model_by_alias=False)
async def read_users_me(current_user: UserInfo = Depends(msal_auth.scheme)) -> UserInfo:
    return current_user

SO to answer your initial question, any bearer token that matches you client_id, issuer and is not expired (time wise) will work, but you can easily fake that:
curl --location --request GET 'localhost:5000/users/me' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJqa3lOdnRvbi1tOVludDN0dnFJSDdhV3dKb0xpN0VJLUFnNklSLWxHbWxZIn0.eyJleHAiOjE2NjA0OTkxMjMsImlhdCI6MTY2MDQ5OTA2MywiYXV0aF90aW1lIjoxNjYwNDk5MDYyLCJqdGkiOiIxNTJkYzEwMC02OGI2LTRkZDItODM5YS1kZjFlNjYxNWQzN2IiLCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgwODAvcmVhbG1zL21hc3RlciIsImF1ZCI6InNlY3VyaXR5LWFkbWluLWNvbnNvbGUiLCJzdWIiOiI3Y2U4NzE4ZS0wOTdkLTQ0NGYtYjhmZC1jNmY4MGI1YmVmYzkiLCJ0eXAiOiJJRCIsImF6cCI6InNlY3VyaXR5LWFkbWluLWNvbnNvbGUiLCJub25jZSI6ImYyYmZjNjFiLWExNGYtNDE0My04MDY1LWE1YWY5OGZjZWM2ZiIsInNlc3Npb25fc3RhdGUiOiI4ZDFkNjliYy0xOTVlLTRmOWMtYmE2Yy1mNmFhODRiOTRhMTYiLCJhdF9oYXNoIjoiWXFSaU5KblVKWEhwRFFYU0lOd1JqdyIsImFjciI6IjEiLCJzaWQiOiI4ZDFkNjliYy0xOTVlLTRmOWMtYmE2Yy1mNmFhODRiOTRhMTYiLCJlbWFpbF92ZXJpZmllZCI6ZmFsc2UsInByZWZlcnJlZF91c2VybmFtZSI6ImFkbWluIn0.qE_MbnVxCo17k06zzGOoMWo2WY1NfJt9vefWLh_7umLVbIfXlp260clTs2fifvZHlsiHpHmWt-A8wbNVOberHQ5q3kqcTKAC889sRtSrucdXbvXTrDAt9pxcWO1tS60TQTG8Kl7OAqEC6Wf0_QhQMF1FM3jsFpBtTQdpDtIpowm0BeON19eKaSB-mSo3MejAH1U7D_4f5LP51dU1Nnp3fCGc-dXr6fLXvSmVN5ATEW9jtLi1oBrtvqptr24R0c5XNhdi2aFsEzdtjMEcxKWO53nfCsPu0tzly8ZNSuVl4wZPXO076y1TX-2UVnAtf7K_qp-ojMHic23ozMJN3Lyw-Q'

Session-less or bearer only
Your use case calls for a library that supports bearer only authentication. The underlying microsoft package msal is only intended to be used for authentication session management. This is, doing the initial login and then relying on a (cookie) session. Best I can recommend for session-less use case is https://github.com/busykoala/fastapi-opa. If you don't need OPA you can still copy the openid connect part.
Please don't use this package in a bearer only way it's not secure!
python MSAL does not do ANY cryptographic verification, I'm not making this up. See this issue about a reported vulnerability in pyJWT (a python package that can be used to cryptographically verify a JWT token) The response from MSAL authers was they don't use pyJWT for decoding.
Instead MSAL establishes trust from directly receiving the token from the identity provider and trusting the response came from a legitimate server by enforcing https.
I'm making this comment based on the README example:
@app.get("/users/me", response_model=UserInfo, response_model_exclude_none=True, response_model_by_alias=False)
async def read_users_me(current_user: UserInfo = Depends(msal_auth.scheme)) -> UserInfo:
    return current_user

SO to answer your initial question, any bearer token that matches you client_id, issuer and is not expired (time wise) will work, but you can easily fake that:
curl --location --request GET 'localhost:5000/users/me' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJqa3lOdnRvbi1tOVludDN0dnFJSDdhV3dKb0xpN0VJLUFnNklSLWxHbWxZIn0.eyJleHAiOjE2NjA0OTkxMjMsImlhdCI6MTY2MDQ5OTA2MywiYXV0aF90aW1lIjoxNjYwNDk5MDYyLCJqdGkiOiIxNTJkYzEwMC02OGI2LTRkZDItODM5YS1kZjFlNjYxNWQzN2IiLCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgwODAvcmVhbG1zL21hc3RlciIsImF1ZCI6InNlY3VyaXR5LWFkbWluLWNvbnNvbGUiLCJzdWIiOiI3Y2U4NzE4ZS0wOTdkLTQ0NGYtYjhmZC1jNmY4MGI1YmVmYzkiLCJ0eXAiOiJJRCIsImF6cCI6InNlY3VyaXR5LWFkbWluLWNvbnNvbGUiLCJub25jZSI6ImYyYmZjNjFiLWExNGYtNDE0My04MDY1LWE1YWY5OGZjZWM2ZiIsInNlc3Npb25fc3RhdGUiOiI4ZDFkNjliYy0xOTVlLTRmOWMtYmE2Yy1mNmFhODRiOTRhMTYiLCJhdF9oYXNoIjoiWXFSaU5KblVKWEhwRFFYU0lOd1JqdyIsImFjciI6IjEiLCJzaWQiOiI4ZDFkNjliYy0xOTVlLTRmOWMtYmE2Yy1mNmFhODRiOTRhMTYiLCJlbWFpbF92ZXJpZmllZCI6ZmFsc2UsInByZWZlcnJlZF91c2VybmFtZSI6ImFkbWluIn0.qE_MbnVxCo17k06zzGOoMWo2WY1NfJt9vefWLh_7umLVbIfXlp260clTs2fifvZHlsiHpHmWt-A8wbNVOberHQ5q3kqcTKAC889sRtSrucdXbvXTrDAt9pxcWO1tS60TQTG8Kl7OAqEC6Wf0_QhQMF1FM3jsFpBtTQdpDtIpowm0BeON19eKaSB-mSo3MejAH1U7D_4f5LP51dU1Nnp3fCGc-dXr6fLXvSmVN5ATEW9jtLi1oBrtvqptr24R0c5XNhdi2aFsEzdtjMEcxKWO53nfCsPu0tzly8ZNSuVl4wZPXO076y1TX-2UVnAtf7K_qp-ojMHic23ozMJN3Lyw-Q'

Totally Agree!
I wasn't aware this is the initial request, do not mix between the MS authentication to your own website authentication.
You could use both, but each should have its own session / key. The very simple example provided is missing the local cache for  "session-less" server (but still session full platform).

Hi @philipsd6 , @martin-greentrax , @ejsyx
I had just release a new version which will allow you to work that out as long as you are able to keep the same session token in your requests.
The new version will fallback into reading the token from the session manager if one is not supplied by the bearer header.
I hope this change will assist with your workflow.
I'm closing this issue but feel free to open a new one if this one doesn't work out as you requested.


Error in parsing and reading msgpack-lite

Hello , i use this library msgpack-lite  to pack json value with my js script  and send it to my c++ server , in my server side all message-packed are parsed/unpacked with  nlohmann/json , But any message packed by msgpack-lite can't be correctly unpacked by nlohmann/json , meanwhile msgpack-lite can correctly unpack any nlohmann/json packed message .
To give you an example :
consider this nlohmann/json packed message :
[130,163,77,83,71,178,104,101,108,108,111,32,102,114,111,109,32,110,111,100,101,46,106,115,167,85,83,69,82,85,73,68,217,36,101,53,102,51,56,101,53,55,45,56,57,100,57,45,52,50,48,49,45,98,48,101,52,45,100,57,55,52,98,54,48,52,101,97,55,100]
The same json values packed with msgpack-lite gives this :
[130,167,85,83,69,82,85,73,68,217,36,101,53,102,51,56,101,53,55,45,56,57,100,57,45,52,50,48,49,45,98,48,101,52,45,100,57,55,52,98,54,48,52,101,97,55,100,163,77,83,71,178,104,101,108,108,111,32,102,114,111,109,32,110,111,100,101,46,106,115]
And this latter will not give me the correct unpacked values .
please is there any fix or suggestion to this .
thank you

Thank you , fixed the issue was in my server implementation .


consume acknowledged timestamp in subscription

Is your feature request related to a problem? Please describe.
I want to know every message acknowledged timestamp with one subscription
Describe the solution you'd like
write to log
read from stats
anything
...

@techzhou Could you please describe the detailed requirements? If you want to record the ack timestamp of a message, you can print a log when you call acknowledge(msg). If you want to trace the messages, you can try to leverage some tracing systems such as SkyWalking or Jeager, we already add integration with these two systems. For more details, you can see https://streamnative.io/blog/tech/2019-10-10-use-apache-skywalking-to-trace-apache-pulsar and  https://streamnative.io/blog/tech/2020-06-11-opentracing-instrumentation-for-pulsar

@codelipenghui I just want to record the ack timestamp of a message, PersistentSubscription Logger may help me, I will try it.

OK.

name: org.apache.pulsar.broker.service.persistent.PersistentSubscription
level: debug
additivity: false
AppenderRef:
- ref: SubHttp

It's OK. I really appreciate your help. Thank you. @codelipenghui


python37Packages.channels: 3.0.2 -> 3.0.3

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python37Packages.channels is: "Brings event-driven capabilities to Django with a channel system"
meta.homepage for python37Packages.channels is: "https://github.com/django/channels"
meta.changelog for python37Packages.channels is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS

Warning: a test defined in passthru.tests did not pass

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 3.0.3 with grep in /nix/store/kjh8f6v570c4qkfc445hb4967dhi9jkj-python3.7-channels-3.0.3

directory tree listing: https://gist.github.com/85dba6c733911377eb767347f7bdce7f

du listing: https://gist.github.com/5796f84869df61f45569c1854e36ce51

Rebuild report (if merged into master) (click to expand)

24 total rebuild path(s)

6 package rebuild(s)

6 x86_64-linux rebuild(s)
6 i686-linux rebuild(s)
6 x86_64-darwin rebuild(s)
6 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
python37Packages.channels
python37Packages.channels-redis
python38Packages.channels
python38Packages.channels-redis
python39Packages.channels
python39Packages.channels-redis

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/kjh8f6v570c4qkfc445hb4967dhi9jkj-python3.7-channels-3.0.3 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python37Packages.channels https://github.com/r-ryantm/nixpkgs/archive/0481a1e27f8e8a41a4da14a3fbc81fcb0eeeefae.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/kjh8f6v570c4qkfc445hb4967dhi9jkj-python3.7-channels-3.0.3
ls -la /nix/store/kjh8f6v570c4qkfc445hb4967dhi9jkj-python3.7-channels-3.0.3/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

3 packages failed to build:

python37Packages.channels-redis
python38Packages.channels-redis
python39Packages.channels-redis

3 packages built:

python37Packages.channels
python38Packages.channels
python39Packages.channels

Maintainer pings

See #107392 for the update of channel-redis.

See #107392 for the update of channel-redis.


Closing as this no longer applies.


[BD-46] Incorrect number of items in DataTable component

When selecting elements inside the dropdown of the DataTable component, the number of elements is displayed incorrectly.

### Tasks
- [ ] Fix the total number of items counter
- [ ] Make sure that all displayed values by the number of elements are displayed correctly

PR: https://github.com/openedx/paragon/pull/2598


Build is failing XMLInputFactory cannot be found

Fix  #36

Thanks @ppalaga . Really appreciate your help on this one !


Refresh Intervals

Hello,
I checked in the documentation, but i can't find what i'm looking for.... how to set the refresh interval ?
Thanks a lot,
Youssef.

Hi, Youssef! Do you mean dashboard refresh interval?

Yes, exactly

See it here: http://docs.grafana.org/reference/timerange/

Thanks a lot !, that's exactly what i was looking for :)


Look into NCNN Source Codes and Compile From Scratch

Description
Please provide a short description of what feature you're looking forward to
enhance below. Please include the story behind your idea as well to give a
better visualization of your idea.

It seems the project has a very good response that it's worth investing resources into Tencent's NCNN project (https://github.com/Tencent/ncnn/issues/1548).  It's time to work on the C codes and replace the exisitng ones. This will also solve the FFMPEG dependency once and for all as well.
Expected Behavior
Please specify the expected behavior of your requested enhancement. Some great
and helpful pointers are your expected interface (e.g. command patterns,
simple sketches of the user interface, etc).

Upscaler is a single binary program with all the previous written shell scripts implemented, including ffmpeg capabilities.
Current Behavior
Please specify the current behavior (e.g. workaround, blockage, etc).

Ducktaping ffmpeg and Tencent's NCNN with shell scripts.
Attachment
Please drag and drop the necessary data files (e.g. screenshot, logs, etc)
below.

You serious?

Start: https://github.com/xinntao/Real-ESRGAN-ncnn-vulkan/tree/master
Next: https://github.com/Tencent/ncnn

Doing it in Nim?

Begin the assimilation works.

Doing it in Nim?

Yeap.


Add javadoc for PGPPBEEncryptedData.getAlgorithm() and getSymmetricAl…

…gorithm()
From the previous javadoc, it was not totally clear, for which purpose the algorithm would be used.
I tried to improve that with this PR.
Should we maybe rename getAlgorithm() to something along the lines of getKeyEncapsulationAlgorithm() (although KEMs are usually using asymmetric algorithms)?

Thanks for the update. Merged. With the name, it's been there for a while now, so we'd need to duplicate it and add a new version. I'm inclined to leave it alone, the current name is not incorrect, although in hindsight it could be better (that said, even better could be potentially confusing given some of the things heading our way - maybe getKeyWrappingAlgorithm(), but even that's not always true for PBE where in some cases the algorithm is used to generate a key that encrypts the data directly, dammed if you do, dammed if you don't).


Stack does not deploy due to ubuntu not having due to no aws-cfn-bootstrap being installed or available

Since aws-cfn-bootstrap is not installed, fails to get signal and rolls back

Just deployed without issue.  Can you try again?  Or was there an error in the /var/log/cloud-init-output.log?
✅  amazon-chime-sdk-call-analytics-recording
✨  Deployment time: 463.74s
Outputs:
Stack ARN:
arn:aws:cloudformation:us-east-1:104621577074:stack/amazon-chime-sdk-call-analytics-recording/f872d110-b03a-11ee-9af9-0e4c8a6d5a9b

The aws-cfn-bootstrap is not installed, so no cfn-signal or cfn-init comands complete.

cloud-init.log

I see none of the userdata commands being run. I tried running the commands on the instance, but it appears the install of the aws-cfn-bootstrap was installed in the wrong place. Then I am having issues running this command cfn-signal -e $? --region. We have tried this deployment over 15 times with the same result?

Also, one command causes a 60 second delay:

I was able to run all the commands except for these  two return failure even though the instance was running:
/opt/aws/bin/cfn-init -v --region us-east-1 --stack amazon-chime-sdk-call-analytics-recorder --resource  --url https://cloudformation.us-east-1.amazonaws.com --role  -c default
/opt/aws/bin/cfn-signal -e $? --region us-east-1 --stack amazon-chime-sdk-call-analytics-recorder --resource  --url https://cloudformation.us-east-1.amazonaws.com --role

Yeah, there are a few things that need cleaned up in there.  I'll take a look and see about updating.

Any way you may be able to help with the syntax of the above commands? I was able to get everything else installed, just the last 2 commands to signal success, is what I need to complete it, I believe.

Updated the server code.  Can you try deploying again?
2024-01-12 04:43:48,238 [DEBUG] No services specified
2024-01-12 04:43:48,241 [INFO] ConfigSets completed
2024-01-12 04:43:48,241 [DEBUG] Not clearing reboot trigger as scheduling support is not available
2024-01-12 04:43:48,241 [INFO] -----------------------Build complete-----------------------
2024-01-12 04:43:48,707 [DEBUG] CloudFormation client initialized with endpoint https://cloudformation.us-east-1.amazonaws.com
2024-01-12 04:43:48,707 [DEBUG] Signaling resource ServerResourcesInstance6D1E6643e513b67a7697beb0 in stack amazon-chime-sdk-call-analytics-recording with unique ID i-0973d20d2902db117 and status SUCCESS

#

I cloned the repository again, but I can't even get yarn launch to start a stack at this point? I'll look at it tomorrow.
Bundling asset amazon-chime-sdk-call-analytics-recording/LambdaResources/sageMakerCustomResourceLambda/Code/Stage...
warning package.json: License should be a valid SPDX license expression
$ /home/jeff/amazon-chime-sdk-call-analytics-recorder/node_modules/.bin/esbuild --bundle /home/jeff/amazon-chime-sdk-call-analytics-recorder/src/resources/sageMakerCustomResource/index.ts --target=node18 --platform=node --outfile=/home/jeff/amazon-chime-sdk-call-analytics-recorder/cdk.out/bundling-temp-fa7d99a7b8b4006d7e2ab74e6c13b40236779dd873778287537cd280de51d97e/index.js '--external:@aws-sdk/*'
cdk.out/bundling-temp-fa7d99a7b8b4006d7e2ab74e6c13b40236779dd873778287537cd280de51d97e/index.js  5.3kb
Error: ENOENT: no such file or directory, open './src/resources/server/config/amazon-cloudwatch-agent.json'
at Object.openSync (node:fs:599:3)
at Object.readFileSync (node:fs:467:35)
at Function.fromFileInline (/home/jeff/amazon-chime-sdk-call-analytics-recorder/node_modules/aws-cdk-lib/aws-ec2/lib/cfn-init-elements.js:1:6034)
at new ServerResources (/home/jeff/amazon-chime-sdk-call-analytics-recorder/src/server.ts:309:22)
at new AmazonChimeSDKCallAnalyticsRecording (/home/jeff/amazon-chime-sdk-call-analytics-recorder/src/amazon-chime-sdk-call-analytics-recording.ts:98:5)
at Object. (/home/jeff/amazon-chime-sdk-call-analytics-recorder/src/amazon-chime-sdk-call-analytics-recording.ts:175:1)
at Module._compile (node:internal/modules/cjs/loader:1119:14)
at Module.m._compile (/home/jeff/amazon-chime-sdk-call-analytics-recorder/node_modules/ts-node/src/index.ts:1618:23)
at Module._extensions..js (node:internal/modules/cjs/loader:1173:10)
at Object.require.extensions. [as .ts] (/home/jeff/amazon-chime-sdk-call-analytics-recorder/node_modules/ts-node/src/index.ts:1621:12) {
errno: -2,
syscall: 'open',
code: 'ENOENT',
path: './src/resources/server/config/amazon-cloudwatch-agent.json'
}
Subprocess exited with error 1
👾 Task "build » post-compile » synth:silent" failed when executing "cdk synth -q" (cwd: /home/jeff/amazon-chime-sdk-call-analytics-recorder)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
👾 Task "launch" failed when executing "yarn && yarn projen && yarn build && yarn cdk bootstrap && yarn cdk deploy --require-approval never" (cwd: /home/jeff/amazon-chime-sdk-call-analytics-recorder)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

That file should be there: https://github.com/aws-samples/amazon-chime-sdk-call-analytics-recorder/blob/main/src/resources/server/config/amazon-cloudwatch-agent.json

Hi,
We were able to get it deployed. I appreciate the efforts.

Greaet.  Glad to hear.  I'll close this for now.  Have some plans to update the stack to support Bedrock instead of Sagemaker as well.


core: Add WIP panic handler code

Summary
Fixes #578
@hwittenborn
Checklist

[ ] cargo fmt
[ ] cargo clippy
[ ] cargo test
[ ] updated CHANGES.md

We sort of discussed this in that issue and in the Matrix room, but what's the benefit of this over just capturing panics and aborting on a crate-wide level?

With the approach in this PR you can specify individual behavior for each component. You can choose what should happen and whether the entire app should be aborted or not. Also, it's just a method on the Component trait instead of the panic hook, which most Rust users don't even know about.

You can choose what should happen and whether the entire app should be aborted or not.

That was leading me to think about when you would ever not want the entire app to be aborted (or at least start unwinding, which isn't a current possibility). When a component panics you can't really use it much anymore, and there doesn't seem to be a good way to handle that kind of state from parent components.
I feel like the lack of handling in that regard from parent components would just make things bound to break, as components don't expect that their child components are just going to panic. I know at least in the app that I'm working on that I'm not expecting things to work at all once a panic occurs, and the pre-Relm4 code where panics weren't captured behaved in a similar manner.

Yes, in most cases you want to stop the entire app, so that's the default behavior introduced by this PR. You can still return false from the handle_panic() method if you think you can recover from the panic.

Let's say you use some crate which has a bad API that panics instead of returning an error (plotters would be a prominent example). You could a worker or component that manages the export of the plot to a file and if a panics happens you can catch it and continue the execution.
Or you want to execute some additional code, for example for recording the application state and only then you want to actually shut down the app.

I'm still a bit questionable on how needed this should be, I feel like there isn't really a case where it provides much use.

You could a worker or component that manages the export of the plot to a file and if a panics happens you can catch it and continue the execution.

I feel like this kind of stuff should be handled in application code itself, e.g. via the use of catch_unwind followed by sending an output message to the component's parent about the error. Something like this dummy code is what I'm imagining would be the best way to tackle these kind of issues:
enum AppOutput {
    ...
    PanicErr(Err)
}

struct AppModel;

impl Component for AppModel {
    ...

    fn update(...) {
        if let Err(err) = catch_unwind(|| { ... }) {
        sender.output(AppOutput::PanicErr(err));
        }
    }

And then any panics outside of that case should just crash the app in my opinion. I can't really see a useful case outside of that.

I think you're right, catching a panic should be handled by the user manually. I've updated the PR now accordingly and extended the functionality to factories.

The only other thing I'm curious about is a way panics could be propagated all the way back to RelmApp::run or RelmApp::run_async. I'm not sure how that could be done with the usage of async code, but the current implementation is still better compared to what happens currently.


Enabled  to run automated tests

I mostly refactored testModule() to allow tests (tests/test.R) to run with R CMD check VETransportSupply.  Previous test.R scripts should still work. A minor change is necessary to loadDatastore:
loadDatastore <- function(FileToLoad, Dir="def/", GeoFile, SaveDatastore = TRUE) {
GeoFile <- file.path(Dir, GeoFile)
...
}

@lmwang9527 and @gregorbj - I was planning to discuss automated testing with our team as part of the VE software management plan.  Are you

@bstabler I am happy to discuss when we all are available.
FYI, The last commit https://github.com/gregorbj/VisionEval/pull/100/commits/0ed89bc1e5019b242cb6d1a046af60b3452a1870 in this pull request now works with travis-ci: https://travis-ci.org/cities-lab/VisionEval .


[CMake] Correct creation of LLVM headers symlink.

In Xcode project builds where LLVM/Clang are built differentually than
Swift  (e.g., RelWithDebInfo LLVM/Clang + Debug Swift, a Very Useful
Combination), the LLVM headers symlink pointed to nowhere. Follow the
same logic used for the Clang headers to deal with this case.

@swift-ci please smoke test


test: implement example pnpm workflow caching

resolves issue https://github.com/cypress-io/github-action/issues/1227 for non-workspace configuration

Issue

PR https://github.com/cypress-io/github-action/pull/1188 removed pnpm caching due to reliability issues.
The enhancement request https://github.com/cypress-io/github-action/issues/1044 remains open and at this time there is no native pnpm caching implemented in cypress-io/github-action.
Lack of pnpm caching can cause a performance impact on workflows, negatively affecting the usability of cypress-io/github-action.

Background
pnpm Continuous Integration > GitHub Actions documentation recommends installing pnpm with pnpm/action-setup and caching pnpm with GitHub's actions/setup-node.
Change
In workflow:

.github/workflows/example-basic-pnpm.yml

make the following changes:

install pnpm with pnpm/action-setup
install Node.js 20 with actions/setup-node and select pnpm. Note that cache-dependency-path: examples/basic-pnpm/pnpm-lock.yaml is necessary, since this is a monorepo and actions/setup-node does not support the use of working-directory at this time.

In the README > pnpm section, add the steps as above and refer to the pnpm Continuous Integration > GitHub Actions documentation.
Verification
Delete Actions caches
Run workflow example-basic-pnpm
Note completion time (4m 5s)
Record cache sizes

Cache
Size
Usage

node-cache-Windows-pnpm
6 MB
pnpm cache

cypress-win32-x64
170 MB
Cypress binary

pnpm-win32-x64
773 B
not relevant

node-cache-macOS-pnpm
6.1 MB
pnpm cache

cypress-darwin-arm64
140 MB
Cypress binary

pnpm-darwin-arm64
757 B
not relevant

node-cache-Linux-pnpm
6.1 MB
pnpm cache

cypress-linux-x64
170 MB
Cypress binary

pnpm-linux-x64
783 B
not relevant

Run workflow example-basic-pnpm a second time
Note completion time (2m 31s) (faster than first time)
Check caches. There should be no (significant) growth.

Job
First run
Second run

macos-14
49s
43s

ubuntu-22.04
37s
21s

windows-2022
3m 43s
2m 18s

Preview

https://github.com/MikeMcC399/github-action/blob/pnpm-workflow-caching/README.md#pnpm

https://github.com/MikeMcC399/github-action/blob/pnpm-workflow-caching/.github/workflows/example-basic-pnpm.yml

@jennifer-shehane
This implements your suggestion to follow the pnpm documentation recommendations.


Remove acl logic into model

Spec changes @charleenfei
Follow work done by https://github.com/centrifuge/go-centrifuge/issues/716
Testing
<Describe required tests: Unit, Integration, Testworld or Functional>
Acceptance Criteria
<What is the acceptance criteria of this ticket?>
Dependencies and affected external components

Bug reports
Expected behaviour
Actual behaviour
Steps to reproduce the behaviour

closing this issue due to redundancy with #716


Spelling checker

Please provide some information about how to change the spelling checker to something other than English(en), and how to use several spelling checkers in the same project.

Dokumentinformasjon
⚠ Ikke rediger denne delen. Den kreves for koblingen docs.microsoft.com ➟ GitHub-problem.

ID: c38ef98e-53d7-920d-c88a-eeb32a2fb0bd
Version Independent ID: 061657aa-6026-c796-49f1-dcd344e98878
Content: CA2204: Literals should be spelled correctly | Microsoft Docs
Content Source: docs/code-quality/ca2204-literals-should-be-spelled-correctly.md
Service: unspecified
GitHub Login: @gewarren
Microsoft Alias: gewarren

@mavasani is it possible to use a dictionary other than English for this code analysis rule?

@gewarren See documentation on this here: https://blogs.msdn.microsoft.com/codeanalysis/2007/08/12/new-for-visual-studio-2008-spelling-rules.

how to use several spelling checkers in the same project.
This is not possible - culture is a per-project property.

Also note that we have not implemented any naming rules yet in FXCop analyzers. Primary reason being the rules are based on a non-portable MS Office spell checker library and we are still investigating any possible improvements/alternatives.

@mavasani isn't that link for different rules?
The problem is for string literals, are they handled as resource strings?

@pi3k14 The LiteralsShouldBeSpelledCorrectly rule is not mentioned in the blog post that @mavasani linked to, because I assume it was added to Visual Studio at a later time. However, the same culture functionality probably applies. If you haven't explicitly created resource strings for your literals, then I assume you'd add the  MSBuild property to your project, with a culture value of nb-no (or whatever you want it to be).
P.S. I think @mavasani meant "Roslyn analyzers" and not "FxCop analyzers" in his last paragraph?

@gewarren - Yes, I meant Roslyn analyzers that port FXCop rules (we also call them FXCop analyzers for short). I did not mean the legacy FXCop rules.

@pi3k14 I verified that adding the line <CodeAnalysisCulture>nb-no to the .csproj file silences the CA rules for incorrectly spelled literals (that aren't in a resource file). Please note that we are only able to spell-check English cultures due to licensing issues.


Baidu NetDisk is error?

Baidu NetDisk is error?
@Meize0729

we are sorry, we are not yet able to release our pre-trained weights publicly.


Improved Docs

Markdown renders list items with "1." as part of an ordered list. So, the HTML renders with the correct number without specifying it in the Markdown file. Which makes the content easier to maintain.


[rel-branch] fixing typo in instances_retrievable flag

master PR: https://github.com/cloudfoundry-incubator/service-fabrik-broker/pull/1300

Pull Request Test Coverage Report for Build 5317

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-0.007%) to 89.209%

Files with Coverage Reduction
New Missed Lines
%

broker/core/utils/src/commonFunctions.js
1
86.47%

Totals

Change from base Build 5304:
-0.007%

Covered Lines:
9570

Relevant Lines:
10356

💛  - Coveralls


ModuleNotFoundError: No module named 'deeplearning'

Hi,
I first installed the library, it works well, then run tt_embeddings_benchmark.py, but it gives me the following error.
The environment is cuda 11 and pytorch 1.7
$ python3 tt_embeddings_benchmark.py
Traceback (most recent call last):
  File "tt_embeddings_benchmark.py", line 13, in <module>
    from tt_embeddings_ops import TTEmbeddingBag
  File "/home/xiaoyunw/FBTT-Embedding/tt_embeddings_ops.py", line 13, in <module>
    import deeplearning.fbtt_embedding.tt_embeddings as tt_embeddings
ModuleNotFoundError: No module named 'deeplearning'

Hi, the issue should be fixed with the above commit. Thanks for the notice!


Correct path to libjingle_examples.gyp in 'untwiddle_objc_target()'

This PR is an additional fix for f7094ab.

Thanks for catching this!

Thanks for merging!


Conflict between new Administration (owner) and new administration (partner)

The way it is currently set up, new partner administration under the same gov. level will overwrite the changes to a new administration as the owner of the code project, or user of a software/standard

Just for clarity:
Partner administration refers to a new administration created via the partners field
Owner administration refers to an administration created through the new administration "pop up" which gives the file its name (for code and partnership).

Potential solution:
Adapt the getNewPartnerPromise function

Move it to the adminForm (since its function will be to add administrations)
Rename it getNewAdminPromise
Changes its parameters to allow for the partner object AND the new owner administration
Add the new owner administration in the loop so its data is also added to the administration file
Update the submit function(s) in the [type]Form.js files to reflect that change.

PartnershipForm.js should be relatively easy since I changed the submit function flow to be more linear
The other might be a tad more complicated since there's two functions, one for submitting the form with a new administration and the other without. It might be a good idea to change it so the flow follows the same idea as the partnership submit function, it might be easier that way.

Another potential solution:
Add a functionality to filewriter.merge

Instead of fetching content from the file specified in the parameters of the merge function, allow passing content directly as a parameter.
That way we could update the content of a file without loosing previous changes made to it.
Then, when we add a new owner administration, put the file value (the object is already returned by the .merge function) in a variable, and when the new partner administration needs to be created, instead of using merge directly and overwriting the previous change, use the changed content stored in the variable instead and merge on that.

Attempted to replicate this bug on with the code form since software/standard don't have a partners field. The code file was created with no problem. However, only the new partner administration was added to the _data/administrations/municipal.yml file, with the new administration itself nowhere to be found. Doesn't seem to be the same bug as described here.
Test done with PR #1141


Remove data transfer columns

We cannot rollback this migration, because this migration delets
existing data in those columns.
We must create backup before deploy this PR.

neat :star2:


Use babel-preset-noms

👊

Jenkins has an old version of node... I'll update to the LTS

jenkins: test this

Not working..I need to hurry I went to store

jenkins: test this


Using for timemachine backup

What happened:
If using for timemachine backup the speed is terribly slow and the actual size used in cloud is 10x
What you expected to happen:
Mo reasonable speed of backup
How to reproduce it (as minimally and precisely as possible):
create storage in google cloud with command
juicefs format --storage gs --bucket gs://backup redis://redis backup
mount
juicefs mount redis://redis /mnt
start timemachine backup
after hour or so:
size on disk
$ sudo du -s -h /home/timemachine/
5.8G	/home/timemachine/
size in google cloud
➤ gsutil du -sh gs://backup
46.12 GiB    gs://backup
Anything else we need to know?
Environment:

JuiceFS version (use juicefs --version) or Hadoop Java SDK version: 1.1.0-dev+2022-11-28.0b1d787d
Cloud provider or hardware configuration running JuiceFS: Linux raspberrypi 5.19.0-1006-raspi #13-Ubuntu SMP PREEMPT Mon Oct 17 19:01:51 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux
Object storage (cloud provider and region, or self maintained): Google Cloud Storage
Metadata engine info (version, cloud provider managed or self maintained): redis
Network connectivity (JuiceFS to metadata engine, JuiceFS to object storage): 1. localhost, 2. 1Gbit

Here's the same problem
Why is the size displayed at the mount point different from the object storage footprint?
You may need to learn about the gc command to help you clean up the debris.

Here's the same problem Why is the size displayed at the mount point different from the object storage footprint?
You may need to learn about the gc command to help you clean up the debris.

after gc size of storage reduced but not much

Please show your gc command.

@dimonb For performance, please mount it with --writeback, so it will write the data into local disk and upload them into gs in background. Also, for this use case, the embedded engine badger will  be much better. JuiceFS will backup the metadata as JSON into GS in every hour (configurable).
By default, JuiceFS has trash enabled for 1 day, which means the deleted file or overwritten data is not deleted from gs with 1 day, which cause more space used in GS, you can disable trash by juicefs config --trash-days 0. It's recommend to keep trash on for data safety. For example, you can restore JuiceFS using backuped meta from hours ago without data corruption.
Because the timemachine has lots of in-place update to the virtual disk, it will use more space in GS than the virtual disk, these extra data can be cleanup by juicefs gc --compact --delete.
When badger is used as meta engine, these command should be run after umount it, because badger can't be open by multiple process in the same time.

I'm new to JuiceFS - could changing the band size of the sparsebundle to match (chunk/block?) also help performance?
if I remember correctly, I did this with uncle MooseFS (set to 64M) and it was faster since the chunks were passed through directly to the store.

We are not sure, have to test the difference.

@dimonb @ak2k are either of you using this in production? would you be up for sharing your notes in a discussion?


Can we have different icons with the same class name but different class prefix?

Hello,
Can we have different icons with the same class name but different class prefix? Something like this:
.item{...}
.selected .item{...}
.visited .item{...}

They have the same class name, but might be of different colors.
or we have to use:
.item{...}
.item-selected{...}
.item-visited {...}

This is very important, because It's more convenient to toggle parent class name than change each icon class name.
Thanks.

I'm actually going to close this one since it can be handled pretty simply with our custom selectors and that's mostly what they're here for.
example:
customselectors: {
  "item-selected" : [".selected .item"],
  "item-visited" : [".visited .item"]
},

Thanks, I will try this later!


Prover error: ; :rlimit line: 64 position: 1

Hi, trying to run boogie on a docker (Ubuntu 16.04). Cloned from source and built using dotnet6.0. Trying out boogie for a simple bpl file, which works on my system outside docker (Ubuntu 18.04, where I installed boogie using snap.
Inlining...

Verifying test ...
[TRACE] Using prover: z3
[SMT-0] Starting z3 -smt2 -in
[SMT-OUT-0] unsat
[SMT-OUT-0] unsupported
[SMT-ERR-0] ; :rlimit line: 55 position: 1
Prover error: ; :rlimit line: 55 position: 1

Unhandled exception. System.AggregateException: One or more errors occurred. (Request returned no response)
 ---> System.Exception: Request returned no response
   at Microsoft.Boogie.SMTLib.SMTLibProcess.SendRequest(String request, CancellationToken cancellationToken) in /root/boogie/Source/Provers/SMTLib/SMTLibProcess.cs:line 148
   at Microsoft.Boogie.SMTLib.SMTLibInteractiveTheoremProver.GetRCount() in /root/boogie/Source/Provers/SMTLib/SMTLibInteractiveTheoremProver.cs:line 689
   at VC.Split.ReadOutcome(Int32 iteration, Checker checker, VerifierCallback callback) in /root/boogie/Source/VCGeneration/Split.cs:line 1287
   at VC.SplitAndVerifyWorker.ProcessResultAndReleaseChecker(Int32 iteration, Split split, Checker checker, CancellationToken cancellationToken) in /root/boogie/Source/VCGeneration/SplitAndVerifyWorker.cs:line 169
   at VC.SplitAndVerifyWorker.DoWork(Int32 iteration, Split split, CancellationToken cancellationToken) in /root/boogie/Source/VCGeneration/SplitAndVerifyWorker.cs:line 132
   at VC.SplitAndVerifyWorker.DoWork(Int32 iteration, Split split, CancellationToken cancellationToken) in /root/boogie/Source/VCGeneration/SplitAndVerifyWorker.cs:line 137
   at VC.SplitAndVerifyWorker.DoWorkForMultipleIterations(Split split, CancellationToken cancellationToken) in /root/boogie/Source/VCGeneration/SplitAndVerifyWorker.cs:line 121
   at VC.SplitAndVerifyWorker.WorkUntilDone(CancellationToken cancellationToken) in /root/boogie/Source/VCGeneration/SplitAndVerifyWorker.cs:line 85
   at VC.VCGen.VerifyImplementation(ImplementationRun run, VerifierCallback callback, CancellationToken cancellationToken, IObserver`1 batchCompletedObserver) in /root/boogie/Source/VCGeneration/VCGen.cs:line 420
   at VC.ConditionGeneration.VerifyImplementation(ImplementationRun run, IObserver`1 batchCompletedObserver, CancellationToken cancellationToken) in /root/boogie/Source/VCGeneration/ConditionGeneration.cs:line 133
   at Microsoft.Boogie.ExecutionEngine.<>c__DisplayClass47_0.<<VerifyImplementationWithoutCaching>b__0>d.MoveNext() in /root/boogie/Source/ExecutionEngine/ExecutionEngine.cs:line 876
--- End of stack trace from previous location ---
   at Microsoft.Boogie.ExecutionEngine.<>c__DisplayClass38_0.<<VerifyEachImplementation>b__1>d.MoveNext() in /root/boogie/Source/ExecutionEngine/ExecutionEngine.cs:line 653
--- End of stack trace from previous location ---
   at Microsoft.Boogie.ExecutionEngine.<>c__DisplayClass38_0.<<VerifyEachImplementation>b__1>d.MoveNext() in /root/boogie/Source/ExecutionEngine/ExecutionEngine.cs:line 657
--- End of stack trace from previous location ---
   at Microsoft.Boogie.ExecutionEngine.VerifyEachImplementation(TextWriter output, ProcessedProgram processedProgram, PipelineStatistics stats, String programId, ErrorReporterDelegate er, String requestId, Implementation[] stablePrioritizedImpls) in /root/boogie/Source/ExecutionEngine/ExecutionEngine.cs:line 662
   at Microsoft.Boogie.ExecutionEngine.InferAndVerify(TextWriter output, Program program, PipelineStatistics stats, String programId, ErrorReporterDelegate er, String requestId) in /root/boogie/Source/ExecutionEngine/ExecutionEngine.cs:line 564
   at Microsoft.Boogie.ExecutionEngine.ProcessProgram(TextWriter output, Program program, String bplFileName, String programId) in /root/boogie/Source/ExecutionEngine/ExecutionEngine.cs:line 171
   at Microsoft.Boogie.ExecutionEngine.ProcessFiles(TextWriter output, IList`1 fileNames, Boolean lookForSnapshots, String programId) in /root/boogie/Source/ExecutionEngine/ExecutionEngine.cs:line 123
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
   at System.Threading.Tasks.Task`1.get_Result()
   at Microsoft.Boogie.OnlyBoogie.Main(String[] args) in /root/boogie/Source/BoogieDriver/BoogieDriver.cs:line 66
Aborted (core dumped)

Here is the test2.model file created (which is only 48 lines, whereas the prover error complains about line 55)
(set-option :print-success false)
(set-info :smt-lib-version 2.6)
(set-option :smt.mbqi false)
(set-option :model.compact false)
(set-option :model.v2 true)
(set-option :pp.bv_literals false)
; done setting options

(declare-fun tickleBool (Bool) Bool)
(assert (and (tickleBool true) (tickleBool false)))
(declare-sort T@Pair_15_16 0)
(declare-fun pair_3_3 (Int Int) T@Pair_15_16)
(declare-fun first_3_3 (T@Pair_15_16) Int)
(declare-fun second_3_3 (T@Pair_15_16) Int)
(assert (forall ((s Int) (t Int) ) (! (= (first_3_3 (pair_3_3 s t)) s)
 :qid |test2bpl.8:21|
 :skolemid |0|
 :pattern ( (pair_3_3 s t))
)))
(assert (forall ((s@@0 Int) (t@@0 Int) ) (! (= (second_3_3 (pair_3_3 s@@0 t@@0)) t@@0)
 :qid |test2bpl.9:21|
 :skolemid |1|
 :pattern ( (pair_3_3 s@@0 t@@0))
)))
(assert (forall ((p T@Pair_15_16) ) (! (= (pair_3_3 (first_3_3 p) (second_3_3 p)) p)
 :qid |test2bpl.10:21|
 :skolemid |2|
 :pattern ( (first_3_3 p))
 :pattern ( (second_3_3 p))
)))
(push 1)
(declare-fun ControlFlow (Int Int) Int)
(set-info :boogie-vc-id test)
(set-option :timeout 0)
(set-option :rlimit 0)
(assert (not
 (=> (= (ControlFlow 0 0) 5) (let ((anon0_correct  (and (=> (= (ControlFlow 0 2) (- 0 4)) (= (first_3_3 (pair_3_3 1 2)) 1)) (=> (= (first_3_3 (pair_3_3 1 2)) 1) (and (=> (= (ControlFlow 0 2) (- 0 3)) (= (second_3_3 (pair_3_3 1 2)) 2)) (=> (= (second_3_3 (pair_3_3 1 2)) 2) (=> (= (ControlFlow 0 2) (- 0 1)) (forall ((p@@0 T@Pair_15_16) (q T@Pair_15_16) ) (!  (=> (and (= (first_3_3 p@@0) (first_3_3 q)) (= (second_3_3 p@@0) (second_3_3 q))) (= p@@0 q))
 :qid |test2bpl.15:20|
 :skolemid |3|
)))))))))
(let ((PreconditionGeneratedEntry_correct  (=> (= (ControlFlow 0 5) 2) anon0_correct)))
PreconditionGeneratedEntry_correct)))
))
(check-sat)
(pop 1)
; Valid
(get-info :rlimit)

If I run z3 test2.model, I get - unsat, unsupported, ; :rlimit line: 48 position: 1
Removing the last line of the file eliminates the rlimit line error.
Copying the model file to my local system and running with local z3 (v4.4.1) returns the same issue.
This seems likely to be a mismatch in version to me, given that boogie works perfectly fine for this program on my local system. I have tried a few other simple boogie programs, and get this error for all of them.
When I run with the same arguments on my local system, the model file generated is quite different (has 153 lines), and does not have the last (get-info rlimit) line, which allows boogie to successfully verify.
It would be great if anyone could help me with this issue, thanks!

I agree that the problem is likely due to a mismatch between Boogie and Z3. To debug further, you could compare (1) the Boogie version in Docker and your local machine, and (2) the Z3 version in Docker and your local machine.

Closing this issue. Please reopen if you need further investigation from our end.


FewShotPromptTemplate bug on examples with JSON strings

System Info
Consider the following python code snippet below.
On the example, the code will provide an error. This is due to the fact that it is not correctly parsing the JSON strings.
For some reason, the template will try to look for the variable "Person", when that is just a JSON output form.
This means that the classes are confusing what are variables of the template and what are just text within a JSON string on what we are feeding as an example.
What is curious is that this does not happen for the PromptTemplate class. So, it must be about the iteration between examples.
Who can help?
No response
Information

[ ] The official example notebooks/scripts
[ ] My own modified scripts

Related Components

[ ] LLMs/Chat Models
[ ] Embedding Models
[X] Prompts / Prompt Templates / Prompt Selectors
[X] Output Parsers
[ ] Document Loaders
[ ] Vector Stores / Retrievers
[ ] Memory
[ ] Agents / Agent Executors
[ ] Tools / Toolkits
[ ] Chains
[ ] Callbacks/Tracing
[ ] Async

Reproduction
python'''
from langchain import PromptTemplate
from langchain import FewShotPromptTemplate
from langchain.prompts.example_selector import LengthBasedExampleSelector
import json
create our examples
examples = [
{
"query": "my text number 1",
"answer": """{"person": "Jack", "Location": "France"}"""
},
{
"query": "my text number 2",
"answer": """{"person": "James", "Location": "Portugal"}"""
}
]
create a example template
example_template = """
User: {query}
AI: {answer}
"""
create a prompt example from above template
example_prompt = PromptTemplate(
input_variables=["query", "answer"],
template=example_template
)
now break our previous prompt into a prefix and suffix
the prefix is our instructions
task_description = f"""
Context for the task
"""
and the suffix our user input and output indicator
instruction = """
User: {query}
AI: """
now create the few shot prompt template
few_shot_prompt_template = FewShotPromptTemplate(
examples=examples,
example_prompt=example_prompt,
prefix=task_description,
suffix=instruction,
input_variables=["query"],
example_separator="\n\n"
)
print(few_shot_prompt_template.format(query="My awesome query"))
'''
Expected behavior
It would be expected to output a prompt with several examples in which the answer was a JSON string:
"""
User: My text number 1
AI: {"person": "Jack", "Location": "France"}
User: My text number 2
AI: {"person": "James", "Location": "Portugal"}
User: My new input text
AI:
"""

I was just thinking about that and came back here to see if there was some feedback.
It works!!! Thanks for the validation 👍
I tried something similar to this on my work case:
"""
User: My text number 1
AI: {{"person": "Jack", "Location": "France"}}
"""
But yes, at this point is a workaround. I'm not sure if the package should have an "escaping function" (adding the extra {} ) or if there could be another way in the inner works.

Hello Joao, I have same problem with JSON input for few shot template on Langchain.
Here is my code, let me know if you have found a workaround :
examples=[
        {
            "input":"ET Dec23 Synth 57.0 / 60.0",
            "desired_output":{"test":[{"entity":"ET","strategy":"Synth","prices":[{"size":57.0,"quantity":60.0,"date":"Dec23"}]}]}

        }
        ]

template="""
Human:{input}
Assistant:{desired_output}
"""

prompt = PromptTemplate(input_variables=["input", "desired_output"], template=template)

few_shot_prompt = FewShotPromptTemplate(
    examples=examples,
    example_prompt=prompt,
    input_variables=["input"],
    suffix="Human: {input}\Assistant:"
)

escaping the { with {{ should work. However thats a temporary fix..

Is it really 'escaping'? I think langchain then uses the jinja2-templating, right?
However, that would be my solution: just use the jinja2 templating format instead of f-string style formatting. It can be configured in the constructor of the PromptTemplates.

Hello @JoaoSilva02 , I have same problem with JSON input for few shot template on Langchain.
Here is my code, let me know if you have found a workaround :
examples=[
        {
            "input":"ET Dec23 Synth 57.0 / 60.0",
            "desired_output":{"test":[{"entity":"ET","strategy":"Synth","prices":[{"size":57.0,"quantity":60.0,"date":"Dec23"}]}]}

        }
        ]

template="""
Human:{input}
Assistant:{desired_output}
"""

prompt = PromptTemplate(input_variables=["input", "desired_output"], template=template)

few_shot_prompt = FewShotPromptTemplate(
    examples=examples,
    example_prompt=prompt,
    input_variables=["input"],
    suffix="Human: {input}\Assistant:"
)

print(few_shot_prompt.format(input="FTSE EFP 11.5/12.25"))

Error is the following : KeyError: "'test'"

Following
Did you find a solution to solve this issue ? I have the same... I tried to put out the " " in my JSON, but the resultat is the same.
At this point I don't know how to do. Here is my code :
Code :
`examples = [
{
"question": "Create a Jira ticket to integrate my MySQL database to our current assets",
"answer": """{{fields: {project: {key: "AJ"}, summary: "Create a Jira ticket to integrate my MySQL database into our current assets", issuetype: {name: "Story"}, priority: {name: "High"}, description: {type: "doc", version: 1, content: [{type}"""
}]
example_template = """
User: {question}\nAI: {answer}
"""
example_prompt = PromptTemplate(input_variables=["question", "answer"], template=example_template)
task_description = f"""
You're a AI Jira assitant specialized into creating tickets
"""
instruction = """
User: {question}
AI: """
few_shot_prompt_template = FewShotPromptTemplate(
examples=examples,
example_prompt=example_prompt,
prefix=task_description,
suffix=instruction,
input_variables=["question"],
example_separator="\n\n"
)
prompt.format(question="Create a Jira ticket to develop a new recommendation system for movies")
`

Problem solved : It is necessary to double all the brackets
Example :
formatted_string = '{{"fields": {{"project": {{"key": "AJ"}}, "summary": "Create a Jira ticket to integrate my MySQL database into our current assets", "issuetype": {{"name": "Story"}}, "priority": {{"name": "High"}}, "description": {{"type": "doc", "version": 1, "content": [{{"type": "paragraph", "content": [{{"type": "text", "text": "As a developer, I want to integrate my MySQL database with our current assets to improve data management."}}]}}, {{"type": "heading", "attrs": {{"level": 2}}, "content": [{{"type": "text", "text": "Acceptance Criteria:"}}]}}, {{"type": "paragraph", "content": [{{"type": "text", "text": "- The MySQL database is successfully integrated with the application."}}]}}, {{"type": "paragraph", "content": [{{"type": "text", "text": "- Data can be efficiently stored and retrieved from the integrated MySQL database."}}]}}, {{"type": "paragraph", "content": [{{"type": "text", "text": "- The integration process follows best practices and security standards."}}]}}, {{"type": "paragraph", "content": [{{"type": "text", "text": "- The integration is documented for future reference."}}]}}, {{"type": "heading", "attrs": {{"level": 2}}, "content": [{{"type": "text", "text": "Subtasks:"}}]}}, {{"type": "paragraph", "content": [{{"type": "text", "text": "- Analyze the structure of the MySQL database."}}]}}, {{"type": "paragraph", "content": [{{"type": "text", "text": "- Create integration scripts for data migration."}}]}}, {{"type": "paragraph", "content": [{{"type": "text", "text": "- Implement data synchronization with the application."}}]}}, {{"type": "paragraph", "content": [{{"type": "text", "text": "- Perform testing and quality assurance of the integration."}}]}}, {{"type": "paragraph", "content": [{{"type": "text", "text": "- Document the integration process and configurations."}}]}}]}}}}'

the problem with this, at least in my case, is that the LLM sometimes returns double {{ and }}, so the JsonOutputParser fails. My solution was to add a postprocessing of the llm output before getting into the parser
from langchain.output_parsers.json import SimpleJsonOutputParser

def postprocess_llm_output(llm_output):
    return llm_output.replace("{{", "{").replace("}}", "}")

parser = SimpleJsonOutputParser()
chain = RunnableLambda(postprocess_llm_output) | parser
chain.invoke("""{{"a": 3}}"""), chain.invoke("""{"a": 3}""")

and in general
chain = prompt | llm | RunnableLambda(postprocess_llm_output) | parser

Of course, there's also RetryOutputParser, but it needs another LLM call for something that can be fixed programmatically.
I'd like langchain to provide some solution straightaway though, because it seems like a very common use case. Please lmk if there's one already and missed it


Adding case converter extension

Description
This PR adds a new extension - Case Converter. It is a single-view form extension which accepts arbitrary text and a new casing option from a dropdown. On form submission, it copies the newly-formatted string to the clipboard.
Casings include but are not limited to: upper and lowercase, camel and pascal case, title and capital case, and more.
Screenshot

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Hi @phazonoverload Did you notice the Change Case extension in the store?

Hahahaha no I did not, and I did take a moment to search for an extension first. Not a bother - I wanted to try building an extension anyway as a learning experience. Happy to close this out.


Cannot nest slides in slides

Ionic version:  (check one with "x")
[ ] 1.x
[ x ] 2.x
I'm submitting a ...  (check one with "x")
[ x ] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:

I wanted to nest an ion-slides component inside an ion-slide component, only to find the slide where it was expected to be some slides were flushed white.
Expected behavior:

A slides component is nested within a slide.
Steps to reproduce:

Related code:
<ion-slides [options]="{loop:true,autoplay:4000}">
	<ion-slide>

	</ion-slide>
	<ion-slide>
		<ion-slides [options]="{loop:true,autoplay:4000,direction:'vertical'}">
			<ion-slide>

			</ion-slide>
			<ion-slide>

			</ion-slide>
		</ion-slides>
	</ion-slide>
</ion-slides>

Other information:

Ionic info: (run ionic info from a terminal/cmd prompt and paste output below):
Cordova CLI: 6.3.0
Ionic Framework Version: 2.0.0-rc.3
Ionic CLI Version: 2.1.0
Ionic App Lib Version: 2.1.0-beta.1
OS:
Node Version: v6.3.1

i run into the same issue couple of days ago.
made it work somehow but i dont think i'll keep it since it is too fragile and unstable for now.

@comfortme Your solution please…

ok your template is fine, this does the trick
ion-slide {
        display: block!important;
    }

but resizing on browser or orientation change or keyboard show/hide messes up the slides.

I have the same problem. I believe it is a race condition where sometimes the outer slides component registers the slides of the inner slides component as belonging to itself.
It looks like the error is that the slides component should take care of only handling slides that are direct children of itself.

Hello, all! I am going to close this issue as a duplicate of https://github.com/driftyco/ionic/issues/10542.

@jgw96 this issue is the earlier one.


[core] Update priority support issue template and prompt

[x] I have followed (at least) the PR section of the contributing guide.

Based on https://github.com/mui/material-ui/issues/37810#issuecomment-1620592599

@oliviertassinari I've also updated the issue template a but.


chore: release 0.1.6

Signed-off-by: Rolson Quadras<EMAIL_ADDRESS>

Codecov Report

Merging #64 (f718df2) into main (84a888c) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #64   +/-   ##
=======================================
  Coverage   87.81%   87.81%
=======================================
  Files           6        6
  Lines         435      435
=======================================
  Hits          382      382
  Misses         28       28
  Partials       25       25

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 84a888c...f718df2. Read the comment docs.


Removed SermoDigital dependency

Codecov Report

Merging #26 into master will decrease coverage by 4.83%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master      #26      +/-   ##
==========================================
- Coverage   83.02%   78.19%   -4.84%
==========================================
  Files          27       26       -1
  Lines         707      665      -42
==========================================
- Hits          587      520      -67
- Misses        104      130      +26
+ Partials       16       15       -1

Impacted Files
Coverage Δ

bascule/basculehttp/tokenFactory.go
35% <0%> (-57.31%)
:arrow_down:

bascule/jws.go
0% <0%> (ø)
:arrow_up:

bascule/key/mocks.go
28.57% <0%> (-8.58%)
:arrow_down:

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 f6c9590...c9ab9d1. Read the comment docs.


ci: add libyaml on ubuntu

Codecov Report

Merging #175 (5fffa21) into main (ec50ed1) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #175   +/-   ##
=======================================
  Coverage   99.75%   99.75%
=======================================
  Files          70       70
  Lines        4058     4058
=======================================
  Hits         4048     4048
  Misses         10       10

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


730715 custom task queuing massage

currently miq task queue shows a success message for sending a request to the backend as if the backend actually succeeded in performing the request, even if the request subsequently fails:

we changed this inside task_opts so that the action label will show queuing massage correctly:

@agrare please approve the workflows.

NOTE I think instead of changing the message we should have the task track all of the work that is being done to create a resource, https://github.com/ManageIQ/manageiq-providers-autosde/pull/227#issuecomment-1523899644

I think it may make sense to just say Queuing for everyone
and not allow this customization.

Is this fixed by https://github.com/ManageIQ/manageiq/pull/22776 ?

Has this already been fixed?
Didn't we go another route


Improve kernel tests

Kernel tests are executed against each kernel using the check_kernel_gradient_functions function which, in itself, calls and executes a number of tests. Currently, if one of these tests fails or errors, the subsequent tests do not run. This PR modifies the code such that if any one test fails or errors, a failure is reported, but the additional tests still run. This means that a developer can fix problems causing tests to fail in any order they like.

Thanks @drj11 - I completely agree, it's (hopefully) an improvement, but not ideal. If the resources are available, I'd favour moving from nosetests to pytest as the latter has more current support and is likely to have more longevity.


Added desert 404 template

Fixes #18
Work Done:

Added responsive 404 desert template

Relevant Screenshots/Gifs

@matteobruni Kindly add hacktoberfest-accepted label after review

@matteobruni kindly review

This configuration is a copy-paste of the ocean template. As I said in other reviews, I'd like to have different particle configurations, not different CSS

Okay sure, I will change particle configurations

Updated particles configuration plus solved all merge conflicts, ready to merge if accepted

The index is broken now, please test everything before asking for a review.

Sorry for that, I have updated it, you can check the screenshots

The code I fixed in index.html:

The main index is still not working. Please test the whole website.

Can you share the screenshots how it is not working, as I have done everything possible at my side

Creating a new PR

#84 is my new updated PR


Jira API - CX_SXML_PARSE_ERROR - Error while parsing an XML stream: 'BOM / charset detection failed'

I want to create a Class/Interface for the Client in ABAP for
https://developer.atlassian.com/cloud/jira/platform/swagger-v3.v3.json
JSONLint: wellformed
Swagger-Editor: shows no problems
Tried to use Web-Client, but the file seems to big.
Errortext: "rror while parsing an XML stream: 'BOM / charset detection failed".

Error in file


featrue:url带搜索条件

1.单据URL带搜索条件
2.单据评价message提示
3.修改验证字段管理权限参数传错，
4.单据基本信息title超出未隐藏

Codecov Report

Merging #274 (d847d07) into v2.6.x_develop (33b988c) will increase coverage by 0.02%.
The diff coverage is n/a.

@@                Coverage Diff                 @@
##           v2.6.x_develop     #274      +/-   ##
==================================================
+ Coverage           53.62%   53.65%   +0.02%
==================================================
  Files                 445      446       +1
  Lines               27463    27512      +49
==================================================
+ Hits                14728    14762      +34
- Misses              12735    12750      +15

Impacted Files
Coverage Δ

itsm/component/bkoauth/jwt_client.py
31.25% <0.00%> (-4.14%)
:arrow_down:

itsm/gateway/views.py
17.29% <0.00%> (-0.14%)
:arrow_down:

itsm/auth_iam/resources/public_field.py
50.00% <0.00%> (ø)

itsm/openapi/apps.py
86.66% <0.00%> (ø)

config/default.py
87.38% <0.00%> (+0.05%)
:arrow_up:

itsm/openapi/ticket/views.py
46.83% <0.00%> (+0.18%)
:arrow_up:

itsm/sla/models/policy.py
62.13% <0.00%> (+0.55%)
:arrow_up:

itsm/openapi/service/views.py
49.01% <0.00%> (+1.54%)
:arrow_up:

itsm/component/decorators.py
29.82% <0.00%> (+1.75%)
:arrow_up:

itsm/project/models/project.py
86.11% <0.00%> (+1.98%)
:arrow_up:

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 33b988c...d847d07. Read the comment docs.


fix pagination

#44  👈
main

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

Join @leonchike and the rest of your teammates on  Graphite


Naming convention for "backend" packages

Tina only has support for git at the moment.
The packages used to define this behaviour are:

@tinacms/api-git
@tiancms/git-client

What do they do?
Generally speaking, supporting a backend requires:

a "server" that runs with the Gatsby/Next/etc. express server and
a "client" that is used to interact with the "server" in the browser.

In the specific case of git:

@tinacms/api-git provides an express app that exposes endpoints for interacting with git and the filesytem

@tinacms/git-client provides functions for making requests to @tinacms/api-git

Why change the naming convention?
Our naming convention is still being figured out a bit. Our thought is that packages in the @tinacms namespace would be core packages, mostly meant for internal use. Packages likely meant for direct use in developer's sites would not be under that organization. This description does not match the above plugins, so we're thinking about the naming convention we want for these "backend" packages.
How to help
I will add example conventions in the comments below. Please use reactions to express your love/hatred.
Also feel free to add other suggestions :)

Convention
tinacms-${backend}-server
tinacms-${backend}-client

Example
tinacms-git-server
tinacms-git-client

Convention
tinacms-${backend}-api
tinacms-${backend}-client

Example
tinacms-git-api
tinacms-git-client

Convention
tinacms-${backend}-backend
tinacms-${backend}-client

Example
tinacms-git-backend
tinacms-git-client

Convention
tinacms-api-${backend}
tinacms-api-${backend}-client

Example
tinacms-api-git
tinacms-api-git-client

Should we add this convention to the contributing docs?

Not yet. The  current packages don't adhere to this convention :( they'll have to be changed


Typo "Azure pipeline"→"Azure Pipeline"

https://learn.microsoft.com/en-us/azure/machine-learning/concept-ml-pipelines
https://github.com/microsoftdocs/architecture-center/blob/main/docs/solution-ideas/articles/azure-devops-continuous-integration-and-continuous-deployment-for-azure-web-apps.yml
https://github.com/MicrosoftDocs/architecture-center/blob/main/docs/solution-ideas/articles/azure-devops-continuous-integration-and-continuous-deployment-for-azure-web-apps-content.md
#PingMSFTDocs
Before selecting the "Create pull request" button:

Enter a meaningful title above^, using a prefix if necessary and keywords "New" or "Update" indicating the nature of changes.

Describe the summary, scope, and intent of this PR:
[REPLACE-THIS-TEXT]

Insert links(s) to any related work item(s) or supporting detail:
[DELETE-OR-REPLACE-THIS-TEXT]

AFTER YOUR PR HAS BEEN CREATED, expand this section for tips and additional instructions.
These are common guidelines for contributions across the repos managed by the Cloud Architecture Content Team (CACT). Some repositories may have additional specific requirements that are not listed here.
Guidance for all contributors

Topic
Guidance

Draft PR
If your PR will be a work-in-progress for more than a day or two, select the Convert to draft link in the upper right of the page (under Reviewers) to change it to a draft. For future reference, you can also do this using the Create pull request button drop-down during PR creation.

ms.date metadata
Don't update an article's "ms.date" metadata property unless you've done a full freshness review of the content. A full freshness review includes changes required to correct or improve the full technical accuracy of the article.Don't update "ms.date" if you're doing targeted changes to improve non-technical aspects of the article, such as editorial quality, art improvements, article template alignment, etc.If you've changed any "ms.date" properties for work that wasn't part of full review for freshness, please reset them to their previous value.

Placement and linking
If you're creating a new article or articles, include updates to the related TOC.yml file to propose where the article(s) should be placed. Also consider other places within the document set where it would be beneficial to cross-reference and link to your new article(s).

PR build
After you open your PR, and for each successive commit that you push to your branch, the publishing platform will run validation on the files in your pull request. A summary of the build results for each file will be inserted inline into your pull request, which includes any build suggestions/warnings/errors. PRs cannot be merged until all build errors and most warnings are resolved.

Publishing
Following a successful merge, most repos publish to the live site at least once per (business) day, usually around 10am Pacific.

Additional resources
Learn.Microsoft.Com contributor guide

Additional guidance for private repos and internal contributors

Topic
Guidance

PR size
If your PR is more than ~5 lines of changes, or you'd like for the changes to go through editorial or larger review, open a contribution request at https://aka.ms/Contribution and include a link to the PR in response #8. Once it's processed, you'll be notified of the next steps.

PR title prefix
Select the Edit button to the right of the PR title if you need to revise it. The following prefixes are reserved for specific contribution types:[Quality Check] - maintenance work related to content quality (edit passes, art improvements, template alignment)[LinkFix] - recurring/adhoc PRs to correct link URLs[Pipeline] - new/updated contributor success pipeline content[WIP] - a work-in-progress draft requiring several days/weeks

PR preview
Following successful build of your PR, publishable files will also include Preview URL links to staged previews of your new/updated articles. Be sure to review these for verification of your intended contributions, or to send to other internal contributors for review.

PR sign-off (public repo)
If an article you own is updated in a public repo PR, you are responsible for sign-off. You will be automatically notified via email. The PR will not be merged until you've had a chance to review and sign-off.

PR sign-off (private repo)
After you've completed your proposed changes, addressed build warnings, and completed all review work, you can begin the sign-off process for review and merge:If your PR is in draft mode, remove "[WIP]" from the title and select Ready for review button at the bottom of the PR.Enter "#sign-off" in a new comment. This comment indicates that you're confident the work meets or exceeds Microsoft's standards for publication, and will trigger the review process.Your PR may be selected for initial review by the CACT. Following CACT review, you may receive questions or requests for additional changes. You should have initial feedback from CACT review within a few business days. If you have an urgent request or need to contact the team, please mention @MicrosoftDocs/cloud-architecture-content-team-pr-reviewers in your PR and someone will get back to you. After CACT review is complete, a CACT #sign-off will be added.Final review/merge is done by the PR review team. The PR team may also respond with feedback, categorized as "Blocking" (requires action from you), or "Non-blocking" (to be addressed in a future PR).

Additional resources
Learn.Microsoft.Com internal contributor guideAuthoring templates: architecture-center-pr, well-architected-prTo contact the CACT use e-mail, or @mention our GitHub team in your PR comments using: @MicrosoftDocs/cloud-architecture-content-team-pr-reviewers

@hyoshioka0128 - In this case, "pipeline" is referring to an instance of the service, so it's correct as-is. Thanks for contributing!


Typescript definitions need update

>typings info dt~materialize-css --versions
TAG                   VERSION DESCRIPTION COMPILER LOCATION                                                                                UPDATED
0.97.5+20161130215418 0.97.5                       github:DefinitelyTyped/DefinitelyTyped/materialize-css/index.d.ts#1996e6a1a6b4a7cc0f696c7a3d94453d83b63cc7           2016-11-30T21:54:18.000Z
0.97.5+20161130005836 0.97.5                       github:DefinitelyTyped/DefinitelyTyped/materialize-css/materialize-css.d.ts#8613472d8f7c7769d4e417aa749fa14e7b5811da 2016-11-30T00:58:36.000Z

The typescript definitions are still based on v0.97.5
Due to the changes in Modal API, it is impossible to use latest version 0.97.8 with typescript :-(
Please update your materialize-css.d.ts.

We do not maintain a typescript version.