Move attribute naming docs from specification

Related to https://github.com/open-telemetry/opentelemetry-specification/issues/3746.
Moves opentelemetry-specification/specification/common/attribute-naming.md and opentelemetry-specification/specification/common/attribute-requirement-level.md to semantic-conventions.
I've attempted to bring the commit history for these files along, but could use an extra set of eyes from @jsuereth, who I believe brought he git history with when seeding this repository.

I believe this fixes #295 cc @joaopgrassi

FYI @open-telemetry/specs-semconv-maintainers, I believe that when it comes time to merge this, we should preserve the commit history instead of squashing.

@chalin FYI - see also https://github.com/open-telemetry/opentelemetry-specification/pull/3758 🙂

Reminder to whoever merges this:

FYI @open-telemetry/specs-semconv-maintainers, I believe that when it comes time to merge this, we should preserve the commit history instead of squashing.

Reminder to whoever merges this:

FYI @open-telemetry/specs-semconv-maintainers, I believe that when it comes time to merge this, we should preserve the commit history instead of squashing.

@arminru @jsuereth Rebase and merge is not enabled for this repository:

Can we enable it temporarily? Or how can we achieve the above otherwise?

The commit history remains available in the PR, why impose that on the main branch? For projects that are likely to have a long life it is preferable, IMHO, to keep the main branch's history as clean and terse as possible. (My 2 cents :)

The commit history remains available in the PR, why impose that on the main branch? For projects that are likely to have a long life it is preferable, IMHO, to keep the main branch's history as clean and terse as possible. (My 2 cents :)

@chalin The goal here is to preserve the previous history from the spec repo for the files that are moved into this repository.
@AlexanderWert I can temporarily enable for this PR.

@chalin The goal here is to preserve the previous history from the spec repo for the files that are moved into this repository.

Oh, got it! 👍🏻

This branch cannot be rebased due to conflicts

@jack-berg  do you mind manually rebasing this and push -f on your private branch?

This branch cannot be rebased due to conflicts

@jack-berg do you mind manually rebasing this and push -f on your private branch?

Done 👍


Freestyle Libre App (Diabetes Sensor) hangs after unc0ver jailbreak.

Somehow the jailbreak seems affecting my diabetes Sensor App „Libre Link“ and makes it unresponsive freeze without the chance on getting it back to life except closing the app. I don't know yet if Alarms are affected as well.
Could you look into it or if too much asked might put a note out about the jailbreak and medical devices like diabetes sensors or insulin pumps?
As a little background: the most advanced diabetes treatments comes from an active community and developed several apps like https://spike-app.com.  Apple decided at some point to disallow non FDA approved medical apps which can control certain devices like sensors/ pumps etc. and banned them from the app store. So the method to install those Apps is either compile on xcode or use a jailbreak... but having a jailbreak breaking those devices is not pleasant :-) so if you want to help a huge community of diabetes patients around the world - please take a look !

I think, that is good possible, that the app is using some sort of Jailbreak detection. At first, I'll try to some Jaibreak Detection Tweak:

Install Shadow from repo https://ios.jjolano.me

Just open this page in Safari and click on plus in the right upper corner and add this source to the

Configure Shadow from settings.

I am having the same issue Shadow did not fix the problem.

I tried it as well with Shadow and a few other apps to cascade the jailbreak towards the app. None helped so far. Also doubt its a Jailbreak detection. My secondary Phone (iPhone X running checkmate) wont facing this crashes.

Noticed the same behaviour on my XS Max; quitting and reopening the app appears to be the only temporary workaround.
Tried disabling tweak injection with Choicy and disabling JB detection with Liberty Lite but so far neither of them appear to make a difference.

Hi all - was any fix/bypass found for this?
Thanks

Make sure this repo is installed for dependencies https://rpetri.ch/repo
Add this repo https://cydia.ichitaso.com
Install KernBypass (Unofficial)
Reboot device
Open Settings -> KernBypass
Press Enable KernBypass. Make sure that kernbypassd is enabeled.
Select LibreLink from the list.

DONE

Make sure this repo is installed for dependencies https://rpetri.ch/repo
Add this repo https://cydia.ichitaso.com
Install KernBypass (Unofficial)
Reboot device
Open Settings -> KernBypass
Press Enable KernBypass. Make sure that kernbypassd is enabeled.
Select LibreLink from the list.

DONE

This does not work on my 12.4 iPhone XS. Does anyone know how to solve this?? I have tested with almost all bypass tweaks

The same issue. How to solve it？


GH-34492: [Go] Fix missing boolean plain encoder state update

Rationale for this change
This is a bugfix in the go PlainBooleanEncoder. Statistics of boolean columns, as well as data in rare cases, can be malformed. This is a data-correctness bugfix.
What changes are included in this PR?
FlushValue does not reset the intermediary BitMapWriter position. In this way previously-encoded values might "leak" into subsequent FlushValue calls. Page emission and statistics emission (for examples) manifest this issue.
Are these changes tested?
Yes. The most direct test is the new TestBooleanPlainDecoderAfterFlushing in internal\encoding\encoding_test.go, but I also added TestBooleanStatisticsEncoding as a "consumer" of that encoder.
Question: should I add more testing? I experimentally harnessed a fuzz test targeted towards the Boolean encoder, and that manifested the issue, but that's a fuzz test and also targeted towards Bools alone. I also provisionally implemented a (hacky) extension to the roundtrip tests to have an intermediate flush, but that didn't seem enough to manifest the (somewhat value-count-sensitive) issue.

Are there any user-facing changes?
This is a correctness fix, so other than that, no.

This PR contains a "Critical Fix".

Closes: #34492

This is certainly a weird little bug, very interesting. Thanks for filing this @aaron-mongodb! Can you rebase main and update this? There was a typo in the go workflow yaml and I just merged a fix for that. I want to make sure the Go workflows get run with this test.


Disk and MongoDB cleanup

Scripts for cleaning up old files and duplicates are in progress. Anticipate completion by Friday November 15.

This was completed.


Update Action to use Node16

Node12 is getting deprecated in 2023 so we upgrade the action to use node 16. See https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/

Hi @mcremer-able be aware that maybe we also need to update all tests and all other references of node12 within the action / project.
I've opened a pull-request to update all of these on #158 feel free to check it out.


Upstream diffusers PR was merged, this no longer seems necessary

What type of PR is this? (check all applicable)

[ ] Refactor
[ ] Feature
[x] Bug Fix
[ ] Optimization
[ ] Documentation Update
[ ] Community Node Submission

Have you discussed this change with the InvokeAI team?

[x] Yes
[ ] No, because:

Have you updated all relevant documentation?

[ ] Yes
[x] No

Description
Related Tickets & Documents

Related Issue #
Closes #

QA Instructions, Screenshots, Recordings

Added/updated tests?

[ ] Yes
[ ] No : please replace this line with details on why tests
have not been included

[optional] Are there any post deployment tasks we need to perform?

Thanks for jumping on this while I was out yesterday. I tried to avoid this with this comment. But, looks like it got missed on version bump. Next time around I'll make sure there's unit test coverage so that something like this can't happen.


Upgrade proto dependencies to align with operator

Fixes #
Special notes for your reviewer:

Updating airflow to the latest version of gRPC now guarantees that it cannot build due to conflicting dependencies with apache-airflow. At least  before armada and airflow could get one the same version that was less than gRPC 1.62.0. What is the point of this fix?

You're right - that this PR end up being useless (our primary consumer of python client, is our airflow operator, will try to resolve proto version conflicts today on this). This was an attempt to fix airflow / python client incompatibility issue in a quick and simple way, but I didn't consider the opentelemetry-proto package and their pinned dependencies.


Find stragglers takes too long

maybe storyline could be that we've captured a UAV and you get the location of stragglers on your map?

Fixed


Allow multiple if/unless conditions in ActiveModel::Validations

Allow multiple if/unless conditions in ActiveModel::Validations as described in the Rails guide.
Reference: https://github.com/yasslab/railsguides.jp/blob/3c243cf2a78ff99a58f4646d4794810599f38a9a/guides/source/active_record_validations.md?plain=1#L1042-L1054
class Computer < ApplicationRecord
  validates :mouse, presence: true,
                    if: [Proc.new { |c| c.market.retail? }, :desktop?],
                    unless: Proc.new { |c| c.trackpad.present? }
end

/merge


fbopt ci failed after merged master into fbopt, with pr commandline interface entry point

https://github.com/marrlab/DomainLab/actions/runs/7583966552/job/20656686984#step:7:786
with commit
https://github.com/marrlab/DomainLab/pull/462/commits/aa1d5cd13e6a9db9d829604f81cdc1d7570876cb
no module named tensorboard
the previous commit has no such a problem.
can it be the pyproject.yaml file?  https://github.com/marrlab/DomainLab/pull/740/files

@agisga , will we get inconsistency now for the requirements.txt which is required by pypi and the pyproject.toml??
https://github.com/marrlab/DomainLab/pull/462/commits/2319105e39644757beba7d8aade32ed73576ec8c

now Creating virtualenv domainlab-okngg5wM-py3.10 in /home/runner/.cache/pypoetry/virtualenvs
Installing dependencies from lock file
Warning: poetry.lock is not consistent with pyproject.toml. You may be getting improper dependencies. Run poetry lock [--no-update] to fix it.
Because domainlab depends on tensorboard (^2.14.0) which doesn't match any versions, version solving failed.
Error: Process completed with exit code 1.
https://github.com/marrlab/DomainLab/actions/runs/7584309962/job/20657710847#step:6:132

this commit revert the way how pytest is run
https://github.com/marrlab/DomainLab/pull/462/commits/04a6f25da58c489a1c66cccb6ad2c8885495a4ec

@agisga , will we get inconsistency now for the requirements.txt which is required by pypi and the pyproject.toml??
2319105

requirements.txt was generated from pyproject.toml before. Did you rerun https://github.com/marrlab/DomainLab/blob/master/scripts/sh_gen_requirements.sh ?

