Configure Renovate

Welcome to Renovate! This is an onboarding PR to help you understand and configure settings before regular Pull Requests begin.
🚦 Renovate will begin keeping your dependencies up-to-date only once you merge or close this Pull Request.

Detected Package Files

compatibility/docker-compose.yaml (docker-compose)
compatibility/dockerfile (dockerfile)
.github/workflows/build.yaml (github-actions)
.github/workflows/compatibility.yaml (github-actions)
.github/workflows/continuous-integration.yaml (github-actions)
.github/workflows/release.yaml (github-actions)
Directory.Build.props (nuget)
compatibility/Products.csproj (nuget)
global.json (nuget)
src/Federation/ApolloGraphQL.HotChocolate.Federation.csproj (nuget)

Configuration Summary
Based on the default config's presets, Renovate will:

Start dependency updates only once this onboarding PR is merged
Apply Apollo's centralized, default Renovate configuration
Enable Renovate Dependency Dashboard creation.
Use semantic commit type fix for dependencies and chore for all others if semantic commits are in use.
Ignore node_modules, bower_components, vendor and various test/tests directories.
Group known monorepo packages together.
Use curated list of recommended non-monorepo package groupings.
Apply crowd-sourced package replacement rules.
Apply crowd-sourced workarounds for known problems with packages.
Pin dependency versions for devDependencies and retain SemVer ranges for others.

🔡 Would you like to change the way Renovate is upgrading your dependencies? Simply edit the .github/renovate.json5 in this branch with your custom config and the list of Pull Requests in the "What to Expect" section below will be updated the next time Renovate runs.

What to Expect
With your current configuration, Renovate will create 3 Pull Requests:

chore(deps): update dependency microsoft.sourcelink.github to v1.1.1

Schedule: ["at any time"]
Branch name: renovate/microsoft.sourcelink.github-1.x
Merge into: main
Upgrade Microsoft.SourceLink.GitHub to 1.1.1

chore(deps): update actions/checkout action to v4

Schedule: ["at any time"]
Branch name: renovate/actions-checkout-4.x
Merge into: main
Upgrade actions/checkout to v4

chore(deps): update dotnet monorepo (major)

Schedule: ["at any time"]
Branch name: renovate/major-dotnet-monorepo
Merge into: main
Upgrade dotnet-sdk to 7.0.402
Upgrade mcr.microsoft.com/dotnet/aspnet to 8.0
Upgrade mcr.microsoft.com/dotnet/sdk to 8.0

❓ Got questions? Check out Renovate's Docs, particularly the Getting Started section.
If you need any further assistance then you can also request help here.

[ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

Since this is a public repository, closing this in favor of the public renovate instance.


[v0.6 fix] Properly inspect errors

This is related and blocked by cloudhead/eyes.js#12.
Gist of what's going on: Error properties are non-enumerable in node v0.6, so Object.keys which is being used in eyes.js won't list them (we need to use Object.getOwnPropertyNames). This results in errors being outputted as {}, for example in assert.isNull(err) statement.
(Also, reformatted this code a bit)

Thanks @mmalecki. Cherry-picked into master. Will be published in<EMAIL_ADDRESS>later tonight.


[BUG] Create a blob SAS with "rwxft", it does not work on download blob

Describe the bug
Create a blob SAS with "rwxft" permission on 12.5.0-preview.5, the SAS URi fail to download the blob.
But the SAS create with permission "rwx", "rwt", "rwf" in same way all works.
Expected behavior
Blob SAS can download the blob correctly.
Actual behavior (include Exception or Stack Trace)
<Error>
AuthenticationFailed
<Message>Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature. RequestId:cc2d072a-e01e-00ea-0905-55d10f000000 Time:2020-07-08T08:52:17.0676265Z</Message>
<AuthenticationErrorDetail>Signature fields not well formed.</AuthenticationErrorDetail>
</Error>

To Reproduce
Steps to reproduce the behavior (include a code snippet, screenshot, or any additional information that might help us reproduce the issue)

Create a blob SAS with "rwxft" (permission is set with BlobSasBuilder.SetPermissions(string rawPermissions))
Try to create blob with SAS Uri , and failed as error above. The sample SAS Uri is:

https://xxx.blob.core.windows.net/weitest/dir1/blob1?sv=2019-12-12&se=2020-07-08T09%3A52%3A10Z&sr=b&sp=rwxft&sig=xxx

Besides that, SAS create with permission "rwx", "rwt", "rwf" in same way all works, sample sas Uri as following:

https://xxx.blob.core.windows.net/weitest/dir1/blob1?sv=2019-12-12&se=2020-07-08T09%3A55%3A28Z&sr=b&sp=rwx&sig=xxx
https://xxx.blob.core.windows.net/weitest/dir1/blob1?sv=2019-12-12&se=2020-07-08T09%3A55%3A46Z&sr=b&sp=rwt&sig=xxx
https://xxx.blob.core.windows.net/weitest/dir1/blob1?sv=2019-12-12&se=2020-07-08T08%3A26%3A45Z&sr=b&sp=rwf&sig=xxx

Environment:

Name and version of the Library package used: [e.g. Azure.Storage.Blobs 12.5.0-preview.5]
Hosting platform or OS and .NET runtime version (dotnet --info output for .NET Core projects): [e.g. Azure AppService or Windows 10 .NET Framework 4.8]

.NET Core SDK (reflecting any global.json):
 Version:   2.2.108
 Commit:    33ed5b90ce

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.18363
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\2.2.108\

Host (useful for support):
  Version: 2.2.6
  Commit:  7dac9b1b51

.NET Core SDKs installed:
  2.2.108 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

IDE and version : [e.g. Visual Studio 16.3]
VS 15.7.4

'f' is not a valid blob SAS permission.  'f' only applies to Account SAS.

@seanmcc-msft
Thanks for the reply!
Is there any function in track2 XSCL can convert the raw permission string to Blob/ContainerSasPermissions, like “SharedAccessBlobPolicy.PermissionsFromString()” Track1?
We need this since powershell cmdlet input permission as raw permission string (change it is breaking and not allowed until major release), so we need write code to convert it to Blob/ContainerSasPermissions  make sure the permission in right order(like use “SharedAccessBlobPolicy.PermissionsFromString()” in Track1), then create SAS.
If no such function, do you have a recommended way to convert it?


Wrong or missing arguments when calculating SMA

Hi,
I did some tests on a demo broker account and the sma command seems to either be wrong or is missing an argument because it always returns "Error: min_periods must be an integer". After that, AutoGPT tried the sma command with the min_periods argument, which resulted in another error "Error: AutoGPTMetaTraderPlugin.sma() got an unexpected keyword argument 'min_periods'.
After that, all the other indicators were calculated correctly but the system crashed due to the message finally being to long for openai to handle and I got the "message is too long" error.

Hi,
I did some tests on a demo broker account and the sma command seems to either be wrong or is missing an argument because it always returns "Error: min_periods must be an integer". After that, AutoGPT tried the sma command with the min_periods argument, which resulted in another error "Error: AutoGPTMetaTraderPlugin.sma() got an unexpected keyword argument 'min_periods'.
After that, all the other indicators were calculated correctly but the system crashed due to the message finally being to long for openai to handle and I got the "message is too long" error.

That's not a valid argument that's why, tell it to only use period. Sometimes it uses arguments that aren't allowed which is a bug and hopefully gets fixed in the future.

What command had a message that was too long? I tried to make sure that wouldn't happen with the data it pulls in.

The initial goal was something like "Analyse the candlestick data of EURUSD and make smart trades to increase the net worth of the broker account". The command that crashed the system with a message that was too long was one of the other indicators after the sma. It had like 4317 characters and it said 4096 is the maximum. But I have to reproduce it to be sure which command it was.

The initial goal was something like "Analyse the candlestick data of EURUSD and make smart trades to increase the net worth of the broker account". The command that crashed the system with a message that was too long was one of the other indicators after the sma. It had like 4317 characters and it said 4096 is the maximum. But I have to reproduce it to be sure which command it was.

If you could reproduce the error that would be helpful so I can make sure it doesn't happen again

It seems like at least the "message too long" error was simply my fault, because I didnt start autoGPT with --gpt3only. I fixed that and now the message problem seems to be fixed. But I still get the "Error: min_periods must be an integer" error everytime it tries to do the sma indicator, no matter how often I say it should only use period.

In the meantime I did another test, it runs for about 10 Minutes now and basically loops through all the indicators but gets them wrong regularly as seen in the attached picture. When it finally tried to do a trade on the demo account, it got an error that trades are disabled, but I can trade via MT 4 fine. Maybe the api is disabled in the demo account?

In the meantime I did another test, it runs for about 10 Minutes now and basically loops through all the indicators but gets them wrong regularly as seen in the attached picture. When it finally tried to do a trade on the demo account, it got an error that trades are disabled, but I can trade via MT 4 fine. Maybe the api is disabled in the demo account?

I've been using it on demo and its working fine and those indicators are working fine for me so that's weird. I will take a look again later tonight to see if I can reproduce your errors on my end and try to fix them.

I also have the "Error: min_periods must be an integer" error, and then it tries to add it in and then gets the follow up error. I also added 'min_periods' into the init.py file in the metatrader zip folder, but this also didn't work, so took it out again. Interested to see if anyone comes up with a solution.


Launchpad example giving error

The Launchpad example linked at the bottom of this section of the docs gives an error. Maybe that's expected, but, if so, it's confusing. Here's what I'm getting:
{   "code": 400,   "error": "Script returned an error.",   "details": "Error: Schema must be an instance of GraphQLSchema. Also ensure that there are not multiple versions of GraphQL installed in your node_modules directory.",   "name": "Error",   "message": "Schema must be an instance of GraphQLSchema. Also ensure that there are not multiple versions of GraphQL installed in your node_modules directory.",   "stack": "Error: Schema must be an instance of GraphQLSchema. Also ensure that there are not multiple versions of GraphQL installed in your node_modules directory.\n    at invariant (/data/_verquire/graphql/0.11.7/node_modules/graphql/jsutils/invariant.js:18:11)\n    at validate (/data/_verquire/graphql/0.11.7/node_modules/graphql/validation/validate.js:59:72)\n    at /data/_verquire/graphql/0.11.7/node_modules/graphql/graphql.js:69:51\n    at new Promise (<anonymous>)\n    at graphqlImpl (/data/_verquire/graphql/0.11.7/node_modules/graphql/graphql.js:59:10)\n    at Object.graphql (/data/_verquire/graphql/0.11.7/node_modules/graphql/graphql.js:48:227)\n    at /data/io/562e52d3-84b6-4a1e-99ee-707f5d1b8f88/webtask.js:127:26\n    at <anonymous>\n    at process._tickDomainCallback (internal/process/next_tick.js:228:7)" }

Yes, that's a known issue with launchpad. If you fork and run that example, it will work. This is being tracked in the launchpad repo. Thanks!


browser: cordova.file.applicationDirectory returns an http:// URL instead of a file:// one

Bug Report
Problem
cordova.file.applicationDirectory returns an "http://" URL instead of a "file://" one.
Therefore I am unable to list files inside a directory with window.resolveLocalFileSystemURL.
What is expected to happen?
cordova.file.applicationDirectory returns a "file://" URL which I can use further.
What does actually happen?
it offers an "http://" URL and window.resolveLocalFileSystemURL fails with Error 5.

Information
On my Android device everything works as expected, I get a "file://" URL, which gets properly resolved
Command or Code
I use the Onsen UI framework, but this works with normal html buttons too
 <ons-button onclick="alert(cordova.file.applicationDirectory)">test</ons-button>
Environment, Platform, Device

Browser platform
Safari 17.4.1
Version information
Cordova Packages:

    cli: 12.0.0
        common: 5.0.0
        create: 5.0.0
        lib: 12.0.1
            common: 5.0.0
            fetch: 4.0.0
            serve: 4.0.1

Project Installed Platforms:

    android: 12.0.1
    browser: 7.0.0

Project Installed Plugins:

    cordova-plugin-file: 8.0.1
    cordova-sqlite-evmax-build-free: 0.0.10-dev
    cordova-sqlite-storage: 6.1.0

Environment:

    OS: macOS Sonoma 14.4.1 (23E224) (darwin 23.4.0) x64
    Node: v21.6.1
    npm: 10.2.4

android Environment:

    android:
[=======================================] 100% Fetch remote repository...
Available Android targets:
----------
id: 1 or "android-33"
     Name: Android API 33, extension level 3
     Type: Platform
     API level: 33
     Revision: 3
----------
id: 2 or "android-34"
     Name: Android API 34, extension level 7
     Type: Platform
     API level: 34
     Revision: 2

Project Setting Files:

    config.xml:
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.rnaumann.schwalbenshop" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
    <name>Schwalbenshop</name>
    <description>Sample Apache Cordova App</description>
    <author<EMAIL_ADDRESS>href="https://cordova.apache.org">
        Apache Cordova Team
    </author>
    <content src="index.html" />
    <allow-intent href="http://*/*" />
    <allow-intent href="https://*/*" />
     <icon src="swallow.png" />
</widget>

    package.json:
--- Start of Cordova JSON Snippet ---
{
  "platforms": [
    "browser",
    "android"
  ],
  "plugins": {
    "cordova-sqlite-evmax-build-free": {},
    "cordova-sqlite-storage": {},
    "cordova-plugin-file": {
      "ANDROIDX_WEBKIT_VERSION": "1.4.0"
    }
  }
}
--- End of Cordova JSON Snippet ---

Checklist

[x] I searched for existing GitHub issues
[x] I updated all Cordova tooling to most recent version
[x] I included all the necessary information above

I don't think this is a bug... but probably an undocumented caveat with the browser implementation.
applicationDirectory is the directory of your app installation. On iOS/Android, this refers to the read-only directory of your unpacked application bundle. The browser has no direct equivalency of this as your "application" isn't stored locally on disk. Hence why it returns the location origin instead. There is also no HTTP api to list the contents listing your app files for the browser platform so listing browser app files is something that isn't really achievable.
Conceptually, https://localhost (or whatever what the site address) makes the most sense for applicationDirectory constant on the browser platform.


ModelCheckpoint with custom filepath don't support training on multiple nodes

🐛 Bug
When training on multiple nodes using ModelCheckpoint with custom filepath, it will raise FileExistsError caused by the following line of code: model_checkpoint.py#L127.
Maybe a try-except block is needed?

No I think we just need to pass in exists=True :)

