[terra-clinical-item-display] Add accessibility guidance for isTruncated prop

Summary

This change adds accessibility guidance in the terra-clinical-item-display documentation so that consumers are informed of requirements for ensuring accessibility when using the isTruncated prop.
Testing

This change was tested using:

[ ] WDIO
[ ] Jest
[ ] Visual testing (please attach a screenshot or recording)
[ ] Other (please describe below)
[x] No tests are needed

This PR only includes documentation updates, so no tests are needed.
Reviews
In addition to engineering reviews, this PR needs:

[x] UX review
[x] Accessibility review
[ ] Functional review

Additional Details

This PR resolves:
UXPLATFORM-8574

Thank you for contributing to Terra.
@cerner/terra

The Accessibility Guide text looks good. It appears that the truncated text example does not implement a method (as called for in the Guidance) for the keyboard user to access the truncated text. If that is what we intended, then I will approve this PR.

For some reason the slide panel isn't being disclosed from the list in the PR Preview (it works fine for me locally), trying to figure out what's going on

Fixed with 32c1116.

@sycombs - I did some more testing with VoiceOver. It works as expected except for some stray text. Here is what I observed:
When a list item in the Truncated Text with Slide Panel Disclosure example has focus, VO reads the text. When I press Enter the disclosure panel opens and VoiceOver announces, "Components, main, Patient Details, region. You are currently on a region."
When I press Tab, focus goes to the Close button and VO announces, Close, button, Patient Details, region. On clicking the Close button, Patient Details will be closed. You are currently on a button. To click the button, press Control Option Space."
Here is where it gets weird: When I press the Down arrow to navigate to the content, VO announces some hidden helper text, "On, you are currently on a text element."
When I press Down again, VO continues, "region. On clicking the maximize button, Patient Details will be maximized. You are currenty on a text element."
When I click down again, VO says, "On clicking the minimize button, Patient Details will be minimized. You are currenty on a text element."
If I click Down arrow again, VO announced the text of the content area.
Since this is an issue with the slide panel and not the text truncation feature, I will approve this PR. Would you take a look at the example and see why it is announcing this hidden text?

@sycombs - I did some more testing with VoiceOver. It works as expected except for some stray text. Here is what I observed: When a list item in the Truncated Text with Slide Panel Disclosure example has focus, VO reads the text. When I press Enter the disclosure panel opens and VoiceOver announces, "Components, main, Patient Details, region. You are currently on a region." When I press Tab, focus goes to the Close button and VO announces, Close, button, Patient Details, region. On clicking the Close button, Patient Details will be closed. You are currently on a button. To click the button, press Control Option Space." Here is where it gets weird: When I press the Down arrow to navigate to the content, VO announces some hidden helper text, "On, you are currently on a text element." When I press Down again, VO continues, "region. On clicking the maximize button, Patient Details will be maximized. You are currenty on a text element." When I click down again, VO says, "On clicking the minimize button, Patient Details will be minimized. You are currenty on a text element." If I click Down arrow again, VO announced the text of the content area. Since this is an issue with the slide panel and not the text truncation feature, I will approve this PR. Would you take a look at the example and see why it is announcing this hidden text?

I was able to reproduce VO reading this hidden text in Safari. After some searching it seems that the hidden text being read is visually hidden text from terra-action-header that are being used to describe the close, maximize, and minimize buttons.


dev: use upstream watch & notify actor

This problem is found in various editors, such as vscode and neovim.

https://github.com/Enter-tainer/typst-preview/suites/16544994568/artifacts/945124668

Let's merge this and wait for v0.9.0


when dir name is script/scripts, the icon is blank~

when dir name is script/scripts, the icon is blank~
this is screen snapshot:

I'm using Visual Studio Code Version [1.4.0]
I'm using the extension version [1.8.9]

I cannot reproduce that.

i'm use osx

@jaylinwang does it only happen with this special folder? The OS should not have any effect in this case.
If the icon is not being loaded is that you don't have it on your machine. In order to assure you have all what it's needed I would suggest you to completely reinstall the extension:

Icons disable
Uninstall the extension.
Reinstall the extension.
Icons Enable if the autorun doesn't start.
Check if you have your icon back and let us know.

It has happen sometimes to other users and these steps usually help.

when i reinstall the extension, i's ok~
thanks 😄


Update go-algorand to 3.4.1-beta

Summary
Update submodule to latest rel/beta.
Test Plan
N/A

Codecov Report

Merging #886 (e984b8f) into develop (3cafaad) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop     #886   +/-   ##
========================================
  Coverage    58.73%   58.73%
========================================
  Files           38       38
  Lines         4495     4495
========================================
  Hits          2640     2640
  Misses        1528     1528
  Partials       327      327

Continue to review full report at Codecov.

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


feat:  added file to fetch data from the subgraph API. Package.json updated with axios and ts-node.

closes #153
@Guboehm Made the subgraph-queries.ts file using axios to fetch data from the subgraph API.

@0xneves Changes made as suggested!

Added the .env-sample file to be fetched by the  subgraph-queries.ts file
endpoint URL and authorization key are now hidden by the .env
package.json updated to accept the dotenv dependencies.

The commit 6d05195b477a11955654b86594853cd844373e70 which adds an .env file to the frontend closes #157


Updating / adding Svg fils does not trigger reload/rebuild

If you need HMR, I think this could help you.

I think his issue  like that After packaging, "virtual:svg-icons-names" cannot obtain the svg file name newly added to the svg folder


[Request] Would like to request for constant state structure

Hi, I would like to see the structure of constant data for this header component. Thanks!
Mine:

From documentation:

@rtivital @achmurali @leochoo I think you have to display the structure of data also because what if there is a tab that no need dropdown selection if it doesn't have children. Thanks!
Your response is highly appreciated!


Expand Snipmate snippet after "partial word"

Hi,
I have snipmate snippets of the form
snippet Delta
	Δ

and would like to expand them inside a partial word, i.e. I want HDelta<tab> to expand to HΔ. Two questions about this:

Is it correct that setting wordTrig to false (and leaving trigEngine as "plain")  allows this kind of expansion to happen?
Is there a way to change the default setting of wordTrig for snippets imported from snipmate?

If not I'll probably convert my snippets to Lua (and understand the DSL...), but I'd rather not go through that process at the moment.
In either case, thanks for the amazing plugin!

Hey!
1 is completely correct, regarding 2, right now it's not possible to disable wordTrig for snipmat-snippets.
But, if you only need this for a few snippets, I can wholeheartedly recommend parsing the snippet from lua:
local parse = ls.parser.parse_snippet

return {
    parse({trig = "snip"}, "${1:A snipmate-snippet}"),
    parse({trig= "Delta", wordTrig=false}, "Δ")
}

You get all options and can fall back to lua for complicated snippets only :)

Aaah, that is a very good point; Thanks for your help!


Filter data

Hi!!
I want to add some Filtering to my table. is that possible? and how?

Hi @Ouya-Hamou ,
This project was initially born to display a reduced content of information, so it was conceived simply as an animated grid. at the moment I don't have much time to devote to this implementation although I think it's a great feature to implement.
If you want you can contribute to the project with a PR to implement this feature, I will follow you and help you in this.


Ender io gas conduit crash w/ Electrolytic Separator

when connecting a ender io gas conduit to the Electrolytic Separator crashed the server but not the client here is the crash report http://pastebin.com/P6neYebz

Can confirm.  Placing an enderIO gas conduit on any gas-compatible Mek machine causes a crash, not just Electrolytic Separator.
Looks like an issue on EnderIO's end though; it's their function that's throwing the error.

EnderIO's end


nested map[interface{}]interface{}

This adds support for nested map[interface{}]interface{} which happen when used in conjunction with spf13/viper and with the bug in https://github.com/go-yaml/yaml/issues/139
It uses reflection to cover generic cases of all map types and not only some.
Also the ConvertMapKeySmart is generalized to support any type.

Thank you for your contribution!


Support for Gradle Plugin Portal