tensorboard

It's better to run poetry add tensorboard instead of editing pyproject.toml by hand. Then it should find a compatible version.
You may also need to run poetry lock --no-update if you still get the warning about poetry.lock.

@agisga , do you have time to take a look maybe? I tried several commits but still could not resovle it.

@agisga , do you have time to take a look maybe? I tried several commits but still could not resovle it.

I can take a look at it tomorrow.

thanks! that will be great!

thanks! that will be great!

The PR seems to address the issue, unless I'm misunderstanding something: https://github.com/marrlab/DomainLab/pull/765

thanks! that will be great!

The PR seems to address the issue, unless I'm misunderstanding something: #765

thanks!  How did you find out the version fo tensorboard should be the one you changed to in the pyproject.toml?
https://github.com/marrlab/DomainLab/pull/462/commits/486d81a1e0c269725d6058faf81e31c474e1fa96

thanks! How did you find out the version fo tensorboard should be the one you changed to in the pyproject.toml?

I first deleted tensorboard from pyproject.toml, and then ran poetry add tensorboard. Then poetry determined this specific version to be used. I'm not sure how Poetry decides on what version to use, but I assume that it checks for compatibility with the other packages specified.


Clone RendererUtil.java

Describe the clone
This clone checks for OpenGL errors using glGetError and throws a RendererException with a descriptive error message if an error occurs.
Location of the clones
Provide the Filename/Line #
Starting at line 66 of C:\jmonkeyengineFall2024\jme3-android\src\main\java\com\jme3\renderer\android\RendererUtil.java
Starting at line 156 of C:\jmonkeyengineFall2024\jme3-android\src\main\java\com\jme3\renderer\android\RendererUtil.java

Clone Type
Is it a type #1 or #2 clone
Type 1
Expected outcome
Illustrate how the clone will be refactored
Code before refactoring

Code after refactoring
To Do
Additional context
Add any other context about the problem here.

Closing this issue in favor of this PR: https://github.com/rajbhensdadiya/jmonkeyengineFall2024/pull/10

Reopening this issue as it was linked to different PR

Closing this issue in favor of this PR: https://github.com/rajbhensdadiya/jmonkeyengineFall2024/pull/16


MOZILLA_PKIX_ERROR_REQUIRED_TLS_FEATURE_MISSING

Hey, i keep getting the above error when i try to connect to any website behind npmplus through firefox.

Here is the docker logs:
nginx: [warn] "ssl_stapling" ignored, issuer certificate not found for certificate "/data/tls/dummycert.pem"
nginx: [warn] "ssl_stapling" ignored, issuer certificate not found for certificate "/data/tls/dummycert.pem"
nginx: [warn] "ssl_stapling" ignored, issuer certificate not found for certificate "/data/tls/dummycert.pem"
2024/01/23 18:40:25 [warn] 754#754: "ssl_stapling" ignored, issuer certificate not found for certificate "/data/tls/dummycert.pem"
2024/01/23 18:40:25 [warn] 754#754: "ssl_stapling" ignored, issuer certificate not found for certificate "/data/tls/dummycert.pem"
2024/01/23 18:40:25 [warn] 754#754: "ssl_stapling" ignored, issuer certificate not found for certificate "/data/tls/dummycert.pem"

do you run a local instance?

Found the issue. Its right there in the text. There are some leftover "dummycert.pem" files from npm. Not sure, why they are there, but i deleted them and now its working

do you run a local instance?

Ok, i have to reopen this, as it is happening again. The dummycert.pem and dummykey.pem file appeared again. But deleting them didnt help this time. Additionaly, since switching to npmplus i cant access my jellyfin instance anymore. I always receive error code 400

do you run a local instance?

What exactly do you mean by "local instance"?

do you access it using an private ip / domain that rewrites to a private ip

Still not 100% sure what you mean, but i´ll try to explain. So i have npmplus and jellyfin on my homeserver. I have my pihole configured for local dns so when i access jellyfin.mydomain.de it returns the home server ip. But i already tested it without that route over pihole

see README.md:

Note: Internal/LAN Instance? Please disable must-staple in /opt/npm/tls/certbot/config.ini.

Will try that

Ok, looks like that helped. Also the error 400 was caused by adding this proxy header "proxy_set_header Host $host;"
Though i am not sure, why this now only happens with npmplus and didnt with npm, but nontheless, its working now

can I close?

Btw, this error is happening again, although i set "must-staple = false" in config.ini

did you just set it to false or did you also recreated your certs after that? (not renewed but recreated)

I have one certbot certificate, which i renewed after setting it to false. But it doesnt say anywere in the readme to reacreate them, does it? The readme only mention custom certificates if you use custom certificates, you need to upload the CA/Intermediate Certificate (file name: chain.pem) in the /opt/npm/tls/custom/npm-[certificate-id] folder

I've added it to the readme

"No such file or directory"

Restarted Container, and its not working anymore. In docker logs its stuck here:
----------------------------------------------------------
Let's Encrypt certificates cleanup - 2024/02/04 14:15:57
----------------------------------------------------------
Keeping /data/tls/certbot/archive/npm-10/cert4.pem.
Keeping /data/tls/certbot/archive/npm-10/chain4.pem.
Keeping /data/tls/certbot/archive/npm-10/fullchain4.pem.
Keeping /data/tls/certbot/archive/npm-10/privkey4.pem.
Keeping /data/tls/certbot/archive/npm-13/cert1.pem.
Keeping /data/tls/certbot/archive/npm-13/chain1.pem.
Keeping /data/tls/certbot/archive/npm-13/fullchain1.pem.
Keeping /data/tls/certbot/archive/npm-13/privkey1.pem.
8 file(s) kept.
0 file(s) deleted.
no DEFAULT_CERT_ID set, using dummycerts.
Working on file: /data/nginx/custom/events.conf
Working on file: /data/nginx/custom/http.conf
Working on file: /data/nginx/custom/http_top.conf
Working on file: /data/nginx/custom/root.conf
Working on file: /data/nginx/custom/server_dead.conf
Working on file: /data/nginx/custom/server_proxy.conf
Working on file: /data/nginx/custom/server_redirect.conf
Working on file: /data/nginx/custom/server_stream.conf
Working on file: /data/nginx/custom/server_stream_tcp.conf
Working on file: /data/nginx/custom/server_stream_udp.conf
Working on file: /data/nginx/custom/stream.conf
Working on file: /data/nginx/custom/stream_top.conf
Working on file: /data/nginx/default.conf
Working on file: /data/nginx/ip_ranges.conf
Working on file: /data/nginx/proxy_host/1.conf
Working on file: /data/nginx/proxy_host/11.conf
Working on file: /data/nginx/proxy_host/12.conf
Working on file: /data/nginx/proxy_host/2.conf
Working on file: /data/nginx/proxy_host/3.conf
Working on file: /data/nginx/proxy_host/5.conf
Working on file: /data/nginx/proxy_host/8.conf
Success.
usermod: no changes

-------------------------------------
 _ _  ___  __ __       _
| \ || . \|  \  \ ___ | | _ _  ___
|   ||  _/|     || . \| || | |[_-[
|_\_||_|  |_|_|_||  _/|_| \__|/__/
                 |_|
-------------------------------------
Version:  2.11.1+a779df8
Date:     Sun Feb  4 14:15:57 CET 2024
User:     npm
PUID:     99
User ID:  99
PGID:     100
Group ID: 100
-------------------------------------

And the admin page isnt loading anymore

"No such file or directory"

Yes, i saw that aswell and the file it is searching isnt there. I just deleted the old certificate and added a new one through certbot

run rm -v /opt/nginx/proxy_host/*, restart npmplus, open npmplus on port 81, then create your cert, then update all your hosts with the new cert


Debounce

There is test.memo for memoizing a test. An example from docs is a check for username existence.
Another useful thing to have is debouncing. It allows not to run validation on every key press, but wait a little until the value is stable for some time. In case of username check it will prevent sending unneeded requests to a server. It also helps when a validation is expensive.
Right now test.memo is a separate function, but since one might want to use both debounce and memo together maybe it makes sense to allow the last argument in the test function to be an options object (not just key string) with type of {memo?: any[], debounce?: number, key?: string}.

Hi @vonagam, thank you for this request 👋
I definitely see the value in debouncing async requests, and that's something that I've seen being asked about multiple times.
I am, though, not fully certain that debouncing should be something that's provided by Vest, but rather can be done in the userland (or consumer-land, rather), and there are several main reasons for that:

Debouncing can (and often should) be done on two different instances:
A. On keystroke - whenever a user types within a field
B. On Async server call.
While Vest could obviously handle both (one on the suite entry, and one on the async field), I think it might more complexity and another level of unexpectedness to how Vest operates.

Debouncing is not the only volume control function we may use. Along with Debouncing, people often ask for Throttling, which is its more primitive sibling. Adding both will significantly increase the cognitive load of the library.

As you've experienced yourself, turning the last argument to an options object makes it more verbose, and change reduce some of the simplicity introduced by Vest. From having the optional fourth argument reserved for reordering only, we need to now use it in multiple scenarios.

One last thing, while useful, debounce might not be used by most users of the library. Adding it as an optional to the test function, will make it so that the debouncing logic and capabilities will be added to the core of the library and take up (even if just a little) space and increase the bundle size.

Technically, with debounce, the function needs to be wrapped with debounce in advance, and not written inline, since if it was written in-line, every run would create a new instance of it. Handling this within Vest is possible by caching the first (or last) version of the test function, but this, too, requires some thinking on how it should be done so it does not cause unexpe

All these do not mean I do not see the value in debouncing, but rather, I believe debouncing should be introduced in a different way. A suggestion would be to introduce debouncing as a built-in vest utility, like classnames and parser, so that you could import it separately, something like:
import {test, debounce, enforce} from 'vest';

// ...

test("username", "username is already taken", testUserAlreadyTakenDebounced(data));
// ...

const testUserAlreadyTakenDebounced = debounce(function testUserAlreadyTaken(data) {/*....*/})