@f4hy your PR added this line. Do you know a good way to fix it?

Ah sorry. I think I know what's up. I'll get a patch out this evening. Sorry!

@angshine I found a few issues with the model checkpoint path stuff. Not 100% sure I found the particular bug you were seeing but I think this should fix it. Can you give my branch in the above PR a test? Sorry to have introduced this bug for you.

Sorry for the late reply, but it seems that this bug has not been fully fixed. This line still raises an exception:  tensorboard.compat.tensorflow_stub.errors.AlreadyExistsError: Directory already exists when training with DDP. I still need to manually add a try-except to ignore the exception.

@angshine That line has been completely replaced now on master. Can you give it another try. I hope #3320  has finally resolved this.


Integrate tCache in cache2k-benchmark

Integration of tCache done. (Relates to Ticket 4)
Please check licenses. I put the classes with Apache v2.0 license, but can change them on demand.

Thanks for the quick feedback.
Looks like I possibly misdid indentation at some places and the brace at "if (withExpiry)". Also in Caffeine it is not "static", but surely I can change that.

Also in Caffeine it is not "static", but surely I can change that.

I meant static in the sense of constant. Caffeine has no concept of cache names/ids.

In the cache2kfactory I have:
   new Cache2kBuilder<Integer, Integer>(){}
      .name("testCache-" + counter.incrementAndGet())
   . . .

Interesting. Maybe the reason is that I wanted the eviction efficiency tests being able to run in parallel.
Using a counter is fine, too. I am a little discomfort with new Random() since this implies some seeding overhead which isn't needed every time and you still have the potential of a random name clash.

I committed the recommended changes, and also modified the code to guarantee a proper close().

Merging it in.
Probably  I won't keep processJmhResults.sh that way. I think in the end everybody wants to benchmark and graphing of its own choice of caches. Maybe the best way is a generic approach, that puts all benchmarked caches in the JSON file into the graph.


Third-Party Location lookup

This is drafted at https://docs.google.com/document/d/13NGa46a_WWno-XYfe8mQrglQdtOYMFVZtxkPKXDC3ac but needs speccing properly

