Upgrading system Go version does not trigger regeneration of system environment file (Homebrew)

Go1.4.1 installed via Homebrew on Mac OS X 10.9.5 Mavericks
Installed gvm via gvm-installer script.
$brew update && brew upgrade to Go1.4.2
$gvm use system
$go env
go: cannot find GOROOT directory: /usr/local/Cellar/go/1.4.1/libexec
Uh-oh. :weary: Let's investigate...
Homebrew upgrade changes the symlink:
/usr/local/bin/go -> ../Cellar/go/1.4.1/bin/go
becomes
/usr/local/bin/go -> ../Cellar/go/1.4.2/bin/go
Result: gvm system $GOROOT breaks
$vim $HOME/.gvm/environments/system
# Automatically generated file. DO NOT EDIT!
export GVM_ROOT; GVM_ROOT="/.../.gvm"
export gvm_go_name; gvm_go_name="system"
export gvm_pkgset_name; gvm_pkgset_name="global"
export GOROOT; GOROOT=""/usr/local/Cellar/go/1.4.1/libexec""
export GOPATH; GOPATH="/.../.gvm/pkgsets/system/global"
export PATH; PATH="/.../.gvm/pkgsets/system/global/bin:"/usr/local/Cellar/go/1.4.1/libexec"/bin:/bin:$PATH"

Disregard warning; edit "1.4.1" to "1.4.2" on lines 5 and 7; write and exit
$gvm use system --default
Open new shell :computer:
$gvm use system
$go env
go: cannot find GOROOT directory: /usr/local/Cellar/go/1.4.1/libexec
Hmm...
Switch to gvm install...
$gvm use go1.4.2
Now using version go1.4.2
$go env
~
GOPATH="/.../.gvm/pkgsets/go1.4.2/global"
.
GOROOT="/.../.gvm/gos/go1.4.2"
~
Works. Switch back...
$gvm use system
Now using version system
$go env
~
GOPATH="/.../.gvm/pkgsets/system/global"
.
GOROOT="/usr/local/Cellar/go/1.4.2/libexec"
~
Success! system $GOROOT restored
Suggestion
How about a "$gvm rehash system" command to trigger a regeneration of the environment file (defaults to system with no version argument)?

The fix of this issue requires that the user does this to have all its system go environment fixed:
# gvm use go1.4.3
# gvm use system

The go1.4.3 referenced above may be any other go that you have installed on your system via gvm. In essence, you just have to switch out of system go and then, switch back in.
The environment will be sanitised, and if your system go was updated, gvm will update its system go environment too, on the sanitise process...


Add subscription authorization context example

Has any example how can I use urql with JWT + Subscription? With option to reconnect, like apollo client do?
I've see the subscription example but I don't know what is the right way to pass the Authorization context.

Hey,
Since we leave the option to the user to use the subscription client they prefer I’ll show an example of the one we use in our examples
‘’’
const wsClient = new SubscriptionClient(ws://localhost:5000/, {
reconnect: true,
connectionParams: {
// Pass any arguments you want for initialization
authToken: myToken
}
});
‘’’

Closing this, since the answer above seems to be what you're looking for? Generally, we don't develop subscription-transport-ws, so we can't really point out the specifics on how to use it necessarily. But I hope this does answer your question, but let us know if it doesn't.
For questions unrelated to urql and its development, maybe our Spectrum would be a better destination?


make sure reference is always reported

Seems good to me. I thought it was already merged. I have no problems if it were merged now.


i love emortalmc

i am writing this because emortalmc is my favorite minecraft server.
it contains many minigames, but marathon must be one of my favorite games. this is because of the infinity aspect of said game. i think it adds to the experience a lot. i like it.
anyway thank you for reading

EmortalMC is also my favourite server


yocto-based-OS-image: Modify to match fleet versioning

When releasing into a fleet a version specified in a contract,
the initial commit is M.m.p (+rev0 is omitted) and subsequent commits are of
the form M.m.p+revN where N starts at 1, as long as the contract version
remains the same.
This change uses the same convention for OS repositories so that the
commit tag and the fleet hostapp releases match.
Change-type: patch
Signed-off-by: Alex Gonzalez<EMAIL_ADDRESS>

@balena-ci rebase

Test cases:

[ ] Updating meta-balena tags with M.m.p
[ ] Updating device repository add rev1
[ ] Subsequent updates increment revisions
[ ] Updates on ESR branches increments patch numner

@balena-ci rebase

@balena-ci rebase

@balena-ci retest


feat: Add smart contract verification

Description
resolves #253
resolves #667
Demo
This is a simple happy path on how to verify contract
All of the AEstudio sample examples should be tested @Liubov-crypto
https://github.com/aeternity/aescan/assets/15363559/b3f87649-f0ec-48d3-8e41-5fc653a6446b
Checklist:

[x] I have read and followed the Contributing Guide
[x] add verification form
[x] ~add captcha @michele-franchi  @janmichek~
[ ] update terms of service @michele-franchi
[x] test with multifile contract @janmichek
[x] remove workaround logic before release https://github.com/aeternity/aescan/issues/667

For me it trows an error:

https://github.com/aeternity/aescan/assets/69896204/7884ee76-086d-42b8-b575-9e11577a4e44
maybe it was because I was not able to create and upload a proper file with smart contract with .aes at the end.
I tried different redactors but can't do it on my Mac :(

For me it trows an error:

2024-02-<IP_ADDRESS>.mov
maybe it was because I was not able to create and upload a proper file with smart contract with .aes at the end. I tried different redactors but can't do it on my Mac :(

I fixed that.
I found out there is a various error message structure form verifier service.
It works, but it's kinda implementation workaround.
I created an issue to improve it. It would be nice to process it before the release https://github.com/aeternity/aescan/issues/667

@michele-franchi thanks for feedback. Working on it.
I fixed the folder drop. However there is some service issue.
Reported here
https://github.com/aeternity/smart-contract-verifier/issues/44

I would keep consistency in the required messages:

I agree it was an inconsistent and bit funky. I aligned it in a different way

I tried, but it doesn't work for me, probably because I can't create .aes file on my Mac:
https://github.com/aeternity/aescan/assets/69896204/0c579a7b-54b3-400c-9ca4-750a5c86513e
@janmichek could you please suggest me some other way to verify it?

I tried, but it doesn't work for me, probably because I can't create .aes file on my Mac:
2024-03-<IP_ADDRESS>.mov
@janmichek could you please suggest me some other way to verify it?

There was a small bug with selecting entry file through direct input. I fixed that
please also test drag and drop functionality
https://www.google.com/search?client=firefox-b-d&q=create+custom+suffix+text+file+on+mac

Finally I was able to do smart contracts verification. It's working for me well on testnet. Also drag and drop functionality is working as expected. LGTM


Make DecodedParams serializable

I would like to be able to serde_json serialize/deserialize DecodedParams struct.
This would allow me to store user transaction inputs in my database.
I understand this also implicates serializing the Value variants which could potentially be a tough task.

Hey @limpit666,
I guess serializing and deserializing DecodedParams could be implemented only in that struct. I did some experiments here serializing/deserializing Value to its hex encoding.
So serde_json would output something like:
[
  {
    "param": {
      "name": "deadline",
      "type": "uint256"
    },
    "value": "0000000000000000000000000000000000000000000000000000000062296604"
  },
  {
    "param": {
      "name": "data",
      "type": "bytes[]"
    },
    "value": "0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000124b858183f000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000ace4b34cbfa95d2a7850eb74e45437d64035d5800000000000000000000000000000000000000000000000000e16bb15ad46c73000000000000000000000000000000000000000000000000008672fe3d30cea30000000000000000000000000000000000000000000000000000000000000042c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20001f4a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480027103819f64f282bf135d62168c1e513280daf905e0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
  }
]

I'm still working on it. I think this would be a good addition to the library.

I'm currently serializing the values like this in my server:

#[derive(Debug, Clone, Eq, PartialEq, Serialize, Deserialize)]
pub struct ContractInputValue {
    #[serde(skip_serializing_if = "Option::is_none")]
    uint: Option<U256>,
    #[serde(skip_serializing_if = "Option::is_none")]
    int: Option<U256>,
    #[serde(skip_serializing_if = "Option::is_none")]
    address: Option<H160>,
    #[serde(skip_serializing_if = "Option::is_none")]
    bool: Option<bool>,
    #[serde(skip_serializing_if = "Option::is_none")]
    string: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    array: Option<Vec<ContractInputValue>>,
    #[serde(skip_serializing_if = "Option::is_none")]
    tuple: Option<HashMap<String, ContractInputValue>>,
}

...

fn retrieve_input_value(&self, value: ethereum_abi::Value) -> Option<ContractInputValue> {
        let mut out_value = ContractInputValue {
            uint: None,
            int: None,
            address: None,
            bool: None,
            string: None,
            array: None,
            tuple: None,
        };

        match value {
            Value::Uint(val, _) => { out_value.uint = Some(val) }
            Value::Int(val, _) => { out_value.int = Some(val) }
            Value::Address(val) => { out_value.address = Some(val) }
            Value::Bool(val) => { out_value.bool = Some(val) }
            Value::String(val) => { out_value.string = Some(val) }
            Value::Array(val, _type) => {
                out_value.array = Some(Vec::new());
                for array_value in val {
                    if let Some(val) = self.retrieve_input_value(array_value) {
                        if let Some(vec) = out_value.array.as_mut() {
                            vec.push(val)
                        }
                    }
                }
            }
            Value::FixedArray(val, _type) => {
                out_value.array = Some(Vec::new());
                for array_value in val {
                    if let Some(val) = self.retrieve_input_value(array_value) {
                        if let Some(vec) = out_value.array.as_mut() {
                            vec.push(val)
                        }
                    }
                }
            }
            Value::Tuple(val) => {
                out_value.tuple = Some(HashMap::new());
                for tuple in val {
                    if let Some(val) = self.retrieve_input_value(tuple.1) {
                        if let Some(map) = out_value.tuple.as_mut() {
                            map.insert(tuple.0, val);
                        }
                    }
                }
            }
            _ => { return None; }
        }

        Some(out_value)
    }