What do you think?

... I think it might more complexity and another level of unexpectedness to how Vest operates.

New functionality is more complexity, understandable, but I don't see how it can increase unexpectedness.

Debouncing is not the only volume control function we may use. Along with Debouncing, people often ask for Throttling, which is its more primitive sibling. Adding both will significantly increase the cognitive load of the library.

Usage of throttling does not seem proper for validations to me. What happens when a new value arrives and a test call is discarded because of throttling: Does an error for a previous value stays in place even though new value is valid (and other way around old right -> new wrong)? Looks like a bad idea to me... (Also maybe we are talking about different implementations, because I wouldn't call throttling more primitive compared to debounce, they are almost identical, except maybe that debounce does not need to store a result of previous invocation.)

As you've experienced yourself, turning the last argument to an options object makes it more verbose, and change reduce some of the simplicity introduced by Vest. From having the optional fourth argument reserved for reordering only, we need to now use it in multiple scenarios.

Well, current way with test.memo works only if you have really small number of modificators that cannot overlap. Since for some cases (like username) one might want to use both memo and debounce there is a need for a way to provide both options. I also assume that with time you might get more functionality like that, so makes sense to think how it should be implemented. Agree that options object does increase verbosity, but it is not expected to be used that often.

One last thing, while useful, debounce might not be used by most users of the library.

Do agree, but I don't think that debounce is very different from memo. They exist to cover the same cases and debounce is actually easier to implement - memo needs to keep results, keep inputs of previous invocations and check those inputs on every call and have an eviction policy (currently it is hard coded to 10 elements max, perhaps if there were options it could have been configured) while debounce only need to store one integer and do setTimeout/clearTimeout with it. So my question about that - do you consider memo and debounce to be on equal footing and resulting solutions applicable to both of them or do you think that memo is more deserving to be part of the core compared to debounce and if yes, why?

Technically, with debounce, the function needs to be wrapped with debounce in advance, and not written inline, since if it was written in-line, every run would create a new instance of it. Handling this within Vest is possible by caching the first (or last) version of the test function, but this, too, requires some thinking on how it should be done so it does not cause unexpe.. (text is missing after that)

If it is a part of a test (like memo is) then it is the same. Only a timer id for last invocation needs to be stored.

A suggestion would be to introduce debouncing as a built-in vest utility, like classnames and parser, so that you could import it separately

Seems like a good idea if it is possible to do so.
But the shown example has problems - a) it is more verbose than options variant since you would need to import an additional thing, create/name/wrap a test function outside of a suite and then use it in a test, b) debouncing state (timer id) is stored inside the function itself, not suite, so the function cannot be used in multiple suites (unexpected part), c) it will not work with test.memo since memo will save a promise which will never resolve if debouncing happens.
If we go with decoupling option then this is what I would ideally want to work:
import {test, memo, debounce} from 'vest';

test("username", "username is already taken", debounce(memo([data.username], () => {
  // ...
})));

Three "wishes" here:

If debounce is in utils, so is memo.
The state is stored in the test context, so is it possible to move a test function definition out of a suite for small performance gain but it is not required.
Debounce should be able to work with memo.

I think adding an example on how to implement this in userland in the "Recipes" section of the docs would be a good alternative.
People could use that example and even customize it to their needs. For example, there are multiple libraries for debouncing (like lodash, perfect-debounce), developers could choose whichever they are familiar with. This is what we did in the @nuxtjs/algolia documentation.
This way, the surface area and the bundle size of the library wouldn't increase either.

Hey @Lehoczky, thanks for bumping this issue. I think you are right. I should add some more real use-cases into the recipes section, and I also tend to agree with your overall note at the end.
Adding more real life scenarios into the recipes section is something that I've been planning to do, thank you for sharing the nuxt example. This direction makes a lot of sense.

Ok. I took some time to think about debounce and how it plays out inside of Vest. Spent several iterations on that, and I think that I came up with something that I feel very comfortable making part of Vest since in order to make it fully effective and work properly across suite runs, we want it to play nicely with the Vest internals.
It is still in development, but already pretty solid - I tested it across different scenarios and it seems to be working as expected.
Here is the branch: https://github.com/ealush/vest/commit/45f58d7e1618995f8f8887dcba8d5b16de219e01
In order to avoid adding bloat to the library, it will be an external export, like this:
import {debounce} from 'vest/debounce';

And the usage will be like this:
const suite = create(() => {
  test('username', 'already taken', debounce(async () => {
    // Some test logic
  }, 200));
});

One caveat:
While it will work correctly both for sync and async tests, all tests using debounce will in fact become async, and to observe their output, we will need to use "done" or "subscribe".
@vonagam What do you think? I know it has been a while, but still, will that work in your scenario?

The shown snippet, the note about it always being async and the implementation code seems perfect to me.
Might not use it right away (busy with some other stuff right now) but it will definitively be useful to me. Thanks.

Perfect! Then I’ll run a few more tests, add some docs and release. I’ll
let you know here once it’s out!
On Sun, 31 Mar 2024 at 0:31 Dmitry Maganov @.***> wrote:

The shown snippet, the note about it always being async and the
implementation code seems perfect to me.
Might not use it right away (busy with some other stuff right now) but it
will definitively be useful to me. Thanks.
—
Reply to this email directly, view it on GitHub
https://github.com/ealush/vest/issues/1057#issuecomment-2028473481, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ACV32PZMD3VBMFTHXSSCEB3Y24VLDAVCNFSM6AAAAAA3KSNTM6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRYGQ3TGNBYGE
.
You are receiving this because you were assigned.Message ID:
@.***>

Thank you. This is a very nice addition. Just what I needed.

Debounce is now out as part of the public version of vest.


Leatherworking Stormbound Armor Kit missing reagents for simulation mode

Stormbound Armor Kit
1 Gloomfathom Hide
2 Crystalfused Hide
60 Stormcharged Leather
When going into Simulation Mode it removes the Gloomfathom Hide.

Image before Simulation Mode.

Inside of Simulation Mode.

is gloomfathom hide a non quality reagent?


Mania: sometimes fails to glow gold appropriately

Version
Slay the spire: BETA
Mod version: v0.53.0
Describe the bug
In some cases, on initial hand draw, Mania doesn't glow gold propertly.
See https://clips.twitch.tv/UnsightlyLivelyLocustArsonNoSexy

Was a broken interaction with Warped Tongs upgrading cards into an eligible state


GHA-46

Requesting review of GHA-46

when I try building it (npm prepare-release) I get:
><EMAIL_ADDRESS>prepare-release
> yarn build && ncc build -o dist/nowsecure-upload-action -s src/nowsecure-upload-action.ts && ncc build -o dist/nowsecure-sarif-action -s src/nowsecure-sarif-action.ts && cp nowsecure-upload-action.yml .github/actions/upload-action/action.yml && cp nowsecure-sarif-action.yml .github/actions/sarif-action/action.yml

yarn run v1.22.18
$ genversion -d --es6 --semi src/nowsecure-version.ts && tsc
src/__tests__/nowsecure-summary.test.ts:9:57 - error TS2307: Cannot find module '../nowsecure-summary' or its corresponding type declarations.

9 import { githubJobSummary, githubJobSummaryShort } from "../nowsecure-summary";
                                                          ~~~~~~~~~~~~~~~~~~~~~~

Found 1 error.

error Command failed with exit code 2.

Looks like some paths will need to be updated or I'm doing something wrong on my end.


Fix table cell padding

I want to merge this change because it prepares ground for the table sorting.
Pull Request Checklist

[x] All visible strings are translated with proper context.
[x] All data-formatting is locale-aware (dates, numbers, and so on).
[x] Translated strings are extracted to .pot file.
[x] Number of API calls is optimized.
[x] The changes are tested.
[x] Type definitions are up to date.
[x] Changes are mentioned in the changelog.

@dominik-zeglen after merging this there are two issues which I guess are related:

Btw. I guess we don't have any bulk actions for plugins, so there shouldn't be any checkbox in the table header.


Method BinaryTree::remove

The implementation of the Binary Tree remove (node) method in src/main/java/com/thealgorithms/datastructures/trees/BinaryTree.java has reported cyclomatic complexity 17 by lizard.
Part 1 steps:

[x] Manual calculation of cyclomatic complexity @charmed-quark
[ ] Manual calculation of cyclomatic complexity @tjog

Part 2 steps:

[ ] Instrument code coverage manually (in a new branch called something like issue<No>/manual-instrument)
[ ] Save the result of manual and automatic instrumentation, either in this issue by screenshot or in the branch and link to it.
[ ] Add tests to improve code coverage (on a different branch than before, called something like issue<No>/increase-coverage). Assignment PDF gives more detailed steps on what steps should be taken to identify types of tests to add etc.
[ ] Create a plan or draft for refactoring the function. A clear description is required to pass the assignment.

I count 16 decisions (14 branches but in two places && is used), 8 exit points => cyclomatic complexity = 10

I counted all if, else if, else, and && for a total of 24. There are 8 return statements. 24 - 8 + 2 = 18.
An alternative is not counting else which reduces the first term to 16: 16 - 8 + 2 = 10. Neither agrees with lizard's calculation, although the first is closer.

There was no existing test class for the BinaryTree class, and no main method for demo within the class. As a result, the coverage is 0%. A skeleton for a test class was added to the manual instrumentation branch which demonstrates this.

7 new test cases increase coverage to 61.54% (62% as measured by jacoco).

It's rather natural that this method is complex. It needs to take into account all the possible configurations that a node can have in order to properly remove it. Does it have zero, one or two children? If it has one child, is the child on the left or right? All the cases also require special treatment if the root is being removed.
One possibility for refactoring the method is to split out each of the cases (node to be removed has 0, 1, or 2 children) into helper methods that handle the modification of the data structure. In this implementation of a binary tree, each of the cases is identified by an if statement, and whichever branch is taken will then return. Each of the three main branches in the primary remove() method can then simply return the result of the helper. E.g.:
if ( // leaf node) {
    return removeLeafNode(temp);
} else if ( //two children) {
    return removeParentOfTwo(temp);
} else {  //one child
    return removeParentOfOne(temp);
}