This got bogged down in how to specify APIs which take "any keys" as query params, turns out that's a bad API design, so how to version the real API in use on real clients (namely riot) while it's under "/unstable". Arguments of how to put datestamps in "unstable" version tags - should it be spelled "unstable-20161121" vs. "unstable/20161121". I prefer the former.
Anyway this is about 4 levels of dependency stack away so far.. :(

I don't really see that we need to reach agreement on The One True Unstable URI Versioning System To Rule Them All; if you're in a position to update an endpoint and need to re-version it, I suggest you Just Do It in whatever way you think best. The whole point is that it's Unstable so "shouldn't" be carved in stone forever anyway.

For reference, this is:

/thirdparty/protocols
/thirdparty/location
/thirdparty/user

The impl is in https://github.com/matrix-org/synapse/blob/develop/synapse/rest/client/v2_alpha/thirdparty.py

There are also /thirdparty endpoints in the AS API; their omission is tracked at https://github.com/matrix-org/matrix-doc/issues/1271

also, apparently, third_party_instance_id in /publicRooms: #1248.
I'd make a sarcastic comment about not knowing whether thirdparty is one word or two, but /publicRooms is horrifically inconsistent anyway.

(As a note, I did look at the code in synapse for the publicRoom filtered by third_party_instance_id path and it doesn't actually do anything at all. So nothing of value was lost)


Reworked Tech Stack and Removed Exp Variables

Description
This was a relatively simple change as it was warranted by Jason. So instead of having the tech_stack be limited to specific areas such as Frontend, Backend, etc, it was opened up to accept any string input as to allow more freedom. That and I had also removed the experience level of both mentor and mentee as per request.
Type of change

[X] This change requires a documentation update

Checklist:

[X]  My code follows PEP8 style guide
[X]  I have removed unnecessary print statements from my code
[X]  I have made corresponding changes to the documentation if necessary
[X]  My changes generate no errors
[X] No commented-out code
[X]  Size of pull request kept to a minimum
[X]  Pull request description clearly describes changes made & motivations for said changes

My Loom Video: https://www.loom.com/share/8f5484cb18424bcfbe31d2746f00a14c

The idea was to remove the specification of tech_stack to only allow these: ["Career Development", "Frontend", "Backend", "Design UI/UX", "iOS", "Android", "Data Science"] We still want the field, just not the specific check.

Ah okay, a misunderstanding on my part. I have fixed it and pushed my changes!


Feat add pull up literal when infer predicates

This pr add pull up literal when infer predicates, we can infer tmp.col1='abc'  and tmp.col2 = 'def' from subquery tmp, pull up to inner join, and combined with join on condition, we can infer ds.col1='abc' and ds.col2='def'
select
	*
from
	(
	select
		tmp.col1,
		tmp.col2
	from
		(
		select
			'abc' as col1,
			'def' as col2
		from
			test_pull_up_predicate_literal
               ) tmp
               inner join test_pull_up_predicate_literal ds
               on tmp.col1 = ds.col1 and tmp.col2 = ds.col2
	) t
where col1 = 'abc' and col2 = 'def';

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall

run external


Update README.md

the method was waiting for an int but a boolean was provided instead.
the import org.clulab.struct.CorefMention was missing
regards 4m Moldova

Thanks Adrian!
Can you please change that 0 to ShallowNLPProcessor.NO_DISCOURSE, for consistency with other code?


Sprite animation timings?

Hey, I've been looking for something like this to improve my Krita -> bevy workflow.
I'm using Krita to do sprite animations, and currently I'm animating at 60 FPS, because that's what my game logic and networking solution runs at. However, when holding a pose for several frames (which happens a lot due to the high frame rate), I don't want to have duplicate textures.
So I'm looking for a system that will also allow me to also embed some timing information in the manifest.
If this is out of scope for the project, I'm perfectly happy forking (thanks for sharing!), but I thought I'd ask in case this is something you'd want to support as well.

I have https://github.com/KirmesBude/bevy_trickfilm that allows you to define keyframe (as index) and keyframe time.
Maybe that is what you are looking for?

Yes, that's almost exactly what I want! I'd prefer something that operates on frames instead of time, since I need rollback and manual stepping to work, and I'll likely have actions and hitboxes tied to specific frames, but perhaps I can make it work. If not, I can probably patch it to make it to what I want.
Nevertheless, I'm pretty sure I can use bevy_titan unmodified. It's probably a better idea to add this stuff on top like you did in trickfilm anyway.

Alright, sharing some of my findings here: https://github.com/johanhelsing/krita_bevy_anim
Getting closer to a working pipeline, hopefully something that might be useful for others too at some point.

I ended up using my own frame-based animation manifest format, but adding support for bevy_trickfilm manifest to that pipeline as well should be relatively easy.

It looks like your "Animation Asset" does not have any reference to the Image data.
I have been thinking about something similar for https://github.com/KirmesBude/bevy_trickfilm/issues/8.
How do you plan to handle playback? Would you expect the user to give both a Flippy handle and a TextureAtlas handle to your version of an AnimationPlayer - or would you leave the second part up to usercode?

I just require files to be named the same, so player_run.flippy always tries to load player_run.titan. It won't let me have multiple animations per sprite sheet, but that would also be pretty hard anyway, given how Krita works.
Some snippets of the code I use at the moment:
let clip = anim_clips.get(&assets.run)?;
sprite.index = clip.get_index(frame);

impl AnimClip {
    pub(crate) fn get_index(&self, frame: usize) -> usize {
        let frame = frame % self.length as usize; // wrap around
        self.timings
            .iter()
            .rposition(|t| (*t as usize) <= frame)
            .unwrap_or(0)
    }
}

impl AssetLoader for FlippyLoader {
    fn load<'a>(
        &'a self,
        bytes: &'a [u8],
        load_context: &'a mut LoadContext,
    ) -> bevy::utils::BoxedFuture<'a, Result<(), bevy::asset::Error>> {
        Box::pin(async move {
            let Flippy { length, timings } = ron::de::from_bytes::<Flippy>(bytes)?;

            let titan_path = {
                let mut path = PathBuf::from(load_context.path());
                path.set_extension("titan");
                path
            };

            let atlas_path = AssetPath::new_ref(titan_path.as_path(), None);
            let atlas: Handle<TextureAtlas> = load_context.get_handle(atlas_path.clone());

            let anim_clip = AnimClip {
                atlas,
                timings,
                length,
            };

            let anim_clip_asset = LoadedAsset::new(anim_clip).with_dependency(atlas_path);
            load_context.set_default_asset(anim_clip_asset);
            Ok(())
        })
    }

Oh, that's smart.
Cool stuff.


Tests; remove duplicate test of missing_op_id in debug mode

Fixes # n/a
Changes proposed in this pull request:

Removes a duplicated test (fixtures/missing_op_id/swagger.yaml) in debug mode

As discussed here
cc @rafaelcaricio

👍

@MikeRalphson Thank you for the PR!

Coverage remained the same at 100.0% when pulling d7cea4e1b3e2a135a90a43ee4810d160930bd165 on MikeRalphson:patch-2 into f2923148f8018720a2a704c3f1fadb785a723605 on zalando:master.


[FLOC-3486] Mark it as flaky.

Fixes https://clusterhq.atlassian.net/browse/FLOC-3486

:+1:

It looks like the test is failing due to the timeout changes. (duplicate keyword arguments?)

Fixed the timeout problem.  It was a misuse of run_test_with.


Please implement the CAST AS JSON

the result of the grouping below is being returned as a string, rather than a json object. In mysql2 this works fine, however I would like to continue using mysql.
CAST("[", GROUP_CONCAT(JSON_OBJECT("id", xxx.id, "name", xxx.name), "]") AS JSON) AS myItem

CAST( CONCAT( "[", GROUP_CONCAT(JSON_OBJECT("id", xxx.id, "name", xxx.name)), "]") AS JSON) AS myItem
is ok?

Hi, now that I realized that I wrote the sentence in the wrong way, CONCAT was missing. However, this statement is not returning a json object, but a string. As below:
{
    myItem: '[{"id": 1, "name": "myName1"},{"id": 2, "name": "myName2"}]'
}

It's on the radar to work on. There is a PR I'm working to clean up. It'll have to be opt-in because code is already out there that is expecting a string back and running through JSON.parse themselves. You can always define a custom typeCast function which can parse it for you as well, which is also what people have been doing.
https://github.com/mysqljs/mysql/issues/1267#issuecomment-230739821 is how you can do this.
Duplicate of #1267 (to keep tracking this in one ticket).


fix: add flag for autologout

:tada: This PR is included in version 0.3.53 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add release and debug target indicators

This resurrects https://github.com/rust-lang/cargo/pull/1374 and implements an indicator of whether the current build is a release or debug.  This should help avoid issues like
https://www.reddit.com/r/rust/comments/4tikmf/why_is_my_forth_virtual_machine_written_in_rust/
Specifically, this change includes the target indicator, as @alexcrichton mentions in the original PR:
# old
Compiling foo v0.1.0

# new
Compiling (debug) foo v0.1.0

r? @alexcrichton

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.
If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.
Please see the contribution instructions for more information.

cc @rust-lang/tools, thoughts on this?
I personally think that because this is still coming up it's worth doing something, and the modification to the output here should be quite un-invasive.

+1

I like the idea of putting the target (or profile or whatever this is) into the output to give people a clue they are not optimizing, but with this implementation it will print redundantly for each crate when it's a global setting. Unfortunately there are no other status lines to tack it onto. We could output a new line just dedicated to communicating dynamic configuration properties (maybe there are others), like Configuring for debug build.

I'd be fine with @brson's fix also, assuming we're okay with adding an extra line to the build output.

On second thought, we might want to consider that being more "in your face" like this PR does might help prevent the error we're trying to avoid better than having a line that they may miss if it scrolls off the screen building dependencies...

I do kinda like that a noop cargo build doesn't print anything today, but we could probably just defer printing something like "configuring for a debug build" unless something's actually built. It is conceivable in the future there we could build some dependencies in release mode and some in debug mode, but you also perhaps don't need to be informed of this.
For a comparison, here's what this would look like with a few deps:
    Updating git repository `https://github.com/carllerche/slab`
    Updating registry `https://github.com/rust-lang/crates.io-index`
   Compiling void v1.0.2
   Compiling bytes v0.3.0
   Compiling libc v0.2.14
   Compiling log v0.3.6
   Compiling slab v0.2.0 (https://github.com/carllerche/slab?rev=5476efcafb#5476efca)
   Compiling cfg-if v0.1.0
   Compiling semver v0.1.20
   Compiling bitflags v0.4.0
   Compiling rustc_version v0.1.7
   Compiling net2 v0.2.26
   Compiling nix v0.6.0
   Compiling mio v0.6.0-dev (file:///home/alex/code/mio)

vs
    Updating git repository `https://github.com/carllerche/slab`
    Updating registry `https://github.com/rust-lang/crates.io-index`
   Compiling (debug) void v1.0.2
   Compiling (debug) bytes v0.3.0
   Compiling (debug) libc v0.2.14
   Compiling (debug) log v0.3.6
   Compiling (debug) slab v0.2.0 (https://github.com/carllerche/slab?rev=5476efcafb#5476efca)
   Compiling (debug) cfg-if v0.1.0
   Compiling (debug) semver v0.1.20
   Compiling (debug) bitflags v0.4.0
   Compiling (debug) rustc_version v0.1.7
   Compiling (debug) net2 v0.2.26
   Compiling (debug) nix v0.6.0
   Compiling (debug) mio v0.6.0-dev (file:///home/alex/code/mio)

The latter to me doesn't look so bad, but I don't really mind so long as we fit it in somewhere.
Also one thing we may want to keep in mind is that if we print out the build type at the top then it's likely to get lost in a project like servo which has tons of deps.

I'm definitely in favor of the general idea; and I also think that this specific implementation where the (debug) is given for each dependency is quite OK. It's still very readable output.

Yeah, printing critical info first isn't so great because it will scroll off screen.

Alex's example looks fine to me.

It might be worth having "Debug (unoptimized+debuginfo)" at least once, to make it painfully obvious that optimizations aren't enabled.

Also one thing we may want to keep in mind is that if we print out the build type at the top then it's likely to get lost in a project like servo which has tons of deps.

we could, in theory, print it just on your own crate. Then you'd have something like
    Updating git repository `https://github.com/carllerche/slab`
    Updating registry `https://github.com/rust-lang/crates.io-index`
   Compiling void v1.0.2
   Compiling bytes v0.3.0
   Compiling libc v0.2.14
   Compiling log v0.3.6
   Compiling slab v0.2.0 (https://github.com/carllerche/slab?rev=5476efcafb#5476efca)
   Compiling cfg-if v0.1.0
   Compiling semver v0.1.20
   Compiling bitflags v0.4.0
   Compiling rustc_version v0.1.7
   Compiling net2 v0.2.26
   Compiling nix v0.6.0
   Compiling (debug) mio v0.6.0-dev (file:///home/alex/code/mio)

Messes up the symmetry a bit though :/

@steveklabnik - yeah, @wycats mentioned that as a possibility as well.  I'm not a fan, yeah, for the symmetry, but it also kinda begs the question "what are the deps being built with?"  Are they release and only mine is (debug), which is why it's specifically called out?

Another possibility (which I believe solves @eddyb's concern as well) is that we could print one line at the end of a build along the lines of:
Finished debug (unoptimized + debuginfo) build of N crates in 4.53s

That way we can add extra information like how many crates were built, how long the build took, etc

Finished debug (unoptimized + debuginfo) build of N crates in 4.53s

I'm much, much, much more comfortable with one line at the end describing the build than adding a bit of extra info to every line. At some point, that extra info gets tuned out and just adds noise.

I'm ok with that as well, @jonathandturner do you want to update with that on this PR?

@alexcrichton - yeah, alternate PR on #2909.  If that works, I can close this one.

Closing in favor of #2909, I think we're gonna take the strategy there


[New game]: The Fearsome Three story based Game

🎮 Game Request
This is an small Story Based game
Point down the features
No points
Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @Kalivarapubindusree , You can't have another issue before completing the previous one 😀
you already have the following 1 open issues 👀 ! :
#1679

Hey @Kalivarapubindusree ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


Fix jp holidays

Thank you for your great work.
I fixed data for Japan according to the Japanese Cabinet Office's data.

remove foundation day before 1967
add a substitute holiday (1974-05-06).
add public holidays (1959-04-10, 1989-02-24)

Pull Request Test Coverage Report for Build 1025

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 1024:
0.0%

Covered Lines:
1

Relevant Lines:
1

💛  - Coveralls

Hey there @osoken sorry for the belated merge and thank you too, brilliant work! 👍


Full VPN Support with WSL2

Is your feature request related to a problem? Please describe.
Many people work from home with WSL2 and connect to a corporate networking using VPN.
The issues has been that either you choose WSL1 or you have to go to the office.
Describe the solution you'd like
Making WSL2 network connectivity seamless work with any VPN solution.
Describe alternatives you've considered
The only stable way i've found is https://github.com/sakai135/wsl-vpnkit and Windows 11 Version 22H2 (OS Build 22621.1992). It works but on startup the system will "freeze" for ca 1-2 minutes.
Question
Is VPN support on any of your roadmap ?

https://github.com/deanmcniven/wsl2-vpn-support
Depending on your VPN, the above may work.  It's just a PowerShell script that adds the appropriate routes, giving WSL2 network access the way it should.

I can add that if I use VPN in Windows (before starting WSL 2 - but sometimes also after starting WSL 2) - it also works from within WSL 2 - I used VPN inside Windows and the OpenVPN client, both successfully

Usually it works because Windows will create A NAT for your WSL2, and route through the VPN into Windows. The problem I have seen is the IP address range used in WSL2 conflicts with internal network ranges i.e. (<IP_ADDRESS>/12)

Ok here is my 2 cents (or experience) with this.
I/we work behind (http) proxies
On-site (ie w/o VPN) all green.
From home with VPN to corp network -> issues.
Interesting details!
How VPN works for "some time".
WSL2 internet connectivity will work if there is no vEthernet (WSL2)  showing up in netsh interface show interface  before I connect via VPN.
Then I will activate or connect via VPN.
Internet Connectivity will work and netsh interface show interface will now show vEthernet (WSL2) as Enabled in State Connected.
BUT as soon as the VPN (even if only for the blink of an eye) looses connection and therefore immediately reconnects again, there is no way (at least I have not found one) to make the WSL2 internet connectivity work again (ie proxy sever can no longer be found, etc) EXCEPT rebooting the computer (which will remove ie again show no vEthernet (WSL2) interface again.
Things I tried so far to avoid having to reboot/restart the PC.
disable/enable vEthernet (WSL2) in Powershell elevated terminal
Restart LxssManager
additonal info: this was done in all available combinations of wsl --shutdown  and VPN connect/disconnect you can think of or find on the internet. All to no avail - still the only fix -> reboot until next connection loss and reconnect.
The VPN connection loss and reconnect breaking the WSL2 internet connectivity since starting WSL2 before being connected via VPN (ie create an existing vEthernet (WSL2) interface before there's a VPN involved) and then starting VPN connection afterwards will also result in WSL2 internet connectivity being dead.
Looking fwd to solution ideas ...

I've struggled with this for several months. It seems that a recent update to WSL offers experimental features which resolve the issue for me. I'm using WSL2 on Windows 11 with Cisco AnyConnect VPN.
In my environment, I've added the following flags to my C:\Users_username_.wslconfig file:
[experimental]
networkingMode=mirrored
dnsTunneling=true

This solution worked perfectly for me! I have been following this thread for a few months hoping for a solution to this issue and was far too excited that this worked haha. Thanks.

Thanks for that information, mirrored mode looks interesting.
Our current fix is to set a registry key to move the NAT to <IP_ADDRESS>/20
This keeps WSL NAT away from our corporate and most home networks.
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss
NatGatewayIpAddress <IP_ADDRESS>
NatNetwork <IP_ADDRESS>/20

update
installed wsl2 with "experimental" vpn support
here are the details
WSL version: <IP_ADDRESS>
Kernel version: <IP_ADDRESS>-2
WSLg version: 1.0.60
MSRDC version: 1.2.5105
Direct3D version: 1.611.1-81528511
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.19045.4170

Still same issue - once the VPN gets disconnected (usually due to some network issues I guess - not all network connections are 100% stable a 100% of the time) and re-connects the WSL connections are gone/dead and I need to restart my PC again for them to come alive.

I can confirm that networkingMode=mirrored mentioned above seems to solve my issues with VPN and WSL2. I've had two issues issues  with networking/VPN/WSL2 in the six weeks using this setup where ssh and az (Azure cli) stops working while telnet and other network services like DNS works fine. Running the command
ipconfig /release
seems to resolve the problem.
I'm using Cisco Anyconnect.

I've read the dns configuration in my openvpn log and configured /etc/resolv.conf accordingly, after disabling automatic generation in /etc/wsl.conf. That's the only way the worked for me, pretty empirically.

Five years since these issues showed up.  NO fixes.  (I don't consider needing to reboot it all when you lose the VPN for any reasons as it being fixed...)
I mean, c'mon- VirtualBox manages this one thing right.  And right now even.  It's such that if I thought I could get my employer to sign off on a Linux box with their Win10 Enterprise install living in a VirtualBox sandbox, I'd go that way.

I have successfully managed to get the internet working on my WSL2: Ubuntu 22.04.2 LTS a few times, but it was not consistent until a while back. I have identified a series of steps that reliably enable internet access in WSL2 for me. These steps must be followed in the specified order and should work on both Windows 10 and Windows 11, as I discovered this solution over a year ago while using Windows 10:

After Windows starts, before connecting to the VPN, launch your WSL2 instance (in my case, Ubuntu 22.04.2 LTS).
Run the following command to check for internet access:
sudo apt update
Connect to the VPN using your client (in my case, "Cisco Secure Client").
Open PowerShell (x86) with local administrator privileges and execute the following commands:
Get-NetAdapter | Where-Object {$_.InterfaceDescription -Match "Cisco AnyConnect"} | Set-NetIPInterface -InterfaceMetric 5500 Restart-Service LxssManager
Open a non-elevated Command Prompt and run:
wsl --shutdown
Note: If you did not close the WSL2 window from step 1, it should close after running this command.
Restart the WSL2 client, and you should now have internet access while connected to the VPN network remotely.

These steps hopefully help you achieve consistent internet connectivity in WSL2.


add dataset jdbc ingestion

resolve issue: https://github.com/linkedin/WhereHows/issues/1520

i'll add more doc after i refactor all etl process to script mode in about one/two week under new metadata-etl.
i'll use avro and spec for schema runtime check by skip pdsc and reflection by reduce dependency:
https://clojure.org/guides/spec

dataset_jdbc_connector
dataset_json_connector
gms_mce_conduit
gms_mae_conduit
dataset_lineage_connector[future]

cd contrib/metadata-etl && clj -m dataset_jdbc_connector :jdbc.ora/edw
https://github.com/clojurians-org/simple-datahub/blob/master/contrib/metadata-etl/bin/gms_mae_conduit.clj


Loading weights from tf.compat.v1.keras.layers.CuDNNLSTM to tf2.keras.layers.LSTM

Hi,
I am new to Keras and have been using tf.compat.v1.keras.layers.CuDNNLSTM  in my network architecture.
It seems to be a faster implementation for training compared to the tf2 LSTM ( Cudnn ) version.
Is there a way to load the weights from a model trained with tf.compat.v1.keras.layers.CuDNNLSTM  to tf2's LSTM. Loading the weights directly leads to errors.
Is there a recommended approach to do this as direct loading doesnt work.

@yuyang-huang and @bzamecnik : Any Ideas ?

It's working for me well without any problems. In TF 2 the default values are compatible with CuDNN. Make sure the parameters in the old and new model match. If your RNN is within a nested Functional model, make sure to upgrade to TF 2.6 or apply a small patch. See  https://github.com/tensorflow/tensorflow/issues/49214. Possibly post a sample code and the error message.

@vikasrupadhyay Could you please check https://github.com/keras-team/keras/issues/15258#issuecomment-908160181 and let us know if your issue resolved ? Thanks!


Updated the testimonials section and event modal.

Updated the responsiveness of the testimonial section especially for mobile screens.
Also updated the modal width and close button in the modal which improved the responsiveness.
Testimonial
Before:

After:

Modal
Before:

After:

@Shivaraj2003

Please see the conflicts highlighted in the image above. Resolve the conflicts in the mentioned files. Ensure you pull all the latest changes before pushing your feature/bug fixes to the main branch. After resolving the conflicts, please open a new PR for review.
Thank you!


[FEATURE] Google AI Gemini: enable RESPONSE_FORMAT_JSON_SCHEMA capability

Capability.RESPONSE_FORMAT_JSON_SCHEMA should be anabled for GoogleAiGeminiChatModel so that when it is used with AI Service that returns a POJO, a proper JsonSchema is automatically created and propagated to the LLM (instead of appending "You must answer strictly in the following JSON format: ..." to the user message).

It was implemented in #1741


Feature request: full list of pasted items

Hi, do you think it could be worth allowing the user to select between a "folder" list view (like it is now) and a simple "all items" view (in Pastebot's fashion)?

I see this can be partially solved by specifying a number of elements in the Main Menu History.
The problem is that my number of pasted elements exceed that number I specified, a folder is appended. Could this be avoided?

Could you just set the "Number of items place inline" setting to something really high, say 1000, so that you'll never hit that limit before it starts appending a folder?

Hi, wouldn't it be better, for reasons of security and system performance, to be able to enter the capping manually, instead of throwing in a very high number (which feels hacky, too) for the inline items?


Documentation: French Readme translation

Start Date
No response
Implementation PR
No response
Reference Issues
No response
Summary
Write a translation of the project's Readme file in French.
Basic Example
You can use tools like StackEdit  to preview the Readme file.
Drawbacks
Expand the boundaries of the project.
Unresolved questions
No response

Hi, could I get this issue assigned to me ? Also I should create another file like README_fr and put the translated version in it right ?

Sure! Yes, you can create another file for the translation. Thanks!


org-id quirk in hierarchy from fn eval order

The hierarchy blueprints have the org-id setter.yaml here:
https://github.com/GoogleCloudPlatform/blueprints/blob/07c398d254970eb982361db78402b5d8259c878f/catalog/hierarchy/team/Kptfile#L7-L11
https://github.com/GoogleCloudPlatform/blueprints/blob/07c398d254970eb982361db78402b5d8259c878f/catalog/hierarchy/team/setters.yaml#L7
Which seems to be designed for overridden by being nested in the landing zone:
https://github.com/GoogleCloudPlatform/blueprints/blob/07c398d254970eb982361db78402b5d8259c878f/catalog/landing-zone/setters.yaml#L14-L15
But the order of functions seems to be:

apply the hierarchy setter.yaml
expand the local-config kind: ResourceHierarchy into kind: Folder resources
apply the landing-zone setters.yaml

The effect is that the ResourceHierarchy.spec.parentRef.external always has the correct landing-zone org-id, but the derived top-level Folder.spec.organizationRef.external ends up with the placeholder value '123456789012'. It also shows up as an "permission denied" error once deployed so it took longer to figure out that I'd like to admit. :)
I believe the expected behavior would be for the gcr.io/yakima-eap/generate-folders:latest mutator to have written external: '123456789012' # kpt-set: ${org-id} to the top level Folder? That way it would be technically correct for the state of the files at step 2, but would also be updated with the final org-id at step 3.

Thanks for the report @loudej, I was able to repro the issue.
I believe we are switching to a manual edit of the RH yaml in https://github.com/GoogleCloudPlatform/blueprints/pull/41#discussion_r673521899
/cc @morgante

Indeed, the problem is that there's not currently any way in kpt to have the inner function (generate-folders) run after the outer function (applying top level setters). This is raised as a feature request: https://github.com/GoogleContainerTools/kpt/issues/2385

I believe the expected behavior would be for the gcr.io/yakima-eap/generate-folders:latest mutator to have written external: '123456789012' # kpt-set: ${org-id} to the top level Folder?

Starting to pass comments around becomes very complex and isn't within the scope we want to have for individual functions (particularly since we would not want this comment to appear for nested folders.
For now, the workaround will be asking users to directly set the organization ID in hierarchy.yaml.


proposal: mime/multipart/multipart.go: RFC2047 encoded filename include "/", truncated by "filepath.Base(filename)"

Proposal Details
In go mime/multipart/multipart.go line 88
// FileName returns the filename parameter of the Part's Content-Disposition
// header. If not empty, the filename is passed through filepath.Base (which is
// platform dependent) before being returned.
func (p *Part) FileName() string {
	if p.dispositionParams == nil {
		p.parseContentDisposition()
	}
	filename := p.dispositionParams["filename"]
	if filename == "" {
		return ""
	}
	// RFC 7578, Section 4.2 requires that if a filename is provided, the
	// directory path information must not be used.
	return filepath.Base(filename)
}

If the RFC2047 encoded filename includes “/”, the file name may be truncated and returned in “return filepath.Base(filename)”.
I suggest adding a function that returns the original filename.
Thanks.

as noted by the comments rfc 7578 is the canonical spec for go to comply to.


can't edit state

The README says "By selecting one of the nodes in the tree, you can inspect and edit its current state in the panel to the right." This isn't working for me. But I noticed that the state values do not have names, just numbers. I wonder if this is related to recent changes to the way Svelte manages the state in components, storing it in an array. Perhaps svelte-devtools just hasn't been updated to work with the new way to storing state yet.

Your hunch is right. This is a known issue in svelte 3.16 see sveltejs/svelte#4041 and sveltejs/svelte#3822. This will be an easy fix once the PR is merged.

@RedHatter What about the ability to edit state values? As far as I can tell, this still doesn't work. Is that still wanting on a change in Svelte itself?

I apologize... there was a bug in one of my recent commits causing props not to be cloned. Try the latest version. You can install from Firefox or master. Chrome is still under review.


Failure when receiving data from the peer in windows 10

Hello, I try to make a request for my routes and end up giving error, when running, I already tested on other clients and it worked
Preparing request to https://localhost:8080/api/group/create
Using libcurl/7.57.0-DEV OpenSSL/1.0.2o zlib/1.2.11 libssh2/1.7.0_DEV
Current time is 2019-05-23T23:13:32.209Z
Disable timeout
Enable automatic URL encoding
Enable SSL validation
Enable cookie sending with jar of 0 cookies
Enable network proxy for https:
Connection 3 seems to be dead!
Closing connection 3
Hostname localhost was found in DNS cache
Trying ::1...
TCP_NODELAY set
Connected to localhost (::1) port 8080 (#4)
allocate connect buffer!
Establish HTTP proxy tunnel to localhost:8080
CONNECT localhost:8080 HTTP/1.1
Host: localhost:8080
User-Agent: insomnia/6.5.3
Proxy-Connection: Keep-Alive

Proxy CONNECT aborted
CONNECT phase completed!
Connection #4 to host localhost left intact

It looks like it's a problem with your proxy configuration. Can you check you ensure your proxy settings are correct in the main app preferences? I assume you probably don't need a proxy configured if you're trying to make requests to localhost.


add widget tests

Add widget tests to ensure that the widgets are rendered correctly. The tests can also be used in CI/CD.
I would like to work on this issue.
I need a suggestion about writing the test. Should I write a different widget test for the various parameter or should I write a single widget test and include all the parameters of the widget?
IMO, having a separate widget test for parameters can ensure that the widgets are correctly responding to the values.

Yes, I would suggest writing separate tests.


1.0.0

PR looks good. XSEDE API has to change to reflect the correct schemaVersion == '1.0.0'.
Examples/files that need to be fixed/removed:
bigred3.iu, Additional properties are not allowed ('sgciResources' was unexpected)
comet.sdsc.compute, "bigred3.iu", Additional properties are not allowed ('resource', 'id', 'resourceType' were unexpected)
compute, Additional properties are not allowed ('sgciResources' was unexpected)
posix-storages, Additional properties are not allowed ('sgciResources' was unexpected)

Should minJobsTotal and minJobsPerUser be removed in this PR as well or save that for a separate one?


Implement a Content collection view

Create a content collection view as per the designs here.
This page needs to do the following:

[ ] Display a table with a list of Content that shows: which accounts the Content is posting/posted to; the Content description; the date the Content was scheduled/posted; labels; Content status (posted, scheduled, deleted); and edit icons ('Archive' and 'View' icons for posts that have the label Posted/Scheduled, and just 'View' for archived posts)
[ ] Create dummy data object as temporary data to display/filter through (in a separate Issue in the future, will set up actual saving/editing of Content to the Server)
[ ] Before this Content collection view is loaded, display a 'skeleton loader' to let user know content is being loaded
[ ] Allow the user the ability to Filter Content by status (Posted/Scheduled/Archived), social media account (FB/Insta/Twitter/LinkedIn), and time range
[ ] When displaying filtered Content collection, display individual tags for each filter that has been applied
[ ] Allow user to input a search query to filter by keyword search (as part of this sub-task, determine if this will be querying only the Contents 'description' or if it will search through everything)

(Notes:

Scheduling and editing individual pieces of content will be handled in a different Issue
There might need to be a change in the design to differentiate Archiving vs. Deleting a piece of Content)

Edited the description to write a few thoughts for some acceptance criteria

Trying to conceptualize how to structure the components for this. I'm thinking one main <ContentCollection /> component can be the table that houses a bunch of <ContentRow /> rows (containing nested components of the social icons, tags, and edit icons). And maybe in the future <Content /> itself can be the drawer when you create/edit an individual piece of content. Is this a reasonable direction?

Seems about right.  Also realize that the skeleton doesn't need all of this.  It needs to look like these things but it doesn't need to actually consist of the components you laid out.


CHEBI:16199 Append guaranteed fertilizer analysis to definition

Current Definition:
"A carbonyl group with two C-bound amine groups."
Suggested Revision:
"A carbonyl group with two C-bound amine groups. The commercially available fertilizer has an analysis of 46-0-0 (N-P2O5-K2O).
Rationale:
The suggested addition provides additional information needed by ontologies in other disciplines (like AGRO) that use the ChEBI definition.

Now added. Thanks


Support for multi-level inheritance

I was quite excited to see characteristic improved to use descriptors, but I was surprised by following behaviour:
from attr import attributes, attr
@attributes
class A(object):
    a = attr()
@attributes
class B(A):
    b = attr()
@attributes
class C(B):
    c = attr()

raises a syntax error:
Traceback (most recent call last):
  File "yo.py", line 15, in <module>
    class C(B):
  File "/home/davidc/.envs/jaguar-dev/local/lib/python2.7/site-packages/attr/_make.py", line 194, in attributes
    return wrap(maybe_cl)
  File "/home/davidc/.envs/jaguar-dev/local/lib/python2.7/site-packages/attr/_make.py", line 186, in wrap
    cl = _add_init(cl)
  File "/home/davidc/.envs/jaguar-dev/local/lib/python2.7/site-packages/attr/_make.py", line 340, in _add_init
    bytecode = compile(script, unique_filename, "exec")
  File "<attrs generated init 24e3b3b777d1b457ffb869223ee4a4b7665529ed>", line 1
SyntaxError: duplicate argument 'a' in function definition

So it looks like one level of inheritance works (B works as expected), but not multiple.

Congratulations, you found the first bug in attrs. :)

If you could verify your issue is fixed I’d roll 15.1.0.  Thanks!

Looks like it works ! Thanks for the prompt fix

(I have to correct myself: the first bug in a released version.  the first bug overall was found by @econchick in #5, mea culpa ;))


Iterative Documentation Updates

NOTE: This is an issue that exclusively demands knowledge of Python. Please take this up only if you are comfortable beyond basics
Package to be used: MkDocs Material
Branch for source code: documentation
Please read through the documentation carefully and dedicate some time!
Documentation Requirements:

Welcome [Refer the readme]

About the project
Why Open Source?
Programs we have been a part of
Sneak Peak (Use Gifs)
Team

** Please do beyond just copy-paste.

How to start using it?

Install Git
Setup Git and GitHub Account
Navigate to GitHub Repository
Fork the repo
Clone the repo [ use git clone ..... --depth 1]
Access the local copy
Delete Additional Stuff ( Readme, Readme assets,etc)

Page by Page Changes:

Home Page
Education Page
Project Page
Experience Page
Research Page
Social Media Links
Assets
SEO

^^ Detailed guide on which files to open, where to change the content and for what parts? Use screenshots of the changes!

Publishing the portfolio!

Save the changes
The step by step to push to Github
Tip: On making the repository private if desired
Deployment + Using Custom Domain:
- GitHub Pages
- Netlify
- AWS Amplify

Directions:

Some of the content is already there. We expect you to improve it in all ways possible!
Please take only one page at a time to update and state it clearly in the comments below
First update the source code, check your build output, push to your own gh-pages branch
Then in the PR, compare both the documentation and gh-pages branch (separate PRs but would be counted as a pair)
Attach a screenshot of your changes
Attach a link to your own deploy preview on GitHub pages
Use proper comments in the markdown files

@smaranjitghose does we need to be beginner in python for this? I can't understand that can you tell me more about it

A very minimal Python grasp is required. Please read through the documentation. I have given sufficient references above.

@smaranjitghose pls assign this issue

@smaranjitghose could you pls  elaborate me what I have to do??

Go through the directions section.

@smaranjitghose could you pls elaborate me what I have to do??

I am unassigning you since I expected you to understand the work before commenting for claiming it.


[RFE] warn/fail early if available disk space is too low to complete a build

In #3582, I ran into an issue where my build of the iot-installer artifact failed because I had ran out of disk space.
In the case of a simple iot-installer build, the build process required ~13GB of disk space to generate a 2.4GB ISO artifact.  I only had about 7GB of space available and as such, the build failed during the squashfs stage.
While it would be great if all users were more aware of the available disk space, it would be even better if the osbuild-composer CLI could warn the user (or outright fail) before submitting the build to osbuild.  (Not sure how this could work for API users, but maybe it could just be a CLI improvement?)
I understand that the size of an artifact may grow based on the content being included in a build, so it may be impossible to know the final size of the artifact or required amount of space for a build, but I think putting some minimal guardrails in place would be useful.

This would indeed be useful, though possibly hard.
I think there are two aspects: get an estimate after depsolving (maybe dnf can help?); and get better error messages when we actually run out of space during image build (which can happen at any time and cause all sorts of errors)....

It probably would be more reliable to base it on the disk image size, maybe require 2x the target size as a minimum. The estimates from dnf aren't very accurate, and actual disk usage also depend on things like number of files and block size if you really want to get close. Throw btrfs into the mix and you can squeeze in more, but you don't know how much more :) With Anaconda we always ended up needing to add some kind of fudge factor, and that's just for a straight install to disk.


feat: TF-198 TributeERC721

Proposed Changes
Adds:

TributeERC721, collection to be used for daos, follows UUPS proxy pattern
deployTributeERC721 and upgradeTributeERC721 hardhat tasks; see: @openzeppelin/hardhat-upgrades

@nickmzero @adridadou can we get all checks to pass before merging this?

@nickmzero @adridadou can we get all checks to pass before merging this?

I'll add some more tests on what's not covered


Call removeItem method to remove a key, but the key still exists in the browser.

I call removeItem to remove a key such as 'test', when I use getItem('test'), it can't get the value anymore. it is right.
But the key still displays in the browser

I am also experiencing this issue using the INDEXEDDB driver. The key still displays in browser, however calling localforage.keys(), displays the remaining keys subtracted of the removed item.
  var testRemove= careersStoreFullParsed.removeItem('3').then(function() {
    console.log('Key is cleared!');
}).catch(function(err) {
    console.log(err);
});
  Promise.all(testRemove);

  var testKeys= careersStoreFullParsed.keys().then(function(keys) {
    console.log(keys);
}).catch(function(err) {
    console.log(err);
});

So it looks like the item is actually removed when I refreshed the database in the inspector. I'm almost 100% positive I've checked this before and it had not, but I have also since changed the testRemove variable to a function attached to a button callback rather a Promise.
  function testRemove(){careersStoreFullParsed.removeItem('3').then(function() {
    console.log('Key is cleared!');
  }).catch(function(err) {
      console.log(err);
  });
}
...
return
<div>
    <button onClick={() => testRemove()}>Remove</button>
</div>


Webcam will not open on Windows 8.1 table (Fusion 5 with GC310 camera)

Hi,
I've integrated Sarxos into a project of mine which, so far, has worked fine with several types of Windows devices, including desktops, virtual machines, and a couple of different Windows tablets.
However, I'm now trying to run my software (unchanged) on a Fusion 5 Windows 8.1 tablet with a camera that reports itself as "GC310 0".
Sarxos is certainly enumerating the camera OK, but throws a WebcamException ('cannot execute task', caused by 'Cannot start native grabber!') when trying to open it (with or without a specific view size)
I've seen from another issue that the best thing to try first is to specify the GStreamer driver. I've downloaded the Sarxos JAR for this, recompiled the code on my dev machine, and installed the v1.0 GStreamer MSI on the target tablet. However, when I run this on the tablet, my code issues a logging statement (to the effect that it is trying to use the sarxos GStreamer driver) but then fails (I don't have any logging in there as yet to see the stack trace).
Any other ideas I could try ? VLCj perhaps ?
Thanks

I've not solved this yet, but have gone off in a slightly different direction ....
Rather than keep testing on the Windows tablet, I have decided just to debug on my Win7 development machine (I use Eclipse). I decided to install VLC, and I configured Webcam to use VLCj as a driver (plus dependent JARs). Finally, because VLCj does not do discovery of devices on Windows, I found the correct device name for my camera in the Windows registry.
OK - so now I recompiled and ran again. The test scenario is this: (a) attempt to open the webcam once to take a snapshot, then (b) close it, then (c) open the webcam a second time after 5 seconds. This scenario has been working fine when running with other Windows devices and cameras, using Webcam without any specific drivers.
What happens with VLCj as the driver is that the webcam is found and opened (I know this for sure because the LED illuminates). A snapshot is taken but just displays a green background. The webcam is closed. ASfter a 5 second wait, when I try to re-open the webcam, I get this:

A fatal error has been detected by the Java Runtime Environment:

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x60d23b97, pid=6020, tid=228

JRE version: Java(TM) SE Runtime Environment (8.0_45-b15) (build 1.8.0_45-b15)
Java VM: Java HotSpot(TM) Client VM (25.45-b02 mixed mode windows-x86 )
Problematic frame:
C  [libvlccore.dll+0xa3b97]

Therefore still no further forward towards a working solution.


fix comment line

[ci skip]

I signed 👌

Add [ci skip] to your commit and I'll merge this.

Ok, I'll add [ci skip] in my commit message later.

@KazuCocoa, I guess it's fine for now. Next time, please add [ci skip] in the git commit that you push if it doesn't have a code change. As in
git commit -m "fix comment line [ci skip]"
Thanks a lot.

Thanks you so much !
I just send this via browser...


Added am-from attribute

Added support to am-from attribute to be used like:

I'd appreciate some guidance about how to properly document this, and modify the PR accordingly.
I'd like also to check with you guys if you think that something needs to be done about serverTime configuration when using it with am-from.

Hi,
I'd appreciate some guidance about how to properly document this new attribute.
And also check with you if something needs to be done about serverTime configuration when using it with am-from.

Thanks!


Autolinks require <> around them

Autolinks are absolute URIs and email addresses inside < and >. They are parsed as links, with the URL or email address as the link label.

However, I am spoiled by the fact services like GitHub or Telegram among others don't require this (that is, a GFM text with https://example.com will render hyperlinked as https://example.com).
Is removing the need for < and > desirable? How would users place links as raw text without having it turned into a hyperlink?

Hmm, it would be convenient, but it also feels as though this is the exact scenario which autolinks are designed to accommodate. I'm also wary of modifying the actual parsing code

Yeah, it might be a matter of getting used to it. While I wouldn't be against modifying the parser, it's true it would be a lot more involved (we already had to copy over the code for HTML generation which is now duplicated between the dependency itself and our code).

I think I'm okay with links needing <> around them, as long as <example.com> links to the expected https://example.com and not to mysite.example.org/blog/example.com, so I'm closing this issue (if you disagree, please reopen explaining why).


@Implies syntax (array or repeatable?) [working decision: array]

I'd like to propose that #35 and #213 be focused on requirements questions. That way, we can break off smaller issues for details -- such as this one.
Between those two threads, we have a few options for how to declare the one annotation implies another:

@Implies({Foo.class, Bar.class}) @interface MyAnno {}
@Implies(Foo.class) @Implies(Bar.class) @interface MyAnno {}
[@MetaAnnotated] @Foo @Bar @interface MyAnno {}

(This issue isn't intended to be about names, just the choices between the 3 patterns above.)
The main choice is probably between option 1/2 and option 3. (Or we could support both.)
A possible advantage to option 3 is that is works naturally with annotations that have elements. That is, you can define an annotation that implies @Foo(bar = "baz"). Or maybe annotation elements are tricky no matter what. (Thankfully, we've mostly been leaning toward avoiding them.) For example, maybe it's better to write @Implies(Foo.class) @interface MyAnno { ... } because then it makes at least some sense to support @MyAnno(bar = "baz") as meaning the same as @Foo(bar = "baz").
A possible disadvantage to option 3 is that it's easy to imagine automatically applying an annotation like @NullMarked or @NullUnmarked to every class in a project, only to discover that you've accidentally applied that annotation's semantics to all usages of your project's annotation in other projects! (Or similarly, imagine the "no-op" change of moving in either direction between package- or module-level @NullMarked and per-class @NullMarked.) This danger could be reduced by requiring a @MetaAnnotated annotation -- but not eliminated, since some annotations will legitimately have @MetaAnnotated to begin with.
I know that we've had some good success with option 3 for some annotations inside Google, but it scares me as a much more widely used, general-purpose approach that we'd encourage people to apply "by default" to new code and migrate existing code to use.

I guess option 3 requires allowing JSpecify annotations to be placed on
annotation classes, while that's not needed for 1/2--there, JSpecify
annotations become attribute values of another annotation instead.
Not sure that difference is an advantage or disadvantage for option 3
though ;).

True. If nothing else, it's One More Thing to Remember when defining your own annotation to extend JSpecify (like defining @PolyNull when we haven't provided one). And the simplest annotations already tend to involve a surprising amount of boilerplate.

Sorry for being vague btw, the "advantage" I had in mind is that
annotations can explicitly "opt in" to being used as @. by declaring the requisite<EMAIL_ADDRESS>in option 3, or alternatively
choose not to do so. OTOH, we may one day have annotations whose purpose
requires them placed on other annotations, and then it might be confusing
to also put @.` there.

GitHub's "email address" scrubbing ate your annotations, but I gather that your point is that Option 3 lets annotation authors choose whether to support @Target(ANNOTATION_TYPE) or not and thus choose whether their annotations can be implied (at least by using the Option 3 syntax, since we could theoretically support multiple syntaxes). That's a silver lining for the cloud in my previous post.

Another thing for us to consider is which syntax works best when JSpecify is not on the classpath: I would guess that at least some projects will use aliases specifically to make it easier to omit JSpecify from the classpath. For example, a code generator that begins outputting nullness annotations might want to output its own aliases so that users can continue to put only the code generator's annotation library on the classpath, rather than having to add JSpecify.
We have previously come across a couple reasons to avoid using annotations with enum elements. I don't think we've yet encountered any problems with class elements, nor with annotations that are annotated with other annotations.

(fixed my comment, sorry)

This seems solid enough to me to treat it as decided for now: make @Implies repeatable.
Objections?

+1

(still for now treating issues here as pure design issues, closing when the design question is answered)

(#213 is about whether to support the one-implies-many use case at all; the decision here is just about how we will do that if we do it)

This was originally also talking about questions that ended up going into #218.

Note that making it repeatable means we have to have a separate, public, @Documented containing annotation with the same retention and targets.
As an alternative to an actually repeatable annotation, option 1 above allows multiple values and doesn't require the container annotation. And arguably it's actually good to have all the implications in one place rather than allowing something like:
@Implies(Foo.class)
@Retention(RUNTIME)
@Implies(Bar.class)
@Target({METHOD, CONSTRUCTOR, PACKAGE})
@Implies(Baz.class)

Instead you'd have to do:
@Implies({Foo.class, Bar.class, Baz.class})
@Retention(RUNTIME)
@Target({METHOD, CONSTRUCTOR, PACKAGE})

Ah, you're talking about the "containing annotation interface", like we see in @EnsuresNonNullIf? Good point—glad someone is actually writing the annotation source files!
That's enough to sell me on non-repeated. The only downside I haven't seen mentioned is that it would be possible to write @Implies({}), but I'm not too worried about that: The {} is enough of a hint that something is amiss, and tools could warn if that seems important to do.
(I wonder if anyone has written the doc on "how to decide whether your annotation should be @Repeated." I can see cases in which @Repeated is clearly necessary, like the isThresholdExceeded example in the @EnsuresNonNullIf Javadoc and the first example from this Java Tutorial page. Aside from those clear cases, I wonder if it makes sense to prefer array elements. The JDK, for what it's worth, doesn't offer examples of @Repeatable annotations. I admit that I do recall one case in which we chose @Repeated. But that was because each individual value could be very long, so having @TestParameters(...) @TestParameters(...) ... helped to separate the values.)

I think the case for @Repeated over simple array is when there is more than one parameter, so each would have to be an array and there's no way to make it clear that they're pairs—and when the parameter is already an array.
Neither applies here.

Also, I would not reject an idea to provide a JSpecify validator using Error Prone or an annotation processor that specifically looks for things like @Implies({})—definitely disallowed constructs that don't require any potentially tool-specific processing. After all, that's the kind of thing you could see Java itself doing, just as it would disallow @Implies with no arguments.

There are alternatives for marking pure aliases (which remain a hypothetical requirement), such as a new annotation like @AliasFor(Something.class) (which could itself be marked @Implies(Implies.class) haha no please no).
I wouldn't want to make the syntax for implies more difficult to support that. It already doesn't support implying an annnotation with parameters, and that seems like a more likely user requirement.

Pure aliases are still hypothetical, and we could always handle them with a new annotation (@AliasFor(One.class)—which itself could be annotated with @Implies(Implies.class) hahaha no).
Even repeatable @Implies doesn't handle implying an annotation with parameters, and we're okay with that even though it's arguably a more likely requirement.

Yuck, good to know about the reflection API, thanks. (But yes, hopefully people will mostly use libraries, in which case the main people who get bit will be those who write a one-off assertThat(myGeneratedClass).isAnnotatedWith(One.class).)
As for #233, are you envisioning this...?
@Implies(One.class)
@Alias(Two.class)
@interface Three {}

If so, wouldn't the existence of @Implies(One.class) show that @Three is not a pure alias for @Two?
Even if so, the general point stands that we could need @Implies(Foo.class, someOtherElement = ...) someday. It just becomes hypothetical-er.

Oh good point. If "pure alias" means what it sounds like, then you cannot use it for more than one thing, and you cannot mix it with other @Implies.

I convinced myself it was at least a possible scenario, but, here's just how "hypothetical" we are really talking about:
/** Means only that x. */
@interface One {}

/** Means only that x and y. */
@interface Two {}

/** Means only that x and y. */
@Implies{One.class, Two.class}
@interface Three {}

Clearly this does not work as an actual strong argument for anything. It merely highlights that there do exist facts that could pertain to each implication separately.
I'm scraping the bottom of the barrel for reasons to care one way or the other, here.
One way to look at it is "repeatable annotations are new and weird and unnecessary"; another way to look at it is "they're a bona fide feature, and what are they for if not for cases like this?"
Another puny line of reasoning I almost hate to mention. It seems that whichever way we go with this, we could change the answer to "both ways!" in the future if it really came to it. It should make sense to allow multiple @Implies that each could specify multiple annotation types. That is just... gross and worth avoiding if possible.
Which way is even the "base option" in this case??

I propose we leave aside the pure-alias issue (#233), about which we've said there "might be eventual benefit" and that checkers could use that information in "a few hypothetical ways" that are not enumerated, and suggests that so far nobody has brought up "an actual real-world need for it".
Remaining things to think about:

A repeatable annotation has a public and documented containing annotation, which affects static and runtime analysis.
An array parameter makes it possible to have meaningless instances with empty array arguments.

Possible mitigation: A checker distributed with JSpecify that checks these kinds of self-contained constraints.

A repeatable annotation makes it less awkward to have more complex parameters.

But we don't currently plan to have more complex parameters.

Do we have a sense of how often people will want one annotation to imply more than one other annotation (#213)?

Kevin mentioned elsewhere that we've been talking about this more from the implementation perspective than the user perspective. (Of course, if we make things hard enough to implement that implementers mess up, then that has significant impact on the user perspective :))
For the user perspective, I wonder if more real-world examples would be helpful. Here's an example that's at least not 100% made up on the spot:
@Implies(NonNull.class)
@Implies(CanIgnoreResult.class)
@Implies(RefentiallyTransparent.class)
@Target(METHOD)
@Retention(RUNTIME)
@Documented
@interface This {}

@Implies({NonNull.class, CanIgnoreResult.class, RefentiallyTransparent.class})
@Target(METHOD)
@Retention(RUNTIME)
@Documented
@interface This {}

After writing that, I'm wondering if this debate will still be mostly about which syntax is subjectively "simpler...." :)
For what it's worth: To me, an array feels like "the thing you'd do unless you have a specific reason it's not good enough": @SuppressWarnings, @Target, other random things I see in Guava (@Immutable(containerOf = ...), @Footprint(exclude = ...), @Param(...), @VmOptions(...), @CollectionFeature.Require(...)).
I take your point that arrays could raise questions: "Does ordering matter?" "Do duplicates matter?" My guess is that most users won't think about those with either arrays or repeatable annotations, given that I'm hard pressed to think of an annotation for which array ordering does matter. But I do grant that @MethodParameters({Object.class, int.class, int.class}) "clicks" to me in a way that @MethodParameter(Object.class) @MethodParameter(int.class) @MethodParameter(int.class), so there is something to what you're saying.

Question for the group: Are @Repeatable annotations unusual enough that the answer Java developer would be caught by surprise at seeing one—or might not think to try writing @Implies more than once when that's what was required? I'm not sure I've ever seen a @Repeatable annotation other than (a) when I've gone looking for it and (b) when we helped design one, mentioned above.

For what it's worth: To me, an array feels like "the thing you'd do unless you have a specific reason it's not good enough": @SuppressWarnings, @Target, other random things I see in Guava (@Immutable(containerOf = ...), @Footprint(exclude = ...), @Param(...), @VmOptions(...), @CollectionFeature.Require(...)).

Not sure these constitute precedent given they all predate @Repeatable. That said, I have the vague sense that we would be explaining/justifying/apologizing-for the use of @Repeatable more than we would the array. But, neither very much. It's still a weak argument like the rest.

I strongly suspect no one will strongly object to the array.
I've reworded my javadocs and I see that @netdpb has a PR ready to go too.

Current decision: Because we are not planing to support annotation implication in 1.0 (#35, #307), this issue is not relevant for 1.0.
Proposal for 1.0: Finalize the current decision. If you agree, please add a thumbs-up emoji (👍) to this comment. If you disagree, please add a thumbs-down emoji (👎) to this comment and briefly explain your disagreement. Please only add a thumbs-down if you feel you can make a strong case why this decision will be materially worse for users or tool providers than an alternative.


⚠ Bofrost.at has degraded performance

In 2f05211, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1056 ms

Resolved: Bofrost.at performance has improved in dff5eff.


Add Student info table

Student Specific Info

Student Grade [Freshman (2026), Sophomore (2025), etc ]
Were you on an FLL or FTC team? (Not sure this is necessary, we haven't used this data for much)

Do we want to move subteam here too, or is it worth keeping it on mentor accounts?

I think it's worth storing for mentors, so we can leave it in the User table.

Completed by #38


[libsystemd] Build error on x64-linux

Hi!

./vcpkg install libsystemd:x64-linux

Computing installation plan...
The following packages will be built and installed:
libsystemd:x64-linux@254#2
Detecting compiler hash for triplet x64-linux...
Restored 0 package(s) from /home/username/.cache/vcpkg/archives in 13.3 us. Use --debug to see more details.
Installing 1/1<EMAIL_ADDRESS>Building<EMAIL_ADDRESS>-- Using cached systemd-systemd-v254.tar.gz.
-- Extracting source /media/user_name/distr/vcpkg/downloads/systemd-systemd-v254.tar.gz
CMake Error at scripts/cmake/vcpkg_execute_required_process.cmake:112 (message):
Command failed: /media/user_name/distr/vcpkg/downloads/tools/cmake-3.27.1-linux/cmake-3.27.1-linux-x86_64/bin/cmake -E tar xjf /media/user_name/distr/vcpkg/downloads/systemd-systemd-v254.tar.gz
Working Directory: /media/user_name/distr/vcpkg/buildtrees/libsystemd/src/v254-832da4078b.clean.tmp
Error code: 1
See logs for more information:
/media/user_name/distr/vcpkg/buildtrees/libsystemd/extract-err.log
Call Stack (most recent call first):
scripts/cmake/vcpkg_extract_source_archive.cmake:120 (vcpkg_execute_required_process)
scripts/cmake/vcpkg_extract_source_archive_ex.cmake:8 (vcpkg_extract_source_archive)
scripts/cmake/vcpkg_from_github.cmake:113 (vcpkg_extract_source_archive_ex)
ports/libsystemd/portfile.cmake:1 (vcpkg_from_github)
scripts/ports.cmake:170 (include)
error: building libsystemd:x64-linux failed with: BUILD_FAILED
Elapsed time to handle libsystemd:x64-linux: 1.1 s
command:
cmake -E tar xjf /media/user_name/distr/vcpkg/downloads/systemd-systemd-v254.tar.gz
returns:
CMake Error: Problem with archive_write_header(): Can't create 'systemd-254/test/fuzz/fuzz-unit-file/dm-back\x2dslash.swap' CMake Error: Current file: systemd-254/test/fuzz/fuzz-unit-file/dm-back\x2dslash.swap CMake Error: Problem extracting tar: /media/hash2000/distr/vcpkg/downloads/systemd-systemd-v254.tar.gz
indeed, the archive is not unpacked
Ubuntu 22.04

... /media/user_name/ ... systemd-254/test/fuzz/fuzz-unit-file/dm-back\x2dslash.swap ...
Maybe this removable media device has a poor (FAT) filesystem? AFAIU extraction fails on an unusual file name.

yes, indeed, I was doing ext4 and everything worked. there was an ntfs markup. thanks


recorder convert throws IndexError for a specific (incomplete?) dataset

@edyoshikun and @dsundarraman reported that:
recorder convert --input /hpc/projects/comp_micro/rawdata/falcon/zebrafish/2023_02_09_casper_Mpeg_GFP_wounded_unwounded/swing0p08_tails_3 --output ~/sandbox/test-output.zarr

fails with this trace:
recOrder: Computational Toolkit for Label-Free Imaging

Initializing Data...
Finished initializing data
Found Dataset test4.zarr w/ dimensions (P, T, C, Z, Y, X): (13, 30, 6, 111, 2048, 2048)
Creating new zarr store at /home/talon.chandler/sandbox/test4.zarr
Running Conversion...
Setting up zarr
Converting Images...
Status: |                                                                                |0/259740 (Time Remaining: ?), ?it/s]
Traceback (most recent call last):
  File "/home/talon.chandler/.conda/envs/recorder-test/bin/recorder", line 8, in <module>
    sys.exit(cli())
  File "/home/talon.chandler/.conda/envs/recorder-test/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/talon.chandler/.conda/envs/recorder-test/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/talon.chandler/.conda/envs/recorder-test/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/talon.chandler/.conda/envs/recorder-test/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/talon.chandler/.conda/envs/recorder-test/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/home/talon.chandler/recOrder/recOrder/scripts/cli.py", line 146, in convert
    converter.run_conversion()
  File "/home/talon.chandler/recOrder/recOrder/io/zarr_converter.py", line 461, in run_conversion
    plane_meta = self._generate_plane_metadata(tf, page)
  File "/home/talon.chandler/recOrder/recOrder/io/zarr_converter.py", line 257, in _generate_plane_metadata
    for tag in tiff_file.pages[page].tags.values():
  File "/home/talon.chandler/.conda/envs/recorder-test/lib/python3.9/site-packages/tifffile/tifffile.py", line 6442, in __getitem__
    return getitem(key)
  File "/home/talon.chandler/.conda/envs/recorder-test/lib/python3.9/site-packages/tifffile/tifffile.py", line 6414, in _getitem
    self._seek(key)
  File "/home/talon.chandler/.conda/envs/recorder-test/lib/python3.9/site-packages/tifffile/tifffile.py", line 6317, in _seek
    raise IndexError('index out of range')
IndexError: index out of range

@edyoshikun you said that you've done some initial debugging on this issue? And that the acquisition may be incomplete (crash before completion?)?
@ziw-liu I'm tagging you in case this issue affects you and iohub.

From the brief debugging I did, the bug points to page = self.reader.reader.coord_map[coord_reorder][1] line 458 in zarr_converter file.  It starts the count of the pages at 511and then process page by page sequentially (i.e 1,2,3).

One thing to mention is that this dataset failed to finish.

This is caused by the multi-page reader in waveorder.io building index map from MM metadata. It expects the pages recorded in the MM header field (generated at the start of the acquisition) to be present, but since the acquisition did not finish, the index map is larger than the actual dataset.
I'll try to fix this in iohub.

The bug appears to be deeper in the stack: the OME-TIFF reader was constructing index maps using a magic-number offset which is inconsistent with what MM actually writes data with.

Ready to close when we release iohub.


Use Composition on win32 desktop application

Is it possible for a desktop layered window application to use  the new Windows.UI.Composition technology?

https://github.com/Microsoft/WindowsCompositionSamples/issues/248


errors in Calibration.js

The calculation of vmin is wrong.  You're not using the max vector at all.  The avg_radius should divide by 3, not 2.
function calcCalibration() {
    offset = {
        x: (min.x + max.x) / 2,
        y: (min.y + max.y) / 2,
        z: (min.z + max.z) / 2
    };
    var vmax = {
        x: max.x - ((min.x + max.x) / 2),
        y: max.y - ((min.y + max.y) / 2),
        z: max.z - ((min.z + max.z) / 2)
    };
    var vmin = {
        x: min.x - ((min.x + min.x) / 2),
        y: min.y - ((min.y + min.y) / 2),
        z: min.z - ((min.z + min.z) / 2)
    };
    var avg = {
        x: (vmax.x - vmin.x) / 2,
        y: (vmax.y - vmin.y) / 2,
        z: (vmax.z - vmin.z) / 2
    };
    var avg_radius = (avg.x + avg.y + avg.z) / 2;
    scale = {
        x: avg_radius / avg.x,
        y: avg_radius / avg.y,
        z: avg_radius / avg.z
    };
}

Hi, I have resolved the issue and published to npmjs.org.  Good catch, thanks.

Thanks.  I appreciate the repo.  It helped me get an iis2mdl sensor working.


tooltip and cursor display bug with real time xy chart

Hi,
there are 2 bugs with the tooltip display with real time xy chart (settings used: tooltip enabled, tooltip not always displayed):

if we put the mouse on a point, the tooltip appears. However, as long as we don't move the mouse, it will still appear at the same position and with the same value even for the next frames after xychart updates
after few seconds, the tooltip will start to appear for a point quite far at its right. This bug is new and was not occuring in version 3.6.4

These bugs also affect the cursor (at least bug 1)

I'm having same issue.
I guess that the problem is: when XYSeries.replaceData(double[] newXData, double[] newYData, double[] newExtraValues), is used, the list of tooltips aren't being cleared.

If @ramonchiara solution works, could a pull request be created to solve these issues?

fixed with merge


Support for 0.14.0 - services, routes, and other compatibility changes.

This provides support for Kong 0.13.0 Services and Routes. Specifically it was tested against 0.14.0. I tried to follow the patterns throughout the existing codebase. Unit and integration tests have been added and all tests are passing. I tried to allow for backwards compatibility, but there were some breaking API changes in 0.14.0 with certificates and I could not think of a way with the routes to deal with the compatibility change. Also, though I Initially replicated from API Plugins I removed the consumer based plugins thinking it wasn't supported but it is. I don't really have a use case for it so I don't have time immediately to go back and update that.
#132

Ok I don't know why snyk is complaining - I've run it locally and it passes.   Clicking details doesn't help because I do not have permissions.

@dgarlitt snyk is a security tool it is scanning for potentially vulnerable packes konfig depends on. Here is the details although this is not specific to your branch.

Yes I understand, I installed snyk and ran a snyk test locally and it does not find the vulnerabilities you've listed there, so that is what I find strange.

@dgradl you can try removing the existing modules and lockfile rm -r node_modules yarn.lock and then reinstalling. That should update the deps that are reporting the vulns.
Also, you can test locally via npm audit and that should provide you some quick fixes.

@dgradl I was looking at your branch Kong0140.  When adding a new Route i see a PUT being made instead of POST.  Kong document also says it is a POST. (https://docs.konghq.com/0.14.x/admin-api/#add-route)
Can you please check on this.

It is undocumented.  Routes have no name so it's difficult to support update or remove in kongfig without some reference.
I used a little bit of code that will convert a string "name" into a uuid and the put allows you to create routes with a given uuid.
https://github.com/Kong/kong/pull/3416

FWIW, Routes are getting a name in 1.0 :)
If you see undocumented methods, we will backlog it and fix it on our side, but would also welcome a PR to our documentation!
Great job @dgradl!

@dgradl I tried using the Branch for a simple service. I get
PUT http://localhost:8001/routes/7c92cf1e-ee8d-39cc-85f8-355a3d6e4b86
{ hosts: [ 'foo.com' ],
paths: [],
methods: [],
service: { id: 'db7be8c1-7555-4349-aca4-292c6a659902' } }
405 Not Allowed { message: 'Method not allowed' }
Error: Not Allowed
{"message":"Method not allowed"}
Error: Not Allowed
{"message":"Method not allowed"}
at /opt/Apps/Stash/kongfig/lib/core.js:394:45
at process._tickCallback (internal/process/next_tick.js:68:7)

Please take a look.

Check your kong version.  The integration tests validate that it works.  I've also already started using this branch and migrated 50 of my apps to service/routes.

I use 0.33 enterprise edition.

Its tested against 0.14 community.  As the PR indicates.  I don't know what version of enterprise that Kong PR I referenced would be merged into.   I certainly have no way to test against enterprise edition and I make no claim that this works with it.

Hello @dgradl
Thanks for your response.
Actually i was wrong on the PUT support.
Kong does not support a PUT (update/create route). It only does POST, PATCH , GET and Delete.
0.33 is same as 0.13.x . Even 0.13 does not support PUT.
only 0.14 does.
Have you tested this branch against 0.13?

Yes I gave up on 0.13 support for that reason.  Without a name or the put how can you associate the route in your yaml with the route in kong.  You would have to match on hosts, paths, and methods.    Except that any update you make would look like a new route.  You could just delete all routes and replace every time.    But this would result in  your api being temporarily unavailable each time you run kongfig.

any new about supporting routes and services?

any update on this?

We've been using this to automate k8s and Docker deployments: https://github.com/liyuntao/kong-init
Needs a bit more spit and polish, but the maintainer has been awesome handling contributions.

Finally snyk is happy.    Please approve.

@dgradl does your PR fix service and route backups?

@dgradl  I tested this branch and Looks like this version does not handle pagination.
https://github.com/mybuilder/kongfig/pull/158

pagination?  service and route backups?  Not really sure what you all mean.   But like I don't really think anyone will ever merge this and I don't really care anymore.  I've been using it to manage my Kong environment for the past 6 months.

hey all, can we please get this merged in?

This one need to be merged

Anyone fancy clicking that magic merge button?


Standardize event data for accumulators’ data

Read our Contributor Guidelines and README.
Parse data from event which fetched on-chain to humman-readable format, for example, now we have user = data[0] and we want to have user = data.user

In method parse_accumulators_sync_event
Event data structure - event data

Create Serializers model using pydantic in serializers.py
In method process_accumulators_sync_event
substitute fetching data by index Example: user= data[0] to data.user using serializer class

Hey can I work on this one?

@Gerson2102 Here is an example, how you can test it
https://gist.github.com/djeck1432/7948489d3fed99d6d56ef6c6f86b16bd


feat: event bus

[ ] event bus
[ ] 2-phase transaction

maybe integrate with amqp

just use mqtt

ref: https://github.com/moscajs/aedes, a mqtt server
ref: https://github.com/mqttjs/MQTT.js, a mqtt client

mqtt only support publisher/subscriber model

publish/subscription, but each topic have queue for something.

publish a event to all subsciber
but only ONE instance for single processor to process it

consumer group of kafka support that.

prefer use stompjs: https://www.npmjs.com/package/@stomp/stompjs


[ProjectE] No Covalence Loss

Issue description:
Refined storage does not respect projecte's covalenceLoss config option when putting an item in the transmutation table. I believe it retrieves the value of the item instead of retrieving the "sell value" of the item. https://github.com/sinkillerj/ProjectE/blob/master/src/main/java/moze_intel/projecte/utils/EMCHelper.java#L258
What happens:
EMC ratio is one to one.
What you expected to happen:
Loss of EMC
Steps to reproduce:

In the ProjectE/ProjectE.cfg change the covalenceLoss to be something below 1.0
Put an item in the refined storage system (no other storage locations so it has to go into the transmutation table) I used a diamond.
There is no loss in emc for pulling the item out and putting it back in through the refined storage system.

Version (make sure you are on the latest version before reporting):

Minecraft: 1.12.1
Forge: <IP_ADDRESS>0
Refined Storage: 1.5.18

Does this issue occur on a server? [yes/no]
Probably, did not bother setting one up to test.
If a (crash)log is relevant for this issue, link it here:
[pastebin/gist/etc link here]

That class you linked isn't part of the API, so I can't use it.
Furthermore, I already opened an issue for this at ProjE's issue tracker long time ago:
https://github.com/sinkillerj/ProjectE/issues/1593


travis-ci: test GitLFS with ancient Git version

According to @technoweenie GitLFS should work with Git 1.8.2 or later:
https://github.com/github/git-lfs/issues/410#issuecomment-112976174
Git 1.8.2 is sufficient for Linux but macOS seems to require at least
Git 1.8.5 to run all integration tests. On Git 1.8.2 "test: pull" and
"test: pull with raw remote url" fail on macOS.
Details: https://travis-ci.org/github/git-lfs/jobs/174177362

:+1:


How to use Nopipeline with shared projects?

I'm trying to set up multiplatform project like described here:
https://community.monogame.net/t/creating-a-cross-platform-project/14825/4
So I want to split my project into several shared projects. Is it possible to configure nopipeline to work with these shared projects?

There is no reason to use shared projects anymore. Use regular class libraries instead.


Create topics in "Discussions" for each homework and Vocareum bugs

Topics have been created. Thanks @zofiatycz !


Is it possible to use gettext with lgi?

I want to use lgi with translated strings. Is it possible?

Certainly (theoretically) possible, but I do not know of any special support in lgi for this, nor of anything else that I already did this.

I remember gettext bindings for lua existing but didn't see them with a quick search.

How to implement translation (if it is possible)?

Well, according to Google, gettext itself has Lua support: https://www.gnu.org/software/gettext/manual/html_node/Lua.html

@zaoqi-unsafe I'm not developing in standalone lua right now, but remember some things. There are three types of lua gettext libs:

Pure lua implementation
JIT/FFI-based bindings
Full C library bindings

First type is preferable in most cases, but will not work with LGI. Second require LuaJIT or side FFI library, but is pretty easy to use and 100% woring. Third type would be best one for usage with LGI, but I'm not sure are there complete implementations.
I personaly would recomend trying to find C bindings, but FFI/JIT should be just OK too.

@v1993 @psychon @TingPing @zaoqi-unsafe if possible, in this project we use gettext https://gitlab.com/diazvictor/vitronic

I also found this gettext library
https://github.com/t-kenji/lgettext