I think it's quite similar to what you did to serialize the Abi but requires getting the 'serialize' feature for 'ethereum-types'. Effectively the hex values for numbers show up like this:
   {
      "contract":"SwapRouter02",
      "function_signature":"multicall(uint256,bytes[])",
      "user_input":[
         {
            "name":"deadline",
            "type_":"uint256",
            "value":{
               "uint":"0x622b9578"
            }
         }
      ]
   }

Your solution would probably be better than this though since my values are objects containing "" : "" rather than just "value": . I would be totally fine with having the numbers as hex strings as well.

hey @limpit666,
just letting you know that I ran into some problems while thinking about this format and I'm still working on it (kinda slowly but still).

@FelipeRosa no worries at all, I've made a workaround by serializing the types on my own but this implies I am redoing what you have already done initially to decode the params. So it's just a matter of a small performance improvement for me at the moment that can be easily solved once you allow this functionality.
I've just started implementing transaction receipt handling on my server so I might come back at you if I find any new desirable features when using decode_log_from_slice().
Cheers man, thanks for all the help.

I've just started implementing transaction receipt handling on my server so I might come back at you if I find any new desirable features when using decode_log_from_slice().

Cool 🎉
Thanks for all the feedback :)

Hi @FelipeRosa,
I'm trying to serialize the decode output to json and pass it back to nodejs, using Neon.
But I couldn't find a way to do it.
let ret_json = serde_json::to_string(&decoded_input).unwrap();      |                    --------------------- ^^^^^^^^^^^^^^ the trait serde::ser::Serializeis not implemented forDecodedParams     |                    |      |                    required by a bound introduced by this call
Any tips on how to do it properly?
Thanks!

Hey @fabiojundev,
Currently, you would have to implement something like what @limpit666 commented above.
I'm a bit short of time to work on the lib right now. Sorry for the inconvinience there.


Crash on iOS when camera permissions are denied

Hello there,
I've come across an issue which crashes the app under iOS. I've tested on the latest version 1.5.8, and as far back as 1.3.1 and the issue is there too.
To recreate this, in BarcodeScanning.Test, click the 'Open ScanPage' button.
Then when asked for camera permissions, click 'Don't Allow'.
Then click the '<' back button.
Finally, click 'Open ScanPage' again, and the app crashes, giving this error:
System.Exception: 'Could not initialize an instance of the type 'AVFoundation.AVCaptureDeviceInput': the native 'initWithDevice:error:' method returned nil. It is possible to ignore this condition by setting ObjCRuntime.Class.ThrowOnInitFailure to false.'
On this line of code:
_captureInput = new AVCaptureDeviceInput(_captureDevice, out _);
In MaciOS/CameraManager.cs
In short it seems like the crash happens when permissions have been denied and the user lands on a page with the CameraView on it.
For reference, I'm running iOS version 17.5.1 on an IPhone 12. We've had users telling us they're having this issue with our app too.
I'm not sure about a workaround at the moment, but I'm going to try only injecting the CameraView into the page if camera permissions are granted and see how that goes.

Just confirming the workaround mentioned above does work for our app!

Hello.
Yes, on iOS if the permission is denied once you have to handle the result and prompt your user to manually grant the permission in settings.
See here: https://learn.microsoft.com/en-us/dotnet/maui/platform-integration/appmodel/permissions?view=net-maui-8.0&tabs=macios#platform-differences

To avoid coupling the permissions into the client app, it would be good to add a method alongside Methods.AskForRequiredPermissionAsync called HasRequiredPermissionAsync.


Silence the "The operation completed successfully" output when running Import-RegistryFile