It would be nice if the robolectric-gradle-plugin would be available in the new Gradle Plugin Portal (Announcement: http://www.gradleware.com/uncategorized/new-gradle-plugin-portal/). As of Gradle 2.1 (I know, it is not released nor supported yet) you could then apply the plugin with:
plugins {
    id "org.robolectric.gradle" version "0.11.+"
}

A guideline for plugin submitting is available at: http://plugins.gradle.org/submit

The plugin is being deprecated with the release of Robolectric 3.0. Closing open issues.


Add link to my notebook site

Hi!
My site's a sort of one-person-wiki that, amongst many other things, discusses music making workflows and offers guides to using various music making tools.
The webring icon's at the bottom-right, next to the other links in the footer, and looking stylishly cryptic.
What say you, yay or nay?
All the best!

Hey Zoe,
I've just spent an hour going through all your notes!! Lots of amazing things in there, I'd love to add it to the webring, I have only one request, could you add an about link? I realize that there's a zoe blade page, but could you make a link to it from the top maybe with someway for me to contact you if the site goes down?

Yay, I'm glad you like the site!  I similarly clicked on a few others in the webring and got similarly sidetracked. 😄
Sure, I've now added an "About me" page, linked from the top of the sidebar on the left... complete with e-mail address.  How's that?
Cheers!

Yep! That'll do! welcome to the webring zoe :>

Yay, thank you!


Youtube center Developer Edition not working in waterfox?

I'm not sure what killed it.

+1

Having the same issue

I am having the same issue on all four of my computer as of maybe a week ago or so. There is suddenly no indication on a YouTube video page that YouTube Center Developer Edition is running. None. All of the icons and menu items associated with it are missing. I checked and the Extension is running. I am running Build #537 BTW.


Fix issues in the Admin App to unblock automatic deployment

There are some issues in the Admin app that have to be fixed if we want to use the Deployment Pipeline.

Fixed 2 errors. There is still a runtime error. Trying to understand where it is coming from


Running rosbag commands from C#

[x] I am at the right place and my issue is directly related to ROS#. General technical questions I would post e.g. at ROS Answers or Stackoverflow. For library-specific questions I would look for help in the corresponding library forums.
[x] I have throughly read the Contributing Guideline and writing this issue is the right thing to do in my case.

I have a question!

[x] I searched the Wiki, open and closed issues for an answer. I tried my best in finding the answer by myself without success. I believe that the discussion we will have in this issue, and the solutions we might find, will help me, and likely other community members who have a similar problem.

Here is my question:

I found a bug!

[ ] I am using the latest ROS# version available here on the master branch.

[ ] I am adding all required information, code and data files, screenshots and log files so that you can reproduce the problem.

My OS is:

My Unity Version is:

My ROS Distribution is:

My Build Target Platform is:

Here is my bug description:

Perform the following steps reproduce the bug:

Observed results:

Expected results:

Relevant Code:
<!-- Insert code here,
-->

I have a feature request!
I want to do this:

For being able to do it, I wish ROS# had the following feature:

Hey there. I have managed to make ros and unity  linux talk to each other within a single system. All thanks to rossharp. Now I need to record some bags. I intend call these from unity based on some keypresses. I tried process from system diagnostics. Never even managed to start rqt. Tried running a separate bash script too, no luck. I guess this should be quite straightforward to call rosbag command from within unity, I am just unable to figure it out. Any help would be appreciated.

Hi @pvnkmrksk ! To my best knowledge, you are the first one interested in running rosbag commands from within Unity/C#.
The ROS# interface to ROS is nothing but a rosbridge_suite client implementation.
Thus, if rosbridge_suite has the possibly to record bags, start rtq or whatever, you can directly do so via ROS#/RosBridgeClient.
If rosbridge_suite/rosapi does not provide the required functionalities, you will have to set up a separate service on your ROS system, which does what you want (start rqt, etc.)
You then can call this service via rosbridge_suite as any other rosbridge communication.
You can take e.g. the file_server service as a reference which provides the functionality to send file contents via rosbridge_suite.

I see, that makes sense. I am just starting C# and Unity, so implementing myself seems beyond my reach for now. But if I change my request, running rosbag commands somehow. In python, I was using subprocess.Popen to call rosbag command line utilities to start and stop bags. I tried to mimic that using system.diagnostics.process. I just couldn't get it to run. Then I tried calling a python script using system dignostics which internally called rosbag, failed too. I just need to call a standard ros utility from unity and that would be great. A C# api implementation is not necessary for the purpose.
But it is surprising no one was interested in recording the data streams? Wouldn't recording be the next step after communication, if not as data but for posterity reasons?

Likely I did not really understand what you want to do.
Of course you can record all data you have on Unity and ROS side with all means you have.
Why don't you simply run your rosbag tool on your ROS system and communicate the data you want to store in your bags from Unity as common topics?

Hi @pvnkmrksk what is the status of your issue?
As suggested above you can wrap any command you want to execute on your ubuntu system in a ROS service as explained here and than call that service from Windows / Unity as shown in this example script.
Further could you please explain on your use case? Why you actually want to run those scripts from remote/unity and can not call rosbag scripts for message recoding directly at startup of your ROS system?

Snap. I forgot to close this, my apologies.  I run this in the start method. Initially it never ran any ROS related commands, ran everything else well. Then I realized I had to start Unity using
'/opt/Unity/Editor/Unity %U ' from the terminal. This loaded all the ros source commands from bash which let me run any ros commandline tools like rosbag, rqt_view etc.
I am not sure running Unity from the terminal was obvious to others. But doing that fixed everything, as standard C# code to run new proc works sweet. If anyone has similar issues, feel free to contact me.
And thank you for your assistance.
          string command = "rqt"; 	     string argss = "";             System.Diagnostics.ProcessStartInfo procInfo = new System.Diagnostics.ProcessStartInfo();             procInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;             procInfo.FileName = command; // 'sh' for bash             procInfo.Arguments = argss; // The Script name             System.Diagnostics.Process p= System.Diagnostics.Process.Start(procInfo); // Start that process.


Adding Custom Default Claims to Token for client_credentials granttype

Is there currently a way to add custom default claims to client like we can do to the user profile though IProfileService ? This should be a useful feature

you can configure the client claims on the client object - or add them dynamically using a custom token request validator

But how do i write a custom token request validator? Any examples or references?

Don't think we have docs for it - you need to implement this
https://github.com/IdentityServer/IdentityServer4/blob/dev/src/IdentityServer4/Validation/Interfaces/ICustomTokenRequestValidator.cs
and add it to DI.
You can then add client claims on the context dynamically. Give it a try.

Great Thanks. IT worked a charm.

hi @yehonathan , @leastprivilege
I found this quite helpful, although it doesn't answer to one of my questions..
If I would like to attach a custom claim to a client (this coming from the client itself, after successful authorization).. how could I achieve this? how could I get this info on ids?
For example, in /connect/authorize I don't see any extra params which client could post. Could you recommend something?
Thanks!

Actually I realized that I could inspect the extra params via the "Raw" property of the ValidatedTokenRequest.. Unfortunately when I add new claims here, they are not showing up in the access token on client side.. not sure what I am missing

Well, I discovered that context.Result.ValidatedRequest.ClientClaims should be used instead of context.Result.ValidatedRequest.Client.Claims .. could anybody confirm that this is how it should work?

ClientClaims adds prefix "client_" to custom claims.

@leastprivilege
@brockallen
I apologize if I ask this here and not via Stackoverflow, but this might be related to this closed issue discussion. Possibly added for documentation.
I have an API (A) and has been authenticated using ResourceOwnerPasswordAndClientCredentials. I get the access_token as well as profile claims with subject. On this API (A), I would like to call other API (B) using client_credentials, however, I also need to pass the subject or some other unique identifier so API (B) knows who is the subject.
I use new TokenClient(...) from the API (A) to call the API (B).
[Authorize,HttpPost,Route("myapi2")]
public async Task<IActionResult> MyApi2()
{
    var client = new TokenClient(_settings.TokenEndpoint, "client2api", "secret");
    var token = await client.RequestClientCredentialsAsync(scope: "myapi");
    return Ok(token);
}

I manage to get the access_token and manage to add custom claims. But I cannot get the subject of the API (A). Here is the customer request validator. I understand client_credentials itself has no user. Am I doing the right way here.
    public class CustomClaimInjection : ICustomTokenRequestValidator
    {
        private readonly HttpContext _httpContext;

        public CustomClaimInjection(IHttpContextAccessor contextAccessor)
        {
            _httpContext = contextAccessor.HttpContext;
        }

        public Task ValidateAsync(CustomTokenRequestValidationContext context)
        {
            // THIS ONE. HOW TO GET THE SUB. THIS ALWAYS NULL.
            var sub = _httpContext.User.FindFirst(JwtRegisteredClaimNames.Sub)?.Value;

            var client = context.Result.ValidatedRequest.Client;
            client.Claims.Add(new Claim("sub", sub));  // this will be [client_sub]

            return Task.FromResult(0);
        }
    }

This is not how it works.
The "sub of the client" would be the client_id claim.

@leastprivilege
My bad, duh... I should not use ICustomTokenRequestValidator.
I manage to resolve it by using IExtensionGrantValidator. All works like a charm. Thanks.
It's all here in the documentation http://docs.identityserver.io/en/dev/topics/extension_grants.html
    // get user's identity
    var sub = result.Claims.FirstOrDefault(c => c.Type == "sub").Value;
    context.Result = new GrantValidationResult(sub, GrantType);

should ICustomTokenRequestValidator be registered as Singleton or Scoped?

@drowhunter use services.AddTransient(ICustomTokenRequestValidator, [your implementation]).

thanks.

@leastprivilege

The "sub of the client" would be the client_id claim.

I was trawling through the JWT, OAuth2, and OIDC specifications and I can't see client_id defined by any of them except for use as a parameter when using client authentication. I noticed that IdentityServer4 seems to be adding client_id as a claim by default (I have no problem with this), but is it spec'd out anywhere? The IS4 docs only make a few references to a client_id claim, such as https://hts.readthedocs.io/en/latest/quickstarts/1_client_credentials.html

By default an access token will contain claims about the scope, lifetime (nbf and exp), the client ID (client_id) and the issuer name (iss).

Is there any risk the behaviour of the IS4-added client_id claim might change in future? (Either in a point-release, major release, or a hypothetical IS5?)

There is no spec about access tokens and their claim types. We made this decision at some point.

This is WIP right now
https://tools.ietf.org/wg/oauth/draft-ietf-oauth-access-token-jwt/

This is not how it works.
The "sub of the client" would be the client_id claim.

Sorry for adding to this closed issue but I would like a small clarification here.
Does this mean that sub is not set for client_credentials flow?


[Redshift] error reading Data types cache

DBeaver 7.3.5

SQL Error [500310] [42703]: [Amazon](500310) Invalid operation: column t.typcategory does not exist;
  [Amazon](500310) Invalid operation: column t.typcategory does not exist;
  [Amazon](500310) Invalid operation: column t.typcategory does not exist;

#11348

Fixed.
Version 7.3.5 was re-released (can be downloaded from dbeaver.io)


Add app store ref to Charlie

Updated the "About Us" where Charlie Lee is referenced

@losh11 Will you be able to take care of this soon?


fix(semantic): incorrect resolve references for TSTypeQuery

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#4310  👈
#3990
#4280
#4253
main

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

Join @Dunqing and the rest of your teammates on  Graphite


perf(storage): support static type for all hummock iterator implementations

I hereby agree to the terms of the Singularity Data, Inc. Contributor License Agreement.
What's changed and what's your intention?
Currently, we use async_trait for HummockIterator, which causes significant performance regression due to the use of Pin<Box<..>> that depends on dynamically dispatch. After we look at the current usage of HummockIterator, all types can be statically determined at compile time. Therefore, in this PR, we support static type for all hummock iterator implementations.
For MergeIterator, we have some use cases that accept multiple types of HummockIterator implementations as inputs. Therefore, in this PR, we introduce a enum type named HummockIteratorUnion, which acts like a Union, and can take multiple types of HummockIterator implementation. MergeIterator that used to take multiple different types will now use such HummockIteratorUnion as the only input type.
Checklist

[x] I have written necessary rustdoc comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Refer to a related PR or issue link (optional)

Just ran the bench_merge_iter benchmark. The average speed increases 37% for unordered merge iterator and 28% for ordered merge iterator.
This PR

Current main

I still think introducing TupleMergeIterator will be more clear and  zero-overhead, but the PR is ok to me.

My idea is introducing two kinds of Iterator, based on the below limits:

We may merge different types of iterators, but with the fixed size (the size should be known in compile time).
We may merge the same type of iterators with various length.
We won’t merge different types of Iterators with various length.

For 2, we can use a simple MergeIterator which stored a Vec inside.
For 1, we can introduce some Iterators like TupleMergeIterator<I1, I2, I3>, and it will only use some enum internally but will not expose it.
The benefits are:

The approach is more efficient, without unnecessary enum wrapper, and without unnecessary allocation for small MergeIterator.
For small number of iterators, we don’t need to use heap.
We can even use MergeIterator under MergeIterator, e.g. TupleMergeIterator<SharedBufferIterator, L0Iterator, MergeIterator>.

Just added a new benchmark to compare the performance between the single type and union type merge iterator.
For both the unordered and ordered merge iterator, the performance of the union typed is worse than the single typed ones. However, compared with the previous Box, the performance of the union typed is still better.
One observation is that, for unordered merge iterator, the speed of union typed one increases around 20%, while for the ordered merge iterator, the speed of union typed one only increases around 5%.

we can introduce some Iterators like TupleMergeIterator<I1, I2, I3>

Sounds like a good idea. As the new benchmark shows, using enum indeed cause performance regression compared to single typed merge iterator. But the current PR can still get performance improvement compared to the current main, which uses dynamical dispatch. So I think we can save this optimization and implement such new merge iterator in a future PR and merge this PR first.


using dependency injection for API server, for cleaner code

Is your feature request related to a problem? Please describe.
The code inside the api folder is a bit messy...
Describe the solution you'd like
One way to improve it, is to use one of the strategies of IoC, which is dependency injection.
since this is a Nodejs server, we can use an npm package to handle dependency injection, the library i recommend is: typedi
Describe alternatives you've considered
There are other way to improve it too, like using a framework on top of express (eg: Nest.js)
Additional context
N/a

I'd like to tackle with this. is there a dead line for this issue?

Please go on, if you know what to do, I will support you on it

I created a PR related with loader as a first step. please give me a feedback 😊

I've looked over the api codes. but I couldn't find dependencies for each service functions. could you give me an example?

i will create a feature branch, with a sample code containing DI, we will start from there

closing as done in #283


mangahere.co is broken

After intially loading the page, WCR loads the next two pages and then shows 'Loading…' icon forever. There are some random exceptions of normally working manga, but 90+% is bugged like this.

@Darayavaush I only seem to find the random examples of normally working manga. :/ Can you link to one that doesn't work?

Hm, I found the reason. I have a second userscript that binds scrolling to going to next/previous page with the following code:
$('body').bind('DOMMouseScroll', function(e) {
    e.preventDefault();
    if (e.originalEvent.detail < 0) {
        $('#wcr_btn-1').click();
    }
    else {
        $('#wcr_btn1').click();
    }
});

I thought this was a bug of Mangahere because this script is active on several sites, but only Mangahere has this problem. Additionally, the stops loading the next pages only when I actually use the scroll to go to last accessible page - if I click on WCR's next/previous button manually, the pages load as expected. Why would this happen, and only on one site?

@Darayavaush probably mangahere has a script messing with your one. Try noscript extension with exception of webcomic reader. If it works without a problem, then my theory is correct.

@Tmp341 Yep, that helped. I still don't understand why Mangahere worked this way (scrolling was not prevented (I could still switch between pages just fine), but doing so stopped preload), but this is moving outside the scope of WCR. Thanks!


Noise

Is your feature request related to a problem? Please describe.
N/A
Describe the solution you'd like
An implementation of OpenSimplex noise.
Describe alternatives you've considered
Random noise (white/pink/red/gray), Perlin noise, and Simplex noise.
Additional context
Wikipedia article. Implementation.

Worley noise


PR message for PRs that are also fixing

Description
Variation of PR message.
Related issues:
Instructions to review the pull request
Review online.

Thanks for the review


Improve reconnection logic for 'btsdk` branch

Add the checker that connection was closed correctly.
AC:
Connection should be recreated in both following cases:

[x] Connection was closed correctly (with subtensor.close() method)
[x] Brocken Pipe error (over timeout)

PR https://github.com/opentensor/bittensor/pull/2283


Resize is lagging.

it would be good to have
min-width, max-width <-- this 2 is good for PWA, if user resized it too small, it would become ugly.
maximized <-- this would be maximized on first load.
another thing would be, try delay webview resize when the host window resize, like how all the browser did, this would make sure PWA reflective size won't response immediately... current resize is seriously lagging for PWA but it was smooth in browser.
Originally posted by @thienpow in https://github.com/tauri-apps/tauri/issues/539#issuecomment-656070094

thanks for raising this again!

Maybe relevant? https://github.com/r0x0r/pywebview/issues/484

Moving to wry as that is the source of the issue now. It is present on Linux, but may have been fixed on other platforms now.


⚠ Processors has degraded performance

In 1b2d264, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 143 ms

Resolved: Processors performance has improved in ac58d25.


How to achieve a small VM state?

I noticed that the initial state for the Arch Linux example (at https://k.copy.sh/arch_state.bin.zst) is pleasantly small (15 MB compressed, 73 MB uncompressed). What do I need to optimize for in a Linux image to make this state (after booting) as small as possible?

Most savings: specify init_on_free=on on the kernel command line and run echo 3 > /proc/sys/vm/drop_caches before saving the state, then use zstd -19.
Some minor extra savings: Switch from systemd to openrc, disable services and startup scripts.

Thank you, I'll play around with that! <3


sb (selectbox) shouldn't be applied automatically on selects in the backend

...though it's incompatible with chosen.
I suggest to make it dependent on a certain class, like .alchemy-sb. So if you develop custom modules you can choose chosen or another select-box-plugin over sb.

Good point!

Submitted a pull-request. Hopefully I didn't miss any selects!


Travis Builds are failing

The hhvm pipeline for the travis builds are failing.

I have an Pr https://github.com/Nanigans/single-table-inheritance/pull/49
the test for the PR is also failing with the same error.

I removed HHVM because Facebook has dropped PHP support.


Explosive enemy spawner v2

New explosive spawner:

Acts like a normal spawner
Can't be destroyed
Explosive enemy fixes

Task linked: CU-86c0agd54 Explosive Enemy Spawner Rework


Show a big-fat warning when a brain mask is not provided

With the development of #91, it has become clear that we don't want to be fitting models in background pixels, nor have the background be considered by the cost function of ANTs.
Therefore, eddymotion should be very reluctant to go ahead without a brain mask.
Incidentally, I believe can easily include SynthStrip into dMRIPrep and then dilate that mask so that distortions do not cause cropping of the brain.
WDYT?

I ❤ synthstrip and I think that's a great idea. We should also give the option to provide masks from other pipelines.

Correct, we don't want to mess with how the user calculates masks - eddymotion should just trust the user is doing the right thing on this aspect.


Mysterious failure in ILpacked application

I have a WCF client application that I run ILRepack on to eliminate its dependency assemblies. The ILpacked program works fine on all endpoints except for it gets 400 (Bad Request) response on gzipped endpoints (ones that use GZip encoding).
Below are the messages of working (without ILRepack) and failure (with ILRepack) cases. The only difference I can tell is the content-length header and the message body.

I guess the root cause is some dependency assemblies are missed in the ILRepacked program,  but honestly in this case it is not clear to me what missing assembly could cause the observed behavior.
When using ILRepack, do we need to list all assemblies at all reference levels that need to be repacked? or do we just list the top-level dependencies and ILRepack will automatically include the indirectly referenced ones? I think the answer might be the former based on my experience, and that can easily result in some assemblies being missed during repacking.
 I think the answer might be the former based on my experience, and that can easily result in some assemblies being missed during repacking.

If one of the dependencies uses reflection by type or assembly names and the assembly it is looking for has been merged, it will break.
If there is loading of assemblies by name or searching for them in neighboring folders, then it will also break if it does not find the dependecies.
Any non-metadata references are not merged. You could use ILSpy to look for referenced assembles which are found in metadata.

@deniszykov Thanks for the information. Perhaps some libraries are not friendly with ILRepack (case 1 or case 2 might exist somewhere).

I’d debug the app with first-chance exceptions enabled, I’m sure there’s an exception you’re not seeing. You can also subscribe to AppDomain.CurrentDomain.FirstChanceException and log them all

I have time to get back to this after wrapping up other issues.
@KirillOsenkov, I tried what you suggested but no FCE was caught.

Can you reduce the list of repacked dlls one by one until the bug stops reproducing? This way we can narrow it down to which dll causes the issue.

@KirillOsenkov, The error stops after I remove all DLLs and leaving only the EXE. Is that the right way to use ILRepack - just let ILRepack decide what DLLs to repack?
  <Target Name="PostBuild" AfterTargets="PostBuildEvent">
    <Exec Command="cd $(TargetDir)
$(ILRepack) /keyfile:$(ProjectDir)..\..\..\Framework.snk /out:$(TargetPath) $(ProjectDir)obj\$(Configuration)\net48\CSG.Framework.ServiceDiagnostic.exe" />
  </Target>

but can you add one .dll at a time and see which dll makes the error return?

The one that makes the error return is my DLL (the one in red box below) which I have complete source code. I guess repacking somehow causes data compression to fail, which results in a bad request.

The root cause of 400 Bad Request is that the request message gets compressed twice due to GZipEncodingBehavior being added twice to the endpoint. I need to adjust the application code and configuration file as the full type name of GZipEncodingBehavior is changed after repacked.

Thanks for figuring this out! We do have some command-line options to strip attributes etc.


Oracle Linux - Standard AMI has default firewall rules that block Helm's communication

Enhancement
The standard OEL image  In AWS (AMI: OL7.6-x86_64-HVM-201 ami-062fed7f76f714d8d) has REJECT rules that stop Helm from communicating to tiller when installing Rancher in HA mode.
Here is the default iptable in the instance
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

My temporary workaround is to drop all the rules before installing Docker.
We should document the required ports and firewall rules (if possible) for installing Rancher in HA mode.

@catherineluse please work with @paraglade to get the correct firewall rules.


@-webkit-keyframes hash not working

Version
2.3.3
sass-loade: ^6.0.6
node-sass: ^4.5.3
Reproduction link
http://qr.dev.hemayun.com/static/css/app.360e94be2558dcfd9e4d865791173495.css
Steps to reproduce
npm run build
What is expected?
@-webkit-keyframes cursor-data-v-6178f221 {
	0% {
		opacity:1
	}
	25% {
		opacity:1
	}
	26% {
		opacity:0
	}
	74% {
		opacity:0
	}
	75% {
		opacity:1
	}
	to {
		opacity:1
	}
}
@keyframes cursor-data-v-6178f221 {
	0% {
		opacity:1
	}
	25% {
		opacity:1
	}
	26% {
		opacity:0
	}
	74% {
		opacity:0
	}
	75% {
		opacity:1
	}
	to {
		opacity:1
	}
}

What is actually happening?
@-webkit-keyframes cursor {
	0% {
		opacity:1
	}
	25% {
		opacity:1
	}
	26% {
		opacity:0
	}
	74% {
		opacity:0
	}
	75% {
		opacity:1
	}
	to {
		opacity:1
	}
}
@keyframes cursor-data-v-6178f221 {
	0% {
		opacity:1
	}
	25% {
		opacity:1
	}
	26% {
		opacity:0
	}
	74% {
		opacity:0
	}
	75% {
		opacity:1
	}
	to {
		opacity:1
	}
}

Hi @Chooin
Thanks for reporting this issue. However, this is not a valid, runnable reproduction. Please provide one.

@-webkit-keyframes hash is empty

@Chooin You can provide a github repo to reproduce your situation.
你只提供了css，没有构建过程，不能重现啊。😅
你可以提供一个github repo来重现问题。

I tested with vue-loader and as @Chooin said, the prefixed version doesn't have the data-* scoped style while the non prefixed has it. I'm closing this as it is related to vue-loader or postcss. BTW, unless you're supporting safari 8, you don't need that prefix for keyframes


New package: THS.Futures version <IP_ADDRESS>

[X] Have you signed the Contributor License Agreement?
[X] Have you checked that there aren't other open pull requests for the same manifest update/change?

[ ] Have you tested your manifest locally with winget install --manifest <path>?
[X] Does your manifest conform to the 1.2 schema?

Microsoft Reviewers: Open in CodeFlow

Hi @SpecterShell,
There are 2 installer issues for this package:

Dependency is installed, even when not necessary. User has to click the "Close" button.
Installer is not unattended. I've composited a translated screenshot:

I tried to query the main installer for switches but didn't get a list in response. Are you aware of silent install switches for this installer?

It works fine for me. 😕


no logs were sent without specifying a valid levelMapping

No logs were being written to rsyslog even though everything looked correct. I was able to test that the tcp port was open using nc. I traced through the code and realized the default levelMapping was {} which could be a problem. The docs say the default value should have been "winston.config.syslog.levelMapping" but the code said otherwise. I tried finding this object and it did not exist but I did find winston.config.syslog.levels.   As soon as I added levelMappings: winston.config.syslog.levels to the options, the logs were forwarded as expected.
The default should be updated to use this value and the docs should be updated.
I'm using "winston": "2.4.0" and "winston-rsyslog2": "0.0.5"

ok will fix


Migrate invoke_no_args to invoke_batch

Migrate scalar UDFs from deprecated invoke_no_args to invoke_batch.

follows https://github.com/apache/datafusion/pull/13174
for https://github.com/apache/datafusion/issues/13238

Currently based on https://github.com/apache/datafusion/pull/13174

let me rebase after https://github.com/apache/datafusion/pull/13174 merged

🚀

THanks again @findepi and @comphead


Wrap with Tag creates bar that never goes away

Whenever I wrap a tag with abbreviation, the input bar doesn't disappear, and Atom needs to be restarted to remove them

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

until this get fixed. I've found that instead of restarting atom you can simply reload window, in Atoms developer fly-out menu, in the view menu. This at least keep the working setup intact.

Still getting this. Any news on a fix?


SNMP Version Usage

This reworks the current SNMPwalk and SNMPset features to decide which SNMP commands to use based on a target RSU's SNMP version in PostgreSQL.

SNMP relies on the snmp_versions table
Added unit tests and reworked others. All SNMP tests relating to Kapsch removed since we can no longer guarantee functionality on any latest Kapsch firmware (CDOT does not have a support agreement with them).
SQL database changes for default values of the snmp_versions table. The previous values didn't make a whole lot of sense to me.

I am having issues with the fabric library for tests, going to fiddle with that a little then confirm tests run!

I keep getting this error:
ImportError: DLL load failed while importing _bcrypt: The specified procedure could not be found.


minSdk very high

Why so high minSdk 24 is used?
I tried running on API 21 and everything looks like working correctly.

Now it has been reduce to 19. So I close it.
Thanks!


Update to release openassetio b1.0

Closes #81

@feltech I added a commit to re-instate the openassetio package dependency now we have proper dist-info support. Feel free to drop if you think it problematic? I think it should work with integrations as they pip install src/openassetio-python.


Upgrade from 3.5.0 to 3.14.0 Causes Members list to Disappear.

Issue Summary
Upgrade from 3.5.0 to 3.14.0 Causes Members list to Disappear.
To Reproduce

Install 2.38.1
Add subscribers
Upgrade to 3.5.0
Enable members & visit members list, confirm subscribers migrated ok.
Upgrade to 3.14.0
Visit members page to see empty list.

Expect to see migrated members list.
Technical details:

Ghost Version: v12.16.2
Node Version: v12.16.2
Browser/OS: Alpine (Docker Image ghost:3.14.0-alpine)
Database: SQLite

Logs
 [2020-04-28 06:02:34] ERROR "GET /ghost/api/v3/admin/members/?limit=all&order=created_at%20desc&include=labels" 400 1648ms

 Could not understand request.

 Error ID:
  da9492f0-8915-11ea-bdbe-1582ef1c85c9

 Error Code:
  SQLITE_ERROR

 ----------------------------------------

 BadRequestError: Could not understand request.
  at new BadRequestError (/var/lib/ghost/versions/3.14.0/node_modules/ghost-ignition/lib/errors/index.js:113:23)
  at /var/lib/ghost/versions/3.14.0/core/server/models/plugins/pagination.js:212:27
  at async listMembers (/var/lib/ghost/versions/3.14.0/core/server/api/canary/members.js:80:18)

 Error: SQLITE_ERROR: too many SQL variables

Try to update to 3.0.0, then to 3.14.0.

@pascalandy ok so I tried that, and i've still got the same issue.

@chukaofili SQLite doesn't support the way members are loaded when you have a lot of members. You should switch to using MySQL for any production sites.

@kevinansfield Thanks, that solved the problem. Closing issue now.


I'd like to join this project's community

Your public repo
https://github.com/ctessum/gov4git-identity-public.git
Your public branch
main

Approved

approved

 Follow up
On Sunday, 21-Jan-24 21:57:56 UTC by Gov4Git dev
@ctessum was added to the community.


Unhandled rejection Error: No response from server

When seeker.on('tessel', ....) is discovering a Tessel and the SSH client didn't got further responses from the found Tessel, there are additional events we have to listen to.
This issue is hard to be reproduced but from my point of view this will be prevented by adding new event handlers to lib/lan_connection.js LAN.Connection.prototype.open
Error
Unhandled rejection Error: No response from server
    at Socket.<anonymous> (/Users/{anonym}/github/t2-cli/node_modules/ssh2/lib/client.js:226:15)
    at emitOne (events.js:82:20)
    at Socket.emit (events.js:166:7)
    at TCP.close (net.js:464:12)

Possible solution based on
As described I added two additional event handlers:

end() - The socket was disconnected.
close(< boolean >hadError) - The socket was closed. hadError is set to true if this was due to error.

I am going to prepare a pull request for discussion.

@johnnyman727 it seams it is necessary to add removeEventListener at some point. Any idea where to do this the best way ?
(If the covered situation happens multiple times at same seeking process, there will come up a node-memory-leak warning. In my case this happens with masses of Tessel2-VMs ... because I do not own ... yea ... no Tessel2s :smirk_cat: )

@johnnyman727 but using this fix within my local work on t2 select it is covering the issue #342 successfully :smile:

Closing this for now because we haven't seen this in a long time.


feat: move to isoparser 1.9.X

Hello, here is a draft supporting the newest version of isoparser.
Summary
One of our dependency (intercom) again bumped their version of isoparser and both could not be used at the same time.
This PR updates to latest to allow use using both libraries at the same time.
However, this change is not backward compatible nor I know how I would achieve something that'd work on both versions as I did with 1.0 & 1.1
Feel free to use / merge / modify this if you want.
We'll probably use patch-package on our side but I wanted to share this work.
Changelog
[REFACTOR][DEPENDENCY]: update isoparser to version 1.9+
Test Plan
Used the example app to make sure everything was OK.

Note that because of the burden of maintaining two different versions of this, we might end up publishing a fork

@Titozzz looking good to me, if you are done then I can merge it and release new version

That'd work for me

Do you want me to clean up old code that would not be used anymore?

@Titozzz it would be good if you cleaned up the code, I will merge and release it, thanks a lot for this PR

Hey, I'm unsure why CI is grumpy, but fixing it in that PR might create a lot of noise, as I'm pretty sure the issues from CI are not caused by these changes.
All green on my side and good to merge.

I think, CI has outdated, going to merge and release it


feat: create health command

⚠ WIP
We have very often to instruct people to do some steps and verify some local settings so that we can have an idea of what might be wrong with their environment.
It would be good for Linkup to have a command that output the overall health so that we can just get the dump from this command and have an idea of what might be wrong.
TODO

[x] ~Make it printable as json~ 6dddbc1993df7e819ade00b33b43bfb08f27fae4

Example of current output (2024-11-29)
System info:
  OS: Darwin (14.6.1)
Session info:
  Name: sandy-camel
Background sevices:
  - Caddy       RUNNING (76550)
  - dnsmasq     RUNNING (76565)
  - Cloudflared RUNNING (76530)
Environment variables:
  - LINKUP_CF_API_TOKEN          OK
  - LINKUP_CLOUDFLARE_ZONE_ID    OK
  - LINKUP_CLOUDFLARE_ACCOUNT_ID OK
Linkup:
  Version: 1.2.1
  Config location: /$HOME/.linkup
  Config contents:
    - dnsmasq-log
    - localserver-stdout
    - dnsmasq-pid
    - localserver-pid
    - cloudflared-pid
    - localserver-stderr
    - state
    - cloudflared-stdout
    - Caddyfile
    - localdns-install
    - caddy-log
    - dnsmasq-conf
    - cloudflared-stderr
    - caddy-pid

@ostenbom is there any other info you think could be nice to have on the health output?

Maybe linkups own version?

And then there was that funks local dns thing where if you remove the file it gets borked, I wonder if there's another way of finding out if the localdns installation is correct? Reading the dns file I think needs sudo

Maybe linkups own version?

Added on e8f1e348fda666b06a75b0325217af07e3880de4

I wonder if there's another way of finding out if the localdns installation is correct?

Hmmm, yeah, there is that one 🤔 What would we say is the definition of "localdns instalation is correct"? DNS file is modified and there is the localdns-install file is present?

Reading the dns file I think needs sudo

And I mean, we already require sudo when installing local-dns, maybe is fine to also require sudo when running the health command? 🤔

We can also merge this one now and do the other localdns stuff as a next ticket / thing on top otherwise!


Map array of raw representables for ImmutableMappable

I have noticed that you can map Raw Representable type to a property without using EnumTransform, but when using array of raw representables you need to specify transform parameter otherwise mapping will fail.
Example:
let types: [TestType]    //TestType is Enum
let type: TestType

init(map: Map) throws {
    type = try map.value("type")
    types = try map.value("types")    // This will fail
}

This is only valid for ImmutableMappable, on Mappable this already works without specifying tranform parameter. To be more consistent I have created this PR which solves this issue.

Thanks for the addition @KIlleX00 👍

This is effecting my project right now as well.  Any ETA?  Is there anything I can do to help?

@cody1024d I just released a new version 2.2.8 with the above fix.


Update Job as suitable for scientific computing

There was an old mention that the Job API was not suitable for scientific computing.
We have made a lot progress towards that end, starting with Indexed Jobs, so the note was inaccurate.
Also moved the item "Job Template Expansion" last, as it usefulness is limited
/sig apps
/wg batch

/assign @soltysh
for technical review.

Can confirm! The biggest issues now are really network latency, and that is cloud specific.

Hi. Try rebasing this against main - does that help?

Hi. Try rebasing this against main - does that help?

It did :)

/approved

/approve

Thank you for the update
/lgtm


Please add "Web Manifest":    It's currently supported in Chrome on Android and Mozill...

Please add "Web Manifest":
http://w3c.github.io/manifest/
It's currently supported in Chrome on Android and Mozilla is implementing in Gecko.

This issue was imported from Google Moderator
Moderator votes: +3
Issue added by Marcos on 2015-01-27
To vote this issue up or down, simply include +1 or -1 in your comment.

-1

+1

+1

+1

+1

Manifest is actually just a JSON file with the metadata. The actual feature is how the file is used and what we're probably want here is the browser-assisted home screen installation feature with standalone appearance.
If so, it's not only Chrome & Opera on Android, but also Safari on iOS - although this is not a standard approach, it lets add the web app to the home screen and run without Safari UI. I think that might be valuable inclusion.

+1

+1

+1

+1

+1

+1

+1

:+1:

:+1:

@fyrd happy to put together the list for this, but how do you want to measure support? a relList.supports('manifest')? Or do you want the browser to do something with the data visually in some way?

@patrickkettner Haven't looked into this much yet myself, but I'd say there's at least partial support if the browser clearly has read the manifest and done something with it. We can use numbered notes to specify how browsers are supporting some values but not others.

clearly has read the manifest and done something with it.

doing something with it is almost always a visual indication. A butter bar, or a thing that triggers an action, etc. The issue is that just because the browser supports the manifest format, doesn't mean that it does anything with it. Current Chrome mobile requires a manifest for PWA installation flow, but won't prompt a user to install on first visit. So none of the data required may be used.
Then there is things like desktop chrome, which by default doesn't do anything with manifest files, but can request them, read them, and validate them through dev tooling. It does support the manifest files, but doesn't "do" anything with them.
I am mostly thinking of this from a automated-testing point of view, so if you would rather just go off of first person knowledge, thats fine too. Just let me know how you'd like to roll.

Actually Chrome desktop has "Add to desktop..." options in menu -> More tools" which I believe does use at least the title, and icon. Maybe @PaulKinlan can confirm/deny

@kenchris I am not seeing that

which version are you on?

I have it on Linux and Chrome OS. I run beta on both I believe

Not seeing it on Linux. Have flags set?
Sent from my iPhone

On Sep 29, 2016, at 2:25 PM, Kenneth Rohde Christiansen<EMAIL_ADDRESS>wrote:
I have it on Linux and Chrome OS. I run beta on both I believe
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Yeah that might be it, I have the "shelf" flag set as seen on the screenshot above.

+1

+1 :)

