Help with installation

Hi. I have been working with homebridge-broadlink-rm in homebridge installed in windows 10 for a while with no issues.
I decided to move all to Raspberry Pi 3 b+ (with Raspbian) and everything went fine until I installed the plugin.
Everytime I try to install it I get the following error messages:
npm ERR! tar.unpack untar error /root/.npm/chai/4.1.2/package.tgz
npm ERR! error rolling back Error: ENOTEMPTY: directory not empty, rmdir '/usr/local/lib/node_modules/homebridge-broadlink-rm/node_modules'
npm ERR! error rolling back<EMAIL_ADDRESS>{ Error: ENOTEMPTY: directory not empty, rmdir '/usr/local/lib/node_modules/homebridge-broadlink-rm/node_modules'
npm ERR! error rolling back   errno: -39,
npm ERR! error rolling back   code: 'ENOTEMPTY',
npm ERR! error rolling back   syscall: 'rmdir',
npm ERR! error rolling back   path: '/usr/local/lib/node_modules/homebridge-broadlink-rm/node_modules' }
npm ERR! Error: Method Not Allowed
npm ERR!     at errorResponse (/usr/share/npm/lib/cache/add-named.js:260:10)
npm ERR!     at /usr/share/npm/lib/cache/add-named.js:203:12
npm ERR!     at saved (/usr/share/npm/node_modules/npm-registry-client/lib/get.js:167:7)
npm ERR!     at FSReqWrap.oncomplete (fs.js:135:15)
npm ERR! If you need help, you may report this entire log,
npm ERR! including the npm and node versions, at:
npm ERR!     http://github.com/npm/npm/issues
npm ERR! System Linux 4.14.52-v7+
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install" "-g" "homebridge-broadlink-rm"
npm ERR! cwd /home/pi
npm ERR! node -v v8.11.1
npm ERR! npm -v 1.4.21
npm ERR! code E405
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /home/pi/npm-debug.log
npm ERR! not ok code 0
I install it with the command "sudo npm install -g homebridge-broadlink-rm".
Any help with that?
Many thanks in advance

@jesusmarcos Your version of npm is ancient, I would highly recommend to try upgrading that first

Hi @lumaxis. Thanks for your reply.
I already tried to update npm with the same result.
Finally I used another image of Raspbian that had homebridge installed and it worked, so I'll close the issue because probably was something related to the version I was using.
Now it's working again as it was in my Windows PC.
Many thanks.
Jesús.

Solved using another version of Raspbian.

I got this error too, I tried to update node and it worked...


Trouble installing DevKidCC

Hi Sean,
Great idea here to measure cell types at more granular levels, especially on mature and developing kidneys.
My main trouble is in installing DevKidCC in R using:

devtools::install_github("KidneyRegeneration/DevKidCC@main")
Downloading GitHub repo KidneyRegeneration/DevKidCC@main
Error in utils::download.file(url, path, method = method, quiet = quiet,  :
download from 'https://api.github.com/repos/KidneyRegeneration/DevKidCC/tarball/main' failed

devtools::install_github("KidneyRegeneration/DevKidCC", ref = "main")
Downloading GitHub repo KidneyRegeneration/DevKidCC@main
Error in utils::download.file(url, path, method = method, quiet = quiet,  :
download from 'https://api.github.com/repos/KidneyRegeneration/DevKidCC/tarball/main' failed

Wondering if you could help to get this working?

I have realised the issue - the files in ./data are prohibitively large
on machines with fast internet, the install works
on machines with slow internet, the install takes time and likely cuts out
I recommend looking at a way to accomodate for different internet connections - it may go a long way to increasing the utility of this package ... 👍


how to make end2end tests?

I am looking for the right documentation page that explain if is possible to make end2end tests. Is this kind of test possible?

Hi! For starting point here is a dead simple example with puppeteer
'use strict'

const tap = require('tap')
const puppeteer = require('puppeteer')

const { test } = tap

test('E2E', async t => {
  t.plan(1)

  const browser = await puppeteer.launch()
  const page = await browser.newPage()

  t.tearDown(async () => {
    await browser.close()
  })

  await page.goto(`http://google.com`)
  const title = await page.title()
  t.equal(title, 'Google')
})


Authentication: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*'

Seems we have a severe problem with Authentication:
When sending Basic Auth credentials (probably also for Bearer token), the servers are not allowed to set the Access-Control-Allow-Origin to * (wildcard).
Not sure yet how this can be solved appropriately, maybe we need to have an alternative way for logging in, e.g. sending the credentials via body or query parameters?
Some background: http://blog.portswigger.net/2016/10/exploiting-cors-misconfigurations-for.html

Hopefully fixed with #42.

Can this ticket be re-opened (or should I create a new one)?
I think the solution introduced by #42 still leaves a security issue as discussed in that blog post https://portswigger.net/research/exploiting-cors-misconfigurations-for-bitcoins-and-bounties and https://ejj.io/misconfigured-cors/:
this combination as specified in the current openeo spec is problematic:

Access-Control-Allow-Origin: It is RECOMMENDED to return the value of the request's origin header.
Access-Control-Allow-Credentials : If authorization is implemented by the back-end (so practically always) the value MUST be true.

(FYI: while digging into Open-EO/openeo-python-driver#54 I stumbled onto this old ticket)

Unfortunately, I don't see a solution on the API side for the issue. Did you catch one?

As far as I understand the Google API implementation (related SO comment), it doesn't allow requests from browsers (i.e. no CORS implemented) and you need to use the libraries hosted at google (i.e. same origin or white-listed origin). So that means if we want to make it work safely, every back-end needs to host their own JS client or it needs to white-list a CDN JS client?! Wow!

this is definitely an issue, and while setting this up in our environment a noticed, that there are many places where this creates issues and for sure leaves opportunities for security breaches, when working with the wildcard or not checking for CORS

The only thing I could imaging doing at the moment is to add that Access-Control-Allow-Origin should be properly validated

that is also the only thing I can think of at the moment. Possible implementations:

new repo under https://github.com/Open-EO with whitelist of allowed origins, managed by openeo PSC. Backends can then depend on this project for their whitelist. Advantage: no need to define new (back channel) API. Disadvantage: whitelist updates don't propagate automatically and require (probably) re-deployment of each backend.
central HTTP service that hosts whitelist, or provides an origin validation endpoint. Advantage: whitelist updates are immediately available to all backends. Disadvantage: requires set up and maintenance of central service, single point of failure, extra caching challenges for backend, is non-trivial update to openeo API spec.
something in between: use github repo directly as "central service" . Disadvantage: external entity (github) is now single point of failure
...

that there are many places where this creates issues

@aljacob Could you elaborate that a bit more?

whitelist of allowed origins

@soxofaan Is white-listing origins the only way out? I don't like any of the approaches to be honest. It makes browser-side usage a pain (includes many mobile apps) and how should the central instance decide who is trustworthy?

@jneijt How do you use the JS client at the moment? I guess this would break the mobile app as the Origin is always somehow the mobiles IP or so? Or is this centrally hosted somewhere at Solenix?
Some hosts that we'd need to whitelist:

openeo.org (for future use)
editor.openeo.org (Web Editor Production)
platform.openeo.org (for future use)
hub.openeo.org (for future use)
open-eo.github.io (Web Editor Dev/Demo)
... (Mobile App)
cdn.jsdelivr.net (CDN; Centrally hosted JS client we use in examples etc)
unpkg.com (another CDN we used before jsDelivr)

is it necessary to whitelist these CDNs? as far as I understand you only have to whitelist the domain of a webapp "page" itself, not the domains of the JS code it loads.

Is white-listing origins the only way out? I don't like any of the approaches to be honest ... how should the central instance (PSC?) decide who is trustworthy?

Indeed, a global, centrally managed whitelist is a pain, and it having the PSC maintain it doesn't scale well.
Ultimately it's all about the trust  between a user (defined at backend side) and a webapp. So maybe it makes more sense to work with something like per-user whitelists, where a user maintains, through their backend account, a list of webapp origins it trusts. This makes webapp usage harder, but maybe we can think of a flow that doesn't raise the bar too much (e.g. bootstrap the whitelist with some defaults like editor.openeo.org).
Advantages:

no need for central whitelist
developers don't have to go through official procedure to whitelist a new/external app

Disadvantages:

more user related bookkeeping to do by backend
additional flows to implement in clients (e.g. forward to whitelisting form on backend when first using webapp)
API spec about CORS will be more complicated because CORS response headers will depend on whether request included credentials
maybe a chicken and egg problem around authentication: CORS will depend on credentials, so is it possible to authenticate in first place?
we move security related responsibilities to the end user
by inventing our own trust mechanisms we risk introducing security issues we didn't think of
if user uses multiple backends: multiple whitelists to maintain

Lot of disadvantages, so not a very likeable alternative either :worried:

I guess we would need both: User-defined origins and to get started a list of pre-defined origins that originate directly from within the openEO consortium. I don't see an alternative. (Unfortunately, I still don't completely understand from reading the articles what the exact security issue is. Can someone explain that?)

https://ejj.io/misconfigured-cors/  explains it somewhat better than the other blog post:

you are logged in with your browser on editor.openeo.org, using backend backend.com
you visit with the same browser a shady website evil.com
evil.com has JS that does requests in the background to backend.com allowing it steal data (tokens, api keys, ...) because you are logged in (e.g. through cookies)

That's why it is important for backend.com to validate the origin in some way (e.g. whitelist or another back channel)
But now that I write down this flow, I realize that we might workaround the problem. The attack is possible because the browser automatically sends cookies along with the request from evil.com. But in case of openEO, we don't use cookies for authentication, but (somewhat custom) authentication headers that are set explicitly by the client code. So if we can specify that Access-Control-Allow-Credentials MUST be false (instead of MUST be true) , the problem might be solved without whitelisting.
At the moment I'm not completely sure if Access-Control-Allow-Credentials  is only about cookies and not about the authentication headers we currently send, that requires some more reading and testing I guess.

@m-mohr I still have to read up on the articles you referenced but to quickly answer the question about what the mobile app does:

It has a copy of the JavaScript client included in the app (doesn't load it from anywhere)
As far as I know, it uses localhost:4200 as origin when requesting anything on the backend (development for sure, I thought this is true for the production one as well).

And on what @soxofaan said:

Ultimately it's all about the trust between a user (defined at backend side) and a webapp. So maybe it makes more sense to work with something like per-user whitelists, where a user maintains, through their backend account, a list of webapp origins it trusts. This makes webapp usage harder, but maybe we can think of a flow that doesn't raise the bar too much (e.g. bootstrap the whitelist with some defaults like editor.openeo.org).

Isn't that what Google does with it's APIs as well? When requesting an API key, you can/should set the allowed origins for the application you are going to use the API from. I think this is a pretty common approach.

https://ejj.io/misconfigured-cors/ explains it somewhat better than the other blog post
[...]

evil.com has JS that does requests in the background to backend.com allowing it steal data (tokens, api keys, ...) because you are logged in (e.g. through cookies)

I've read that yesterday, too, but I'm still not sure it applies for us. How can someone evil making requests to backend.com grab information that he shouldn't get like the Authorization Header (he'd need to send, right?) or access tokens in responses? We don't have cookies that could be passed. Does it have something to do with the browser cache? And how does this "Vary: Origin" header affect that?

So if we can specify that Access-Control-Allow-Credentials MUST be false (instead of MUST be true)

AFAIK We can't do that because the header "Authorization", which we send the Basic and Bearer tokens with, can only be used in JS if Access-Control-Allow-Credentials is set to true.

As far as I know, it uses localhost:4200 as origin when requesting anything on the backend (development for sure, I thought this is true for the production one as well).

Would localhost make problems with the stricter approach? I'm not sure...

Isn't that what Google does with it's APIs as well? When requesting an API key, you can/should set the allowed origins for the application you are going to use the API from. I think this is a pretty common approach.

I know you need to specify redirect URIs for OpenID Connect, but I'm not aware that you can specify CORS Origins... anyone has details? Can only find information for cloud buckets, not for APIs.

is it necessary to whitelist these CDNs?

Doesn't seem to be the case. I just tested it and it is NOT using the host of the JS file, but the host of the requesting web page as origin. Then I don't understand yet how Googles APIs work...
Another th

I know you need to specify redirect URIs for OpenID Connect, but I'm not aware that you can specify CORS Origins... anyone has details? Can only find information for cloud buckets, not for APIs.

Isn't this done by specifying "HTTP restrictions" on the API key? It's called differently, but I think it's basically the same idea. I might be completely wrong here though...
https://cloud.google.com/docs/authentication/api-keys#adding_http_restrictions

Would localhost make problems with the stricter approach? I'm not sure...

Which stricter approach do you mean? AFAIK it has to be added to the allowed origins, just like any other URL like editor.openeo.org.

As far as I understand https://www.sjoerdlangkemper.nl/2018/09/12/authorization-header-and-cors/, Authorization headers are attached automatically to requests in some cases (i.e. Basic Auth), so that users don't need to input the credentials each time the click on a new page. This would indeed expose credentials to evil.com, but in our case I hope this is not the case and Bearer Tokens are not sent automatically. Still, it would break the security of /credentials/basic, but the API clearly says it is not meant to be used for production so I'd be fine with that.

Isn't this done by specifying "HTTP restrictions" on the API key?

In the English version it explicitly names it "HTTP referrers". Does this refer to HTTP Referrers or Origins/CORS or both? If it's just HTTP Referrers, it doesn't apply for our use case here.

Which stricter approach do you mean?

White-listing specific domains instead of just reflecting Origins.
Current status for changes in 1.0.1:

[ ] Vary:  Origin header must be set to avoid cache issues
[ ] Add that Access-Control-Allow-Origin should never return "null" or "*" (and be validated?)

White-listing specific domains instead of just reflecting Origins.

As long as localhost is whitelisted, it should be fine. But I don't know what implications whitelisting localhost has.

As long as localhost is whitelisted, it should be fine. But I don't know what implications whitelisting localhost has.

Yeah, if * is an issue, localhost should be black-listed as everyone could send requests from localhost, right? Maybe I'm missing something though...

That's my feeling as well, exactly...

Ok, it looks like the Origin is a matter of configuration for the mobile app. By default it uses ionic://localhost on iOS and http://localhost on Android but both the scheme and the hostname can be configured according to the documentation (https://github.com/ionic-team/cordova-plugin-ionic-webview#hostname).
I haven't tested this but it would solve the localhost issue for the mobile app as we could define some origin to use for the app.

@jneit Could you specify a distinct domain name in the app for the next release so that if we decide to implement white-listing later, we can easily add the domain?
Regarding the security of HTTP Basic, it seems some valuable information can be found here: https://tools.ietf.org/html/rfc7617#section-2.2
I couldn't find anything similar in the Bearer RFC yet and I doubt it's in there as it actually is written for OAuth: https://tools.ietf.org/html/rfc6750

@jneijt  Could you specify a distinct domain name in the app for the next release so that if we decide to implement white-listing later, we can easily add the domain? Either some solenix domain name or something like https://demo-app.openeo.org ...
Regarding the security of HTTP Basic, it seems some valuable information can be found here: https://tools.ietf.org/html/rfc7617#section-2.2
I couldn't find anything similar in the Bearer RFC yet and I doubt it's in there as it actually is written for OAuth: https://tools.ietf.org/html/rfc6750

How can someone evil making requests to backend.com grab information that he shouldn't get like the Authorization Header (he'd need to send, right?) or access tokens in responses? We don't have cookies that could be passed.

Indeed, that is also my current understanding of the attack: it depends on the browser to automatically include backend.com cookies with the requests done from evil.com. As far as I know there are no browser mechanisms that automatically include authorization headers to JS-based requests in the same way. So the security issue might not apply to openeo API (as long as we don't use cookies).

As far as I understand https://www.sjoerdlangkemper.nl/2018/09/12/authorization-header-and-cors/, Authorization headers are attached automatically to requests in some cases

Ok interesting, so there are mechanisms to automatically include authorization headers. Not sure if this applies to requests done from JS as well.

So if we can specify that Access-Control-Allow-Credentials MUST be false (instead of MUST be true)

AFAIK We can't do that because the header "Authorization", which we send the Basic and Bearer tokens with, can only be used in JS if Access-Control-Allow-Credentials is set to true.

I'm not sure here. The client indeed sends the tokens  through headers to the backend, but it does not receive them from the backend:

for basic auth, the token is in the body
for OIDC, the token comes from the OIDC provider, not the backend
so we don't need  to enable Access-Control-Allow-Credentials=true I think.

I've been playing a bit with that demo page of https://www.sjoerdlangkemper.nl/2018/09/12/authorization-header-and-cors/, and it seems that it indeed works without Access-Control-Allow-Credentials

@soxofaan Interesting, from reading the page it seems that the header is required if you want to send Authorization headers (that's how I understand it), but the demo page indeed doesn't require me to add the Credentials flag... strange, I'm pretty sure I struggled with this in the JS client. I'll so some experiments tomorrow with GEE and JS.

Okay, looking into the code of the demo page and reading some additional docs enlightened me! (I hope I understood it correct.)
I need to disable withCredentials: true (the same as credentials: include in fetch) in the JS client, but still send the Authorization header! I thought withCredentials would be required to send the Authorization header, but it doesn't seem to be the case. I'll check that tomorrow, but in that case we can completely omit the Access-Control-Allow-Credentials header and just specify * for Access-Control-Allow-Origin. That makes it sooooo much easier!

It works like a charm without the credentials headers etc. So I'll make PRs, push it through PSC etc. So that I hope to get an API 1.0.1 out soon. Thanks for pushing me on this, @soxofaan!
This clearly shows how bad documentation can influence a whole project.
@jneijt I'll also issue a fix for the JS client, so better wait a day with the release so that you can get in those changes.

@m-mohr Great to hear, thanks! I'll wait until the new version is available ;-)

Two PRs open: https://github.com/Open-EO/openeo-js-client/pull/38 and https://github.com/Open-EO/openeo-api/pull/345


JBDS-4551 'Select components to install' stays during detection

test this

Codecov Report

Merging #883 into master will increase coverage by 0.16%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #883      +/-   ##
==========================================
+ Coverage   97.81%   97.98%   +0.16%
==========================================
  Files          36       36
  Lines        3250     3473     +223
  Branches      276      518     +242
==========================================
+ Hits         3179     3403     +224
+ Misses         71       60      -11
- Partials        0       10      +10

Impacted Files
Coverage Δ

browser/main.js
98.41% <0%> (-1.59%)
:arrow_down:

browser/model/helpers/downloader.js
96.94% <0%> (-1.52%)
:arrow_down:

browser/pages/confirm/controller.js
94.94% <0%> (-1.48%)
:arrow_down:

browser/model/devstudio.js
96.8% <0%> (-0.97%)
:arrow_down:

browser/model/cdk.js
99.21% <0%> (-0.79%)
:arrow_down:

browser/model/helpers/installer.js
100% <0%> (ø)
:arrow_up:

browser/services/componentLoader.js
100% <0%> (ø)
:arrow_up:

browser/model/helpers/util.js
100% <0%> (ø)
:arrow_up:

browser/services/openpgp.js
100% <0%> (ø)
:arrow_up:

browser/model/hyperv.js
100% <0%> (ø)
:arrow_up:

... and 22 more

Continue to review full report at Codecov.

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


Prismic preview crashing in Next.js production with 500 error

Versions

@prismicio/react: 2.0.2
react: 17.0.2
next: 12.0.1

Reproduction
I just updated from prismic-reactjs to @prismicio/react for the Prismic documentation website. Everything works as expected in local development, including previews. When deployed, however, everything crashes with a 500 error when I run a Prismic preview (everything works as expected when not in preview mode).
I'm getting the following error:
[GET] /docs/technologies/query-the-api-dotnet
2022-01-12T15:19:02.927Z
ERROR	TypeError: React.createContext is not a function
    at file:///var/task/node_modules/@prismicio/react/dist/index.js:7:30
    at ModuleJob.run (internal/modules/esm/module_job.js:145:37)
    at async Loader.import (internal/modules/esm/loader.js:182:24) {
  page: '/technologies/query-the-api-dotnet'
}
Error: Runtime exited with error: exit status 1
Runtime.ExitError

Hey @levimykel, I tried it on my side, both locally and in production (in my own separate account), and was unable to get this error.
Is it possible to redeploy the app on Vercel with a cleaned cache?

@angeloashmore Is there a specific way that you know of to clean a cache on Vercel? It seemed to me that the cache is cleared automatically anytime a new deployment is launched.

@angeloashmore The update is working. Thanks for looking into it!


LOAM Based Localization Task 2 - Create depth image from the point cloud (project point cloud)

Checklist

[X] I've read the contribution guidelines.
[X] I've searched other issues and no duplicate issues were found.
[X] I've agreed with the maintainers that I can plan this task.

Description
For LOAM feature extraction, we need the depth image of the point cloud. For feature extraction, LIO-SAM structure is used. An example is here:

#6837

Purpose
Create the depth image from the undistorted point cloud.
Possible approaches

Use a cv::Mat as a range matrix

Definition of done

[x] Get the depth image from undistorted point cloud

Here is the depth image created from a rosbag data:

This task is completed with the commit:

https://github.com/ataparlar/autoware.universe/tree/68e67a8df53b703206839862cca351c5ce83f6e0


Limit Wallet transaction size

(Created on Aug, 29 2023 by @OBorce)
Calculate the weight of the selected inputs when creating a transaction in the wallet so it doesn't exceed the maximum size.

Add a check in the wallet when selecting inputs for a transaction that the size of the transaction will not exceed the size of a block.


Have a from_hex function for creating a Color

When creating a Color Enum there are a myriad of options, however there isn't a function like from_hex(hex: &str) which would take a color represented as hexadecimal. I know that rust does have hexadecimal literals so that could be used in the other functions in place of decimal literals. I feel that maybe a user wouldn't know that hexadecimals literals exists and might want to specify colors using a hex triplet.
I feel like

It should be noted in the documentation that a user can still use the hex triplet using the hex literal syntax
Maybe there should also be from_hex(hex: &str) function for convenience, though this wouldn't be as important as noting the hex literal syntax

I think you could make the function const, which might make it a nice way to define hard-coded colors.

Just went ahead and implemented this in piet; it is const, but because parsing can fail it returns a Result; I'm not sure how well this will work in const contexts, as a result of that?

Closed with https://github.com/linebender/piet/pull/374


CMake: Enable building of test targets

Based on https://github.com/grpc/grpc/pull/9361
Expose gRPC_BUILD_TESTS cmake option (default is OFF).
When ON, cmake builds targets of type 'test' as well.
Selection of interesting targets that can now be built with cmake (on linux):
interop_server, interop_client, qps_worker, grpc_cli, ...

I added a few fixes for CMake on windows. Things seem to work but there is a couple unrelated build errors in interop_server, interop_client, qps_worker, .. I'll try to address them separately.

It looks like the sanity test failures are related to your fork being behind gRPC master. After rebasing your branch and regenerating, it should look good.

@matt-kwong  rebased and regenerated. The sanity test should be now passing.

Known failures:
https://github.com/grpc/grpc/issues/9398
https://github.com/grpc/grpc/issues/9399


Add chart to frequency of instruction report

https://amy.software-carpentry.org/workshops/reports/instructor_num_taught would be more useful if there were histograms showing how many people have taught how many times.

Only histogram, no names?

Yup - the histogram is to copy/paste into presentation slides, and we don't want names in that.  If you're feeling adventurous, an option to display with/without names would be welcome :-)


chore: sort the technology list in alphabetical order

Notes for Reviewers
This PR fixes #8642
Signed commits

[x] Yes, I signed my commits.

Good @Yana-Gupta 👏 though I have some suggestions

Instead of mapping in schema directly we are already mapping here so I think we don't require to loop again on schema
https://github.com/meshery/meshery/blob/f18bb842de48daccbc221528ebc7d82c7e82230f/ui/components/MesheryPatterns.js#L524

The changes that you made MesheryPatterns also need to be made in MesheryFilters page and PublishModal to reflect changes in all publish modal

Good @Yana-Gupta 👏 though I have some suggestions

Instead of mapping in schema directly we are already mapping here so I think we don't require to loop again on schema
https://github.com/meshery/meshery/blob/f18bb842de48daccbc221528ebc7d82c7e82230f/ui/components/MesheryPatterns.js#L524
The changes that you made in MesheryPatterns also need to be made in MesheryFilters page and PublishModal to reflect changes in all publish modal

Ohh okay @Yashsharma1911 and should I make the changes in MesheryFilters and PublishModal page in this pull request only.

Yes you should push changes in this PR

@Yashsharma1911 I am unable to find publish model page in ui.. will you provide some help.

@Yashsharma1911 I am unable to find publish model page in ui.. will you provide some help.

here it is https://github.com/meshery/meshery/blob/master/ui/components/Modals/PublishModal.js

@Yashsharma1911 I am unable to find publish model page in ui.. will you provide some help.

here it is https://github.com/meshery/meshery/blob/master/ui/components/Modals/PublishModal.js

Thanks

hey @Yana-Gupta
Let's discuss this on Meshery Dev call. Please add this as an agenda item in the meeting minutes if you would. :)

Hi @Ghat0tkach currently I'm little busy so won't be able to attend the meeting.

hey @Yana-Gupta
Let's discuss this on Meshery Dev call. Please add this as an agenda item in the meeting minutes if you would. :)

Hi @Ghat0tkach currently I'm little busy so won't be able to attend the meeting.

@Yana-Gupta please ping when it's done

hey @Yana-Gupta
Let's discuss this on Meshery Dev call. Please add this as an agenda item in the meeting minutes if you would. :)

Hi @Ghat0tkach currently I'm little busy so won't be able to attend the meeting.

@Yana-Gupta please ping when it's done

Yes @Yashsharma1911 It's done
Filter's page:

Design's page:
Screencast from 14-09-23 11:05:01 AM IST.webm


[syncthing] Update to v1.25.0-r0

Update to latest Alpine package release. See the Syncthing release notes of v1.23.7, v1.24.0 and  v1.25.0 for details.

@Poeschl Would be glad if you could merge this :slightly_smiling_face:


Automatically sort grist tables for ease of use

Grist version
getgrist.com
System information
Firefox on windows 11
Issue description
I have 2 screens of table names. It is difficult to use the tables since they are not sorted, can they be sorted?
So I have two table names that are almost the same name, but are on the first page and the second page.
Sorting probably needs to use unicode rules.
Steps to reproduce

Create a database on https://getgrist.com
Generate 50 table names in sentence case without punctuation and in snake_case
Notice the order of the tables is random which makes it hard to use

Idea graveyard

allowing the user to sort the table list is a worse idea
the metadata needs to be saved
customization for not much gain

To be clear it means that  these examples should be sorted close together and not but table creation order.

abce
abc
ab_cd

You can drag and reorder Pages with the mouse:

It was not obvious I can drag from https://github.com/gristlabs/grist-core/issues/485#issuecomment-1501172677 and the only way I could find out is because you used a yellow circle to indicate which is a usability problem.

I like the design decision to hide the drag surface as it is.
But adding reorder pages to the tutorial tour could be something to think of with low priority.

Well, I'll try looking for other software then, since I have a lot of pages and tables and this is considered low priority meaning probably never done. A tutorial is the same as not fixing the problem.
The problem it's pretty painful to scroll through the overview with 50 elements to use and edit. A flat list was veto'd earlier in this discussion because the element is pages which has widgets. A table is only one widget so cannot be cause sorted as the container is the page.

(Just to clarify that @Vinschni is a user of Grist helpfully sharing their knowledge, and not currently a contributor to the codebase or roadmap)

Dear @fire my post was a personal opinion.
I'm not associated with grist or their development / roadmap decisions.

@fire If you have over 50 tables i imagine there are other ways to fulfill you requirement. In my eyes using pages may be just one how for what you aim for.
Could you use one table and represent the attribute you encode in the page name as an additional column? This would improve usability for you a lot, including filtering and sorting.

Since I don't see it mentioned in this discussion, let me point you to Grist's Raw Data feature, which lists all tables in a document in alphabetical order. This is the best place to find all data in a document.
Compared to Raw Data, the user-configurable "Pages" are intended as application-like views: you may configure what each page shows (often more than one table, with data linked together), and how the pages are arranged. Note that rearranging pages allows also grouping them into a nested list. Note also that page names default to the table name, but may be renamed (e.g. for a more functionally meaningful name when the page contains several linked widgets).
In a document with as many as 50 different tables (with different structures), such tables are often helper tables, many of which are either rarely touched, or which represent subordinate data, best viewed as part of another page. Another situation where Grist users sometimes find themselves with many tables is when the tables share structure: e.g. one table per physical store, but each table has the same columns as other tables. For this situation, it is indeed recommended to unify the data into a single table, like @Vinschni suggests. This is described in a bit more detail in this Community post.


Unable to create converter for class

I did everything, I followed everything. Here is my class, I am getting error and crash when I run my app:
package com.taskout.taskout.http.model.filteroptions;

import com.bluelinelabs.logansquare.annotation.JsonField;
import com.bluelinelabs.logansquare.annotation.JsonObject;

@JsonObject(fieldDetectionPolicy = JsonObject.FieldDetectionPolicy.ANNOTATIONS_ONLY)
public class Session
{
    @JsonField private String login;
    @JsonField private String password;
    @JsonField private String apikey;

    public void setApiKey(String apiKey)
    {
        this.apikey = apiKey;
    }

    public void setLogin(String login)
    {
        this.login = login;
    }

    public void setPassword(String password)
    {
        this.password = password;
    }

    public String getLogin()
    {
        return login;
    }

    public String getPassword()
    {
        return password;
    }

    public String getAPIKey()
    {
        return apikey;
    }

    public Session(String username, String pw)
    {
        login = username;
        password = pw;
    }
}

I do not understand that is suppose to be simple and I almost pulled my hair out just to figure out whats wrong. Can't figure out what I missed either.

Add a package-private empty constructor to your class. The generated code instantiates your object with new Session(), and then configures its fields one after the other:
public class Session {
    // Everything else...

    Session() {
        // Used for LoganSquare deserialization
    }
}

If you don't add an empty constructor, you will be presented with this error:
Error:(16, 24) error: constructor Session in class Session cannot be applied to given types;
required: String,String
found: no arguments
reason: actual and formal argument lists differ in length

@EricKuck This error could be prevented by either adding a Lint rule that checks for empty constructors in classes annotated with @JsonObject, or having the annotation processor check for its presence, and raising a more convenient error if absent. (Possibly both of these should be implemented together!)


Update docker script permissions and fix env file name

CI: No IaC security warnings found

CI: No IaC security warnings found

CI: No security warnings found


chore(docs): fix popover and tooltip docs

update popover and tooltip docs to indicate that the uib-*-html attribute
does not get compiled
addresses complaint in #4923

Not sure if specific people need to review it, but this LGTM.

@deeg, yea we usually have another project dev give stuff a once over before we commit.

@icfantv, sounds good, thanks for the info.

LGTM


Ability to specify multiple release-types

TL;DR
For a project of mine, I have node and rust bindings, and I want both to be updated with release-please, but it seems like only one can be at a time. A way to specify an array of release-types would be nice, then I could just set that to ["node", "rust"].
Detailed design
No response
Additional information
No response

Please use the manifest command option and check out the configuration options from the upstream library: https://github.com/googleapis/release-please/blob/main/docs/manifest-releaser.md

I did see that - but the issue is my rust crate and npm package are both in ".", I don't think I can have duplicate key entries in json, right?


Release-4.0.92

:white_check_mark: Build ServiceBusExplorer 4.0.92-PullRequest0123.12.build.239 completed (commit https://github.com/paolosalvatori/ServiceBusExplorer/commit/59d768cb33 by @paolosalvatori)

@paolosalvatori please review and merge


Real fuel replaces Kerbalism resources from command pods

So I've been playing around with 64k Kerbin and real fuel recently, real fuel seems to replace command pod resources with its own and each resource needs to be entered by hand which is a bit annoying, is there a way to solve this? I saw this come up in the forum thread quite some time ago.
By the way, maybe a way to solve this is to create a default fuel(food/water/oxygen/nitrogen) combination that you can choose directly in the RF UI, just like how you don't actually need to enter the fuel ratio but to choose one that already exists.

Your proposed solution is good, and will allow users to choose if they want to customize the storage or just use the predefined one. Also the predefined combination could be 'specialized' using NEEDS[Profile*] for the two included profiles default and classic. That should work overall.
I am extremely busy at the moment, so feel free to commit the required changes to Support/RealFuels.cfg, or just post here and I'll integrate them manually.

Great! I'll look into it! I'm actually in the middle of exams too so it may be some time before I get to do this~


"Avoid using undefined variables" for array initialization with offset.

PHPMD version: 2.15.0
PHP Version: 8.1.23
Installation type: composer
Operating System / Distribution & Version: Docker with some kind of Linux

Current Behavior
phpmd reports "VIOLATION": " Avoid using undefined variables such as '$form' which will lead to PHP notices."
Expected Behavior
No complaints from phpmd.
Steps To Reproduce:
Code like this:
function f(): array {
  $form['x'] = 'y';
  return $form;
}

Notes
Initializing an array like this is valid php, and is common in e.g. the Drupal ecosystem.
We can call $form = []; before, but it would be redundant.
At least this case should be optional, and use a different message, because saying "which will lead to PHP notices." is wrong here.
Checks before submitting

[x] Be sure that there isn't already an issue about this. See: Issues list
-> I searched for "Avoid using undefined variables array" and did not find an issue that seemed to match the problem.
[x] Be sure that there isn't already a pull request about this. See: Pull requests
-> nope
[x] I have added every step to reproduce the bug.
[x] If possible I added relevant code examples.
[x] This issue is about 1 bug and nothing more.
[x] The issue has a descriptive title. For example:  "JSON rendering failed on Windows for filenames with space".

This is expected behavior, you're mutating an array that does not exist and PHP being resilient create an empty array for you, but it's generally considered best-practice to actually create the empty array explictly:
function f(): array {
  $form = [];
  $form['x'] = 'y';
  return $form;
}

I guess the code above is a simplified example but of course in this precise case it's even better to do it in a single operation by creating the array full shape:
function f(): array {
  $form = ['x' => 'y'];
  return $form;
}

And once there the intermediate variable becomes useless:
function f(): array {
  return ['x' => 'y'];
}

it's generally considered best-practice to actually create the empty array explictly:

How can we verify if something is "generally considered best practice"?
I think it is more a matter of convention.
Even if it is "best practice", the part saying "which will lead to PHP notices" is clearly not true in this case.
More accurate would be "It is best practice to initialize arrays before assigning an array value.". And it could be a separate rule "ArrayNotInitialized" that can be disabled separately.
(In practice it is fine to disable the complete "UndefinedVariable" rule, if there are other tools like phpstan that can detect undefined variables.)

$form = ['x' => 'y'];

Sure this works, but there can be many reasons to prefer $form['x']['y']['z'] = 'XYZ';. Especially if we have a sequence of similar assignments.
I found this reddit discussion.
There is an argument that we are not sure if the array already contained some values to start with.
But this does not really apply to short functions, where we can see that a variable did not exist before.
Ofc it is different if we have a loop, or all the assignments are conditional, in that case we need to initialize the empty array first, to make sure it is defined.

How can we verify if something is "generally considered best practice"?

Experience, survey various tools, guides, and developers.

I think it is more a matter of convention.

Well that is kinda what is implied by "generally".
// Maybe this is a bug where the array was expected to already exist?
$form['x']['y']['z'] = 'XYZ';
// Clearly creating a new array, no bug here
$form = ['x' => ['y' => ['z' => 'XYZ']]];

// Repeating the same code can easily lead to hard to spot errors
$form['x']['y']['a'] = 'XTZ';
$form['x']['y']['b'] = 'XVZ';
$form['x']['u']['c'] = 'XIZ';
$form['x']['y']['d'] = 'XLZ';
$form['x']['y']['e'] = 'XAZ';

// No bugs in this one, also less code
$form = ['x' => ['y' => [
    'a' => 'XTZ',
    'b' => 'XVZ',
    'c' => 'XIZ',
    'd' => 'XLZ',
    'e' => 'XAZ',
]]];

Even if it is "best practice", the part saying "which will lead to PHP notices" is clearly not true in this case.

True, maybe it's a general notice for this rule? Maybe a better rephrasing would be "will" -> "can".

(In practice it is fine to disable the complete "UndefinedVariable" rule, if there are other tools like phpstan that can detect undefined variables.)
...
There is an argument that we are not sure if the array already contained some values to start with.

Sounds like you are already aware that this is generally considered best practice.

But this does not really apply to short functions, where we can see that a variable did not exist before.

What is the general rule for what defines a short function where that can be deduced. Are you proposing that it be implemented as an exception, and why have inconsistent ways of writing code depending on if it's in a short or long function when it does the same. You would have to change it if you copied it or the function grew.

Sure this works, but there can be many reasons to prefer $form['x']['y']['z'] = 'XYZ';. Especially if we have a sequence of similar assignments.

I don't think this is true, see my example.

The examples given by kyle also show that it generates less op code:
https://3v4l.org/6P0JU/vld
vs
https://3v4l.org/3TNKD/vld


Merge Issue 15-7-23 v <IP_ADDRESS>

Describe the bug
When merging I now get "Wrong database version found (13) in filename.jwlibrary. Expecting 8
To Reproduce
Steps to reproduce the behavior:
Tried to merge two backups as normal.
Expected behavior
A successful merge!
Screenshots
see attached.

Desktop (please complete the following information):
Win 10
Jw library v14.0.138 and have just downloaded the latest jwl merge v <IP_ADDRESS> uploaded two days ago.

Hello Anthony, David and Henry.
Thank you for your tool, which is essential for me. It is nice to have a playlist in the JW app now, however it is more important for me to sychronize my studynotes and other with all my devices.
One of my best friends is the overseer of an RTO. He always gets the beta versions of the JW app. So he also has the opportunity to submit suggestions for improvements. We spent the day together yesterday. Told him about the dilemma with JWmerge. He will use the above opportunity this week to write a note to the appropriate department.
I'll take the liberty of a small hint: did you receive a negative response to your January 2023 request to Bethel, or no response at all? If the case is the latter, then it may make sense to repeat your January request to Bethel, because almost all of Bethel's departments cannot complain about a lack of work. As a result, some questions may unfortunately fall by the wayside.
Thanks to you again for six years of excellent work! Have a nice day2day!

My wife and I appreciated your app so much, it made our lives so much easier and we always had all our notes with us no matter which device we were on. Maybe one day we'll get access to this tool again in one form or another. Until then, we'll just have to "exercise patience" and do a lot of copying and pasting!

 bonjours, depuis la mise à jour <IP_ADDRESS> j'ai également ce problème. je suis sous windows 11. Merci pour ton super logiciel qui est super pratique pour faire des sauvegardes.

@Riroux13 Note that this project is no longer compatible with the latest version of the JW Library. In July 2023 the database schema was changed from v8 to v13 and I will not be updating JWLMerge to support the new version. In Jan 2023, the JW Library licence agreement was strengthened, but it also gave opportunity for 3rd party developers to apply for official permission to do the sort of work that is present in JWLMerge. I made an application in January but have not received permission, and in these circumstances feel it best to archive the project at this juncture. Thank you for your understanding, and for your valuable input and feedback on the project over the last 6 years.

Thank you
De : Antony Corbett @.>
Envoyé : jeudi 20 juillet 2023 00:37
À : AntonyCorbett/JWLMerge @.>
Cc : Riroux13 @.>; Mention @.>
Objet : Re: [AntonyCorbett/JWLMerge] Merge Issue 15-7-23 v <IP_ADDRESS> (Issue #99)
@Riroux13 https://github.com/Riroux13  Note that this project is no longer compatible with the latest version of the JW Library. In July 2023 the database schema was changed from v8 to v13 and I will not be updating JWLMerge to support the new version. In Jan 2023, the JW Library licence agreement was strengthened, but it also gave opportunity for 3rd party developers to apply for official permission to do the sort of work that is present in JWLMerge. I made an application in January but have not received permission, and in these circumstances feel it best to archive the project at this juncture. Thank you for your understanding, and for your valuable input and feedback on the project over the last 6 years.
—
Reply to this email directly, view it on GitHub https://github.com/AntonyCorbett/JWLMerge/issues/99#issuecomment-1642855036 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AXOZVNOTLPKIGGNSVUXHRVLXRBORNANCNFSM6AAAAAA2NGOGKY .
You are receiving this because you were mentioned.  https://github.com/notifications/beacon/AXOZVNISP4DGRFYHFI5HBDDXRBORNA5CNFSM6AAAAAA2NGOGK2WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTTB5P5HY.gif Message ID: @.***>

@dl9abl I sent email on 15 Jan to the address given in the revised terms, however I received no response. I thought that I would give it 6 months and then take a view on it. At this point I must conclude that permission is not given. Thanks for your interest in the project. Best wishes, Antony


Support for AWS Bedrock model stack

Is your feature request related to a problem? Please describe.
We want to generalise the package by supporting AWS Bedrock models as students or teachers (Claude2 for instance)
Describe the solution you'd like
We need to support AWS Bedrock models as teacher or student. Currently we are only relying on OpenAI, whereas the library should be more generalised

merged into main


Update for latest SDK

Gets it to work with 5.1.x, although images still seem to be missing

@fridayforward @grantges can we merge this?
http://stackoverflow.com/questions/35048794/failed-to-run-dexer-new-install-sample-app-movies


Previous/Next button

For tutorials it we should have previous/next buttons.
These will be defined in the front-matter data in the top of a page.

Added to our ideas & improvements list for stack update


Replace golang/mock with uber-go/mock

gomock is deprecated. Its maintained fork is uber-go/mock.
ref: https://github.com/golang/mock

This repo and tool are no longer maintained. Please see go.uber.org/mock for a maintained fork instead.

/kind cleanup

I'd like to work on this issue.


[BUG] Error in 0.19.0 when prompt with adapter-path: 'types.SimpleNamespace' object has no attribute 'num_layers'.

Describe the bug
When I try to execute a prompt with the command below, the following error occurs. The problem has occurred since the update to 0.19.0. Before that the command worked. I suspect it is due to the loading of the adapter. If I leave out the adapter and only call generate for the model it works. The adapter was trained with the previous version. I don't know what it looks like if the adapter is also trained with 0.19.0.
dartgen %  mlx_lm.generate --model "meta-llama/Meta-Llama-3.1-8B-Instruct" \
    --adapter-path "results/llama3_1_8B_instruct_lora/tuning_03/adapters" \
    --max-tokens 4000 \
    --prompt "Say hello to me"

Fetching 11 files: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 11/11 [00:00<00:00, 30574.78it/s]
Traceback (most recent call last):
  File "/Users/admin/.local/share/virtualenvs/dartgen-xL9Vbcux/bin/mlx_lm.generate", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/Users/admin/.local/share/virtualenvs/dartgen-xL9Vbcux/lib/python3.12/site-packages/mlx_lm/generate.py", line 178, in main
    model, tokenizer = load(
                       ^^^^^
  File "/Users/admin/.local/share/virtualenvs/dartgen-xL9Vbcux/lib/python3.12/site-packages/mlx_lm/utils.py", line 516, in load
    model = load_adapters(model, adapter_path)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/admin/.local/share/virtualenvs/dartgen-xL9Vbcux/lib/python3.12/site-packages/mlx_lm/tuner/utils.py", line 179, in load_adapters
    config.num_layers,
    ^^^^^^^^^^^^^^^^^
AttributeError: 'types.SimpleNamespace' object has no attribute 'num_layers'. Did you mean: 'lora_layers'?

To Reproduce
Include code snippet
mlx_lm.generate --model "meta-llama/Meta-Llama-3.1-8B-Instruct" \
    --adapter-path "results/llama3_1_8B_instruct_lora/tuning_03/adapters" \
    --max-tokens 4000 \
    --prompt "Say hello to me"

Expected behavior
Model gives an answer and not an Error.
Desktop (please complete the following information):

OS Version: MacOS 14.16.1
MLX-LM Version: 0.19.0

Additional context
I think the problem is that in the extension for full parameter tuning the line https://github.com/ml-explore/mlx-examples/blob/50e5ca81a8c06f4c49cec48795330209a885d2c9/llms/mlx_lm/tuner/utils.py#L179 was adjusted and config.num_layers was entered instead of config.lora_layers.

Yes that was changed when we introduced full fine-tuning as the name config.lora_layers didn't make sense anymore.
You can fix it by editing: results/llama3_1_8B_instruct_lora/tuning_03/adapters/adapter_config.json. Change lora_layers to num_layers. Sorry for the compatibility issue.

Yes that was changed when we introduced full fine-tuning as the name config.lora_layers didn't make sense anymore.
You can fix it by editing: results/llama3_1_8B_instruct_lora/tuning_03/adapters/adapter_config.json. Change lora_layers to num_layers. Sorry for the compatibility issue.

Ah thanks for the quick answer and solution. Do I have to adjust other parameters like lora_parameters as well?
Wouldn't it be maybe an option to make this backwards compatible to adapt the position as follows and, if necessary, issue a warning or are other places in the scripts also affected??
    if fine_tune_type != "full":
        linear_to_lora_layers(
            model,
            config.num_layers or config.lora_layers,
            config.lora_parameters,
            use_dora=(fine_tune_type == "dora"),
        )

Ah thanks for the quick answer and solution. Do I have to adjust other parameters like lora_parameters as well?

I think the num_layers is the only thing that needs to change.

Wouldn't it be maybe an option to make this backwards compatible to adapt the position as follows and, if necessary, issue a warning or are other places in the scripts also affected??

Indeed, we could do something like that.

Ok, thank you. I have adapted my adapter_config.json. The query now works. :)


Too many plots showing in the Geophysical Inversion page

Hi,
I am Fian. My issue with the new geoapps is as follows: There are way too many images showing in the Geophysical Inversion page, and the real plot only shows at the very end of the line, before the convergence curve. Image attached (made smaller due to immense amount of plot there).
Thanks, Fian

I finally use the version by @domfournier in https://github.com/MiraGeoscience/geoapps/tree/release/0.5.0
Many thanks dom!

Oh great, glad you found the beta release @aluthfian . Something seems to have changed with matplotlib and ipywidgets, which forces us to show(). Release 0.5.0 is on its way, very soon.


Added custom headers support for Aria2 RPC HTTP(s) requests

This PR will add a "Aria2 RPC Http Request Header" option in AriaNg settings, which allows users to customize the headers of each RPC HTTP request.
Some users use the Cloudflare Access service to block others from illegally accessing their NAS at home, thereby improving the security of the home network. That service usually requires users to log in with OAuth for authentication. For automation or CI programs, users can also add specific headers(CF-Access-Client-Id and CF-Access-Client-Secret) to the http request to pass the verification of Cloudflare.
So this PR will benefit users similar to the above scenarios.

another commit has been committed, so this pr would be closed

another commit has been committed, so this pr would be closed

Could you please provide the commit number you mentioned?
I'm also doing the same thing (Using Cloudflare Access to access my home NAS), and I really wanted to know the steps.

another commit has been committed, so this pr would be closed

Could you please provide the commit number you mentioned? I'm also doing the same thing (Using Cloudflare Access to access my home NAS), and I really wanted to know the steps.

https://github.com/mayswind/AriaNg/commit/7aa38161290aeac26994e366f36306bd8c2eeeb6


Compile python requirements

Automated changes by create-pull-request GitHub action

Ran manually to resolve this dependabot alert

A little unsure of of why this error is specific to pydantic v2
A string input is provided in yml as an int for something like version: 20240101. Plain strings like version: 23v3 seem fine when they have non-numeric characters, but pydantic seems to be demanding version: "20240101" here.
Seems that default behavior is supposed to be attempt to coerce

https://docs.pydantic.dev/latest/concepts/strict_mode/

See discussion here

I guess I wouldn't mind having to put quotes around it, reminds of BBLs and how often they get mis-cast as integers and floats


Adding another country brings Bad state: No Element

Tried passing KE and currency as KES and it brings an error Bad state: No Element

@kevinrobert3  could you attach a code example so I can understand  better what you did?

I did not add anything special just passed KE as the country and KES as the currency
Future<void> _startPayment(BuildContext context) async {     var initializer = PayInitializer(         amount: 50,         email<EMAIL_ADDRESS>        txRef: 'TXREF-${DateTime.now().microsecondsSinceEpoch}',         narration: 'New payment',         country: 'KE',         currency: 'KES',         firstname: 'Nelson',         lastname: 'Eze',         phoneNumber: '09092343432',         onComplete: (result) {           if (result.status == HttpStatus.success) {             if (result.card != null) {               log.log(result.card.toMap().toString());               //  saveCard(card);               log.log(result.card.token);             }           }           print(result.message);         });     return PayManager().prompt(context: context, initializer: initializer);   }

I get it now. I only included a specific list of currencies when I was testing, forgot to remove it. Fixing it now. Will tell you when I make a push.

Try one more time with nravepay: ^1.0.5. Should be fine now

That worked


Add auto merge

@conda-forge-admin, please add bot automerge

Hi! This is the friendly automated conda-forge-webservice.
I just wanted to let you know that I added bot automerge in conda-forge/pydatamail_google-feedstock#2.


Null constraint violation on the fields: (id)

Bug description
Unable to use @default(autoincrement()).
Keep getting
PrismaClientKnownRequestError:
Invalid `client.user.create()` invocation in
/Users/m/Go/src/github.com/prisma/demo/index.js:7:21

   3 let client
   4 async function main() {
   5   client = new PrismaClient()
   6   await client.connect()
→  7   await client.user.create(
  Null constraint violation on the fields: (`id`)
    at PrismaClientFetcher.request (/Users/m/Go/src/github.com/prisma/demo/node_modules/@prisma/client/runtime/index.js:1:183549)
    at processTicksAndRejections (internal/process/task_queues.js:97:5) {
  code: 'P2011',
  meta: { constraint: [ 'id' ] }
}

How to reproduce
Started with:
generator js {
  provider = "prisma-client-js"
}

datasource pg {
  provider = "postgresql"
  url      = "postgresql://m@localhost:5432/prisma_demo"
}

model Post {
  id        Int        @id
  content   String?
  createdAt DateTime
  published Boolean     @default(false)
  title     String      @default("")
  updatedAt DateTime
  author    User       @relation(fields:[id])
}

model User {
  id    Int     @id
  email String  @default("") @unique
  name  String
  post  Post[]
}

Ran migrate save, migrate up, prisma generate.
Database is empty, here's the structure:

Realized I was missing @default(autoincrement()). Added it:
generator js {
  provider = "prisma-client-js"
}

datasource pg {
  provider = "postgresql"
  url      = "postgresql://m@localhost:5432/prisma_demo"
}

model Post {
  id        Int        @id @default(autoincrement())
  content   String?
  createdAt DateTime
  published Boolean     @default(false)
  title     String      @default("")
  updatedAt DateTime
  author    User       @relation(fields:[id])
}

model User {
  id    Int     @id @default(autoincrement())
  email String  @default("") @unique
  name  String
  post  Post[]
}

Ran migrate save, migrate up, prisma generate.
Ran script node index.js
const { PrismaClient } = require('@prisma/client')

let client
async function main() {
  client = new PrismaClient()
  await client.connect()
  await client.user.create({
    data: {
      name: 'cool',
      email<EMAIL_ADDRESS>    },
  })
  const posts = await client.user.findMany()
  console.log(posts)
}

main()
  .catch(console.error)
  .finally(() => client.disconnect())

Expected behavior
Expected it to work properly.
Environment & setup

OS: Mac OS
Database: Postgres
Prisma version: "@prisma/cli": "2.1.0",
Node.js version: v12.16.1

Did the second migrate run actually add the autoincrement and change the database?

No it didn't. I'd expect to see something in "DEFAULT" in the screenshot above if that were the case. So maybe it's a migrate issue?
I figured all @default behavior would be in the Prisma-layer. autoincrement as a concept probably wouldn't work if that were the case though.

In my understanding the screenshot was from after running migrate the first time. Was the screenshot identical after the second run?

I figured all @default behavior would be in the Prisma-layer. autoincrement as a concept probably wouldn't work if that were the case though.

Yes, @default can currently be both Prisma or DB level depending on the details. Confusing.

I can reproduce this. Looks like migrate didn't generate any SQL command for this migration:


Support for SSD-Mobilenet fine-tune

Dear tensorflow-hub developers,
as frequently reported: https://github.com/tensorflow/models/issues/4881
The objection detection API: https://github.com/tensorflow/models/tree/master/research/object_detection is not stable.
Could we support objection detection fine-tune in tensorflowhub?

@Leslie-Fang ,
As per my understanding, this issue is similar to #509. Can you please confirm. Thanks!

@rmothukuru Thanks for the reply. Yes, similar question, I am looking for a ssd-mobilenet model trained in coco-dataset for objection detection.
I tried the https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/detection_model_zoo.md
But as the   https://github.com/tensorflow/models/issues/4881 reported. The loss is not stable when we fine-tune them.

Close and keep an eye to https://github.com/tensorflow/hub/issues/509


Added Caesar Cipher

Implement the Caesar Cipher Algorithm using python language. Please Merge this.

You cannot direcly create a PR without getting an issue assigned. And there are templates as well to follow for both issue and PR. Kindly follow the format. @manthan0227


InteractiveViewer doesn't re-scroll child into view when child shrinks

If the child of an InteractiveViewer becomes smaller, it should change the scroll position(s), if necessary, so that the child is visible.  It doesn't.
To reproduce with the attached code:
Size window to something smaller than 1000x1000 (e.g. on desktop)
Check checkbox (making child big)
Scroll child so lower-right corner is visible
Uncheck checkbox
Now the child is completely invisible, and can't be scrolled back into view.
This behavior was observed on the MacOS runtime.

flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 2.2.1, on macOS 11.2.3 20D91 darwin-arm, locale
    en-US)
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for
      more details.
[✓] Xcode - develop for iOS and macOS
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.2)
[✓] IntelliJ IDEA Community Edition (version 2021.1)
[✓] Connected device (2 available)

/// Flutter code sample for InteractiveViewer
// This example shows a simple Container that can be panned
// container size set via checkbox

minimal code sample
import 'package:flutter/material.dart';

void main() => runApp(const MyApp());

/// This is the main application widget.
class MyApp extends StatefulWidget {
  const MyApp({Key? key}) : super(key: key);

  static const String _title = 'Flutter Code Sample';

  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  bool big = false;
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: MyApp._title,
      home: Scaffold(
        appBar: AppBar(
            leading: Checkbox(
                value: big,
                onChanged: (_) => setState(() {
                      big = !big;
                    })),
            title: const Text(MyApp._title)),
        body: MyStatelessWidget(big: big),
      ),
    );
  }
}

/// This is the stateless widget that the main application instantiates.
class MyStatelessWidget extends StatelessWidget {
  final double size;
  const MyStatelessWidget({Key? key, required bool big}) :
      size = big ? 1050 : 50,
        super(key: key);

  @override
  Widget build(BuildContext context) {
    return Center(
      child: InteractiveViewer(
        boundaryMargin: const EdgeInsets.all(20.0),
        constrained: false,
        scaleEnabled: false,
        panEnabled: true,
        child: Container(
          constraints: BoxConstraints.tight(Size(size, size)),
          decoration: const BoxDecoration(
            gradient: LinearGradient(
              begin: Alignment.topCenter,
              end: Alignment.bottomCenter,
              colors: <Color>[Colors.orange, Colors.red],
              stops: <double>[0.0, 1.0],
            ),
          ),
        ),
      ),
    );
  }
}

Hi @zathras
Thanks for filing the issue
Reproduced the issue using the following minimal code sample

minimal code sample
/// Flutter code sample for InteractiveViewer

// This example shows a simple Container that can be panned
// container size set via checkbox

import 'package:flutter/material.dart';

void main() => runApp(const MyApp());

/// This is the main application widget.
class MyApp extends StatefulWidget {
  const MyApp({Key? key}) : super(key: key);

  static const String _title = 'Flutter Code Sample';

  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  bool big = false;
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: MyApp._title,
      home: Scaffold(
        appBar: AppBar(
            leading: Checkbox(
                value: big,
                onChanged: (_) => setState(() {
                      big = !big;
                    })),
            title: const Text(MyApp._title)),
        body: MyStatelessWidget(big: big),
      ),
    );
  }
}

/// This is the stateless widget that the main application instantiates.
class MyStatelessWidget extends StatelessWidget {
  final double size;
  const MyStatelessWidget({Key? key, required bool big}) :
      size = big ? 1050 : 50,
        super(key: key);

  @override
  Widget build(BuildContext context) {
    return Center(
      child: InteractiveViewer(
        boundaryMargin: const EdgeInsets.all(20.0),
        constrained: false,
        scaleEnabled: false,
        panEnabled: true,
        child: Container(
          constraints: BoxConstraints.tight(Size(size, size)),
          decoration: const BoxDecoration(
            gradient: LinearGradient(
              begin: Alignment.topCenter,
              end: Alignment.bottomCenter,
              colors: <Color>[Colors.orange, Colors.red],
              stops: <double>[0.0, 1.0],
            ),
          ),
        ),
      ),
    );
  }
}

Reproduced on the following channels

stable
master

❌
❌

Check flutter doctor -v outputs for each channel below

flutter doctor -v
[✓] Flutter (Channel stable, 2.2.1, on macOS 11.4 20F71 darwin-x64, locale
    en-GB)
    • Flutter version 2.2.1 at /Users/tahatesser/Code/flutter_stable
    • Framework revision 02c026b03c (4 days ago), 2021-05-27 12:24:44 -0700
    • Engine revision 0fdb562ac8
    • Dart version 2.13.1

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Volumes/Extreme/SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Volumes/Extreme/SDK
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Volumes/Extreme/Xcode.app/Contents/Developer
    • Xcode 12.5, Build version 12E262
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] VS Code (version 1.56.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.22.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 11.4 20F71 darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 91.0.4472.77

• No issues found!

[✓] Flutter (Channel master, 2.3.0-17.0.pre.121, on macOS 11.4 20F71 darwin-x64, locale en-GB)
    • Flutter version 2.3.0-17.0.pre.121 at /Users/tahatesser/Code/flutter_master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 71e711547f (12 hours ago), 2021-05-30 19:31:03 -0700
    • Engine revision 73fe3dd31c
    • Dart version 2.14.0 (build 2.14.0-165.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Volumes/Extreme/SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Volumes/Extreme/SDK
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Volumes/Extreme/Xcode.app/Contents/Developer
    • Xcode 12.5, Build version 12E262
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2021.1.1)
    • IntelliJ at /Volumes/Extreme/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.56.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.22.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 11.4 20F71 darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 91.0.4472.77

• No issues found!

✅ : No Issue ❌: has Issue

cc @justinmc

@zathras You could work around this by using TransformationController and resetting the matrix when the checkbox is checked.
I see what you mean that this is a bad experience and it would be nice if InteractiveViewer handled it automatically.  There are plenty of cases where you wouldn't want InteractiveViewer to change the matrix when the child rebuilds, though...  I'm not sure what the solution for all cases would be.

I'm going to piggy-back on this since I have a similar use-case.  I wanted to allow the user to zoom and pan an image, then save off that transform so it can be restored later to get the same view of that image.  I noticed that when InteractiveViewer size was changed, the same transform does not result in the same portion of the image being shown.
I understand why that is (at least, I think I do), the transform is operating on pixels so it will translate an absolute screen distance regardless of how big the widget is.
If this is the case, maybe one solution would be to normalize the translation values of the transform based on the size of the widget?  So instead of pixels you translate fractions of the widget size


swift_build_support/cmake.py: parallelize default CMake build

CMake's bootstrapping script can't infer a number of parallel build jobs from the number of CPU cores on its own, which means that it's not parallelized by default. Let's get the value of CPU cores when build_jobs argument is not explicitly set.

@swift-ci smoke test

For modern Python I'd prefer an f-string, which seems to me like a thing closest to Swift string interpolation, but I don't think we started requiring specific minor Python versions yet, right? I assume we have to support Python 3.0 in these scripts?

Pretty sure that we want Python 3.9 as that is what Xcode and Visual Studio already ship with.  The question is, do the oldest Linux distributions that we support have that python version?

@swift-ci smoke test

@swift-ci python lint

make -j only has an effect on post-bootstrap build jobs, while there's a substantial amount of time spent building code sequentially in CMake's bootstrap script without that --parallelize option


Microsoft.Insights/scheduledqueryrules

Describe the noise
Resource type (i.e. Microsoft.Storage/storageAccounts)
Microsoft.Insights/scheduledqueryrules
apiVersion (i.e. 2019-04-01)
2018-04-16
Client (PowerShell, Azure CLI, or API)
PowerShell
Relevant ARM Template code (we only need the resource object for the above resourceType and apiVersion, but if it's easier you can include the entire template
Expected response (i.e. "I expected no noise since the template has not been modified since the resources were deployed)
Changes of properties. I am changing properties.enabled, properties.schedule.frequencyInMinutes and properties.schedule.timeWindowInMinutes, properties.action.aznsAction.actionGroup but none of these are reported as changed. I would guess any property on that RP will never report as changed. The whole resource is reported as ignored for some reason.
Current (noisy) response (either include a screenshot of the what-if output, or copy/paste the text)
  * Microsoft.Insights/scheduledqueryrules/8a42db29-6d48-551c-92c6-f6aec5adadd5

VERBOSE: 12:38:46 - Resource Microsoft.Insights/scheduledQueryRules '8a42db29-6d48-551c-92c6-f6aec5adadd5' provisioning status is succeeded

Additional context
Add any other context about the problem here.

Are you using the reference() function to calculate the name of the scheduledQueryRule?

The name is constructed by using guid() function. The parameter for that function is always the same. I have separate property in properties displayName which designates the user friendly name.

it would be helpful if you can share the template snippet, but I think we know what is happening. Is the guid() function executed in a nested deployment?

The template was send on private channel. The guid() function is used in linked template. For input the guid() function uses string variable.

After checking today the resource also is not shown on initial deployment that will be created. When the resource is not deployed it should show that it will be created with all its properties.

Stan - I checked the link you sent me earlier and could not access it. The issue likely has to do with how the name is being calculated, but we want to check the template to know for sure.

I have done a test where the name is just a string (just variable to reference it but without using guid() or uniqueString(). Behavior is the same for both problems. Template will be send in e-mail.

The template I have send is the one without using guid() as the end results are the same


[MB-293][MB-284][MB-305][MB-301][MB-297] Delete unused reducers

Description
This PR completes a major portion of the Redux Refactor project by deleting reducers that have been deprecated and are no longer referenced in the code. It also removes redundant update actions that were being called in the entities saga (these were kept around to make sure API data was updating both the new entities reducer and the legacy reducers).
Reviewer Notes
No user-facing changes expected with this PR. As long as tests pass and critical UX flows look fine it should be good to go!
Setup
To run the app locally:
make server_run
make client_run

Code Review Verification Steps

[ ] If the change is risky, it has been tested in experimental before merging.
[ ] Code follows the guidelines for Logging
[ ] The requirements listed in Querying the Database Safely have been satisfied.
Any new migrations/schema changes:

[ ] Follow our guidelines for zero-downtime deploys (see Zero-Downtime Deploys)
[ ] Have been communicated to #g-database
[ ] Secure migrations have been tested following the instructions in our docs

[ ] There are no aXe warnings for UI.
[ ] This works in Supported Browsers and their phone views (Chrome, Firefox, IE, Edge).
[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] User facing changes have been reviewed by design.
[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

References

Jira stories for this change: PPM reducer, moves reducer, legalese reducer, orders reducer, service member reducer

Warnings

:warning:

Files located in legacy directories (src/shared or src/scenes) have
been edited. Are you sure you don’t want to also relocate them to the new file structure?
View the frontend file org ADR for more information

:warning:
Please add the JIRA issue key to the PR title (e.g. MB-123)

  Generated by :no_entry_sign: dangerJS against 0407e8d2c5244f9b3e256dedef83c35ecc566f5e

I ran into a CSS build error in CI and was debugging that, which is why I've also removed the custom.scss import from CSS module files (this is not needed)


Remove flex gap polyfill

According to our browserslist config, this is only needed for very old versions of mobile Safari, which we don't support anyway.
cf. https://browsersl.ist/#q=>0.2%25
not+dead
not+op_mini+all
not+fully+supports+flexbox-gap

It works in my version 🤷♀ I don't know how much that is worth in relation to caniuse data. x)

Note, too, that the workaround isn't perfect. It adds a margin indiscriminately whereas gap only applies to flex or grid containers. This is actually relevant for this project since the helpers I'm removing here are indirectly used in non-flex or -grid contexts as a side effect of using other styles which happen to call them. That's a problem in and of itself, but not as easily fixed, sadly. 😅


Request for chatglm3 model loader or converter for GGUF.

The GGUF models are already available here for chatglm3.
https://huggingface.co/mradermacher/chatglm3-6b-GGUF/tree/main
We need a gguf model loader for chatglm3, so we can use it for Kolors.
Thanks!

This repo currently only extends the unet and text encoder base nodes to support gguf models, so it would have to be natively supported in ComfyUI first for that to be possible.
To support a model like that we'd have to bundle llama.cpp in some form, not to mention the overhead of having to manage free vram between what would essentially two backends. With native support, we could just use the same logic as with T5 and create a mapping for the blocks to the ComfyUI format without much overhead.
As far as I can tell, this is the issue tracking it in ComfyUI: https://github.com/comfyanonymous/ComfyUI/issues/4113


Removing qsearch depth limit causes engine to crash

Probably an out of bounds access in the move array; am confused as to how qsearch can exceed depth 32

Adding more mvv-lva seems to mitigate this issue; regardless, lemme increase max ply


Make metadata service track the events/changes for a specific set of namespaces in multi-tenant clusters

Is your feature request related to a problem? Please describe.
Currently, metadata service keeps track of the events/changes in the entire cluster. However, the number and amount of events in big and multi-tenant clusters can make the metadata service run out of memory. As such it's desired to limit the scope of the events to a subset of the namespaces that a tenant cares about to be tracked by metadata service.
Describe the solution you'd like
A solution would be making the metadata service configurable to provide a list of namespaces to track the events in.
Describe alternatives you've considered
There's no clear alternative as of now and the metadata service runs out of memory after a while. This however seems to be a harmless event as the Pod restarts and doesn't affect the functionality of Pixie as a whole.
Additional context
N/A

This was added and released as release/vizier/v0.14.3
Thanks for the contribution @MrAta


Db opts

Replaced update/insert logic for database properties with a merge statement.
Replaced "".equals(str) with str.isEmpty().
Added missing serialVersionUID.
Added types for raw declarations (Iterator and HashMap).

Most of the changes are great. I'm concerned about the MERGE statement. Currently, we have users that have swapped out for Oracle and MySQL. I believe the merge will work fine in Oracle - but the syntax for MySQL is different (see INSERT... ON DUPLICATE KEY UPDATE...). Currently, there is no built in mechanism to use a different resource bundle for a different SQL Dialect (this is planned, just not built yet).

I understand the apprehension on the merge statement.  I wondered about that.
I was mislead because I saw that ADD_DICT_CPE already exists and it uses merge.  And then I also noticed that merge was added to the ANSI SQL 2003 standard.
Because the code structure is different (one merge statement vs two statements for insert and update), I thought an ideal strategy is to query the DatabaseMetaData to see if the merge statement is available.  Alas, I don't see any such way to derive that information.
Let me think about this some more...  Worse case is that I will revert that so that you can accept the other minor clean up.

OK, I reverted the merge command.  Hopefully you can accept the rest.

Sorry for the confusion because dead code uses the merge statement (I would have caught that prior to a release in testing). The ADD_DICT_CPE and supporting code was created to test a theory - turns out we didn't need the code. I left the code in place and forgot to mark it as unused/un-needed. (I didn't want to wholly delete the code so I could test things in the future)


Items get replaced by the jetpack occasionally

MC: 1.16.5
Forge: 36.0.14
Curious Jetpacks: 1.4
Iron Jetpacks: 4.2.0
I'm not sure if this is a bug with iron jetpacks or curious jetpacks, but as I have your mod and the jetpack was always the jetpack in the curio slot (when it doesn't replace an item).
This has happened twice now, both times I right clicked my currently held item (inventory closed) and the jetpack voided the item and placed itself in that slot. Opening the curio slot showed a copy of the jetpack and interacting with this copy voided the copy (client desync?). The jetpack that replaced the hotbar item is the real jetpack and I have not found a way to get the lost item back.

So I've had a similar bug happen to me. I would randomly loose items upon them being used. I've even had it that I didn't have a jetpack in the curious slot. Lost a LOT of items this way. Took me a long time to figure out what mod was causing it

I'm not actually sure if this mod is causing the issue, but it's always been the jetpack for me that has replaced another item, the item replaced was different both times. It could be iron jetpacks but given that curious jetpacks modifies the jetpack I wanted to report it here first.

I've tested the occurrence with just Botania (the mod I could most reliably have it happen to, with it's Terra Trunkator) and this mod with Iron Jetpacks. Disabled this mod, hasn't happened again since.

Can't reproduce, need exact steps.

The annoying thing is that it doesn't happen 100% of the time. "best" way I could get it to fire (still not 100% mind you) was using Botania's Terra Truncator to cut down trees with plenty of Mana.

It happens very rarely for me, I even restored from backup a could of times and did similar things and not reproduced it.

I can confirm that I've experienced this issue twice after around thirty hours of gameplay with my jetpack, ATM6 modpack with a few additional mods.
It doesn't appear to be repeating after reloading from a backup from me.
I was just shearing some sheep with my shears (Silent Gear) when I lightly tapped the space key and my shears disappeared and were replaced by my jetpack.
Checking the Curio menu, I saw what appeared to be a copy of the jetpack still in the back slot, but after clicking it the client synced back up.
The shears were nowhere to be found (I checked the ground, my inventory, reloaded the save, etc).
Thanks!

The worst part is it's inconsistent and I haven't been able to reproduce it in dev once.

Yeah the rarity and inconsistency mean this is going to be a bugbear and a half to troubleshoot (to the point that when it first happened and devoured my paxel, and I couldn't find a good way to reproduce it, I just wrote it off as a "hopefully this doesn't happen again" kinda bug).
If you want to put together a version of Curious Jetpacks that has some advanced logging/debugging information, I can install that and if it happens again I can get you the log file.
And if it occurs again, I'll try my best to document the exact steps, and if it can be reproduced or not.
Thanks!

I have also had this happen at least twice. Sadly no reproduce-able steps. but both times for me it placed a duplicate jetpack into my tool belt https://github.com/gigaherz/ToolBelt and removed the active tool from my hotbar.

the only feasible way of even beginning to track this would be to log every time an item in the hotbar is changed with a stacktrace, but that will easily lead to a log that's hundreds of thousands of lines long.

As a sidenote, I didn't have a toolbelt created/equipped (it is in the modpack, however) during the first two instances that I saw of this occurring.
And that aside, could you only log instances of when an iron jetpack moves into the hotbar? Possibly only when it moves from the Curios into the hotbar?
That should truncate the amount of lines massively, although I'm not sure it is possible to do that or if there would be something stopping that from working.
Still just the two instances for me thus far, too.
Thanks!

I've also been having flashes of what looks like my jetpack temporary replacing my main hand tool for about a frame or two.

Here's a test build that logs every jetpack movement in the inventory, when the item replacing happens send over a log.
https://cdn.discordapp.com/attachments/559946769597857803/828250844322856980/curiousjetpacks-1.4a-DEV-1.16.5.jar

I've got the dev build installed and I can confirm that I'm seeing the logJetpack log entries added when manually moving the jetpack to the hotbar.
If it occurs again, I'll get my logfile over to you and hopefully we can get this debugged.
Thanks!

Had it happed twice more today...  I'll give the test build an install for my next playthrough.  However I did find some more details that may help in the debuggness
First happenstance: (Can't be sure of exact steps in between rounds)
Spam clicking with building gadget, suddenly a wild jetpack replaces it. I check my curious and the jetpack still equipped as well as the one in the hand that replaced the building gadget.  I send the "duplicate" to the trash slot (mod)  as well as a few other items deleting the jetpack from the trash inventory.  Suddenly my equipped jetpack is gone. So they are still linked somehow.....
Second happenstance:
Stack of 'stone bricks' in my hand placing them (off hand empty), suddenly a wild jetpack appears in their place. without doing any other clicking or inventory changing I opened my inventory, opened my curios screen, noticed the jetpack was still equipped, also notice the stone bricks have returned and the phantom jetpack disapeered.

https://gist.github.com/Lupus590/abb8af19cb5012dbe358b59c9418b66a
It just hopped into my powah energising orb. No item was voided I think.

Alright, changed some code to be safer and hopefully not void/replace anymore


fix(kit): use ellipsis for label in pdf-viewer when overflow text

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows Conventional Commits
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Refactoring
[ ] Code style update
[ ] Build or CI related changes
[ ] Documentation content changes

What is the current behavior?
Closes #3837
What is the new behavior?

Does this PR introduce a breaking change?

[ ] Yes
[x] No

nit: don't we need a little space between text and action-button?

nit: don't we need a little space between text and action-button? how many pixels is needed?

how many pixels is needed?

looks good now 👍


Read Flux meeting ical

Read the cncf-flux-dev calendar (ical) and show the events in the upcoming month.
Fixes: #449
Things that still need doing:

[x] link to the calendar so folks know how to find out more (Daniel)
[x] do timezone arithmetic so everything is in one TZ
[x] make this look pretty (@juozasg)
[x] decide as a group that we want to also keep track of talks, etc in our cncf-flux-dev calendar

- [ ] make sure everyone involved has access to the calendar (moved to https://github.com/fluxcd/community/issues/113)
- [ ] hook up calendar include generation with daily cronjob (should be handled by https://github.com/fluxcd/website/blob/main/.github/workflows/netlify.yml)
- [ ] figure out if we can link to the events in question... do we get the data in the ICS somewhere (Daniel) - moved to #461
- [ ] make links clickable in the event description - moved to #461
- [ ] have a mouse-over with event data (@juozasg + Daniel) - moved to #461
- [ ] maybe convert to browser TZ(?) - moved to #461

See the calendar table in the community section of https://deploy-preview-452--fluxcd.netlify.app/
We could do a mouse-over which shows you the event description as well, cf https://lists.cncf.io/g/cncf-flux-dev/calendar

Things that still need doing:

[ ] figure out if we can link to the events in question... do we get the data in the ICS somewhere (Daniel)
[ ] link to the calendar so folks know how to find out more (Daniel)
[ ] have a mouse-over with event data (@juozasg + Daniel)
[ ] make this look pretty (@juozasg)
[ ] decide as a group that we want to also keep track of talks, etc in our cncf-flux-dev calendar
[ ] make sure everyone involved has access (including @kingdonb @staceypotter - who else?)

Part 2 is https://github.com/fluxcd/website/issues/461

A minute too late, these look great! @dholbach 👏


Migrate near_by_fragment to constraint layout

#81
Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my code
[x] I have commented on my code, particularly in hard-to-understand areas
[x] My changes generate no new warnings

There is no design for this layout

@akmaurya7 don't modify PR template. Add all required Information like screenshots.

Image of successful build gradle

Image of layout

sir i work completly on the signup fragment , can i create new pr for that now


Convert locust benchmark tests to K6

A summary of what the locust script did: by @phil-davis

be able to run against an OCIS server or an oC10 server
provision test users, and remove them at the end of the test (can be optional scripted steps, in case the system-under-test has existing users already provisioned, and we want to just test with those, or need to create them at test startup) (needs to understand any differences in user provisioning on OCIS and oC10)
test user names can just be sequentially numbered (e.g. they were locust1 locust2 ...), or whatever
generate a different password for each test user
generate a different email address for each test user
"init" new users before the real test run by uploading a small file initial-file.txt and creating a folder data (that avoids "init" overhead effecting "ordinary" testing)
have 6 small example files up to 100KB

For each user the "test workflow" is:

download initial-file.txt (optional)
upload each of the 6 files
repeat...

Other:

allow the number of users to be ramped up to 50, 100, 200, 300 (these were the numbers used in locust to record some older results) (we will be able to vary this!)

record separate result statistics for download and upload

be able to get requests/sec, average response time, counts of successful and unsuccessful requests

output results to file in some "easily understood" format (e.g. locust produced CSV files)

be able to run the K6 test runner on a different system to the system-under-test, across a real network

Afterwards we can make it flexible to change the mix of MKCOL, download, upload, delete, rename etc to get results for combinations of transactions...

let me know if you need help on this topic

closing this issue after chatting with @fschade
all whats needed for now is done

closing this issue after chatting with @fschade
all whats needed for now is done


0.1.27 breaks in Github Actions

We are using uv in Github Actions to install our dependencies. It has been running great for a few weeks now until this afternoon (after 0.1.27 released). Using https://github.com/marketplace/actions/setup-uv, we did not have uv locked to a specific version, and it was unable to install dependencies, giving the error.
Running the command uv pip install --system -r requirements.txt produces the error:
Resolved 202 packages in 605ms
thread 'main' panicked at crates/uv/src/commands/pip_install.rs:670:18:
Resolution should contain all packages
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

After a bit of research, I tried locking CI to version 0.1.26 and things worked fine.
Resolved 202 packages in 6.16s
Downloaded 3 packages in 94ms
Installed 3 packages in 11ms

Our CI runner OS is Ubuntu 22.04.4 LTS.

This sounds very likely to be a regression related to #2596
Can you share more details on the requirements? Do you have a minimal reproduction?

Or even a maximal reproduction :)

One reproduction is if you have multiple versions of a package installed. Then, the resolver will try to use them, but the install plan will reject them all.
uv venv --seed
source .venv/bin/activate
pip install anyio==3.7.0 --ignore-installed
pip install anyio==4.0.0 --ignore-installed
uv pip install anyio black --verbose

Yields:
thread 'main' panicked at crates/uv/src/commands/pip_install.rs:678:18:
Resolution should contain all packages
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

I got this same error on my local machine when installing the following minimal requirements.txt file:
--extra-index-url https://private-package-registry/simple
--extra-index-url https://download.pytorch.org/whl/cpu

torch==2.1.0+cpu
private-package==1.0.0  # Does not depend on torch

uv pip install -r requirements.txt
Resolved 47 packages in 330ms
thread 'main' panicked at crates\uv\src\commands\pip_install.rs:670:18:
Resolution should contain all packages
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

@bschoenmaeckers are any of those packages already installed locally?

@bschoenmaeckers I cannot reproduce this:
❯ cat requirements.txt
--extra-index-url https://astral-sh.github.io/packse/0.3.8/simple-html/
--extra-index-url https://download.pytorch.org/whl/cpu

torch==2.1.0+cpu
example-a==1.0.0

❯ uv venv
Using Python 3.11.8 interpreter at: /usr/bin/python3
Creating virtualenv at: .venv
Activate with: source .venv/bin/activate
❯ cargo run -- pip install -r requirements.txt
    Finished dev [unoptimized + debuginfo] target(s) in 0.16s
     Running `target/debug/uv pip install -r requirements.txt`
Resolved 11 packages in 558ms
Installed 11 packages in 860ms
 + example-a==1.0.0
 + example-b==2.0.0
 + filelock==3.9.0
 + fsspec==2023.4.0
 + jinja2==3.1.2
 + markupsafe==2.1.3
 + mpmath==1.3.0
 + networkx==3.2.1
 + sympy==1.12
 + torch==2.1.0+cpu
 + typing-extensions==4.8.0

@bschoenmaeckers are any of those packages already installed locally?

I cannot reproduce this error anymore after creating a new venv. So it was maybe just a fluke.

I'm going to close for now since we've fixed a few issues here. If you see it again in the latest release, please LMK and we'll re-open!


[BUGFIX] Solves ES Module issue with babel-runtime

This might be a fix for #934. Please verify if this is an appropriate solution.
See https://github.com/wbkd/react-flow/issues/934#issuecomment-784451274
Solves https://github.com/wbkd/react-flow/issues/934

I don't think this will fix the issue. At least I can successfully verify it would be solved by using this fork.


feature request : hotkey to display item amount near crosshair

i usually prefer to have total item amount displayed in the hotbar, but when i build it's more convenient to have it displayed near the crosshair
going to the mod options everytime is kind of tedeious so:
i'd like it if i could hit a hotkey and have item count show up near the crosshair, then hit it again and have it removed from there

Welp, this took all day... anyways it's up on curseforge. (version 1.5.0)
See also: Wiki-Page: Configuring an Overlay - Hotkeys


Rollup layers when layer stacks get too big

Whenever a layer is retrieved which has too many ancestors, we should rollup into one big layer.
When there's 100 layers or more, rollup should happen immediately, and the returned layer should be the version that is rolled up.
When there's between 25 and 100 layers, rollup can happen in the background, and queries can continue with the big layer stack.
This will fix #13 and make things faster in general.

Closing this, as this is a rather old issue, and rollup has now been implemented (though not yet in an automated way).

Closing this, as this is a rather old issue, and rollup has now been implemented (though not yet in an automated way).