temp here is a local variable which refers to the node that is going to be removed, which is (as far as I can tell at the moment) the only thing that would have to be passed along to the helpers as arguments.
The helpers each contain multiple cases of their own and would remain somewhat complex, but by splitting the function in three the complexity should be considerably reduced.


Reduce initial delay for quicker deployment time

What does this pull request do?
Reduces the initial delay during deployment.
What is the intent behind these changes?
To make deployments stall less, leading to quicker turnarounds and fewer minutes spent on CI.
Currently, a deploy takes less than 10 seconds:
$ k get pod/hmpps-interventions-service-5ff6678c86-f84r7 -ojson | \
  jq '.status | .startTime, .containerStatuses[].state.running.startedAt'
"2021-01-21T20:55:15Z"
"2021-01-21T20:55:21Z"

$ k get pod/hmpps-interventions-service-5ff6678c86-7548w -ojson | \
  jq '.status | .startTime, .containerStatuses[].state.running.startedAt'
"2021-01-21T20:55:15Z"
"2021-01-21T20:55:23Z"

To avoid stalling the deploy for 60 seconds (the value of the readinessProbe.initialDelaySeconds) we can set it to 10 seconds.
I feel the default 10 seconds value for periodSeconds also makes sense.
This change is similar to https://github.com/ministryofjustice/hmpps-interventions-ui/pull/41.

🎩 🙇♂ Thank you!

🎩 🙇♂ Thank you!


Ignore double-equals method when creating class double

The double-equals method, when defined on a dry class, causes an infinite loop
which then results in a stack overflow.
Closes #7

I'm not 100% sure this is the best fix, but I thought I'd submit a PR anyways. LMK.

Thanks for sending this and the issue earlier. I am still thinking through some of the ramifications of this and the best way to proceed — may take me a little bit!


Create a test/env with two Express

Express endpoint which calls another Express which is using opossum with a async function that could fail.
express ---> express-with-opossum

done here: https://github.com/nodeshift-starters/opossum-playground/tree/master/two-express


moving applications across workspaces does not work anymore