+1

+1

whats up?

Nothing, just don't like closing issues before the feature's on the site.

phew - worried there was some kind of discrepancy :]

This actually got added on Oct 18, 2016 at http://caniuse.com/#feat=web-app-manifest


Polished Space Minigame

Description
Task: Polish Space Minigame.
Feature: Polish Player
The aim of this task ticket is to revamp the space minigame. This includes:

Integrate seamlessly between planet travel.
Allow the user to replay / send them back to earth on failure of the minigame.
Improve UI and related textures (background, buttons, labels) such that they align with the overall game design goals.
Improve the user experience in general.

Dependencies

ExplosiveComponent (#353)
StarBackground

Milestones
List of steps that need to be completed for this task.

[ ] Revamp ship movement to only allow movement on the Y-axis (Oct. 14)
[ ] Refactor asteroid movement and spawns such that the player needs to dodge them. (Oct. 15)
[ ] Add ExplosiveComponent to asteroids, ensuring the ship explodes on impact. (Oct. 15)
[ ] Modify existing unit tests for SpaceMinigame. (Oct. 15)
[ ] Modify existing background to use StarBackground (Oct. 16)
[ ] Juicify UI to be more in line with the game design goals. (Oct. 16)
[ ] SpaceMinigame wiki documentation update. (Oct. 17)
[ ] SpaceMinigame visual and unit testing complete. (Oct. 17)

Completion Deadline: Aug. 17
Documentation

TBD

Member

Connor Golin (@connor-golin)

Given the time constraints I have this sprint and the amount of work required to revamp the space mini-game, I have decided to close this and work on other things...


Add generate-code script to makefile

Is your feature request related to a problem? Please describe.
It would be easier if we would add a generate code script to the makefile.
That way you can just type something like make generate instead of writing the long flutter pub run build_runner build command.
Describe the solution you'd like
Update the makefile and add one more command. Call it maybe: make example_run_build_runner and it calls the build runner to generate code for the example app in the widget_driver package
Describe alternatives you've considered
The alternative is to just keep as is... Then you need to navigate into the example app folder and then run the flutter pub run build_runner build command.

DoD:

Add new make file script
Add documentation for new script in make file


Error when opening a new tab

The following error happens when opening a tab:

Windows 10 Pro 64-bits, I have just installed Hyper for the first time.

Settings:
// Future versions of Hyper may add additional config options,
// which will not automatically be merged into this file.
// See https://hyper.is#cfg for all currently supported options.

module.exports = {
  config: {
    // choose either `'stable'` for receiving highly polished,
    // or `'canary'` for less polished but more frequent updates
    updateChannel: 'stable',

    // default font size in pixels for all tabs
    fontSize: 12,

    // font family with optional fallbacks
    fontFamily: '"Ubuntu Mono", Menlo, "DejaVu Sans Mono", Consolas, "Lucida Console", monospace',

    // default font weight: 'normal' or 'bold'
    fontWeight: 'normal',

    // font weight for bold characters: 'normal' or 'bold'
    fontWeightBold: 'bold',

    // terminal cursor background color and opacity (hex, rgb, hsl, hsv, hwb or cmyk)
    cursorColor: 'rgba(248,28,229,0.8)',

    // terminal text color under BLOCK cursor
    cursorAccentColor: '#000',

    // `'BEAM'` for |, `'UNDERLINE'` for _, `'BLOCK'` for █
    cursorShape: 'BLOCK',

    // set to `true` (without backticks and without quotes) for blinking cursor
    cursorBlink: false,

    // color of the text
    foregroundColor: '#fff',

    // terminal background color
    // opacity is only supported on macOS
    backgroundColor: '#000',

    // terminal selection color
    selectionColor: 'rgba(248,28,229,0.3)',

    // border color (window, tabs)
    borderColor: '#333',

    // custom CSS to embed in the main window
    css: '',

    // custom CSS to embed in the terminal window
    termCSS: '',

    // if you're using a Linux setup which show native menus, set to false
    // default: `true` on Linux, `true` on Windows, ignored on macOS
    showHamburgerMenu: '',

    // set to `false` (without backticks and without quotes) if you want to hide the minimize, maximize and close buttons
    // additionally, set to `'left'` if you want them on the left, like in Ubuntu
    // default: `true` (without backticks and without quotes) on Windows and Linux, ignored on macOS
    showWindowControls: '',

    // custom padding (CSS format, i.e.: `top right bottom left`)
    padding: '12px 14px',

    // the full list. if you're going to provide the full color palette,
    // including the 6 x 6 color cubes and the grayscale map, just provide
    // an array here instead of a color map object
    colors: {
      black: '#000000',
      red: '#C51E14',
      green: '#1DC121',
      yellow: '#C7C329',
      blue: '#0A2FC4',
      magenta: '#C839C5',
      cyan: '#20C5C6',
      white: '#C7C7C7',
      lightBlack: '#686868',
      lightRed: '#FD6F6B',
      lightGreen: '#67F86F',
      lightYellow: '#FFFA72',
      lightBlue: '#6A76FB',
      lightMagenta: '#FD7CFC',
      lightCyan: '#68FDFE',
      lightWhite: '#FFFFFF',
    },

    // the shell to run when spawning a new session (i.e. /usr/local/bin/fish)
    // if left empty, your system's login shell will be used by default
    //
    // Windows
    // - Make sure to use a full path if the binary name doesn't work
    // - Remove `--login` in shellArgs
    //
    // Bash on Windows
    // - Example: `C:\\Windows\\System32\\bash.exe`
    //
    // PowerShell on Windows
    // - Example: `C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`
    shell: 'C:\\Windows\\System32\\bash.exe',

    // for setting shell arguments (i.e. for using interactive shellArgs: `['-i']`)
    // by default `['--login']` will be used
    shellArgs: ['--login'],

    // for environment variables
    env: {},

    // set to `false` for no bell
    bell: 'SOUND',

    // if `true` (without backticks and without quotes), selected text will automatically be copied to the clipboard
    copyOnSelect: false,

    // if `true` (without backticks and without quotes), hyper will be set as the default protocol client for SSH
    defaultSSHApp: true,

    // if `true` (without backticks and without quotes), on right click selected text will be copied or pasted if no
    // selection is present (`true` by default on Windows and disables the context menu feature)
    // quickEdit: true,

    // URL to custom bell
    // bellSoundURL: 'http://example.com/bell.mp3',

    // for advanced config flags please refer to https://hyper.is/#cfg
  },

  // a list of plugins to fetch and install from npm
  // format: [@org/]project[#version]
  // examples:
  //   `hyperpower`
  //   `@company/project`
  //   `project#1.0.1`
  plugins: ['hypercwd', 'hyper-search', 'hyperpower'],

  // in development, you can create a directory under
  // `~/.hyper_plugins/local/` and include it here
  // to load it and avoid it being `npm install`ed
  localPlugins: [],

  keymaps: {
    // Example
    // 'window:devtools': 'cmd+alt+o',
  },
};

Having the same exact issue on Windows 10.

Issue is most probably due to WSL, more specificly due to path not being propely converted from WSL paths to Windows paths when CreateProcess is invoked.

I also get this error, but only when a process is running in the current tab. It might have something to do with hypercwd not being able to access the CWD because the process is running.

this happens with cmder under hyper in Windows - not under WSL too.

This happens to me too. Exactly the same as @cicorias - The cause is only when my active terminal is one that has a running process (e.g. quasar dev, or while doing a npm install - so when it isn't ready to take another command).

same as 3.0.0 c8

I am running Hyper on WSL, and I was able to fix this error by taking out hypercwd from my plugins list.

Same error here

Can confirm the same issue is still occurring on Windows 10, Hyper 3.0.2 (Canary).

Same error

I'm having the same error - I removed hypercwd and didn't get results. All new tab/split window functionality results in the above.


containerd-stress - is the binary messed up?

Description
When running charmed-kubernetes, I get the error
containerd resource binary containerd-stress failed a version check
which gives an exit error '2' when trying to run.
I dunno if this is a problem with juju or containerd, but I'll post on both forums.
Steps to reproduce the issue

$juju deploy charmed-kubernetes --overlay canal-overlay.yaml --channel latest/stable ignore-loose-rpf
juju status
error shows up

Describe the results you received and expected
Charmed kubernetes properly creating the worker and controller
What version of containerd are you using?
containerd containerd.io 1.7.19 2bf793ef6dc9a18e00cb12efb64355c2c9d5eb41
Any other relevant information
$ containerd --version
containerd containerd.io 1.7.19 2bf793ef6dc9a18e00cb12efb64355c2c9d5eb41

$ runc --version
runc version 1.7.19
commit: v1.1.13-0-g58aa920
spec: 1.0.2-dev
go: go1.21.12
libseccomp: 2.5.5

$ crictl info
WARN[0000] runtime connect using default endpoints: [unix:///run/containerd/containerd.sock unix:///run/crio/crio.sock unix:///var/run/cri-dockerd.sock]. As the default settings are now deprecated, you should set the endpoint instead.
ERRO[0000] validate service connection: validate CRI v1 runtime API for endpoint "unix:///run/containerd/containerd.sock": rpc error: code = Unavailable desc = connection error: desc = "transport: Error while dialing: dial unix /run/containerd/containerd.sock: connect: permission denied"
ERRO[0000] validate service connection: validate CRI v1 runtime API for endpoint "unix:///run/crio/crio.sock": rpc error: code = Unavailable desc = connection error: desc = "transport: Error while dialing: dial unix /run/crio/crio.sock: connect: no such file or directory"
ERRO[0000] validate service connection: validate CRI v1 runtime API for endpoint "unix:///var/run/cri-dockerd.sock": rpc error: code = Unavailable desc = connection error: desc = "transport: Error while dialing: dial unix /var/run/cri-dockerd.sock: connect: no such file or directory"
FATA[0000] validate service connection: validate CRI v1 runtime API for endpoint "unix:///var/run/cri-dockerd.sock": rpc error: code = Unavailable desc = connection error: desc = "transport: Error while dialing: dial unix /var/run/cri-dockerd.sock: connect: no such file or directory"

$ uname -a
Linux area51 6.8.0-38-generic #38-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun  7 15:25:01 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Show configuration if it is related to CRI plugin.
No response

containerd-stress is not a required part of containerd; it's a development program for stress-testing.
The containerd project doesn't directly package containerd for juju or charmed-kubernetes.  Since the error shows up in juju status, have you rather than containerd have you reached out to the juju or charmed-kubernetes projects?
You can also look at the containerd log (journalctl -u containerd.service if you're using systemd, for example) to see if there are errors there.


added more type hints

I'm interested in contributing to this project, I was very glad to see that hbmqtt was getting some much needed love :)
I used this opportunity to get familiar with the internals of the code base, but at the same time I found it useful to add more and more type hints as I was exploring. I'm sure there will be some mistakes here and there, some of them were definitely "best guesses".
Just within these added hints alone, it has already high lighted some areas that could already be tightened up, so I think it is definitely worth the effort for adding as much hinting as possible

@vasdee thanks! This is awesome.
Looking through it might take some time. Can you have a look at the a filing CI pipeline?

Please run mypy amqtt and have a look. Please note that the master branch has 111 errors from mypy and adding more types, makes mypy check more of the code - so the number of errors increased.
You don't have to get the errors down to zero to get this MR into a merge-able territory - just check the mypy output for potential wrong annotations.

This is about all the type hinting that I can add, and I can't fix all the mypy errors until work is done to remove the excessive use of None
Most of the errors now are because nearly every attribute is an Optional so naturally, accessing an attribute of a None type raises an issue with mypy.
I think this is a good thing, it highlights that cleanup work can be done to make it cleaner :)

Any progress on getting this merged? I feel it is at a pretty good state and has given me some clean up ideas to further reduce the mypy errors.

looks like there is some failing tests, which I haven't figured out why they would be failing with type hint additions. This doesn't happen on Master so i'm not sure what is going on..
FAILED tests/test_broker.py::test_client_publish_acl_permitted - asyncio.exceptions.TimeoutError


EditorServices.log grows with not configured verbose entries to GB

The file %localappdata%/EditorServices.log grows up to multiple GB in a few weeks.
This can be reproduced by following steps:

Open VSCode with an AL workspace of your choice
Open a new VSCode window <Ctrl> <Shift> N and load another AL workspace with at least one AL file opened as tab.

Now the EditorServices.log contains a lot of verbose output (including source from your AL files). Here some lines:
11/10/2021 15:32:37 [/1] Editor Services Host v<IP_ADDRESS>22 starting (pid 29384)...
11/10/2021 15:32:37 [/1] Editor Services Host started!
11/10/2021 15:32:37 [/6] Process:

 initialize
11/10/2021 15:32:37 [/6] Processing initialize took 0 seconds
11/10/2021 15:32:38 [/8] Process:

 workspace/didChangeConfiguration
11/10/2021 15:32:39 [/8] Processing workspace/didChangeConfiguration took 0 seconds
11/10/2021 15:32:39 [/8] Process:

 textDocument/didOpen
11/10/2021 15:32:39 [/8] Processing textDocument/didOpen took 0 seconds
11/10/2021 15:32:39 [/8] Process:

 al/setActiveWorkspace
11/10/2021 15:32:39 [/8] Processing al/setActiveWorkspace took 0 seconds
11/10/2021 15:32:39 [1/14] Parsing Codeunit 50012 "CCO0 SRV Mgt.".
11/10/2021 15:32:39 [1/14] Parsing Codeunit 50012 "CCO0 SRV Mgt.".
11/10/2021 15:32:40 [/9] Parsing TableExtension 50087 "CCO0 Warehouse Receipt Line".
11/10/2021 15:32:40 [/9] Parsing Codeunit 50001 "CCO0 Availability Management".
11/10/2021 15:32:40 [/9] Parsing Codeunit 50016 "CCO0 Barcode Mgt.".

...
 textDocument/documentSymbol
11/10/2021 15:32:50 [2/18] Binding property 'Extensible = true;' declared on 'Enum "CCO0 Overdelivery"'.
11/10/2021 15:32:50 [3/4] Binding property 'Extensible = true;' declared on 'Enum "CCO0 On Hold Status"'.
11/10/2021 15:32:50 [4/23] Binding property 'Extensible = true;' declared on 'Enum "CCO0 Mobile Status"'.
11/10/2021 15:32:50 [5/10] Binding the members for Codeunit "CCO0 Availability Management".
11/10/2021 15:32:50 [6/25] Binding the members for TableExtension "CCO0 Sales Line".

...
11/10/2021 15:32:51 [59/14] Binding property 'DataClassification = ToBeClassified;' declared on '"Source Code"'.
11/10/2021 15:32:51 [59/14] Binding property 'TableRelation = IF ("Source Type" = CONST(Contact)) Contact."No."
            ELSE
            IF ("Source Type" = CONST(Customer)) Customer."No."
            ELSE
            IF ("Source Type" = CONST(Vendor)) Vendor."No."
            ELSE
            IF ("Source Type" = CONST(Bank)) "Bank Account"."No.";' declared on '"Source Code"'.
11/10/2021 15:32:51 [64/26] Binding property 'ApplicationArea = All;' declared on 'Field "CCO0 Indoor Sales User": Code[20]'.

and so on.
The Editor Services Log Level ist set to Normal and if you keep working in one instance of VSCode the log file is not available at all.
-- System Information --
AL Language VSCode Extension 8.1.540594
Microsoft (R) AL Compiler version <IP_ADDRESS>22
VSCode 1.62.1

These kind of detailed settings should only be logged if Verbose. Are you sure you do not have a workspace or folder based settings that overrides it.

Yes,

No entry in global settings
No entry in workspace for project A
No entry in workspace for project B

So everything defaults to Normal

If you open Project A in a single windows --> No output
If you open Project B in a single windows --> No output
If you open Project A and then B in a second window --> Output from B
If you open Project B and then A in a second window --> Output from A

You mean a second instance of VSCode as the term "second window"? Or these are folder settings rather than workspace?

Ok, thanks. We will investigate it. The AL language server is an exe (EditorHost.exe) opened by VsCode. The log verbosity option is provided as a command line argument to this instance as opposed to other AL options. So this option is global for the lifetime of the exe. And there is only one EditorServices.log that can be used by one language server executable instance as it is designed today.


Track Docker Version in /validate

We require at least docker 1.3.x, the /validate handler should test this, by asking the kubelet what docker version is running.

Do you have any preferences how exactly it should look like?
IIUC, currently there is an entry like that for each node:
{
"component": "node-0",
"health": "success",
"msg": "ok",
"err": "nil"
}
Should this be extended to contain docker version for a given Kubelet (either as part of msg or as an additional field)? Or do you have anything else on your mind? [I'm happy to work on this issue]

I think that it would be something like:
{
"component": "node-0",
"health": "failure",
"msg": "docker version is too old (1.2.1)",
"err": "nil"
}

But I don't feel too strongly.
(and thanks for taking on the issue!)
--brendan

fixed by #4117


Editing an item will duplicate it, one has the old name and the other one the new name

could also be a client error. i just know that that's what shows up in the app after editing an item

This is caused by editing the _id field, the _id field is a unique id number per entry generated by neDB, we use the to reference the entry in other tables.
Issue caused by f763daa

@ludvigbruchmann what do you mean by editing the _id field?

In the referenced commit you update the _id field, hard to add code snippets on mobile but it's line 171

isn't the first argument in the update method (the one on line 171), the search query? The second object that you pass is what gets actually updated
https://github.com/louischatriot/nedb#updating-documents

Oh yeah you're right, then I have no idea what causes it, @johannesmols can you dump your db file before and after you edit an item


Platform argument not followed unless repo URL matches satisfies the string pattern

🔙 Regression
Platform config value is ignored unless the repository URL matches the string pattern in the platform ISettingsReader implementation.
Old (and correct) behavior
Doesn't seem to have worked.
Current behavior
Platform is ignored unless Repository URL matches the string pattern.
Reproduction steps
nukeeper repo https://myserver/projects/org/reponame token fails because the URL doesn't match any of the platform ISettingsReader implementation.
nukeeper repo --platform Bitbucketlocal https://myserver/projects/org/reponame token  fails because there is no logic to short circuit the string pattern matching if platform is specified.
Configuration
Version: 0.21.2
Platform if applicable:

[X] :hammer_and_wrench: NuKeeper CLI
[X] :sparkles: GitHub
[X] :robot: AzureDevops
[X] :checkered_flag: Bitbucket
[X] :earth_americas: Gitlab
[X] :tv: Gitea
[X] :whale: Docker

See #590 also.

I can confirm this as well.
I've been trying to get it to work on version 0.21.3 with gitlab.
Without any flag, I get the error "Unable to work out which platform to use [URL] could not be matched"
At first I thought I was setting the platform flag incorrectly, but if you give it an invalid option it prints out "Invalid value specified for platform. Allowed values are: GitHub, AzureDevOps, Bitbucket, BitbucketLocal, GitLab, Gitea"
However, even with a valid platform flag, I still get the same original error.
Changing my URL (via a hosts entry in Windows) to include "gitlab" in the URL then allows it to move forward.

There is currently an issue with our local Bitbucket installation, which prevents me from testing and I'm also not sure if I catched the root of the issue. Please review and test.
https://github.com/NuKeeperDotNet/NuKeeper/pull/821

Also observed this behaviour, great that you're fixing it!

My 2 cents: It seems to be ignored in the "repo" mode

@ElanHasson close the issue?

I haven't had a chance to revisit this. I'll close for now and reopen if I see it again


Codgen Fixes (Select and Recursion)

Fixes the select arity, select true, and recursion issues from #73
Fixes an issue where funclets that return different types couldn't be composed
Recursion needs more testing with sophisticated front-end tests. Jump is inlined, which is what I intend for how the front end uses it, but maybe isn't correct for the general use case?
Calls and selects push a serialized join to the join stack and are inlined on the "fan out", returns are handled by popping off the stack on the "fan in"
Some fixes to the front end
Adds more tests, some front-end problems identified but not fixed
Codegen now essentially performs a depth-first traversal of nodes in a function, inlining each funclet as we go deeper. New split points and join points are created to carry more information about what tail edge the join point and split point are used for. Inline join will basically behave like a serialized join in almost all cases (it depends on the tail edge)
It is expected that at most one inline join will be used per funclet for the funclet's respective tail edge
All generated functions now return the same thing as the pipeline output. We use the pipeline output when generating return tail edges to panic for any funclet whose returns do not match the output types of the pipeline that are called without a continuation.

So many fixes!  Looks wonderful!

One comment I did want to bring up, actually, is that I noticed that you changed Box<[...]> to &[...] when dealing with input types, which concerned me slightly.  I was curious why you wanted to get rid of the smart pointer here?


fix(Designer): Multi select drop down is not showing options in new designer

Please check if the PR fulfills these requirements

[X] The commit message follows our guidelines

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
fixes #3931

What is the current behavior? (You can also link to an open issue here)
dropdown options select disappears after coming back to the screen in some scenarios

What is the new behavior (if this is a feature change)?
dropdown options select remains

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)

Please Include Screenshots or Videos of the intended change:

https://github.com/Azure/LogicAppsUX/assets/144840522/25184672-ad73-4d02-8867-a22e41569608

@Elaina-Lee I have already pulled the version 2.106 which has this fix in. However, the issue still persists.


tweak LDFLAGS

Enable -Wl,search_paths_first for all formulae on macOS to prefer to
using our portable static libraries.
Do not pass -Wl,search_paths_first on Linux. It is an invalid flag for
gcc, which always prefers to paths specified by -L already.
Refactor PortableFormulaMixin#install.

@mistydemeo As I don't have access to Mac OS X 10.5 and 10.4. Would you mind to test this PR, so I didn't accidentally break anything? Thanks 🙇


⚠ Turnos 24x7 has degraded performance

In acafbc8, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 930 ms

Resolved: Turnos 24x7 performance has improved in d533ce8.


Kazi: Completed About Me/Experiences Section

Fixes ENG-141

Completed experiences section that displays what my most relevant experiences are

Approved, but left a comment.


[Feature Request] Hunger bar via token resource

Hi! Much like how you can set health to be displayed on a token, would it be possible to make a hunger version of that?
0 hunger would be a full bar, and max hungry would be an empty bar. I think it would be a super cool idea! Players can see the bar and see "Oh, my guys a little peckish maybe we should stop for a snack" etcetc.

Yep! I love this idea and it's going on the list.


Default Response Object in variation tests

I'm trying to create variation tests for an OpenAPI where we define default responses for all error (not 2xx) codes.
Are default responses ssupported in any way? I guess statusCode contractTests would become quite problematic, but the other tests should be valid.
If a variation with "openApiResponse": "default" is set, examples end up in the postman collection, but no tests are created for it.
Any strategy/workaround without enumerating all the possible error codes in the openAPI spec and in the portman-config?

Example of a openapi spec:
openapi: 3.1.0

info:
  title: test API
  description: |
    The following document contains the documentation of test API
  version: 1.0.0

servers:
  - url: https://localhost
    description: local test environment

paths:
  /persons:

    get:
      tags:
        - persons
      summary: Get all persons.
      description: |
        Return all the data of the persons registered by the partner to the Platform.
      operationId: getPersons
      responses:
        '200':
          description: Persons retrieved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PersonGetAllResponse'
        default:
          description: Error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PersonErrorResponse'

components:
  schemas:
    PersonGetAllResponse:
      title: Persons
      type: object
      properties:
        persons:
          $ref: '#/components/schemas/PersonCreationResponseArray'
    PersonCreationResponseArray:
      title: Person Response Array
      type: array
      items:
        $ref: '#/components/schemas/PersonCreationResponse'
    PersonCreationResponse:
      title: Person
      allOf:
        - type: object
          required:
            - personId
          properties:
            personId:
              type: string
              format: uuid
              description: Unique identifier of a person.
              example: '123e4567-e89b-12d3-a456-426614174000'
        - $ref: '#/components/schemas/PersonCreationRequest'
    PersonCreationRequest:
      title: New person
      type: object
      required:
        - personId
        - firstName
        - lastName
      properties:
        personId:
          type: string
          description: Unique identifier of a person.
          example: '123e4567-e89b-12d3-a456-426614174000'
        firstName:
          type: string
          description: First name.
          example: 'John'
        lastName:
          type: string
          description: Last name.
          example: 'Doe'
    PersonErrorResponse:
      required:
        - errors
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                description: Error code.
                enum:
                  - PERSON_NOT_FOUND
                  - INVALID_FIELD_FORMAT
                  - MISSING_HEADER
                  - INVALID_HEADER_CONTENT
                  - PERSON_ALREADY_EXISTS
                example: PERSON_NOT_FOUND
              message:
                type: string
                description: Human readable representation of the error.
                example: Could not find person '1234'

Partial portman-config:
 "variationTests": [
      {
        "openApiOperation": "*::/*",
        "openApiResponse": "default",
        "variations": [
          {
            "name": "Default errors",
            "fuzzing": [
              {
                "requestBody": [
                  {
                    "maxLengthFields": {
                      "enabled": true
                    },
                    "maximumNumberFields": {
                      "enabled": true
                    },
                    "minLengthFields": {
                      "enabled": false
                    },
                    "minimumNumberFields": {
                      "enabled": true
                    },
                    "requiredFields": {
                      "enabled": true
                    }
                  }
                ],
                "requestQueryParams": [
                  {
                    "maxLengthFields": {
                      "enabled": true
                    },
                    "maximumNumberFields": {
                      "enabled": true
                    },
                    "minLengthFields": {
                      "enabled": false
                    },
                    "minimumNumberFields": {
                      "enabled": true
                    },
                    "requiredFields": {
                      "enabled": true
                    }
                  }
                ]
              }
            ],
            "tests": {
              "contractTests": [
                {
                  "statusCode": {
                    "enabled": true
                  },
                  "contentType": {
                    "enabled": true
                  },
                  "jsonBody": {
                    "enabled": true
                  },
                  "schemaValidation": {
                    "enabled": true
                  },
                  "headersPresent": {
                    "enabled": true
                  }
                }
              ]
            }
          }
        ]

Partial resulting postman collection
        {
          "id": "ea15058f-acc5-4fab-a686-b5f96411021e",
          "name": "persons Variations",
          "item": [
            {
              "id": "4f70e408-bd48-4466-9ced-419085f558ac",
              "name": "Update a person.[Default errors][required personId]",
              "request": {
                "name": "Update a person.[Default errors][required personId]",
                "description": {
                  "content": "Update the data of an existing person.\n",
                  "type": "text/plain"
                },
                "url": {
                  "path": [
                    "persons",
                    ":personId"
                  ],
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "disabled": false,
                      "description": {
                        "content": "(Required) Unique identifier of a person.",
                        "type": "text/plain"
                      },
                      "type": "string",
                      "value": "{{personId}}",
                      "key": "personId"
                    }
                  ]
                },
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "PUT",
                "body": {
                  "mode": "raw",
                  "raw": "{\n    \"firstName\": \"John\",\n    \"lastName\": \"Doe\",\n    \"emailAddress\": \"john.doe@example.com\",\n    \"dateOfBirth\": \"2000-07-21\",\n    \"placeOfBirth\": {\n        \"city\": \"Rome\",\n        \"country\": \"IT\"\n    },\n    \"citizenship\": \"IT\",\n    \"fiscalCode\": \"RSSPPP00L21H501U\",\n    \"gender\": \"MALE\",\n    \"homeAddress\": {\n        \"line1\": \"3972 Eagles Nest Drive\",\n        \"postalCode\": \"00152\",\n        \"city\": \"Placerville\",\n        \"country\": \"IT\",\n        \"line2\": \"Apt. 123\",\n        \"state\": \"Italy\"\n    },\n    \"domicileAddress\": {\n        \"line1\": \"3972 Eagles Nest Drive\",\n        \"postalCode\": \"00152\",\n        \"city\": \"Placerville\",\n        \"country\": \"IT\",\n        \"line2\": \"Apt. 123\",\n        \"state\": \"Italy\"\n    },\n    \"phoneNumber\": \"+399991234567\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                }
              },
              "response": [
                {
                  "id": "9fa1c80d-c015-42e9-ace0-c37798181df0",
                  "name": "Person's data updated.",
                  "originalRequest": {
                    "url": {
                      "path": [
                        "persons",
                        ":personId"
                      ],
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "disabled": false,
                          "description": {
                            "content": "(Required) Unique identifier of a person.",
                            "type": "text/plain"
                          },
                          "type": "any",
                          "value": "123e4567-e89b-12d3-a456-426614174000",
                          "key": "personId"
                        }
                      ]
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      }
                    ],
                    "method": "PUT",
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"personId\": \"123e4567-e89b-12d3-a456-426614174000\",\n  \"firstName\": \"John\",\n  \"lastName\": \"Doe\",\n  \"emailAddress\": \"john.doe@example.com\",\n  \"dateOfBirth\": \"2000-07-21\",\n  \"placeOfBirth\": {\n    \"city\": \"Rome\",\n    \"country\": \"IT\"\n  },\n  \"citizenship\": \"IT\",\n  \"fiscalCode\": \"RSSPPP00L21H501U\",\n  \"gender\": \"MALE\",\n  \"homeAddress\": {\n    \"line1\": \"3972 Eagles Nest Drive\",\n    \"postalCode\": \"00152\",\n    \"city\": \"Placerville\",\n    \"country\": \"IT\",\n    \"line2\": \"Apt. 123\",\n    \"state\": \"Italy\"\n  },\n  \"domicileAddress\": {\n    \"line1\": \"3972 Eagles Nest Drive\",\n    \"postalCode\": \"00152\",\n    \"city\": \"Placerville\",\n    \"country\": \"IT\",\n    \"line2\": \"Apt. 123\",\n    \"state\": \"Italy\"\n  },\n  \"phoneNumber\": \"+399991234567\"\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "body": "{\n  \"citizenship\": \"IT\",\n  \"dateOfBirth\": \"2000-07-21\",\n  \"emailAddress\": \"john.doe@example.com\",\n  \"firstName\": \"John\",\n  \"fiscalCode\": \"RSSPPP00L21H501U\",\n  \"lastName\": \"Doe\",\n  \"personId\": \"123e4567-e89b-12d3-a456-426614174000\",\n  \"placeOfBirth\": {\n    \"city\": \"Rome\",\n    \"country\": \"IT\"\n  },\n  \"gender\": \"MALE\",\n  \"homeAddress\": {\n    \"line1\": \"3972 Eagles Nest Drive\",\n    \"postalCode\": \"00152\",\n    \"city\": \"Placerville\",\n    \"country\": \"IT\",\n    \"line2\": \"Apt. 123\",\n    \"state\": \"Italy\"\n  },\n  \"domicileAddress\": {\n    \"line1\": \"3972 Eagles Nest Drive\",\n    \"postalCode\": \"00152\",\n    \"city\": \"Placerville\",\n    \"country\": \"IT\",\n    \"line2\": \"Apt. 123\",\n    \"state\": \"Italy\"\n  },\n  \"phoneNumber\": \"+399991234567\"\n}",
                  "cookie": []
                }
            ...
          ],
          "event": []

hi @Giackgamba
At first looks, it seems that "default" is not supported.
We could investigate to bring support for it, with the assumption that you would have to define the expected "statusCode" since we cannot know what is expected statusCode that the contract should be tested against.
Let me look into it some more and report back and most likely ask some more questions about your expected behavior.
The fact that you shared already an example is really helpful.

hi @Giackgamba
While looking into bringing support for the "default" response, I took your example but it does not seem to generate any response in the "Variation test" folder?!

Do you experience the same?

You are right, indeed the provided MVE does not create variations tests.
I'll try to conjure up an example that does, because I just retried and my complete configuration does that (but it's too complex and protected to be shared).

@Giackgamba I want to be able to reproduce it, so if you have an easy way with 1 default response to reproduce it that would be sufficient. It would reduce the time needed to get the setup going and make it easier to develop a fix.


Development: Improve usage of nullability annotations

Checklist
General

[x] I chose a title conforming to the naming conventions for pull requests.

Server

[x] I followed the coding and design guidelines.

Motivation and Context
This PR aims to introduce more consistency in the usage of Nullability annotations.
Description
Currently, three different nullability-annotations were used in the code base, with javax.validation.constraints.NotNull being used the most. This PR removes the usages of other annotation vendors in favor of javax.validation.constraints.NotNull. If we want to change the default annotation vendor in the future (e.g. to the checker framework), this consistency will make it easy to perform the switch. For more details on the different annotations see this Stackoverflow post.
This PR also removes the usage of nullability-annotations on void methods.
Steps for Testing
code review
Review Progress
Code Review

[ ] Review 1
[ ] Review 2

Codecov Report

Merging #6019 (829e100) into develop (2457dfc) will increase coverage by 0.00%.
The diff coverage is n/a.

Additional details and impacted files
@@            Coverage Diff             @@
##             develop    #6019   +/-   ##
==========================================
  Coverage      79.92%   79.93%
- Complexity     12379    12380    +1
==========================================
  Files           2126     2126
  Lines          84523    84523
  Branches       12677    12677
==========================================
+ Hits           67558    67561    +3
+ Misses          9430     9427    -3
  Partials        7535     7535

Impacted Files
Coverage Δ

...w1/artemis/domain/ProgrammingExerciseTestCase.java
95.23% <ø> (ø)

...m/in/www1/artemis/repository/CourseRepository.java
91.89% <ø> (ø)

...tum/in/www1/artemis/repository/UserRepository.java
91.89% <ø> (ø)

...ww1/artemis/service/QuizExerciseImportService.java
91.25% <ø> (ø)

...rvice/connectors/BitbucketBambooUpdateService.java
77.84% <ø> (ø)

...mming/ProgrammingExerciseParticipationService.java
72.72% <ø> (ø)

...e/tutorialgroups/TutorialGroupScheduleService.java
78.66% <ø> (ø)

...1/artemis/web/rest/errors/ExceptionTranslator.java
65.95% <ø> (ø)

...va/de/tum/in/www1/artemis/service/FileService.java
80.58% <0.00%> (+0.73%)
:arrow_up:

Flag
Coverage Δ

client
75.77% <ø> (ø)

server
84.54% <ø> (+<0.01%)
:arrow_up:

Continue to review full report at Codecov.

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


download dataset/collection as bagit

there is now an optional parameter to download dataset/collection as a bagit zip file.
Description

Review Time Estimate

[ ] Immediately
[ ] Within one week
[X] When possible

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My change requires a change to the documentation.
[X] I have updated the CHANGELOG.md.
[ ] I have signed the CLA
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

To test this:

create a dataset
add one or more files/folders to the dataset
create collection
add one ore more datasets + collections to collection

download using curl:
curl -o bagit.zip http://localhost:9000/api/collections/YOURID/download\?bagit\=false\&compression\=1\&key\=r1ek3rs

output looks approximately like:
Archive:  bagit.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
  3729064  01-30-2022 22:11   test_col/test_ds/folder1//DJI_0034.JPG
  3977058  01-30-2022 22:11   test_col/test_ds/folder1//DJI_0035.JPG
---------                     -------
  7706122                     2 files

change the bagit=true to download as bagit file and output looks like:
Archive:  bagit.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
      334  01-30-2022 22:22   test_col/test_col_info.json
       70  01-30-2022 22:22   test_col/test_col_metadata.json
      285  01-30-2022 22:22   test_col/test_ds/test_ds_info.json
        3  01-30-2022 22:22   test_col/test_ds/test_ds_metadata.json
      307  01-30-2022 22:22   test_col/test_ds/folder1//DJI_0034.JPG_info.json
        3  01-30-2022 22:22   test_col/test_ds/folder1//DJI_0034.JPG_metadata.json
  3729064  01-30-2022 22:22   test_col/test_ds/folder1//DJI_0034.JPG
      307  01-30-2022 22:22   test_col/test_ds/folder1//DJI_0035.JPG_info.json
        3  01-30-2022 22:22   test_col/test_ds/folder1//DJI_0035.JPG_metadata.json
  3977058  01-30-2022 22:22   test_col/test_ds/folder1//DJI_0035.JPG
       55  01-30-2022 22:22   test_col/bag-info.txt
      250  01-30-2022 22:22   test_col/bagit.txt
      524  01-30-2022 22:22   test_col/manifest-md5.txt
      139  01-30-2022 22:22   test_col/tagmanifest-md5.txt
---------                     -------
  7708402                     14 files

I have tested this and it works as described. Marking this approved.


HRESULT_FROM_WIN32: Replace HTML escapes in the example

I noticed that this example has some HTML escapes left over so I removed them so that the example renders properly.

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


WPF UI testing, can not attach to new open window

Hi, I trying to add UI testing using Appium and WinAppDriver, and it works.
I have created small simple WPF project, and the app starts, and clicks on button located on MainWindow.
However, when after clicking the first button on MainWindow, nothing ever happens on second window, since it failed to find element using xpath.
I have read FAQ, seen attaching samples to existing windows, but it just won't work.
I have pushed my small app to my GitHub repository, I you could take a minute to give me some input on what I'm doing wrong?
https://github.com/BlagoCuljak/WPFUnitTesting

Hi Blago,
have you tried using the get or post windows handle api call?
POST | /session/:sessionId/window
GET | /session/:sessionId/window/handles
Take a look, it sounds like your screens are confused as to which window to be focusing. you may have to update it manually.

@KitoCoding thanks for the answer, do you have sample code where should I use handle api code... I'm pretty new at this.

First before we go down this road. What is the current windowsHandle before and after you click on the element to pop open the window?
var foo = driver.getWindowHandles();

I looked at the sample WPF application, you are creating a separate window after every click, it does not come in tree structure because of which WAD is not able to access the element in second window. If you want your application this way, then you need to use desktop session, you will get info in wiki
@KitoCoding : The window handle will always come as 0, in his case.


Compatible in single player

Make this mod working in single player, with carpet bot, if it's possible ?

I'm sorry, but since this mod is designed to run purely on the server end, I will not be supporting this as of right now. I may consider coming back to this later, though.