It would appear the simplest way to suppress this message would be to create a temporary file with New-TemporaryFile on PS5 and use the -RedirectStandardError flag on the Start-Process call.
Probably could create a similar function to create our own temporary file to backport this to PS3/4, or could test for New-TempFile and suppress for those that support the function.
"The operation completed successfully" is output to standard error (because clearly it's an error?)


Opening a Bicep file equivalent for a resource

Based on feedback in https://github.com/Azure/bicep/issues/6256 - @majorku5anagi
Related to #139
It would be great if a user could right click on a resource and then select "Open in Bicep".
What this would do is:

Grab this resource's resource id
Open a new bicep file
Run Bicep: Insert snippet from resource
Paste the output into this Bicep file.

We should only show this option if Bicep is installed.
Tagging @alex-frankel as well.

@ucheNkadiCode I would like to add maybe additional option:

Import Bicep code in active window

This way you can cherry pick and append (pile up) several resources that you want to manage into one single bicep file instead of separate files. It's the same as if you are repeatedly doing Bicep: Insert snippet manually.
Also, can this issue be moved to backlog candidate?

Oh I see what you mean, like a "Copy as Bicep Code" button. I like that better honestly. This would make it such that a user could copy multiple items to their clipboard and then paste them all throughout a Bicep File

Either in a clipboard manner or just scrolling up & down through Az Resource Manager Extension, right clicking and choosing to directly insert the code in currently opened window... like cherry picking

Hey friends, this is something that you'll be able to add from the Bicep extension once the new experience is shipped. I'm going to close this and I'll follow up with a bit more guidance on how to make this work.


Change load to return the object instead of list of objects

Refactor the load method in bigip.py so that only collections return a list. This will allow the behaviors on load to be consistent:
# Collection
pools = br.load('/mgmt/tm/ltm/pool')
for p in pools:
    for k, v in iter(p.properties.items()):
        print(k, v)

# Named Object
pool = br.load('/mgmt/tm/ltm/pool/testpool')
for k, v in iter(pool.properties.items()):
    print(k, v)

Currently, you have to manipulate the pool on load or in the loop like this:
pool = br.load('/mgmt/tm/ltm/pool/testpool')[0]
for k, v in iter(pool.properties.items()):
    print(k, v)
## OR ##
pool = br.load('/mgmt/tm/ltm/pool/testpool')
for k, v in iter(pool[0].properties.items()):
...     print(k, v)

Fixed in version 1.4.


Suggestion: Add web app properties to output

Thank you for this series of lessons. The ARM templates are just about bearable but bicep will make it all a lot easier.
At this point you could reinforce the learning, and expose the user to the webapp properties by adding it as an output.
I was going to output the hostnames but tried the whole properties object and it was so informative! I didn't realise it had a property to list the possible outbound IP addresses, very neat. I was also unaware that I could create a complex object on the fly as an output.
The line I chose to add to the end of the example script (I had followed the whole beginner bicep lesson plan so far and had minor customisations like a changed web app name):
output webAppProperties object = {
  'firewallExceptions': webAppPortalName.properties.possibleOutboundIpAddresses
  'hostname': webAppPortalName.properties.defaultHostName
}

And the useful output was:
"webAppProperties": {
        "type": "Object",
        "value": {
          "firewallExceptions": "<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>",
          "hostname": "biceptestnirgypz6nrtfm.azurewebsites.net"
        }
      }

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 3296143e-d11f-44c3-7d94-661e80ee5503
Version Independent ID: b19104d3-e48a-b02b-45fb-1b1b892606d1
Content: Tutorial - Use quickstart templates for Azure Resource Manager Bicep development - Azure Resource Manager
Content Source: articles/azure-resource-manager/templates/bicep-tutorial-quickstart-template.md
Service: azure-resource-manager
Sub-service: templates
GitHub Login: @mumian
Microsoft Alias: jgao

@tyeth - thank you for the comment.  I have updated https://docs.microsoft.com/azure/azure-resource-manager/templates/bicep-tutorial-add-outputs?tabs=azure-powershell#add-outputs.
#please-close


POA validation

From @codymccoy: "You get an index out of bounds exception on interpolatedEads[j] if j is bigger than the period of analysis.
So it seems that we would need a check somewhere that makes sure that period of analysis is greater than or equal to the future - base year."

In this instance: "I have two scenarios. one is 2022 and the other is 2026. This creates a year difference of 4 years.
The interpolatedEADs are created using the periodOfAnalysis that comes from the study properties. This value i have as 2."

this issue was fixed in https://github.com/HydrologicEngineeringCenter/fda-model/commit/7a419f8e790789c227b4bdee3ef10146a21548d9


How to build library with local model

@llhe, thanks to your wonderful work firstly.
I have some local caffemodel waiting for transformation, how can I just compile MACE+MODEL without download and md5 check?

@peyer

you can just switch the http url to a local file path (absolute path or relative to the work dir)
to generate the sha256 checksum, you can use sha256sum model-file-name command

@llhe Thanks, I will try your suggestion

Just close this issue, if there are still problems, fell free to reopen it.


Sign in with Apple doesn't redirect to iOS app

Bug report
Describe the bug
I'm building a Capacitor app with Supabase and am including Google and Apple as auth providers. I also have a web application built with Next.js using the same Supabase instance.
When signing in to the mobile app with Google on iOS, the user successfully gets redirected back to the mobile app and logged in. When signing in with Apple, it redirects to the web app with the credentials in the URL instead of deep linking to the app (even though I'm using the same redirect to url for both providers).
I need to read up more on GoTrue, but maybe it has something to do with including the redirectTo in the callback url? The call to /authorize will include redirectTo but the callback is set statically.
To Reproduce

Configure Apple as an auth provider in Supabase (I know the Apple config works because users can sign into the web app successfully)
Configure deep links with Capacitor
In the app, the user signs in with Supabase await sb.auth.signIn({ provider: <apple or google> }, { redirectTo: "mysite.com/mobile" })
The web app ignores the session in the url and handles it manually if it's not going to the "mobile" url so it's not consuming the mobile credentials (supabaseClient = createClient(url, key, { detectSessionInUrl: false }))
Deep links are configured successfully and included in the Supabase auth configuration for additional redirect urls. If I copy the url that appears after signing in with Apple to another app like Notes and click it, it opens the mobile app and logs the user in which is the expected behavior.

Unfortunately I'm not sure of a great way to make a reproducible example given the amount of config that goes into setting up deep links + sign in with Apple.
Expected behavior

User clicks signs in with Apple
User authenticates with Apple
Redirect back to the mobile app
User is signed in

System information

OS: iOS
Version of supabase-js: 1.35.7

Hey,
I'm going to close this issue as it seems to have gone stale - feel free to reach back out if you have further questions though!
Jo

Sorry, meant to follow up on this with more detail.
I was able to work around it by using Capacitor's apple sign in with apple package rather than Supabase's auth directly, then I signed in with oidc using the identity token from Capacitor's sign in with Apple.

Hello @connorlindsey, I've been trying desperately to do the same thing for a week in an ionic capacitor app, could you give me more details on how you managed to do this please ?

@connorlindsey could you elaborate more on that ? I am currently stuck on the same problem


Columns (numeric list) - Mobile Rendering Issues

6 Step Security Protocol Not Rendering Properly - Overlapping text
Example: https://main--shredit--stericycle.aem.live/en-us/secure-shredding-services/specialty-shredding-service

@MarquiseRosier there are still overlapping issues on mobile

@MarquiseRosier I'm working on this. The whole column style is unnecessary. There has been a list style that actually fixes all of this from the very beginning. I just have to replace it on all the content pages and clean up the other styles.

I identified 14 pages that use the old style:
https://main--shredit--stericycle.aem.page/en-us/email/regularly-scheduled-paper-shredding-with-shred-it-protectplus
https://main--shredit--stericycle.aem.page/en-us/marketing/bulk-paper-shredding
https://main--shredit--stericycle.aem.page/en-us/marketing/document-destruction-services-shred-it
https://main--shredit--stericycle.aem.page/en-us/marketing/hard-drive-destruction-service
https://main--shredit--stericycle.aem.page/en-us/marketing/new-paper-shredding-services
https://main--shredit--stericycle.aem.page/en-us/marketing/paper-shredding-service
https://main--shredit--stericycle.aem.page/en-us/marketing/shred-it-document-destruction
https://main--shredit--stericycle.aem.page/en-us/marketing/shred-it-document-destruction-inline
https://main--shredit--stericycle.aem.page/en-us/secure-shredding-services/specialty-shredding-service
https://main--shredit--stericycle.aem.page/en-us/email/tiered-shredding
https://main--shredit--stericycle.aem.page/en-us/offer
https://main--shredit--stericycle.aem.page/en-us/email/paper-shredding-services
https://main--shredit--stericycle.aem.page/en-us/email/offer
https://main--shredit--stericycle.aem.page/en-us/fragments/harddrive-destruction-service

Turns out the exact style is actually only used here: https://main--shredit--stericycle.aem.page/en-us/secure-shredding-services/specialty-shredding-service

@colinvlasak This should be resolved now. Since this is now default content styling rather than a block, I will have to figure out where to put the example in the block library. But I'll do so later

@kronnox looks like this update broke the desktop styling
https://main--shredit--stericycle.aem.live/en-us/secure-shredding-services/specialty-shredding-service

Should be:
https://www.shredit.com/en-us/secure-shredding-services/specialty-shredding-service

@colinvlasak I just forgot to click publish and only pushed it to .page, my bad

@kronnox there we go!


Unified code for DispatchQoS.QoSClass.description and qos_class_t.description

Hello.
In this pull request I added QoSClassDescription to unify strings in DispatchQoS.QoSClass.description and qos_class_t.description.
I also removed get in these computed properties.
Please rename QoSClassDescription and propose a better description for it if you want.

Looks good. Maybe the enum can be private?

🙏


question about reward score

Why is the score the average of the dimensions in the vocabulary table instead of taking the corresponding logits at the corresponding position ?
thank you

Hi @DecideToLeave
This is a design when we export the model to the huggingface format, so that we don't have we change the model config.
During training, we only have two logits in the last layer. So essentially, the logits would look like ababababab...
https://github.com/Edward-Sun/easy-to-hard/blob/24af9789e80b09a3b33af1fe5e02b5048578c3bf/scripts/convert_checkpoint_to_hf.py#L91

So in the "\n\n" position
Rewards=rewards. mean (dim=-1)
Is it actually calculated based only on the logits of a and b ？

Correct.

thanks, and what is the difference between using only the logits of a or b for binary classification and calculating the cross entropy based on the mean of both.

If you want to use binary classification, you should not use a or b, but a or -b (or maybe a/2 or -b/2).
There is no difference between applying a logisitic function to the mean of both or using a binary classification. The results are numeircally the same.

I'm a bit confused about why it's a or -b. What I understand is that if there are only two logits in the last layer, is it similar to the first logits representing negative sample scores and the second logits representing positive sample scores? So, I can calculate the loss based on the probability after the corresponding softmax using the 0/1 index.


i18n(ja): Update images.mdx

What kind of changes does this PR include?

New or updated content
Translated content

Description

Update images.mdx.

https://github.com/withastro/docs/pull/4462
https://github.com/withastro/docs/pull/4498

🙏
LGTM


late final incorrectly claims to already be initialized

Use compute from flutter foundation with a function that asynchronously throws an error. The following stack trace is printed.
E/flutter (27630): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: LateInitializationError: Local 'computationResult' has already been initialized.
E/flutter (27630): #0      LateError._throwLocalAlreadyInitialized (dart:_internal-patch/internal_patch.dart:214)
E/flutter (27630): #1      _spawn (package:flutter/src/foundation/_isolates_io.dart:129)
E/flutter (27630): <asynchronous suspension>

The code is as follows: It does not seem possible for computationResult to be set twice
/// The spawn point MUST guarantee only one result event is sent through the
/// [SendPort.send] be it directly or indirectly i.e. [Isolate.exit].
///
/// In case an [Error] or [Exception] are thrown AFTER the data
/// is sent, they will NOT be handled or reported by the main [Isolate] because
/// it stops listening after the first event is received.
///
/// Also use the helpers [_buildSuccessResponse] and [_buildErrorResponse] to
/// build the response
Future<void> _spawn<Q, R>(_IsolateConfiguration<Q, R> configuration) async {
  late final List<dynamic> computationResult;

  try {
    computationResult = _buildSuccessResponse(await configuration.applyAndTime());
  } catch (e, s) {
    computationResult = _buildErrorResponse(e, s);
  }

  Isolate.exit(configuration.resultPort, computationResult);
}

I only observed this in release mode

maybe @alexmarkov ?

Small repro:
main() {
  late final int computationResult;

  try {
    throw 'bye';
  } catch (e, s) {
    computationResult = 42;
  }
}

Fix: https://dart-review.googlesource.com/c/sdk/+/254440.

The fix rolled into Flutter in https://github.com/flutter/flutter/commit/1dfa8477852025491fd90f01164343df9fde46d3.


fix(ovelay): fix error in terminal (Issue#1651)

Description:

Fix error in terminal console "window not defined".

Issues:

Issue #1651

Checklist:

[x] the pull request name complies with Conventional Commits
[x] the pull request name starts with fix(<scope>):, feat(<scope>):, feature(<scope>):, chore(<scope>):, hotfix(<scope>): or e2e(<scope>):. If contains breaking changes then the pull request name must start with fix(<scope>)!:, feat(<scope>)!:, feature(<scope>)!:, chore(<scope>)!:, hotfix(<scope>)!: or e2e(<scope>)!: where <scope> is name of affected project: chat, chat-e2e, overlay, shared, sandbox-overlay, etc.
[x] the pull request name ends with (Issue #<TICKET_ID>) (comma-separated list of issues)
[x] I confirm that do not share any confidential information like API keys or any other secrets and private URLs

/deploy-review


Plat 2747 card art

Shouldn't this have all the other parameters available in the API?

Updated to allow all other params


Brew returns same error after different comands

[x] Ran brew update and retried your prior step?
[x] Ran brew doctor, fixed as many issues as possible and retried your prior step?
[x] If you're seeing permission errors tried running sudo chown -R $(whoami) $(brew --prefix)?

Bug reports:
I was experimenting with switching Ansible versions via Homebrew-versions, and it was working good, but today I've suddenly encountered this:
➜  FoxComm brew install docker-for-mac
Error: No such file or directory - (../../../Cellar/ansible/<IP_ADDRESS>, /usr/local/var/homebrew/linked/ansible)
Error: No such file or directory - (../../../Cellar/ansible/<IP_ADDRESS>, /usr/local/var/homebrew/linked/ansible)
➜  FoxComm brew cask update
Error: No such file or directory - (../../../Cellar/ansible/<IP_ADDRESS>, /usr/local/var/homebrew/linked/ansible)
➜  FoxComm brew update
Error: No such file or directory - (../../../Cellar/ansible/<IP_ADDRESS>, /usr/local/var/homebrew/linked/ansible)
➜  FoxComm cd "$(brew --repo)" && git fetch && git reset --hard origin/master && brew update
HEAD is now at eb23a39 utils: remove bad symlink if it already exists.
Error: No such file or directory - (../../../Cellar/ansible/<IP_ADDRESS>, /usr/local/var/homebrew/linked/ansible)
➜  local git:(master) brew doctor
Error: No such file or directory - (../../../Cellar/ansible/<IP_ADDRESS>, /usr/local/var/homebrew/linked/ansible)

Please run brew update --debug twice.

@zmwangx Sorry, I've accidentally fixed this by running:
mkdir -p /usr/local/var/homebrew/linked
ln -s /usr/local/bin/ansible /usr/local/var/homebrew/linked/ansible
brew unlink ansible

I've tried to rollback to previous error state by deleting symlink, but can't reproduce it now, everything works correctly.

Good to hear, sorry about breaking things. For reference what you hit was #991.


HOTFIX: don't throw if upgrading from very old versions

When upgrading from version before version probing, the UPGRADE_FROM parameter is set and forces the used subscription version to stay at the associated older version until everyone is on the new.
This means we might get a mix of new and old versions < EARLIEST_PROBEABLE_VERSION as we go through the second rolling bounce and remove the UPGRADE_FROM config. So we should just not do version probing if the version is too old, rather than throw an exception

Should we at least log the situation? otherwise lgtm.


Extended unit test code coverage to RDK_LOG calling code also.

Current coverage is 100% (diff: 100%)

Merging #4 into master will not change coverage

@@           master    #4   diff @@
===================================
  Files           1     1
  Lines           8     7     -1
  Methods         0     0
  Messages        0     0
  Branches        0     0
===================================
- Hits            8     7     -1
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last update bc86812...cc6c0ae

The license is unacceptable.


素数大富豪の実績を実装

Codecov Report

Merging #100 into master will decrease coverage by 0.11%.
The diff coverage is 29.03%.

@@            Coverage Diff             @@
##           master     #100      +/-   ##
==========================================
- Coverage   44.55%   44.44%   -0.12%
==========================================
  Files          36       37       +1
  Lines        3883     3913      +30
  Branches      755      764       +9
==========================================
+ Hits         1730     1739       +9
- Misses       1716     1728      +12
- Partials      437      446       +9

Impacted Files
Coverage Δ

prime/primes.ts
100% <100%> (ø)

prime/index.js
17.04% <12%> (-0.34%)
:arrow_down:

Continue to review full report at Codecov.

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


⚠ Processors has degraded performance

In 39dca9c, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 109 ms

Resolved: Processors performance has improved in 3a97698.


Configs instantiated or verified regardless of whether used or not

Forgive me for anything foolish I may write, I am still fairly new to both Python and Django.
I am currently attempting to rewrite a set of Django configs using django-configurations. The old config setup used imports between a common python module and dedicated modules i.e. local, production, debug etc.
At the moment the I have gotten the configurations to run properly but when I added a new production configuration which requires certain os environmental variables not present on development machines I am no longer able to run the Django server. An example here
class common(Configuration):
    ...

class local(common):
    ...

class production(common):
    SOME_VARIABLE = os.environ['...']

In this case I have DJANGO_CONFIGURATION set to 'local' but for some reason django is still giving me a KeyError on the production config, even though it is not being used. Is this intended behavior or have I perhaps missed something?

That doesn't have anything to do with django-configurations but is the usual Python behavior, any attribute on the class level is evaluated as soon as the module is loaded in which the class is contained in. Since os.environ is a dict-like variable it'll raise a KeyError when it can't find the item you ask it to.
The solution for this problem is using the alternative get method of dict-like variables that doesn't raise an exception and allows you to define an optional default as well:
class common(Configuration):
    ...

class local(common):
    ...

class production(common):
    SOME_VARIABLE = os.environ.get('SOME_ENV_VARIABLE', 'fallback value')

Thanks for the response!


Plotting improvements

color scheme and projection changes

@TaraOceanData you should add a new line with .DS_Store to the file called .gitignore in the root directory. These files are created by MacOS so it remembers the position of your icons in finder, and not necessary for any of your code.
After that:

delete all .DS_Store files
commit the .gitignore changes and the deleted files
push the changes

Let me know if you need a hand.


add tooltip to user details link

This PR adds a tooltip to the username link on the admin user list to indicate that it redirects to the user details page instead of the user's profile.

Resolves https://github.com/go-gitea/gitea/pull/26713#pullrequestreview-1603001285

TBH ... IMO ... such tooltip seems redundant .......

We should at least make user and org lists behave the same. User list name click goes to user details, org list name click goes to org page.

I'd do an org details page, but aren't we in feature freeze right now?

We should be as per recent communication but until the release/v1.21 branch is forked, we aren't in fact.

Maybe a home link column for both tables would be good to somewhat solve the inconsistency. I think there is still space in the table for a small "Home" column at the end with https://primer.github.io/octicons/home-16 icon.

(My original suggestion was an info icon such as octicon-info by the way)

Maybe https://primer.github.io/octicons/person-fill-16 for the user page link?

I somehow tried to implement both suggestions. The username link's destination is the user page, and the user icon in the user details column leads to the user details page.

So I did a few tweaks, maybe you like them:

The home icon looked odd there and I see you retained the user name linking to home, so I removed it.
If you prefer, the user name could like to details page and then a home button would be necessary, but I prefer it the way it currently is because it's consisten with org page. In both cases I renamed last column to "Actions" (with a separate translation to distinguish from Gitea Actions).

@silverwind Maybe operations would be a better word for it? I think actions might be confusing for translation. But otherwise, I think your idea is nice, thanks :)

Operations is the standard term since https://github.com/go-gitea/gitea/pull/22067

It's such a long word, but okay.


Search for Variants in Quick Event Search

Requiring the gene before the variant in quick event search is a bit frustrating, and may lead people to believe a variant is missing. Typing 'V600E' should bring up BRAF V600E. And G12D should drop down all the RAS's with G12 entries.

@acoffman I think this might require both front-end and back-end fixes.

I think the backend is ready to support this, I'll coordinate with @jmcmichael on the frontend changes.


Replying to @[object Object]

The original tweets author name in replies is displayed as “@[object Object]”

My bad, this got borked by some internal changes made to how the API works and I didn't notice it until now. Should be fixed no!


Add missing Channel rest API calls

Channel rest client
A Channel  rest client has been added in v1.3.0 but it is till missing some endpoints.
These should be added in V2.0.0
Resources
https://discord.com/developers/docs/resources/channel

Removed from the 2.0.0 Milestone, Because all the important Channel API calls for Color-Chan have been implemented.
Feel free to leave add any missing ones if you need them! :)


rawkv: add TTL argument for client method CompareAndSwap

to fix issue #371 .

Hi, @tutububug , can you make it an option so that it won't break the API?

Actually, in our use scenario, we use the CAS method to implement the distribute lock function.
The key names 'lock', and the value names 'locker'. Users can lock or unlock a key only when its value equals the value the user passes. In normal cases there is no problem, but when the locker client crashes, there should be a semantic 'lock timeout', so the TTL here needs to be added to the CAS parameters.

@disksing how about adding a new function CompareAndSwapTTL


feat: enable custom cwd for vite plugin

Context
When using sveltekit in a mono-repository context, the build tends to fail with the following error message:
src/app.html does not exist

The error persists if you change the file location from the svelte config.
This is due to the file resolutions being made from the current directory instead of the project's root directory. While it works totally fine in a standalone project, it can't work in a monorepository context.
The objective of this pull request is to provide an option that specifies the root of the project in the vite adapter and to base the file resolution on the new option if it is provided while keeping the default process.cwd() directory if not provided
Related issues

https://github.com/nxext/nx-extensions/issues/1058

Note that the code still needs a bit of refactoring, failing tests seems unrelated but I'll take a look this week

Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[x] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[ ] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpm changeset and following the prompts. Changesets that add features should be minor and those that fix bugs should be patch. Please prefix changeset messages with feat:, fix:, or chore:.

Edits

[x] Please ensure that 'Allow edits from maintainers' is checked. PRs without this option may be closed.

closing as we concluded it is the responsibility of the monorepo tooling https://github.com/sveltejs/kit/issues/12499#issuecomment-2320091512


Discussion: replace bracket syntax used in property names

This issue is to discuss whether it would be possible and best for corset to avoid the bracket syntax used in CSS property names. The brackets would be avoided to follow the CSS Syntax rules for consuming a list of declarations, which limits property names to identifiers.
Current Syntax
::part(increment) {
  event[click]: var(--inc);
}

Possible Solutions
An event-set property to add a given event type with a given event listener.
::part(increment) {
  event-set: click var(--inc);
}

Questions:

Would it replace the event listener of an existing event type?
Or would it add a new event listener to the given event type?
How is this handled currently?

Can you explain how this new event-set property is meant to relate to event? Does it mean to replace it or is this a separate new property?

To answer one question:

How is this handled currently?

Currently if you use event without a key (the bracket syntax) it replaces all event listeners on the element (all that were set via Corset, that is).
If you use event[type] with the key it replaces the event for that type. You cannot currently have multiple listeners for the same type. That would be a desirable feature to have.
To your questions I would add:

Would it replace all event listeners on the element.

The reason why the bracket syntax was added was because I believed that declarations were always destructive, meaning they replaced all previous declarations of that property. If that's not the case then it changes the reason for the syntax.
I want to understand this better so I'm going to play around with counter-reset to see if it is additive or destructive. If there are other similar properties in CSS please let me know.

Ok, at least for counter-reset, it appears to be purely additive. I couldn't cause it to interfere with other counters: https://codepen.io/matthewp/pen/qBpONKw. So that's a good reason to pursue changing the way that event, attr, class-toggle, prop, and data work.

In order to support multiple events of the same type, I think there needs to be a way to name an event. I want to preserve this ability:
button {
  event: click var(--close);
}

.modal button {
  event-capture: click true;
}

The above is modifying the same event listener in another selector. Another use-case is overriding a listener itself:
button {
  event: click var(--close);
}

button.open {
  event: click var(--open);
}

This is not meaning to add a second event listener, but rather to replace the previous one.

I think we can get the best of both worlds by allowing a listener to be named similar to how a grid line can be named.
button {
  event: [close] click var(--close), [second] click var(--second);
}

.modal button {
  event-capture: [close] click true;
}

In this way we can modify the [close] named event without modifying another of the same type.
The [name] syntax should be optional; if you omit a name then that becomes the default listener for that type. Most of the time name shouldn't be needed, but it would be very useful for mixins.

I think the grid line naming convention fits great here.
Although the counter() held value is additive, it is important to note that the value is not held directly by a property, it is accessed through a function. To my knowledge, all CSS property declarations are indeed destructive, and it would be good to respect that. Note also that the counter model is pretty much an exception, not widely used, and doesn't feel very intuitive in CSS land.
I think such comma-separated list of shorthand property values is only used in one place currently in CSS: for the transition property. It is interesting to note that with this syntax, if you do this:
.element {
  transition-property: opacity, left, top, height;
  transition-duration: 3s, 5s;
}

It is treated like this:
.element {
  transition-property: opacity, left, top, height;
  transition-duration: 3s, 5s, 3s, 5s;
}

I.e. the values are repeated as necessary. You can read about it here and here. So in your last example, because you have only set the event-capture value for one listener, that value should be repeated for the others.
However, you actually forked the model here. The way you set the value of event-capture defers from the way it would be set for the transition CSS property: you used the identifier of the listener (actually you used both identifiers: the custom name (close) and the type (click)). Therefore, it wouldn't make sense for the value to be repeated for the other listeners, because it targets precisely this one. I think such syntax is relevant, and that in that case the values of the other listeners should not be changed.
The model could be: to modify a value with longhand property, you have to use the identifier of that value. The order doesn't matter, and what is not declared remains untouched.
Now, this only allows to update the values of an existing listener, not to add new ones or remove some without touching the other. Here are some ideas to further circumvent the destructivity of declarations and allow that:
Allow a current value for all multi-binding properties:
I know of two ways in CSS to capture and use the current value of a thing. The attr() function, which allows to get the value of an attribute of the element, and the currentColor value, used to get the current value of the color CSS property for the element.
Both concept could be used to preserve the current value of a list of values. I propose using a current value to get the list of current values of the property. Combined with other values, it can be used to add/update/remove only specific values in a list. Examples:
Add a listener to existing listeners:
.element {
  event: click var(--onclick), touchstart var(--ontouchstart);
}
.element.active {
  event: current, touchend var(--ontouchend);
}

Update a listener value:
.element {
  event: click var(--onclick), touchstart var(--ontouchstart), touchmove var(--ontouchmove);
}
.element.active {
  event: current, click var(--increment) true false true;
}

Allow an initial value:
With a listener identifier, using the initial value would reset the matching listener to their initial browser value, i.e. nothing, causing it to be removed. This value could be used with any property.
Remove the increment listener:
.element {
  event: [increment] click var(--increment), [display] click var(--display);
}
.element.active {
  event: current, [increment] initial;
}

Remove all click listeners:
.element {
  event: [increment] click var(--increment), [display] click var(--display);
}
.element.active {
  event: current, click initial;
}

Allow an all value:
Just like for the transition CSS property, the all value could be used to set values for all possible listeners (in CSS it's all the possible properties). This seems more relevant than *, which is only used in selectors.
Set common values for all listener:
.element {
  event: [increment] click var(--increment), [display] click var(--display);
}
.element.active {
  event-signal: all var(--signal);
}

Remove a certain value for all listeners:
.element {
  event: [increment] click var(--increment), [display] click var(--display);
}
.element.active {
  event-signal: all initial;
}

Remove all listeners:
.element {
  event: [increment] click var(--increment), [display] click var(--display);
}
.element.active {
  event: all initial;
}

Allow a none value:
The none value set the value of a property to nothing, so this can be used to remove all listeners, just like all initial does.
Remove all listeners:
.element {
  event: [increment] click var(--increment), [display] click var(--display);
}
.element.active {
  event: none;
}

I have mainly talked about listeners here, but this would apply to class, attr, prop and data as well.
I think these additions cover pretty much everything we might want to do with multi-binding properties?

@brunostasse Very open to all of these ideas! initial and all have been discussed in the past, so definitely on board with those. The nice thing about unset over none is that unset will likely have value in other properties. I'd rather have 1 globalish value than several, and I think the * unset syntax makes a lot of sense.

@matthewp When you say unset will likely have value in other properties are you referring to attributes for instance, which would revert back to the value set in the original HTML? Because that wouldn't be quite the effect of unset in CSS.
The global values in CSS (which can be used with any property) are:

initial refers to the value for the property as defined in the specification.
inherit refers to the value for the property as defined in the parent element.
unset refers to the value for the property  as defined in the parent element if the property is naturally inherited as defined in the specification (that concerns just a few properties, mostly related to text styling), otherwise it refers to the value for the property as defined in the specification (i.e. it's equivalent to inherit if it inherits naturally, otherwise initial).
revert is the same as unset, but if the value is not naturally inherited, it refers to the value for the property as defined by the user-agent (i.e. the browser).
revert-layer, is used in the context of CSS layers (which is new) and from what I understand it refers either to the value set for the property in the previous layer, or if there is no previous layer, to the value in the current layer, and if there is none, to the value set in the previous style-origin (so probably either the user styles or the browser styles).

none is not a global value, it can only be used with property accepting it (like display or pointer-events) and has a special meaning with each property, but basically it always makes it effect null.
So, since no event, attribute, prop, etc, is inherited from the parent element (right?) initial and inherit would behave similarly in Corset. You could possibly use revert to revert to the value set in the original HTML, but that wouldn't be quite exact either. The most relevant might be to create a revert-sheet value, which reverts back the current sheet and therefore goes back to the values set before that, that is in the original HTML.

Do you affect a different meaning to * and all. In CSS * refers to all elements in a selector, and all refers to all properties in a property value.

Hey @brunostasse sorry for taking so long to get back and thanks for the detailed thoughts. I had created another issue for initial: https://github.com/matthewp/corset/issues/65. The thinking there was more around like reseting a text property, but I suppose it really is the same as what we are talking about here. Do you think initial is a better use of what we're describing here? If not I think I might stick with the unset idea.
As far as * vs. all vs something else, still very much in the air. I'm only aware of all being used as a property, which is not what we're discussing here. Is there a use of all as a value in CSS? If not, would it still make sense to make one here?

Hi @matthewp, so yeah:

initial fits better here. initial is straightforward, it always refers to the spec value, and can be used safely to reset the value of a property. unset is more complicated, because it can refer to either the parent element value, or the spec value. It doesn't make much sense in Corset's context, where values are not inherited from parent elements.
all also fits better. all can be used as a value in the transition-property CSS property (see here), and refers to all properties that can be transitioned. So it makes total sense to use it here, much more than * which is only used in selectors.

So you want:
button {
  event: all initial;
}

I have seen in your blog post about v2.0 that you're considering making properties additive. I have to say it's a big paradigm shift, and it might confuse people coming from CSS. Having to first reset a property value and then set its new value to replace the original one also feels a bit cumbersome.
button {
  event: click var(--increment);
}

button.disabled {
  event: all initial;
  event: click var(--alert);
}

If I may, I have an alternate proposal to replace the bracket syntax that might fit better the CSS paradigm. The idea is to use the nested longhand property syntax from Sass and PostCSS, like this:
button {
  event: {
    click: var(--increment);
    mouseenter: var(--display-stuff);
  }
}

button.disabled {
  event: {
    click: var(--alert);
  }
}

This syntax is not valid CSS, but feels close, and is supported by all tooling that works with both Sass and PostCSS. Properties remain destructive, so you stay in the CSS paradigm, but you can easily add a new one or replace an existing one without touching the others. You can also remove all grouped properties with event: all initial. Each property also have its own space, contrary to the current multi-binding syntax, which gives more freedom for the syntax of the value.
This can be used for attr, event, prop, data...!

Hey @brunostasse, by additive I don't mean that it adds an extra event like your example implies.
button {
  event: click var(--increment);
}

button.disabled {
  event: click var(--alert);
}

This will replace the click event, not add a second one. This is because click becomes the key. In Corset 1.0 you cannot have 2 event listeners at all, in 2.0 you will be able to using named events which act as the key.
button {
  event: [one] click var(--increment);
  event: [two] click var(--alert);
}

This would add two click events, because you have given them distinct names. You could think later reset a single one:
button {
  event: [one] click var(--increment);
  event: [two] click var(--alert);
}

button.disabled {
  event: [two] unset;
}

This would remove the [two] listener but leave [one] untouched.

To explain what I mean by additive it's best to look at other properties like class-toggle and attr. Event is a bit different because it's the only one where it's possible to have multiple of the same key (you can't have multiple attributes of the same name, for ex).
button {
  class-toggle: one true;
  class-toggle: two true;
}

In Corset 1.0 this only adds the two class. That's because every time Corset sees a class-toggle declaration it treats the list as the only classes that should exist on the element. In 2.0 it will have one and two be set. You can then remove them via unset (or initial, naming tbh).

Thanks also for the perspective on unset vs. initial. I'll think more about this and respond later. I might create a spreadsheet showing how unset / initial work in CSS to compare how they might work in Corset, to better show the similarities and differences.

Oh alright, so the additivity is only for the values accepting the custom-key-value syntax.
So, in this case:
button {
  event: [one] click var(--increment);
  event: [two] click var(--alert);
}

button.enabled {
  event: focus var(--handle-focus);
}

button.disabled {
  event: [three] mouseenter var(--handle-enter), [four] mouseleave var(--handle-leave);
}

When button.enabled is matched, the two click handlers are removed from the element, and the focus handler is added?
When button.disabled is matched, the two click handlers are preserved, and the mouseenter and mouseleave handlers are added?

No,[one] and [two] are only ever removed if their selector no longer matches or if you added an unset/initial declaration.
You can think about the [] syntax as a key in Map. If you don't provide a [] key then there is an implicit key that is the event type. So you can pretend that it's written like this: [focus] focus var(--handle-focus). There's always an implicit key.
So the same rules apply whether you provide an explicit key (tentatively called a named binding) or not. You can only ever use focus once, unless you provide a key.

Events are the only property that will use this feature. The [] syntax will likely be turned off for class-toggle, attr, prop, and data. That's because those properties can never have multiple of the same keys. You can't add the disabled class more than once; it's either on or off. Likewise for attributes, etc.
So it might be easier to understand the behavior if you think about these properties first and think about events only after you understand, for ex. class-toggle.
To illustrate, take this example:
button {
  class-toggle: one true;
}

button[disabled] {
  class-toggle: two true;
}

In Corset 1.0 only the two class will be on. That's because the class-toggle property is destructive. It only applies the classes in that exact declaration.
In Corset 2.0 both the one and two classes will be on. I think this is the behavior you want most of the time.

This feature is down to 1 skipped test. Can see the branch here: https://github.com/matthewp/corset/compare/labeled-events?expand=1
Naming is still very much up for discussion. I think the behavior as described here is the way to go. Will follow up on naming.

I should say, everything is open to discussion, but the branch implements the additive behavior discussed in this thread.
@brunostasse brings up an interesting idea for continuing the destructive behavior but adding a current as a way to keep previous bindings: https://github.com/matthewp/corset/issues/130#issuecomment-1113855189
Curious @jonathantneal your thoughts on this idea.
My instinct is that Corset, unlike CSS, is mostly made up of properties that contain multiple values. class-toggle, attr, and event are properties you use all of the time. Unlike in CSS where you mostly use single-value properties and the multi-value ones are the exception.
So I say this to say, it feels like it is ok for Corset to deviate in this respect. But obviously I did feel differently before when I made them be initially destructive. So I appreciate all thoughts on this.

On initial vs unset. In Corset, the only time we get a value from a parent is for vars. So unset will always mean the same as initial.
One could see some value in having unset-like behavior in the future though:
body {
  --role: "User";
}

.admin {
  --role: "Admin";
}

.admin.revoked {
  --role: unset;
}

Given that, does it make more sense to:

Add this feature as initial and leave unset for a future feature.
Add both keywords
Just go with unset

I don't think I will implement the unset for vars right away. I think it would be nice to support but might take some work. But I could be wrong and it's not so bar. So I'm leaning towards either (1) or (3) here.

Actually I think I lean towards initial now. Since I don't plan on implementing inherit it doesn't make sense to use unset which people would expect inherit behavior.

Draft PR: https://github.com/matthewp/corset/pull/134

Discussed more with @brunostasse offline and this really isn't initial behavior because it doesn't remove non-sheet defined values. For now I think we're going to go with revert-sheet, similar to revert-layer in CSS.
button {
  class-toggle: one true;
}

button[disabled] {
  class-toggle: all revert-sheet;
}

current value:
After giving it more thoughts, it appears to me that the current value would be inconvenient and error-prone.
Because the selector matching mechanism already provides a way to remove event listeners/attributes/props, it seems likely that users will more often want to add ones than replace those already in place. So users would have to preprend most of their declarations with current , which would be cumbersome, and worse, might cause bugs when they forget it.
So I think it's better to discard that idea.
The additivity of the new syntax:
Comparison between the additive new syntax and the proposed nested property syntax:
With your additional explanations I realised that the nested property syntax I proposed would actually behave the same way as the new additive one @matthewp.
input {
  attr: {
    type: "number";
    name: "savings";
  }
  event: {
    click: var(--alert);
  }
}

input.important {
  attr: {
    required: true;
  }
  event: {
    click: [whatever] var(--increment);
  }
}

Would behave the same as:
input {
  attr:
    type "number",
    name "savings";
  event: click var(--alert);
}

input.important {
  attr: required true;
  event: [whatever] click var(--increment);
}

So we can actually see the second syntax as a terser version of the first one.

The new additive syntax expanded for demonstration:
It also really behave as the current bracket syntax, and another way to see and understand it is by expanding it to individual CSS properties, like so (this is just a "demonstration" syntax):
input {
  attr_type: "number";
  attr_name: "savings";
  event_click: var(--alert);
}

input.important {
  attr_required: true;
  event_click_[whatever]: var(--increment);
}

With such "expanded" syntax, it is quite obvious (from a CSS standpoint) to understand why updating the value of one attribute or event won't affect the others.
We can also see how the all value works. This:
button {
  event: all initial;
}

button.important {
  event: all click initial;
}

Could be written as:
button {
  event_all: initial;
}

button.important {
  event_click_all: initial;
}

So the "additivity" in the new syntax is actually quite understandable from a CSS point of view when seen like that.

The new additive syntax as an improvement over CSS, that fits right in:
One way to present this could be as a "correction", or "improvement", of the CSS multi-value syntax (used for the transition and animation properties), which is often tricky to use because of its destructivity.
However, as you pointed out elsewhere, it doesn't even have to be considered as a "correction" or "deviation" from CSS, because additivity is also made possible in CSS with the animation-composition value (https://drafts.csswg.org/css-animations-2/#propdef-animation-composition)!
The default animation-composition value is replace (destructive), but it can be changed to add (additive). I think it could be totally acceptable to say that, in Corset, all multi-value properties have add as *-composition default value.

All that to say that I think the new syntax with "additive" behaviour can fit alright in the CSS paradigm, and seems like the right choice considering Corset's needs.

Also see https://github.com/w3c/csswg-drafts/issues/1594 which talks about Additive Cascade. No progress or consensus in it right now, but maybe worth a read.

Maybe it would make sense to support the keywords add and replace, but default to add for these multi-value properties. Although I can't think of a reason why you'd use replace so maybe that only makes sense if it's the default.

Additive behavior was merged in https://github.com/matthewp/corset/pull/134. It will likely be a while before 2.0 is released so plenty of time to change things if needed.

replace  would be useful to disable event bindings on elements behind a modal

@brunostasse and I went back and forth about the naming of the unset property offline and we feel like revert-sheet is the best match to what this is actually going to do. It's not going to unset attributes / classes, etc. that were not added by the sheet, so unset felt wrong in this case.

2.0 is released: https://github.com/matthewp/corset/releases/tag/v2.0.0


Backslash escaping in template strings are handled incorrectly?

Example: (TypeScript)
var a = `hello\world`;
var b = `hello\\world`;
var c = `hello\\\world`;
var d = `hello\\\\world`;

Is compiled to: (JavaScript)
var a = "helloworld";
var b = "hello\world";
var c = "hello\world";
var d = "hello\\world";

TypeScript Playground
Note that we need four backslashes in order to have a single backslash in the string value.
I tried the ES6 implementations in Chrome, Firefox and es6fiddle.net and they all treat backslashes in template strings the same way as in regular strings (i.e., two backslashes in the template results in a single backslash in the string value.).

What do you think the expected output is?

Wait, I'm seeing what you mean. I thought you were referring to something similar to #1984.
This is actually fixed in 1.5 alpha.

Confirmed that this is fixed in 1.5 alpha. Emit is now:
var a = `hello\world`;
var b = `hello\\world`;
var c = `hello\\world`;
var d = `hello\\\\world`;

@DanielRosenwasser can you please reopen this issue as it has either regressed or it was never fixed: TypeScript Playground

Why do you say there's a regression? The emit is as I've listed above, which is semantically the same.

Sorry, my comment above is incorrect. The current emit is
var a = "helloworld";
var b = "hello\\world";
var c = "hello\\world";
var d = "hello\\\\world";

Which is correct. Here's why:

a should have "helloworld" because \w just maps to w.
b should have "hello\\world" because \\ needs to keep its escape
c should have "hello\\world" because of the reasons for (1) and (2) combined; namely, \\ continues to need to be escaped, and since \w just maps to w, that doesn't.
d just has rule (2) repeated twice; both escaped backslashes are maintained.

Oh, right, yes, that is correct.  Sorry, I didn't verify the earlier comment and just assumed the behavior was wrong, the the comment.  Please feel free to leave it closed :)

No worries, every time I look at this issue (or a related one), I find myself saying "That's right - wait, that's wrong - wait, no it's fine." Counting backslashes is annoying. :smile:


export csv with utf-8 format incorrect

For the datatable's export to csv, it has some problem with utf-8.
please refer: https://datatables.net/forums/discussion/37150/buttons-export-to-csv-doesnt-seem-to-take-charset-setting-into-account
could you update button with charset: 'utf-8',

Hello @code4rain,
Please can you describe the exact problem you are facing with starlette-admin and add a minimum example?
And then I can be sure that adding charset: utf-8  solved it

Hello, @jowilf
I used Korean Name for username "김철수", then export CSV and open it via "Microsoft Excel" has some problem to show the username.
But I found the exported csv file seems to fine with ". It is due to Excel's encoding issue. I think.
Sorry for inconveniencing to you.

Hello @code4rain,
Did you try to export directly to Excel ?

Hello, @jowilf I used Korean Name for username "김철수", then export CSV and open it via "Microsoft Excel" has some problem to show the username. But I found the exported csv file seems to fine with ". It is due to Excel's encoding issue. I think. Sorry for inconveniencing to you.

Hello, @jowilf
I try to export CSV and open it with Excel.
For the exporting excel, it works fine.

Hello, @jowilf
I try to export CSV and open it with Excel.
For the exporting excel, it works fine.

Ok nice


How to separate laughing voices?

How to separate laughing voices?

you should be able to fine-tune a vocal model with laughter. But I suggest a more modern architecture than open-unmix at this point.

@faroit hi, any suggestions on this topic


⚠ Bofrost.at has degraded performance

In 5bad2cc, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2132 ms

Resolved: Bofrost.at performance has improved in 8b59195 after 8 minutes.


Add a comparator for object keys

I wanted to be able to specify a custom comparator to sort the keys in an object.
We had to do some programmatic transformations to a large json file and we're using canonical-json to output the result. Our original json is human-consumable so the order of our keys matters but we don't want it to necessarily be alphabetical.
For example:
var obj = {
    first: "a'"
    second: "b",
    third: "c",
    fourth: "d",
    last: "foo"
};

console.log(stringify(obj));

By default, this orders the keys alphabetically and outputs the somewhat disingenuous:
{"first":"a","fourth":"d","last":"foo","second":"b","third":"c"}

If we want to make sure that was output in the expected order, we can use the comparator added in this pull request like so:
console.log(stringify(obj, undefined, undefined, function(a, b) {
    var order = {
        first: 1,
        second: 2,
        third: 3,
        fourth: 4
    };

    return (order[a] || 9999) - (order[b] || 9999);
}));

This outputs the more logically ordered:
{"first":"a","second":"b","third":"c","fourth":"d","last":"foo"}

ECMAScript 2015 and forward maintains an internal "creation" order which is a very nice feature although hard-core JSON folks think it is lunacy 😂

This only provides the feature for 1 of the 2 implementations this repository has. I am not the maintainer, but as a user I would be surprised to find that the two implementations had different features & capabilities.


🇲🇹 Add Proxy Node deployment for Malta in integration

Where did the trust-anchor come from? I'm struggling to see it on the CEF page and can't see it in the zendesk ticket.

@Wynndow From the metadata itself - they publish a different cert on CEF - I'm assuming they haven't updated CEF. But in any case the published cert is a leaf metadata singing cert so instead I just took the leaf cert from the current published metadata.

I don't think we want to trust something that we just grabbed from the metadata. We should be getting it from them directly, or from their CEF page.

You're right - but for integration this is okay


run error

at com.igorwojda.showcase.feature.album.presentation.albumlist.AlbumListFragment.onViewCreated(AlbumListFragment.kt:51

Thanks. for the feedback.
The project has been upgraded to version 2.0, so the bug is most likely obsolete. Closing this issue for now.
Feel free to reopen if you see the issue.


x/pkgsite: support dynamic configuration

Support configuration loaded periodically from a source other than the database, such as a file in a storage system like GCS.
The first use will be for experiments.
By moving away from the DB for this information, we can enforce DevOps policies more easily, and allow two frontends with different experiment setups to share the same DB.

This was done some time ago.


Sign android apk

can't copy and paste

can't copy and paste

Please create proper issue with more details otherwise I can't do anything.


Fix wrong status line error

This fixes issue described in https://github.com/ainformatico/mailinator/issues/2.

Seems legit.
Could you add a regression test please?
Thanks for the effort!

@ainformatico sorry if I'm missing something here.  What would you want the test to verify besides what the current spec file is doing?

We should ensure the same error is not raised therefore a test forcing SSL and checking that error is not raised.
Sorry for the delay, notifications won't work for me and went on holidays.

Due to the large delay I'm merging this and if you feel with the energy to open another PR with the test I would be most grateful.


Terminus triggers the nvidia geforce experience overlay

It really shouldn't :)
Maybe this issue is related to #657 .
On the upside I get 200+ FPS in terminus.
Thanks for this nice app man, keep it up!

Yes, same problem here


Update create screen

The list of reserves need to be shown and the admin should be able to pick which reserves the user belongs to

@MildogMiller  If this concerns the create user it's done in terms of UI, just need to check if it pulls the correct reserve list


continue-timeout attribute is not documented

Please update the forward request policy document https://learn.microsoft.com/en-us/azure/api-management/forward-request-policy and add the continue-timeout attribute as it is not documented.

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 9dab2acb-ae1e-e80e-02ac-6999310d321d
Version Independent ID: f6830842-99c3-ec73-0f66-9e169b585518
Content: Azure API Management policy reference - forward-request
Content Source: articles/api-management/forward-request-policy.md
Service: api-management
GitHub Login: @dlepow
Microsoft Alias: danlep

@FadyFT
Thanks for your feedback! We will investigate and update as appropriate.

@FadyFT - Thanks for opening the issue. Can you help with a description for the attribute? Is it something like [and this is a rough guess) "The amount of time in seconds to wait for a 100 Continue status code to be returned by the backend service before a timeout error is raised"?
Is there a default value that you know of?


Apple Silicon support

On Apple Silicon (M1 MacBook Pro), the app opens but doesn't show anything. Activity Monitor shows the app as "Not Responding".
Is there a possibility this could be addressed, or not? Thank you in advance 😃

Not anytime soon, I'm afraid. I'll need to wait until the compiler is updated for the new Apple silicon. And even then I won't be able to verify that it works as I'm not planning on buying an Apple silicon based Mac in the immediate future.

Alright, thank you for the response 👍🏻

Same problem with a 2019 Macbook Pro, running Big Sur. I KNEW I should have waited!!! Glad this exists though. I may have to swap over to my PC for DJing!

Good to know. That means I'll need to wait until I install Big Sur (not happening yet) before I can attempt to remediate the issue.

I cloned the repo, opened SeratoNowPlaying.py in VS Code, and then ran the program through a Rosetta (Intel x86 emulator) version of Terminal. It all worked perfectly fine and I was able to successfully use it with Serato DJ Pro and OBS.
It's just the .app from GitHub that doesn't work for me. Hope this helps.
(M1 MacBook Pro with Big Sur, by the way.)

I cloned the repo, opened SeratoNowPlaying.py in VS Code, and then ran the program through a Rosetta (Intel x86 emulator) version of Terminal. It all worked perfectly fine and I was able to successfully use it with Serato DJ Pro and OBS.
It's just the .app from GitHub that doesn't work for me. Hope this helps.
(M1 MacBook Pro with Big Sur, by the way.)

This repo is no longer being maintained or updated. Please visit the forked repo that has wonderfully built on and added to Now Playing: https://github.com/aw-was-here/Now-Playing-Serato


prebuilt for electron@6?

Hi, electron@6 (released at the beginning of this month) has an ABI of 73, but the current highest version available in releases is v70 (matching electron@5) so a prebuilt can't be downloaded for electron@6. Can v73 be added?

The next release will include this automagically.

v0.23.1 now available with prebuilt binaries for Electron 6 (ABI 73).


prismlauncher: 8.3 -> 8.4; refactor

Description of changes
Changelog: https://github.com/PrismLauncher/PrismLauncher/releases/tag/8.4 (this actual changelog isn't here just yet, but will be soon)
Diff: https://github.com/PrismLauncher/PrismLauncher/compare/8.3...8.4
This is a standard release with no major changes; I have gone back to refactor and improved some things while we're at it, though
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

from the pkgs/by-name check:
- Because pkgs/by-name/pr/prismlauncher exists, the attribute `pkgs.prismlauncher` must be defined like

    prismlauncher = callPackage ./../by-name/pr/prismlauncher/package.nix { /* ... */ };

  However, in this PR, a different `callPackage` is used. See the definition in pkgs/top-level/all-packages.nix:36927:

    prismlauncher = kdePackages.callPackage ../by-name/pr/prismlauncher/package.nix { };

is this not allowed when migrating to by-name? or a false positive?

cc @infinisil

Rhis should be improved in the future, but for now this isn't a false positive, see also https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/README.md#limitations :)

Rhis should be improved in the future, but for now this isn't a false positive, see also https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/README.md#limitations :)

tysm for the clarification. guess i missed that :p

Result of nixpkgs-review pr 321851 run on aarch64-darwin 1

2 packages built:

prismlauncher
prismlauncher-unwrapped

Could you explain why you think this meets the backport criteria?

this is a minor update that contains new functionality and large bug fixes with no breaking changes
regarding the changes to the expression: the only thing that really breaks here would be some of the new assertions. i would honestly consider these bugs in the packaging itself though, as there's no reason to have many of them set on platforms besides linux and allowing them to be defined but be a no-op isn't a great experience. the defaults of these overrides also remain the same, keeping impact pretty minimal

Hm, I'm honestly not convinced. Unless these bugs are somehow critical to the app's operation, they don't really fit the criteria.
Though even if it was critical, I'd ask you to cherry-pick a patch instead.
The refactor also hold a bit of risk to introduce unintended regressions.
It's fine and even expected to let bugs remain in stable but you should never introduce new ones if it's in any way avoidable. At least that's my view on it.
I appreciate you wanting to bring fixes to users ASAP but users of stable want stability, not speed. People who want fixes ASAP use the rolling channel.


xmlpoke: Fix syntax highlighting of sample + add xmlns to be consistent with other msbuild samples

see issue #1161

@pmisik : Thanks for your contribution! The author, @mikejo5000, has been notified to review your proposed change.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/msbuild/xmlpoke-task.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

#sign-off

Thank you!


Should zod and react be used as peerDependencies?

We were working in monorepo and ran into the multiversion problem when trying next-rc
next-rc package.json:
"dependencies": {
  "next": "^15.0.0-rc.0",
  "react": "^19.0.0-rc",
  "react-dom": "^19.0.0-rc",
  "zod": "^3.23.8",
  "zsa": "^0.4.0",
  "zsa-react": "^0.1.9"
}

run yarn list:
yarn list zod:
├─<EMAIL_ADDRESS>│  └─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>// This is the version the other local packages are using
├─<EMAIL_ADDRESS>│  └─<EMAIL_ADDRESS>└─<EMAIL_ADDRESS>   └─<EMAIL_ADDRESS>
yarn list react:
├─<EMAIL_ADDRESS>│  └─<EMAIL_ADDRESS>└─<EMAIL_ADDRESS>   └─<EMAIL_ADDRESS>

Hi, thanks for bringing this up. Working on fix now.

Released! Please try upgrading to latest 🙏

can you please confirm it is fixed now?

Released! Please try upgrading to latest 🙏
(+) can you please confirm it is fixed now?

Everything‘s fine, thank you for resolving it so quickly


Cannot understand the reasons for several implementation details, e.g. sharded embedding, lstm state between batch

Hi, i have read your code here, but several implementation details quite confused me. Hope for your help.

sharded embedding - emb_vars = sharded_variable("emb", [hps.vocab_size, hps.emb_size], hps.num_shards)
Could you tell me why you split the embeddings to several shards. What are the benefits for doing this?

delivery lstm state between batch - self.initial_states[i].assign(state)
As you have shuffled sentences before training, so i can't see links between training examples of adjacent batch. Therefore i can't understand why we need to delivery lstm state between batch.

Hi,
I can comment on the second point, not sure about the first one myself.
On Thu, Aug 16, 2018 at 9:08 PM RUCHEN ZHANG<EMAIL_ADDRESS>wrote:

Hi, i have read your code here, but several implementation details quite
confused me. Hope for your help.

sharded embedding - emb_vars = sharded_variable("emb",
[hps.vocab_size, hps.emb_size], hps.num_shards)
Could you tell me why you split the embeddings to several shards. What
are the benefits for doing this?
delivery lstm state between batch -
self.initial_states[i].assign(state)
As you have shuffled sentences before training, so i can't see links
between training examples of adjacent batch. Therefore i can't understand
why we need to delivery lstm state between batch.
If you look into how data is batched in data_utils.py: batch_size streams
of adjacent sentences are segmented into num_steps chunks; state must be
passed across batches, o/w you would lose context in the middle of the
sentence.

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/rafaljozefowicz/lm/issues/7, or mute the thread
https://github.com/notifications/unsubscribe-auth/AK_u-_wt8Uwr8CxwOWbTR7E6Qpv-qE7Tks5uRkGqgaJpZM4WA8A0
.

--
-Ciprian


Development: Prepare programming exercises within e2e tests for other languages

Checklist
General

[x] This is a small issue that I tested locally and was confirmed by another developer on a test server.
[x] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[x] I chose a title conforming to the naming conventions for pull requests.

Motivation and Context

The e2e test currently only support java within the programming language.
Description

This PR lays the ground work to support other programming languages. In a followup PR there will be tests for python and c based programming exericses.
Review Progress

Code Review

[ ] Review 1
[ ] Review 2

Codecov Report

Merging #6309 (ce881eb) into develop (8793c31) will increase coverage by 3.81%.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@              Coverage Diff              @@
##             develop    #6309      +/-   ##
=============================================
+ Coverage      76.46%   80.28%   +3.81%
- Complexity         0    12970   +12970
=============================================
  Files           1241     2302    +1061
  Lines          46920    89068   +42148
  Branches        8740    13154    +4414
=============================================
+ Hits           35879    71505   +35626
- Misses          5674     9761    +4087
- Partials        5367     7802    +2435

Impacted Files
Coverage Δ

...CourseManagementOverviewExerciseStatisticsDTO.java
100.00% <0.00%> (ø)

...rvice/connectors/jira/JiraLinkInfoContributor.java
25.00% <0.00%> (ø)

.../www1/artemis/service/exam/ExamSessionService.java
100.00% <0.00%> (ø)

...service/programming/ProgrammingTriggerService.java
87.36% <0.00%> (ø)

...in/notification/SingleUserNotificationFactory.java
80.64% <0.00%> (ø)

.../www1/artemis/service/ExerciseDeletionService.java
95.12% <0.00%> (ø)

...www1/artemis/config/audit/AuditEventConverter.java
64.00% <0.00%> (ø)

...pass/umlmodel/component/UMLComponentInterface.java
95.23% <0.00%> (ø)

.../artemis/web/rest/dto/StudentExamWithGradeDTO.java
100.00% <0.00%> (ø)

...ompass/umlmodel/syntaxtree/SyntaxTreeTerminal.java
93.33% <0.00%> (ø)

... and 1051 more

Flag
Coverage Δ

client
76.46% <ø> (ø)

server
84.52% <ø> (?)

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 8793c31...ce881eb. Read the comment docs.

Is this PR really ready to review? E2E tests seem to fail ..?


Http2 not working with active tls

Certificate is installed and correctly working in browser without errors.
But I see in Chrome console - http/1.1 mode.
How enable h2?

http2 should be enabled already by default.  Are you sure your are running an updated image?

yes, I see ssl http2 ; in generated config, but not working.

I think this is because newer versions of chrome requires ALPN and nginx-proxy at the moment is linked with an old verison of openssl (pre 1.0.2 i think) that does not support it.
https://www.nginx.com/blog/supporting-http2-google-chrome-users/

@wader thank you!
Waiting for nginx container update with updated openssl lib.

Yes, alpine based nginx uses the newer version of openssl and provides ALPN. It would be great if this project switched to alpine. This project uses this approach, but it would be great if the "official" nginx proxy supported it.

latest is now using nginx:1.11.3.  This might be fixed now.

@jwilder i think the problem is that debian:jessie has a too old openssl
root@89c7f36ed7d2:/app# dpkg -l | grep openssl
ii  openssl                   1.0.1t-1+deb8u2          amd64        Secure Sockets Layer toolkit - cryptographic utility

Hmm.  Looks like there is an 1.11.3-alpine official image. I have alpine versions of docker-gen and could create one for forego if needed.  I'm not sure what would break by switching base images off-hand though.

@jwilder could you create special tag with Alpine Linux, same as nginx - -alpine ?
It would be good alternative

I'm using nginx+docker gen and after upgrading from nginx 1.11.0 to 1.11.5-alpine I finally started seeing h2 instead of http/1.1 in Chrome devtools. Thanks a lot of the hint Jason!

is alpine tag usable in production?

#349 is duplicate at this point. should be closed.

The alpine images apparently work with https.  There is an alpine tag for nginx-proxy as well as an alpine tag for nginx.

Thanks for the hint - would be really cool to include this on the front page README!

@sischnei could you please provide a pull request with your changes for README.md?

@matt-hh don't have much experience with pull requests on GIT, hopefully did it right! See #770


Does not work on Pi OS anymore. Any plan to upgrade for the latest Raspberry Pi operating system?

The webcam does not work on Pi OS - the latest Raspberry Pi operating system.
The "Legacy Camera" must be enabled by hand to make the webcam work. The Raspberry Pi will eventually discontinue the "Legacy Camera" option. So, has anybody planned to upgrade the webcam?

+1, facing this issue


Re-export macros from bleps crate when macros feature is selected

Thanks! Looks like a good idea but I won't be available before Tuesday to look into this


Windows: integration-cli don't delete nat

Signed-off-by: John Howard<EMAIL_ADDRESS>@msabansal On Windows, the nat network is pre-defined and shouldn't be deleted. Avoids a bunch of errors in the daemon-under-test log when running integration-cli on Windows, such as shown below:
ime="2016-04-06T02:20:50.525332500Z" level=error msg="Handler for DELETE /networks/nat returned error: nat is a pre-defined network and cannot be removed"
time="2016-04-06T02:20:50.686339600Z" level=error msg="Handler for DELETE /networks/nat returned error: nat is a pre-defined network and cannot be removed"
time="2016-04-06T02:20:51.472345800Z" level=error msg="Handler for DELETE /networks/nat returned error: nat is a pre-defined network and cannot be removed"
time="2016-04-06T02:20:51.680334800Z" level=error msg="Handler for DELETE /networks/nat returned error: nat is a pre-defined network and cannot be removed"
time="2016-04-06T02:20:52.430353900Z" level=error msg="Handler for GET /v1.24/containers/testbuildentrypoint/json returned error: No such container: testbuildentrypoint"
time="2016-04-06T02:20:52.473379600Z" level=error msg="Handler for GET /v1.24/containers/testbuildentrypoint/json returned error: No such container: testbuildentrypoint"
time="2016-04-06T02:20:52.701366800Z" level=error msg="Handler for DELETE /networks/nat returned error: nat is a pre-defined network and cannot be removed"
time="2016-04-06T02:20:53.324742700Z" level=error msg="Handler for GET /v1.24/containers/parent/json returned error: No such container: parent"
time="2016-04-06T02:20:56.551664900Z" level=error msg="Handler for GET /v1.24/containers/child/json returned error: No such container: child"

LGTM

LGTM


Ensure IDs are sorted prior to selecting next

When Tessel needs to create a new process on OpenWRT via a USB Connection (eg. node /tmp/remote-script/index.js to run a script), the CLI communicates with the USB Daemon running on OpenWRT to spawn a new process. As part of the protocol with the USB Daemon, the CLI must specify an integer to be used as the identifier for that process. That ensures the CLI and USB Daemon can route stdin, stdout, and stderr properly for multiple processes.
The _nextID function is responsible for selecting that next identifier for a new process (between 0-254) created over a USB Connection (LAN is managed by SSH). It does so by analyzing the processes identifiers already in use and selecting the next available number. For example, if the process IDs in use were [0, 1, 3, 4, 6], the next available ID would be 2.
The problem was that this function didn't take into account that the IDs-in-use list might be out of order so you could get something like [1, 0]. In this case, the function would see that the first element is not zero and return zero to be the next available ID, even though it was already in use.
This PR solves the problem by sorting the list of IDs-in-use before searching for the next available.

[x] Add tests.

@johnnyman727 What's the best way to smoke test this?

Good question. There is no really easy way to smoke test.  This code path is hit often but we rarely have multiple processes running in normal operation of the CLI.

Would locally pulling this commit onto #595 and trying to update over USB be a good test?

@HipsterBrown the only instance where I've hit this problem is actually with the test rig. I think it' s not really worth the effort to build up a smoke test. Perhaps the simplest thing would be to see if you can still deploy code using this branch (or connect to wifi, etc)

@johnnyman727 Alright. I'll give that a shot.

Smoke Test:
Setup:
mkdir tessel-test
cd tessel-test
t2 init
t2 run index.js --usb
nickhehr@Nicks-MacBook-Pro-2 tessel-test $ t2 run index.js --usb
INFO Looking for your Tessel...
INFO Connected to tessel-router.
INFO Building project.
INFO Writing project to RAM on tessel-router (3.072 kB)...
INFO Deployed.
INFO Running index.js...
I'm blinking! (Press CTRL + C to stop)
^Cnickhehr@Nicks-MacBook-Pro-2 tessel-test $

Success! :+1:

Thanks for the hand, @HipsterBrown!


App opens, but window is not visible

2020 Macbook Pro, MacOS Ventura 13.2.1
Just downloaded the app earlier this evening and everything ran incredibly well until a few minutes ago. I started to experience a few errors starting games over xCloud, but restarting Greenlight fixed them. I started to get heavier lag, so I closed the app again and, lo and behold, another error. I tried again, but this time no visible window came up, it appeared to be transparent.
I have tried:

Closing and opening the app
Force quitting and opening the app
Restarting my computer
Deleting and reinstalling the app

did u find a solution for this issue? I have a same issue on my macbook. It worked perfectly before.


Update resource-group-authoring-templates.md

Added securestring type info.

Hi @rjmax, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (ryjones). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, or work for Microsoft Open Technologies, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;


how to fix this?

gpw-web            | warning "alias-hq ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>gpw-web            | warning "eslint-plugin-jest > @typescript-eslint/experimental-utils > @typescript-eslint/typescript-estree ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>|| >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta".
gpw-web            | warning " ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>gpw-web            | warning " ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>gpw-web            | warning " ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>gpw-web            | warning "remark-extended-table ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>gpw-web            | warning "remark-extended-table ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>gpw-web            | warning "remark-extended-table ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>gpw-web            | error Could not write file "/var/www/yarn-error.log": "EACCES: permission denied, open '/var/www/yarn-error.log'"
gpw-web            | error An unexpected error occurred: "EACCES: permission denied, mkdir '/var/www/node_modules'".
gpw-web            | info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
gpw-web            |
gpw-web            | ====== Yarn Start ======
gpw-web            | Run migrations...
gpw-web            | /var/www/.docker/web/entrypoint.sh: line 30: /var/www/vendor/bin/phinx: No such file or directory
gpw-web            | PHINX FAILED TO RUN MIGRATIONS
gpw-web exited with code 1

you couldn't run it with root user.

how would i run it ?? have same issue


Error in Developer Interface loadNextImage()

@jan-cosmigo, There seems to be a mistake in the loadNextImage() function in the original Developer Interface document, where the delayMs parameter is a variable in the Delphi function signature, but a pointer in the C++ function:
function loadNextImage( colorFrame,
                        colorFramePalette,
                        alphaFrame,
                        alphaFramePalette: Pointer;
                        var delayMs: word
): boolean; stdcall;

bool  __stdcall loadNextImage( unsigned char*  colorFrame,
                               unsigned char*  colorFramePalette,
                               unsigned char*  alphaFrame,
                               unsigned char*  alphaFramePalette,
                               unsigned short* delayMs
);

By looking at the C++ sources of the sample plugin from Cosmigo website, the correct one is the C++ function, where delayMs is a pointer (i.e. the plugin passes the value by writing its pointer).

Developer Interface — at Cosmigo website.
Developer Interface — in this repository website.

I can't fix it in the repository document unless it's fixed upstream, on the Cosmigo website, for the doc in this repo is meant to be a faithful copy of the original — i.e., unless it's OK with you (but then I should remove the statement regarding it being a faithful reproduction).

[ ] When original document is fixed on Cosmigo website, fix it also in this repository.

Both is correct. With Delphi Pascal the pointer turns into a "var" parameter which is "by reference" and has the same logic as giving a pointer or more similar using the &-operator.