I did a bad thing :(
I upgraded to Sequoia without first checking if all my configs and apps were compatible. Now that I'm on 15.0 SKHD does ok with managing windows within a workspace, but if I want to move it to another workspace it won't move :(

I am having the same issue, my shortcut of CMD +Shift + 1 no longer works. Might be something to do with this: https://www.reddit.com/r/macapps/comments/1fjpiiw/psa_macos_15_breaks_optionkey_hotkeys/

I am having the same issue, my shortcut of CMD +Shift + 1 no longer works. Might be something to do with this: https://www.reddit.com/r/macapps/comments/1fjpiiw/psa_macos_15_breaks_optionkey_hotkeys/
I only have the issue where shift and a number exists in my experience. I can use CMD + a number fine, and I can use CMD Shift + arrows keys fine as well.

Ahh that looks like it might be my problem. :( thanks for the link.


Alignment problem in  Code and Syntax Highlighting

Category

First line alignment problem  in Code and Syntax Highlighting.
What is the current behavior?
The offline Gitbook editior is working perfect for me but on uploading it to Cloud there is misalignment
in Code and Syntax Highlighter.

What is the desired behavior?

Perfect alignment on Cloud Reading.
Additional information
In am using Gitbook for linux Ubuntu.
This is the problem page link

I have corrected the problem my self.......


Unable to resize root partition using ignition

Description
I am trying to provision a Flatcar node using a custom Ignition config. I would like to shrink the root partition and create a new partition for CEPH, however it did not partition as expected.
Impact
I am unable to create a dedicated partition for CEPH with Ignition config.
Environment and steps to reproduce
Ignition config:
storage:
  disks:
    - device: /dev/sda
      wipe_table: false
      partitions:
        - label: root
          number: 9
          size: 40960
        - label: storage
          number: 10
          size: 0
  filesystems:
    - name: root
      mount:
        device: /dev/disk/by-partlabel/root
        format: xfs
        label: ROOT
        wipe_filesystem: true
    - name: storage
      mount:
        device: /dev/disk/by-partlabel/storage
        format: xfs
        label: STORAGE
        wipe_filesystem: true
  files:
    - path: /etc/hostname
      filesystem: root
      mode: 420
      contents:
        inline: test

Set-up: Rescue Linux; Hetzner Cloud.
Task: Install Flatcar Container Linux
Action(s):
a. Execute flatcar-install with the transpiled configuration
b. Reboot the VPS
c. Enter the TTY and execute sudo fdisk -l

Expected behavior
/dev/sda9 has the size of 40 GiB and /dev/sda10 fills up the rest of the disk.
Actual behavior
The partitions are not provisioned as expected. /dev/sda9 fills up the rest of the disk and /dev/sda10 does not exist.

Thanks for the report.
With this ignition config:
storage:
  disks:
    - device: /dev/vda
      wipe_table: false
      partitions:
        - label: STORAGE
          number: 10
          start: 43GB
          size: 0
  filesystems:
    - name: root
      mount:
        device: /dev/disk/by-partlabel/ROOT
        format: xfs
        label: ROOT
        wipe_filesystem: true
    - name: storage
      mount:
        device: /dev/disk/by-partlabel/STORAGE
        format: xfs
        label: STORAGE
        wipe_filesystem: true

I get the correct partition config:
Disk /dev/vda: 258.5 GiB,<PHONE_NUMBER>44 bytes, 542093312 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 03D05245-7F4F-48C6-B7DA-962693AFA544

Device        Start       End   Sectors   Size Type
/dev/vda1      4096    266239    262144   128M EFI System
/dev/vda2    266240    270335      4096     2M BIOS boot
/dev/vda3    270336   2367487   2097152     1G unknown
/dev/vda4   2367488   4464639   2097152     1G unknown
/dev/vda6   4464640   4726783    262144   128M Linux filesystem
/dev/vda7   4726784   4857855    131072    64M unknown
/dev/vda9   4857856  90177535  85319680  40.7G unknown
/dev/vda10 90177536 542093278 451915743 215.5G Linux filesystem

Something is wrong in handling the spec for partition 9. If I add a fixed size entry for part 9 the log says:
Aug 02 09:26:04 localhost ignition[492]: disks: createPartitions: op(3): running sgdisk with options: [--pretend --delete=9 --new=9:4857856:+10240M --new=10:44032M:+0M --info=10 /run/ignition/dev_aliases/dev/vda]                                                                                Aug 02 09:26:04 localhost ignition[492]: disks: createPartitions: op(3): partition 9 found with correct specifications
Aug 02 09:26:04 localhost ignition[492]: disks: createPartitions: op(3): running sgdisk with options: [--new=10:44032M:+0M --change-name=10:STORAGE /run/ignition/dev_aliases/dev/vda]

The workaround has been provided; this could be revisited after the ignition v3 upgrade, which potentially solves it.


[HW] Build Microservices with Spring Data, Cassandra, and Stargate.io

**Name: Abhishek Sinha
**Email<EMAIL_ADDRESS>Linkedin Profile: www.linkedin.com/in/abhisheksinha0987
Attach the homework step I screenshots below:

Attach the homework step II screenshots below:

Hey Abhishek Sinha, great job! Congrats! Here is your badge! https://api.badgr.io/public/assertions/Lt9WKQIxR8K1kRV4BhmzCg


Removed exit symbol from Playdate std

This, it turns out, is no longer needed.

If there are any relevant contributions to luacheck please make them as PRs against the canonical repository here.


dependabot errors on patch:package@^version#path/to/patchfile instead of ignoring dep

Package ecosystem
npm/yarn
Package manager version
yarn 3.0.2
Language version
node 16.10.0
Manifest location and content prior to update
https://github.com/eve-val/eve-roster/blob/0f286393a2012876a0023ca6ed469e09ae2507c8/.github/dependabot.yml
https://github.com/eve-val/eve-roster/blob/0f286393a2012876a0023ca6ed469e09ae2507c8/package.json
https://github.com/eve-val/eve-roster/blob/0f286393a2012876a0023ca6ed469e09ae2507c8/yarn.lock
Updated dependency
vue-loader should stay at 16.8.1 (and continue to have its patch applied)
@types/swagger-ui should go from 3.47.1 to 3.52.0
What you expected to see, versus what you actually saw
error instead of ignoring vue-loader dependency when yarn 3 specific package path couldn't be parsed. I'm aware yarn 2/3 "berry" isn't supported, but this feels like a generic case of "don't get confused by a version string you don't understand"
Native package manager behavior
yarn add --dev<EMAIL_ADDRESS>➤ YN0000: ┌ Resolution step
➤ YN0060: │ eve-roster@workspace:. provides mini-css-extract-plugin (pe2885) with version 2.3.0, which doesn't satisfy what cleanup-mini-css-extract-plugin requests
➤ YN0002: │ eve-roster@workspace:. doesn't provide ts-node (pf57d1), requested by ttypescript
➤ YN0060: │ eve-roster@workspace:. provides webpack (pc08f9) with version 5.38.1, which doesn't satisfy what cleanup-mini-css-extract-plugin requests
➤ YN0000: │ Some peer dependencies are incorrectly met; run yarn explain peer-requirements <hash> for details, where <hash> is the six-letter p-prefixed code
➤ YN0000: └ Completed in 0s 765ms
➤ YN0000: ┌ Fetch step
➤ YN0013: │ @types/swagger-ui@npm:3.52.0 can't be found in the cache and will be fetched from the remote registry
➤ YN0019: │ @types-swagger-ui-npm-3.47.1-b171f652d6-cc6b65a16a.zip appears to be unused - removing
➤ YN0000: └ Completed in 2s 241ms
➤ YN0000: ┌ Link step
➤ YN0062: │ fsevents@patch:fsevents@npm%3A2.3.2#~builtin<compat/fsevents>::version=2.3.2&hash=1cc4b2 The platform linux is incompatible with this module, link skipped.
➤ YN0000: └ Completed in 1s 723ms
➤ YN0000: Done with warnings in 5s 167ms

git diff
diff --git a/package.json b/package.json
index aa709b6..d632a6f 100644
--- a/package.json
+++ b/package.json
@@ -80,7 +80,7 @@
     "@types/source-map-support": "^0.5.4",
     "@types/sqlite3": "^3.1.7",
     "@types/svgo": "^2.4.2",
-    "@types/swagger-ui": "^3.47.1",
+    "@types/swagger-ui": "^3.52.0",
     "@types/tmp": "^0.2.1",
     "@types/underscore": "^1.11.3",
     "@types/verror": "^1.10.5",
diff --git a/yarn.lock b/yarn.lock
index c1405b3..c6f5504 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1713,10 +1713,10 @@ __metadata:
   languageName: node
   linkType: hard

-"@types/swagger-ui@npm:^3.47.1":
-  version: 3.47.1
-  resolution: "@types/swagger-ui@npm:3.47.1"
-  checksum: cc6b65a16a8de603515d6432af2eec595f73db3008f056c88f96e568a78bd755acf9cda41ed0213dfda2eafef37b0b3d3d43f32c6db01b599a9bf6d4912964fb
+"@types/swagger-ui@npm:^3.52.0":
+  version: 3.52.0
+  resolution: "@types/swagger-ui@npm:3.52.0"
+  checksum: fc72751e74e8c8786d805bc6ecbdf712575ca7bda278a8a3a5dca48fe930623b109ba843adbbd2b7bd95700f81a948c67f005228f835c5feaa4f0715ccb5a372
   languageName: node
   linkType: hard

@@ -4823,7 +4823,7 @@ __metadata:
     "@types/source-map-support": ^0.5.4
     "@types/sqlite3": ^3.1.7
     "@types/svgo": ^2.4.2
-    "@types/swagger-ui": ^3.47.1
+    "@types/swagger-ui": ^3.52.0
     "@types/tmp": ^0.2.1
     "@types/underscore": ^1.11.3
     "@types/verror": ^1.10.5

Images of the diff or a link to the PR, issue or logs
https://github.com/eve-val/eve-roster/network/updates/213640137
updater | INFO <job_213640137> Checking if @types/swagger-ui 3.47.1 needs updating
  proxy | 2021/09/27 21:45:33 [050] GET https://registry.npmjs.org:443/@types%2Fswagger-ui
  proxy | 2021/09/27 21:45:34 [050] 200 https://registry.npmjs.org:443/@types%2Fswagger-ui
  proxy | 2021/09/27 21:45:34 [052] GET<EMAIL_ADDRESS>  proxy | 2021/09/27 21:45:34 [052] 200<EMAIL_ADDRESS>updater | INFO <job_213640137> Latest version is 3.52.0
...

  proxy | 2021/09/27 21:47:42 [248] GET https://registry.yarnpkg.com:443/vue-loader
  proxy | 2021/09/27 21:47:42 [248] 200 https://registry.yarnpkg.com:443/vue-loader
updater | INFO <job_213640137> Requirements to unlock own
updater | INFO <job_213640137> Requirements update strategy bump_versions
updater | INFO <job_213640137> Updating @types/swagger-ui from 3.47.1 to 3.52.0
...
  proxy | 2021/09/27 21:51:49 [128] GET https://registry.yarnpkg.com:443/vue-loader
  proxy | 2021/09/27 21:51:49 [128] 200 https://registry.yarnpkg.com:443/vue-loader
updater | INFO <job_213640137> Handled error whilst updating @types/swagger-ui: dependency_file_not_resolvable {:message=>"Error whilst updating @types/swagger-ui in /yarn.lock:\nCouldn't find any versions for \"vue-loader\" that matches<EMAIL_ADDRESS>...
updater | INFO <job_213640137> Checking if vue-loader 16.8.1 needs updating
  proxy | 2021/09/27 21:52:05 [230] GET https://registry.npmjs.org:443/vue-loader
  proxy | 2021/09/27 21:52:05 [230] 200 https://registry.npmjs.org:443/vue-loader
updater | INFO <job_213640137> Latest version is
updater | INFO <job_213640137> Requirements to unlock update_not_possible
updater | INFO <job_213640137> Requirements update strategy bump_versions
updater | INFO <job_213640137> No update possible for vue-loader 16.8.1

🕹 Bonus points: Smallest manifest that reproduces the issue
this ought to do it:
dependencies {
  "@types/swagger-ui": "^3.47.1",
  "vue-loader"<EMAIL_ADDRESS>}

Workaround: move the patch: protocol to resolutions { stanza which dependabot doesn't appear to read.

👋 Sorry for the slow reply, and thanks for all your hard work in the Otel community.
As best I can tell, the root caus here was lack of Yarn Berry support. So now that we've shipped that, this should work as expected:

https://github.com/dependabot/dependabot-core/issues/1297

I'm going to close as resolved, but if for some reason you're still hitting problems please comment and we can reopen.


Problem with curly braces

OpenUI5 version: 1.44.15 and 1.46.9
Browser/version: Chrome 59, IE11
URL (minimal example if possible): https://gist.github.com/grischan/5f985539809714b0a87883dd46a56281
Steps to reproduce the problem:

Open the gist.
Download and open the index.html in Chrome

What is the expected result?
There is a "{" in the text of an property. Thats an syntaxError for UI5 because, it indicates an binding. It would be great if only this property is affected and the ui gets rendered.
What happens instead?
The whole UI get broken.
Any other information? (attach screenshot if possible)

Hello Christian!
At first glance, it Looks like the string "Geo{rge Washington" is only contained as data inside a JSON model. Is that true? In this Case, I would not expect a Syntax error at all. Data should be allowed to contain all Kinds of characters, I would say.
Best regards,
Thomas

In this example, it is in the json, for reproducing the error. (In our real world a user enters surcha wrong string in the system and the ui5 app consume this data through an odata-service).
The curly-baces are used to define complex bindings. So the error is correct, but the problem is, that the whole view stops to render, not only this property.

"the error is correct" - sorry, but I disagree. Curly braces in data must not be interpreted as binding path Syntax. If that would be OK, what would be the way to really Display "Geo{rge Washington" on Screen? A formatter that does escaping? I don't think so!
By the way: I just tried with one of our V4 OData sample apps and it works fine. You can enter "Geo{rge Washington" and save it and Display it later on...

P.S.: "Download and open the index.html in Chrome" does not work for me. file:// and https:// URLs are mixed then... And data-sap-ui-resourceroots='{"sap.m.sample.FeedListItem": "./" Looks wrong to me...

Add --disable-web-security --allow-file-access-from-files to start chrome.
Then you can open the index.html file in chrome.
This issue appears not in all properties of controls. For example, "text" property of sap.m.FeedListItem is escaped correct and '{' is displayed. If you try to bind a text with '{' to the 'sender' property, the Exception is thrown.
Can be reproduces with OData V2 model.

"This issue appears not in all properties of controls." Then I would say it is a bug of those properties/controls where it appears.

Hi,
I've created an internal incident<PHONE_NUMBER>. The status of the issue will be updated here in GitHub.
Best,
Teo

The general contract of UI5 regarding curly braces ("{") in property values is:

when the string is given to the constructor or to the applySettings function of a ManagedObject, then it will be checked for bindings (indicated by curly braces, depending on the chosen binding syntax)
when a string is given to the setter method of a property (setXYZ method), the string won't be interpreted as a binding. As data binding internally calls those setXYZ methods, no model value ever should be checked for bindings.

But this simple differentiation becomes more complex in real life: when a composite control gets a value via one of its setXYZ methods but then creates a new control from that value (e.g. an icon or image), then it either has to escape the string value before propagating it to the constructor or it has to set the string value after construction of the control by calling the corresponding setXYZ method.
The stack trace in the screenshot suggests that the error occurs inside the IconPool's createControlByURI method. That helper method can't know about the nature of the data, so the caller has to decide.
I guess that in the scenario above, none of the two approaches has been chosen and therefore the error occurs. I'll update the internal incident with this information.

Hi,
Thank you for your ticket! The issue in sap.m.FeedListItem has been fixed and the fix is provided in the current development version and in the next versions of 1.48, 1.46, 1.44, 1.38 and 1.28.
Best regards
Sylvia

Exactly the same happens for the description for the same control....
It would make sense that this should be escaped in all properties

The general contract of UI5 regarding curly braces ("{") in property values is:

when the string is given to the constructor or to the applySettings function of a ManagedObject, then it will be checked for bindings (indicated by curly braces, depending on the chosen binding syntax)
when a string is given to the setter method of a property (setXYZ method), the string won't be interpreted as a binding. As data binding internally calls those setXYZ methods, no model value ever should be checked for bindings.

But this simple differentiation becomes more complex in real life: when a composite control gets a value via one of its setXYZ methods but then creates a new control from that value (e.g. an icon or image), then it either has to escape the string value before propagating it to the constructor or it has to set the string value after construction of the control by calling the corresponding setXYZ method.
The stack trace in the screenshot suggests that the error occurs inside the IconPool's createControlByURI method. That helper method can't know about the nature of the data, so the caller has to decide.
I guess that in the scenario above, none of the two approaches has been chosen and therefore the error occurs. I'll update the internal incident with this information.

Thank you, this was very helpful.
In my case, I wanted to display ${variable} in a text, and I couldn't.
Instead of new HelpIcon({text: '${variable}'}), I did new HelpIcon().setText('${variable}') and it worked fine.

@hugo-dlb and future readers: after the https://github.com/SAP/openui5/issues/1595#issuecomment-316020849 by @codeworrior, the API ManagedObject.escapeSettingsValue has been introduced which can be used if the managed property value needs to be escaped in the constructor settings.


[BUG] Navbar width more than the screen width

Description of the bug
The width of the navbar is more than the width of screen which is breaking the UI Design.
Please add screenshots (if applicable)
https://github.com/WebXDAO/WebXDAO.github.io/assets/104740281/a3f538c3-ba6e-4284-bee3-59451d3b3d1d
Add any other context about the problem here
No response
Code of Conduct

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

Hey @vinzvinci @siddhi-244 @darkterminal @mkubdev
I would like to work on this under GSSoc.
Please add the label GSSoC23.
And assign it to me.

Hey 👋🏻
Well spotted! It's not the navbar, but the hero section.. :eyes:

Hey 👋🏻 Well spotted! It's not the navbar, but the hero section.. 👀

Hey 👋, Thanks for pointing that out! It seems like the issue is indeed related to the navbar rather than the hero section. Since it's happening on every page, it's likely that the problem was introduced with the PR titled "mobile navbar fixed" #363 .
Could you please take a look at this and let me know what you think?

Hey @mkubdev @vinzvinci @darkterminal @siddhi-244
Can you assign me this issue...

Please also add gssoc23 label... 😊

Hey 👋🏻 Well spotted! It's not the navbar, but the hero section.. 👀

Hey 👋, Thanks for pointing that out! It seems like the issue is indeed related to the navbar rather than the hero section. Since it's happening on every page, it's likely that the problem was introduced with the PR titled "mobile navbar fixed" #363 . Could you please take a look at this and let me know what you think?

Hi back :wave:,
After taking a look into the reported issue, I've found a possible root cause and solution. It appears that this bug has been observable since the creation of the hero component as i mentionned.
The issue seems to be related to the navigation bar present in the layout. Upon removal of the navbar, the issue ceases to exist, implying a potential conflict between these two components.
With this in mind, I would recommend either refactoring the hero component to work compatibly with the navbar, or adjusting the navbar to prevent this interference, depending on your project's requirements and constraints.
As the issue can be mitigated by modifying the current setup, I am going to close this issue for now. This does not mean the conversation has to stop. If further issues arise or if anyone has additional input regarding this matter, please feel free to re-open the issue or create a new one.
Thank you all for your time and valuable input that has led us to this conclusion. Your cooperation in resolving this is greatly appreciated. :)

Hey @mkubdev @vinzvinci @darkterminal @siddhi-244
Please add gssoc23 label to this issue....


Flickr 429 errors preventing photo import

Some photos cannot be imported from Flickr because when we try to download them we get a 429 Too Many Requests error. For example, when @tiwane tries to import https://www.flickr.com/photos/tonysfotos/53104126447/, he gets a fail whale on iNat (500 error), but in the logs we see a 429 exception been raised. I was able to replicate this on staging while signed in as Tony, and when I ran curl -vi "https://live.staticflickr.com/65535/53104126447_c46ba378dd_o.jpg" from the same machine I also got a 429 error. It is not consistent per user or per machine, though. Tony can import https://www.flickr.com/photos/tonysfotos/52823945955/ on production and staging with no problem, and locally I seem to be able to import any photo from Flickr.
Given the info at https://www.flickr.com/groups/api/discuss/72157719707094147/72157719701633266/, it's possible Flickr is returning this error for some combination of IP, user agent, and URL requested. So one thing we might try is downloading the photo ourselves instead of relying on Paperclip to do so, and using our own user agent. We may just have to ask for help at https://www.flickr.com/groups/api/discuss/. Maybe they can put us on some kind of allowlist or help us figure out how we could possibly be making so many requests to Flickr that they would block or throttle us.
I don't think this is something a volunteer can take on, but if anyone has any bright ideas we're certainly open to suggestions.

I tested this morning using:

staging
another old VM
a newly created VM (from yesterday)

I reproduced the same scenario several times, using different flickr images:
curl -vi "https://live.staticflickr.com/65535/53102842337_3fd8a8615d_k.jpg"
curl -vi "https://live.staticflickr.com/65535/53103608994_fdb5d673f4_k.jpg"
curl -vi "https://live.staticflickr.com/65535/53103407581_d191a37c00_k.jpg"
curl -vi "https://live.staticflickr.com/65535/53103608664_b04771c912_k.jpg"
curl -vi "https://live.staticflickr.com/65535/53103407236_50cfa0b48f_k.jpg"
curl -vi "https://live.staticflickr.com/65535/53100431794_6f1c4d3ae4_k.jpg"
curl -vi "https://live.staticflickr.com/65535/53104126447_c46ba378dd_o.jpg"

Calling these images from staging multiple times:
HTTP/2 429
x-cache: Error from cloudfront

Calling them from another old VM multiple times:
HTTP/2 429
x-cache: Error from cloudfront

Then using a newly created VM:
Call 1: successful, with a Miss from cloudfront
HTTP/2 200
x-cache: Miss from cloudfront

Re-do calls every second: successful, with a Miss from cloudfront
After around 10 calls, get Hit from cloudfront
HTTP/2 200
x-cache: Hit from cloudfront

From this moment, calls are successful from every VM (staging and another old VM)
For sure, it only worked when all are using the same Amazon Cloudfront Edge location (here: SEA19-C3)

Can this be closed?


Exponential Backoff

Does the S3 driver have an exponential backoff like https://github.com/deboorn/expbackoffworker built in? This so we can do retries when we hit Digital Ocean Spaces rate limiting. This has been an issue a lot. Especially with cleanups using Laravel Spatie Backups. See https://github.com/spatie/laravel-backup/issues/783 where we discuss the issue.

Hi, @jasperf. I'd recommend implementing this outside of Flysystem. The best way, if you want to make this transparent, is to use a decorator around the AWS SDK. This falls outside of the scope for Flysystem. I see Freek suggesting it should be dealt with by Flysystem, but I don't agree with that. In my opinion, Flysystem only concerns itself with making sure all the filesystem have the same API and relatively consistent error reporting (improved in V2 btw), but not with high-level cases like retries of operations or exponential backoff.

@frankdejonge Had to Google Decorator and found https://dev.to/ahmedash95/design-patterns-in-php-decorator-with-laravel-5hk6 which deals with PHP Decorators to wrap functionality in an interface it seems. This to extend its functionality. So this way we would have Laravel using PHP Fly System using S3 Driver wrapped or decorated in an interface to extend its functionality with exponential backoffs.
This is how I understand this as a junior PHP / Laravel developer anyways. Will see what our senior developer has to say about this. Actually found your decorator class https://github.com/thephpleague/flysystem-adapter-decorator . Perhaps this one could be used as well?
Good to hear that version 2 will deal with error reporting better. That is something that is recommended by Digital Ocean Spaces and Amazon S3. That is recommended besides using exponential backups. Besides the fact that having exponential backups part of PHP Flysystem saving us time I do feel like it would be a useful part of this package. But I also understand your point of view.
Also surprised the S3 driver itself does not have options for it built in nor the DO API as I would think this is something that is needed often. S3's rate acceptance is much better than DO Spaces so you do not need this tool that quick but still I think most developers wind up needing it.
For now we will probably use block storage volumes to store images instead of S3 or Digital Ocean Spaces. TransIP Big Storage (SSD)  for example. Saves us the pain dealing with a constant barrage of 503s, the need to create PHP Decorator patterns to have PHP Flysystem AWS S3 Driver work correctly.
Thanks a lot for the feedback though, learned a lot again this Sunday morning. And may still try my hand at this PHP Decorator pattern I am totally new to.

@jasperf the decorated should be applied on the S3Client, so that adapter decorator won't help you. You can see an example of a decorator in the V2 test base: https://github.com/thephpleague/flysystem/blob/2.x/src/AwsS3V3/S3ClientStub.php
This decorator proxies all normal calls but changes some behavior, in your case you can also implement a re-try mechanism there.

Thanks for that referral to the S3 Client Stub at the version 2. Going to look into that @frankdejonge .

Now that version 3 is out we may get into less 503s . See https://blog.frankdejonge.nl/flysystem-3-0-0-is-released/ where @frankdejonge mentioned

The update and write functions were essentially the same.

So I assume that on uploading files, reading files and writing files we automatically get less calls. Might still need exponential backoffs but we are going to give V3 a spin soon.


Using function as module factory in jest.mock causes test loading fail

If you use function instead of object as module factory in jest.mock call your test will not load. Jest documentation doesn't tell anything about validity of this syntax but nevertheless jest runner works with it https://jestjs.io/docs/en/jest-object#jestmockmodulename-factory-options.
Minimal repository: https://github.com/zzzorgo/vscode-jest-test-adapter-issue
There is repo with two issues i was just too lazy to create separate repos, look for jestMockWithFunction.test.js file

For completeness - this seems to be an issue in the parser in jest-editor-support.  There is an open PR to update the parser (jest-community/jest-editor-support#30) which may fix this.


Custom terminal icons not restored on window reload

Testing #122242

Change the icon of a terminal
Reload window

Bug
The icon is not restored
Possibly a duplicate of #120508

This would need a distro change, let's push this.

We don't do this for names either


package keyword does not work with import

The plugin thinks the example below has a "File not found" error at the import row.
When I comment out the "package t;" row, it works.
test1.proto:
syntax = "proto3";

message Test1 {
}

test2.proto:
syntax = "proto3";

import "test1.proto";

package t; //removing this row solves the error

message Test2 {
    Test1 test = 1;
}

It will be fixed soon.


feat(rust): add rustfmt for Rust code formatting

This doesn't make sense - rust-analyzer provides formatting already. This would only make sense if you disable the LSP, but I would say that this then belongs in your own config if you're doing that.

@amaanq You're absolutely right, rust-analyzer directly utilizes rustfmt for code formatting functionalities. In essence, rust-analyzer LSP provides a convenient way to interact with the underlying rustfmt for automatic code formatting. There's no need to install or run rustfmt separately. My autoformatting isn't working because I haven't downloaded rustfmt and rust-analyzer using rustup, it's my mistake.


Issue/build master doc builds failure investigation

Description
As discussed here
closes https://github.com/inmanta/inmanta-core/issues/6230
Self Check:
Strike through any lines that are not applicable (~~line~~) then check the box

[ ] Attached issue to pull request
[ ] Changelog entry
[ ] Type annotations are present
[ ] Code is clear and sufficiently documented
[ ] No (preventable) type errors (check using make mypy or make mypy-diff)
[ ] Sufficient test cases (reproduces the bug/tests the requested feature)
[ ] Correct, in line with design
[ ] End user documentation is included or an issue is created for end-user documentation (add ref to issue here: )
[ ] If this PR fixes a race condition in the test suite, also push the fix to the relevant stable branche(s) (see test-fixes for more info)

Processing this pull request

Failed to merge changes into iso5 due to merge conflict. Please open a pull request for these branches separately by cherry-picking the commit that was made on the branch master (git cherry-pick d646879865e850f2fa522d02b1fbc977b86eebc1).

Merged into branches master in d646879865e850f2fa522d02b1fbc977b86eebc1

Not closing this pull request due to previously commented issues for some of the destination branches. Please open a separate pull request for those branches by cherry-picking the relevant commit. You can safely close this pull request and delete the source branch.

This branch was not deleted as it seems to still be in use.

Processing #6262.


Scala Stream Collector: there are separate equally sized thread pools writing to the good stream and the bad stream

Hopefully there are significantly fewer requests per second going to the bad stream. So it would make more sense to either make it possible to configure the sizes of the thread pools separately or share a single larger thread pool.

Ouch, good catch


Fix is_flag_supported not respecting emit_rerun_if_env_changed (#1147)

When I add a Cargo override to the example from #1147:
[patch.crates-io]
cc = { path = "/tmp/cc-rs" }

Then the extra rerun-if-env-changed directives go away (except for one that's maybe a separate small bug):
$ touch build.rs && cargo build -vvv 2>&1 | grep rerun-if-env-changed
[scratch 0.1.0] cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT
[scratch 0.1.0] cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT

I'm not sure how to add a unit test for this, since it doesn't look like emit_rerun_if_env_changed is currently tested.
It also seems like it's pretty easy to write more bugs like this, since anytime a feature is added to Build we need to remember to come to these lines and think about whether it should be inherited. I'm not sure how to make that better though. Thoughts?

It also seems like it's pretty easy to write more bugs like this, since anytime a feature is added to Build we need to remember to come to these lines and think about whether it should be inherited. I'm not sure how to make that better though. Thoughts?

Is there some way to do a self.clone() instead of Build::new(), so all the fields are inherited and only the fields that deviate need to be explicitly changed?

Is there some way to do a self.clone() instead of Build::new(), so all the fields are inherited and only the fields that deviate need to be explicitly changed?

That will end up with too many configurations inherited, better start afresh and assign what's needed.


[SPARK-18450][ML] Scala API Change for LSH AND-amplification

What changes were proposed in this pull request?
Implemented a new Param numHashFunctions as the dimension of AND-amplification for Locality Sensitive Hashing. Now the hash of each feature in LSH is an array of size numHashTables while each element in the array is a vector of size numHashFunctions.
Two features are in the same hash bucket iff ANY pair of the vectors are equal (OR-amplification). Two vectors are equal iff ALL pair of the vector entries are equal (AND-amplification).
Will create follow-up PRs for Python API and Doc/Examples.
How was this patch tested?
By running unit tests MinHashLSHSuite and BucketedRandomProjectionLSHSuite.

Test build #73550 has started for PR 17092 at commit 9dd87ba.

Test build #73550 has finished for PR 17092 at commit 9dd87ba.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/73550/
Test PASSed.

@jkbradley @MLnick Here is a clean PR. Sorry for messing up the previous one!
@merlintang I am happy to continue our discussion here: https://issues.apache.org/jira/browse/SPARK-19771 as OR-AND amplification requires much more changes than SPARK-18450

@Yunni ok, let us discuss the further optimization step in other ticket. the current patch is LGTM.

@Yunni I test this patch locally, it can work, but I have one idea to improve it. We can discuss it in other ticket.

@jkbradley @sethah Please take a review when you have time. Thanks!

Ping.

@MLnick @jkbradley @sethah Could you take a review? Thanks!

@jkbradley @MLnick @sethah @Yunni  @merlintang @akatz
It seems LSH will be a perfect fit for matching patient records, if only I can figure out how to assign different weights to each column of the patient record that I am comparing.  For instance, each record may have 0 to many identifiers. if the identifiers match exactly, we consider a solid match.  However if ID's do not strongly match,  we also look at additional set of fields such as name, birthdate, address at different weights.
For instance, if the names exactly match, it is stronger than if they match with small typos.
To give different weights for each field we are comparing, should I have to write custom distance calculator?
Or perhaps, should I do a MinHashing and then LSH as a second step as described in this document: http://web.stanford.edu/class/cs345a/slides/05-LSH.pdf?
It does not look like the  AND-OR amplification would help with that, as it takes the number of hash-functions as input, and it does not seem like we have control over the sensitivity of the hash-functions.
I will really appreciate your guidance.

ping @Yunni


Add Travis for style checking

Title is self-explanatory.
Closes #298.

Got it!  Thanks @gfyoung , I think I can take it from here.


new app getting  'Not Found'

Hello
I started playing around with Owl today - and after reading the docs thought it was a great idea / concept
so I got in installed and set up - all seemed ok - but when I did
owl server
and went to the local url - I got a 'Not Found' in the browser
taking a look at it I noticed that on line 116 (of lib/core/Owl.php) there was a return false - if I remove this then it all works fine
the full bit of code is
        if (Owl::isMode('testServer')) {
            // return static assets
            if (file_exists($_SERVER["SCRIPT_FILENAME"])) {
                return false;
            }
        }

what was the intention here?

Thanks for the report!
The built-in PHP web server sends all static asset requests to OWL.  OWL then assumes that if the file exists at the given path, that it's static and should just exit.
Normal page requests are assumed to NOT exist in the Document Root, and should be handled by the router.  This mimics the mod_rewrite logic in the .htaccess that is used when Apache is running. (i.e. server existing files as-is; everything else is handled by the router.)
Can you send the output of $_SERVER["SCRIPT_FILENAME"], and see if it exists in your document root?
From the PHP docs:

If a PHP file is given on the command line when the web server is started it is treated as a "router" script. The script is run at the start of each HTTP request. If this script returns FALSE, then the requested resource is returned as-is. Otherwise the script's output is returned to the browser.

Thanks

/home/graham/Dev/projects/owl/test/estimate/owlApp.php
that's the file - so am I basically calling the owl server in the wrong place?

Interesting.  Looks like testServer mode is being inconsistent about what it reports in SCRIPT_FILENAME.

What PHP version are you using?
Can you send the output of print_r($_SERVER); exit(); just before the file_exists check?

Thanks!

Hello
php version
PHP 7.0.18-0ubuntu<IP_ADDRESS> (cli) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.0.18-0ubuntu<IP_ADDRESS>, Copyright (c) 1999-2017, by Zend Technologies

out put of
print_r($_SERVER);
Array ( [DOCUMENT_ROOT] => /home/graham/Dev/projects/owl/test/estimate [REMOTE_ADDR] => <IP_ADDRESS> [REMOTE_PORT] => 42770 [SERVER_SOFTWARE] => PHP 7.0.18-0ubuntu<IP_ADDRESS> Development Server [SERVER_PROTOCOL] => HTTP/1.1 [SERVER_NAME] => localhost [SERVER_PORT] => 8888 [REQUEST_URI] => / [REQUEST_METHOD] => GET [SCRIPT_NAME] => / [SCRIPT_FILENAME] => /home/graham/Dev/projects/owl/test/estimate/owlApp.php [PHP_SELF] => / [HTTP_HOST] => localhost:8888 [HTTP_USER_AGENT] => Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:50.0) Gecko/20100101 Firefox/50.0 [HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 [HTTP_ACCEPT_LANGUAGE] => en-US,en;q=0.5 [HTTP_ACCEPT_ENCODING] => gzip, deflate [HTTP_CONNECTION] => keep-alive [HTTP_UPGRADE_INSECURE_REQUESTS] => 1 [REQUEST_TIME_FLOAT] =><PHONE_NUMBER>.7468 [REQUEST_TIME] =><PHONE_NUMBER> )

I'm not sure why your version is reporting SCRIPT_FILENAME differently.  On my MBP, v5.6 and v7.1 both handle it as expected.
Looks like I'll have to write a patch that constructs the full requested filepath manually, instead of relying on SCRIPT_FILENAME.
For now, I'd go with your workaround.  If you need to serve images, you can just return false if $_SERVER["REQUEST_URL"] matches e.g. '.png'.

great thanks for the work around I'll have a play.


Move control_plane pageserver/safekeeper deps into libs/{pageserver,safekeeper}_api

Commit header could use some work. Otherwise, mostly what the commit message says:

Remove control_plane deps on pageserver/safekeeper
Creates new pageserver_api and safekeeper_api crates to serve as the shared dependencies. Should reduce both recompile times and cold compile times.
Decreases the size of the optimized neon_local binary: 380M -> 179M. No significant changes for anything else (mostly as expected).

Anecdotally, I've noticed that recompiling (or waiting for rust-analyzer to catch up) while working on the pageserver can take weirdly long time, with the compiler spending some amount of that recompiling control_plane, even though changes haven't been made to the things it uses (which... makes sense, because it lists pageserver as a dependecy).
This PR moves the pageserver/safekeeper APIs that control_plane was using into separate libs/* crates, so that control_plane can be compiled in parallel with them, instead of waiting until after they're done.
I was surprised by the amount of change in the size of neon_local. Our release profile doesn't use LTO though, so perhaps that's shouldn't be so surprising. (release LTO=fat takes 2.5x longer, and release LTO=thin takes ~1.4x longer; probably too long to be that useful right now.).
Tested recompile times by deleting a comment in pageserver/src/lib.rs: about 4 seconds to recompile --release both with and without the change; 27 vs 29 seconds to recompile (debug) with vs without the change, respectively. rust-analyzer is a bit different: Eyeballing it with top and a stopwatch, it seems like this PR changes the update time for RA (on the same "delete a comment") from ~5s to ~4s. Overall, not much of a difference, but this maybe differences aren't as prominent if you only change a comment.

I was surprised by the amount of change in the size of neon_local. Our release profile doesn't use LTO though, so perhaps that's shouldn't be so surprising. (release LTO=fat takes 2.5x longer, and release LTO=thin takes ~1.4x longer; probably too long to be that useful right now.).

It makes sense: most of the binary size is used by debuginfo. See https://github.com/neondatabase/cloud/issues/1768#issuecomment-1181476480. The linker removes unused code, but it doesn't remove debuginfo of the eliminated code. (That's bonkers, but apparently that's how the linker works currently. I wish that would get fixed in the linker one day..)

I did some more googling on the debuginfo and binary size isssue, and found this hack: https://github.com/benesch/materialize/commit/02cc34cb7c7d9f1b775fe95e1697b797d8fa9b6d#diff-d889dd78ffee42be8358a583601a178d01e52cbd7ca774f6c9b759c640977660R166.
That seems very effective, only takes a few seconds,  with no apparent downside. On our debug binaries:
/data/tmp$ ls -l debug-orig/
total 2204980
-rwxr-xr-x 1 heikki heikki 110227136 Sep 23 14:17 compute_ctl
-rwxr-xr-x 1 heikki heikki 335055704 Sep 21 10:18 dump_layerfile
-rwxr-xr-x 1 heikki heikki 435575960 Sep 21 10:18 neon_local
-rwxr-xr-x 1 heikki heikki 399233912 Sep 21 10:18 pageserver
-rwxr-xr-x 1 heikki heikki 184511912 Sep 21 10:15 proxy
-rwxr-xr-x 1 heikki heikki 339497136 Sep 21 10:17 safekeeper
-rwxr-xr-x 1 heikki heikki 334394680 Sep 21 10:18 update_metadata
-rwxr-xr-x 1 heikki heikki 119361832 Sep 21 10:15 wal_craft
/data/tmp$ mkdir debug-after
/data/tmp$ cp debug-orig/* debug-after/
/data/tmp$ time find debug-after | xargs -Ifoo objcopy -R .debug_pubnames -R .debug_pubtypes foo
objcopy: Warning: 'debug-after' is a directory

real	0m3.855s
user	0m0.384s
sys	0m2.190s
/data/tmp$ ls -l debug-after/
total 1450988
-rwxr-xr-x 1 heikki heikki  81528768 Sep 24 12:57 compute_ctl
-rwxr-xr-x 1 heikki heikki 214730280 Sep 24 12:57 dump_layerfile
-rwxr-xr-x 1 heikki heikki 276485760 Sep 24 12:57 neon_local
-rwxr-xr-x 1 heikki heikki 257272640 Sep 24 12:57 pageserver
-rwxr-xr-x 1 heikki heikki 133922512 Sep 24 12:57 proxy
-rwxr-xr-x 1 heikki heikki 218035920 Sep 24 12:57 safekeeper
-rwxr-xr-x 1 heikki heikki 214068096 Sep 24 12:57 update_metadata
-rwxr-xr-x 1 heikki heikki  89748808 Sep 24 12:57 wal_craft
/data/tmp$ du -h debug-orig/ debug-after
2.2G	debug-orig/
1.4G	debug-after

I did some more googling on the debuginfo and binary size isssue, and found this hack: benesch/materialize@02cc34c#diff-d889dd78ffee42be8358a583601a178d01e52cbd7ca774f6c9b759c640977660R166.

Opened https://github.com/neondatabase/neon/pull/2514 to do that. But that's orthogonal to the savings from this PR.


Altair cleared and removed my workspace data without permission twice

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Platform: [e.g. Chrome extension, mozilla addon, desktop app, npm package, snap]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Please respond to the other questions in the issue template else this issue is not useful. Thanks.

Have you logged into Altair yet? (the beta account feature)

I've added extra functionality to periodically backup the altair state in case of a random data loss, which should help resolve this. Closing this for now since I haven't heard back.


onTrimStarted() method not calling

I have integrated library in my java project. successfully integrated but problem is facing not able to use trimming. its showing blank screen when i calls Trimming intent class. Please if have any solution share here. Thanks

The library is based on another repository.
And the sample works fine, no?
So please compare between the two.
Just saying that it doesn't work in a project that I have no way to check can't help...


Allow more than one entry for license

https://github.com/HumanBrainProject/openMINDS_core/blob/0e2cb6236b96d5c243a24675b69ed9304f4bbd95/schemas/products/researchProductVersion.schema.tpl.json#L103
While it is logical, that a dataset can only be published under one license at a time, software can be under more than one license. Therefore, after a quick discussion with @olinux we suggest allowing an array for license.

Cosign +1

@jagru20 , @olinux , @xgui3783 thanks for that note. I guess the "license" property should be moved then to the specific research product to allow validation for different counts (or should we leave it to the curators to make sure)? I'm not even sure if in principle a dataset could also have multiple licenses...
@apdavison what about models?

@jagru20 , @xgui3783 , @olinux out of curiosity: how does that work for software? are the licenses there attached rather to files than to software product as whole? Or can multiple license apply to the same file?

As far as I know, the software as a whole can be distributed under more than one license. For example if a developer wants to make the software open source (e.g., under GPL) but also wants to profit from selling proprietary licenses to companies which include it into their business, for example. (This is taken from here

@jagru20 , @olinux , @xgui3783 thanks for that note. I guess the "license" property should be moved then to the specific research product to allow validation for different counts (or should we leave it to the curators to make sure)? I'm not even sure if in principle a dataset could also have multiple licenses...
@apdavison what about models?

I think @UlrikeS91 described the procedure for more than one license per dataset here I suppose, this is still up to date? But I think this procedure is not directly applicable to software, because besides from the example in my above comment, where the two licenses are used for different cases, there is also the possibility that one or more licenses are combined to supplement each other for one piece of software.

hmm, it seems as far as software is concerned, it can get quickly complicated.
In addition to @jagru20 , some software packages allow users to choose:
https://www.npmjs.com/package/path-is-inside
some software packages specifies that both license apply:
https://www.npmjs.com/package/sha.js

I think @UlrikeS91 described the procedure for more than one license per dataset here I suppose, this is still up to date? But I think this procedure is not directly applicable to software, because besides from the example in my above comment, where the two licenses are used for different cases, there is also the possibility that one or more licenses are combined to supplement each other for one piece of software.

This is how we have viewed this so far, yes. In 99% of the cases, I assume that this will still be valid. Based on this Wikipedia link @jagru20 pasted into his comment, this whole things seems to be very challenging...
"When software is multi-licensed, recipients can typically choose the terms under which they want to use or distribute the software, but the simple presence of multiple licenses in a software package or library does not necessarily indicate that the recipient can freely choose one or the other. In some cases, especially when the software has multiple origins, all the accompanied licenses apply at the same time. The applicability of the different licenses has to be individually checked. The distributor may or may not apply a fee to either option."
It seems to me, that we may need to consider an additional field related to the licenses which indicates the users options (choose freely, all apply, etc.).
Generally, if we don't want to all this for all researchProducts, we need to do what @lzehl suggested and move the property to the individual research products.
Out of curiosity, can anybody come up with a case where we may want to all several licenses for datasets too? Being able to combine different licenses could be useful for datasets.

I discussed this issue with @olinux and we decided for the following option:
The property "license" will be moved to the specific research product version allowing for multiple licenses for model and software versions, and only one license (for now) for dataset versions.
@jagru20 do you have the time to take this over, or should I do the PR on this?

To be honest, I would be very thankful if you could do this.

@jagru20 sure! I'll take care of it :)


add role to the agent

This is closed to #63 ,it can provide perfect  support for The following scenarios
user: 我感觉好冷
agent: 是否需要我为你打开取暖器
user: 是的

How does AutoAgent use prefix system prompt? Can you place relevant code link ?

How does AutoAgent use prefix system prompt? Can you place relevant code link ?

https://github.com/LinkSoul-AI/AutoAgents/blob/main/autoagents/roles/role.py

Can you place relevant docs？


Update repo for toolchain v5

Description
Problem
We need to upgrade from debian-11 to debian-12 to accommodate memgraph binaries built with toolchain v5.
debian-12 uses some different libs, most noticeably python-3.11.
This bump in python version (3.9 -> 3.11) is a bit tricky because we hardcoded all dependency versions and now some of them aren't supported by python-3.11.
First example is pytorch, we are using 1.12, but 3.11 supports 1.13 and up.
Solution
This PR introduces changes in build environment which are needed to correctly build mage images with memgraph built with toolchain v5.

[ ] update Dockerfiles

[ ] Dockerfile
[ ] Dockerfile.release
[ ] Dockerfile.no_ML
[ ] Dockerfile.cugraph

[ ] update workflows

[ ] test.yml
[ ] test_no_ml.yml
[ ] docker_publish.yml

[ ] update dependecies

[ ] python/requirements.txt
[ ] python/requirements_no_ML.txt
[ ] python/tests/requirements.txt

Pull request type

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

Related issues
Delete if this PR doesn't resolve any issues. Link the issue if it does.
######################################
Reviewer checklist (the reviewer checks this part)
Module/Algorithm

[ ] Core algorithm/module implementation
[ ] Query module implementation
[ ] Tests provided (unit / e2e)
[ ] Code documentation
[ ] README short description

Documentation checklist

[x] Add the documentation label tag
[x] Add the milestone for which this feature is intended

If not known, set for a later milestone

I tried removing versions from requirement files so that pip pulls the latest versions.
We can revert this


reboot_vm.py not python-3 compatible.

Changing line 49 to except IOError as ex: and putting the print statements into parenthesis fixed the errors.

created https://github.com/vmware/pyvmomi-community-samples/pull/415