Fix 2017 autoscaling blog article

Since https://kubernetes.io/blog/2017/11/autoscaling-in-kubernetes/ was published, we've somehow lost the link to the YouTube video.
Put it back (preview)
/area blog

Nit: It might be helpful to insert a newline character after the video player and subsequent text to enhance clarity. ( might help)

We should use CSS, not content, if we need more padding. That way, every page gets the fix.

/restest
/lgmt

Thank you for adding the video back
/approve


Is it possible to trigger children element (with it's animations) when the parent element is triggered?

Supposedly I have one section or div that have multiple elements on it, so when the parent div/section is triggered, the elements inside it are all triggered at the same time.

Season's Greetings! Our offices are closed during the Christmas Season from noon Wednesday 21st December and re-open on Monday 9th January.

You can do that in js, checking on the scroll if the element has the class and than you can animate the element which you want to ;)

I would like how to do that too

$(window).scroll(function() {
$('.anima').each(function(){
var imgPos = $(this).offset().top;
var topOfWindow = $(window).scrollTop();
if (imgPos < topOfWindow+600) {
$(this).find('.animated.fadein').addClass('fadeIn');
$(this).find('.animated.fadeinright').addClass('fadeInRight');
$(this).find('.animated.fadeinleft').addClass('fadeInLeft');
$(this).find('.animated.fadeindown').addClass('fadeInDown');
$(this).find('.animated.fadeinup').addClass('fadeInUp');
}
});
});
stuff like this will work

I'm closing this issue due to inactivity (from my side, apologies). Please comment if this issue is still relevant so I can re-open and investigate it.


Core - Custom CSS and Custom Code

Create a Way that will save on the Core Config on the Admin, to Include Custom CSS and Custom Code

[x] Custom CSS Before  closes
[x] Custom Code before  closes
[x] Custom Code Before  closes

Daniel has Complete this already


Update kubeflow docs for multi-tenant deployments

Describe changes
Tested for multi-tenant deployment and now works.
Things to do:
[ ] - Add validation on /pipeline post-fix if cookies set
[ ] - Add validation that user_namespace set if cookies set
Pre-requisites
Please ensure you have done the following:

[ ] I have read the CONTRIBUTING.md document.
[ ] If my change requires a change to docs, I have updated the documentation accordingly.
[ ] If I have added an integration, I have updated the integrations table and the corresponding website section.
[ ] I have added tests to cover my changes.

Types of changes

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

@schustmi So sorry for the stupid mistakes there - fixed them now properly


user name not displayed properly in the chat when model name is changed in workspace

Environment

Open WebUI Version: [e.g., v0.3.12]

Confirmation:

[X] I have read and followed all the instructions provided in the README.md.
[X] I am on the latest version of both Open WebUI and Ollama.
[ ] I have included the browser console logs.
[ ] I have included the Docker container logs.
[X] I have provided the exact steps to reproduce the bug in the "Steps to Reproduce" section below.

Expected Behavior:
Hello, Last Name, First Name (in welcome message)
Actual Behavior:
Model Name ((in welcome message))
Description
Bug Summary:
user name not displayed properly in the chat when model name is changed in workspace
Reproduction Details
Steps to Reproduce:
add ollama API or openai API in connection
Go to workspace, change the model name
Welcome message changed to model name
Logs and Screenshots

Expected Behaviour


update cable_ready channel generator

As discussed on Discord, here the PR with my recommended changes:
The most important changes:

add class options
add tests
add default values for prompts
change generator name from cable_ready_channel to cable_ready:channel

@julianrubisch I just had another idea to make the whole thing even easier and with less options.
How do you feel about this:
rails g cable_ready:channel --stream-from=Post --stimulus
# instead of
rails g cable_ready:channel --broadcast-to --resource=Post --stimulus

and
rails g cable_ready:channel --stream-for=post
# instead of
rails g cable_ready:channel --no-broadcast-to --identifier=post

Good idea as long as it works without any options still 😉

That's the idea and I don't see why it shouldn't. I will refactor the PR!


SAR instantly crashing on steam deck

For some reason, I have installed the latest version of sar on steam deck, but every time I try and load the plugin, it crashes. I have tried it in both the Portal 2 folder and portal2 folder with and without srconfigs and I’ve tried every single portal 2 beta, but nothing seems to work.

Download latest pre release as it fixes crash on linux

By 'latest version of SAR,' do you mean full release or pre-release? The Steam Deck runs on the Linux version, which works on pre-release (1.12.8-pre6) but not full release (1.12.7)

Ah yeah, I didn’t try the pre-release. Thank you


Add metadata ADR proposal

Metadata for Stream and Consumer

Metadata
Value

Date
2023-01-23

Author
@Jarema

Tags
jetstream, client, server

Context and Problem Statement
Until now, there was no way to easily add additional information about Stream or Consumer.
The only solution was using Description field, which is a ugly workaround.
Server PR
https://github.com/nats-io/nats-server/pull/3797
Design
The solution is to add new metadata field to both Consumer and Stream config.
The metadata field would by a map of string keys and string values.
The map would be represented in json as object with nested key/value pairs, which is a default
way to marshal maps/hashmaps in most languages.
Example
{
  "durable_name": "consumer",
  ... // other consumer/stream fields
  "metadata": {
    "owner": "nack",
    "domain": "product"
  }
}

Open questions
Do we want to limit the size of metadata?
Signed-off-by: Tomasz Pietrek<EMAIL_ADDRESS>

Improved ADR after discussions:

Set limit to 128kB
Added reserved prefix for internals _nats.

@ripienaar @wallyqs  ADR updated, PR updated.


Hosting this on runpod?

Is there a way to dockerize this so I can run it on runpod (or other gpu rental services)

Yes there is - we already have such a thing. I will see if I get around to cleaning it up and commit it here.


Test PR V2. Do Not Merge.

Closing in favor of moving experimentation to repositories where it's slightly less embarrassing to figure this out.


Added link for some creative implementation

Please send your pull requests the develop branch.
Don't forget to add the change to CHANGELOG.md.

Note: Sometimes the development moves very fast. It is highly
recommended that you update your branch of develop before creating a
pull request to send us your changes. This makes everyone's lives
easier (including yours) and helps us out on the development team.
Thanks!

Does the pull request solve a related issue?
If so, can you reference the issue?
What does the pull request accomplish? Use a list if needed.
If it includes major visual changes please add screenshots.

@MichMich - Can you please review the changes?

Sorry, not going to promote other projects in the readme file.

@MichMich - I understand.
We have used your base implementation and added some of our own features.
We just want people to know that they could add different modules to make their Mirror as dynamic as possible.
I am not promoting any other project, It's an extension of MagicMirror itself.
I just wanted to contribute back.


Add Avenger Backlog Notifications

Changes

Implement Notifications System Framework
Add Oban (Job Processing Library)
Implement notifications only for avenger backlogs for now

Coverage: 95.419% (-0.2%) from 95.608% when pulling 05aac5c83f35600cae0fa0050f8cb542abcb3e07 on Santosh3007:add-avenger-backlog-notification into 9bf6a5c68119492e67c64b2784841035c07415b9 on source-academy:master.

Let us merge this first so that this can be tested on staging. The remaining issues seem to be minor, and I have created issues as above to be resolved.


[WIP] import declaration autocomplete

This closes issue #257. Work in progress right now.
Detection of being inside an import statement is done. Here is a testing file.
package main

import "fmt"

import f "fmt"

import . "fmt"

import (
	"fmt"
)

import (
	"fmt"
	"log"
)

import (
	f "fmt"
	l "log"
)

import (
	. "fmt"
	l "log"
)

import (
	"fmt"; "log"
)

import (
	. "fmt"; l "log"
)

import _ "fmt"

import (
  "io/
)

I just need to take cc.partial and return all import paths that match.

Alright now it works, autocomplete is functioning, I'm gonna just polish it up.

The plugins will need a update as well.

The plugins will need an update as well.

That's a really bad joke.
Aside from that I see some bugs, the import doesn't return the correct length of the partial in some cases. That's a second argument form func (c *auto_complete_context) apropos, it's very important because some editors rely on it. Vim and godit in particular. I'll see more into code and will comment it there.

Okay, the problem with partial length seems to be the following.
If I do autocompletion here: import "encoding/j#son" (# is the cursor).
The returned length of the partial is: len("encoding/j"), but the candidate itself is "json". It's incorrect. You should return the full "encoding/json" candidate in that case or reduce the returned partial length to be len("j"). Again, length of partial is a second argument returned by apropos method, some editors rely on it.

Got it, i'll fix those issues.

@nsf why are get_candidates_from_decl and get_candidates_from_set methods of auto_complete_context. They don't use auto_complete_context. Should I make get_import_candidates a method as well then?

Because it came out of my OOP damaged brain. Yes you can make it a method, or a function. Doesn't matter.

@nsf All I have left to do are completing vendoring and gb. or should that be in another PR? I'll work on the rest of it tomorrow, I gotta do some homework now.

Yea after thinking about it a bit more, and using it, I think its worth adding the trailing /. its not very hard to get used to and its useful.

Ah screw it, i'm gonna just do it recursively, I think it'll be much better that way.

Alright, its recursive now. its not slow at all. i'm so confused now why I didn't like it when I first implemented it like this, sigh. Much better now...

Okay, I'm merging it, I think it's in good enough shape to be merged in.

It definitely works with godit and with vim out of the box. My own sublime text 3 plugin fails to handle it properly. Because it ignores returned partial length and just goes back to last word. Will see if I can fix it. Also in emacs company-mode doesn't work at all in string literals for some reason.
Oh, I see: https://github.com/nsf/gocode/blob/master/emacs-company/company-go.el#L191
I guess we'll have to remove that line maybe one day.

@nhooyr Thanks for the contribution. It's a nice addition to gocode.

It also seems to be somewhat crash-happy:
2016/03/09 20:11:06 Go project path: sandbox/foo
2016/03/09 20:11:06 Got autocompletion request for '/home/dominikh/prj/src/sandbox/foo/foo.go'
2016/03/09 20:11:06 Cursor at: 24
2016/03/09 20:11:06 -------------------------------------------------------
package main

import (
	#
)
2016/03/09 20:11:06 -------------------------------------------------------
2016/03/09 20:11:06 Error parsing input file (outer block):
2016/03/09 20:11:06  4:2: expected 'STRING', found ';'
panic: runtime error: slice bounds out of range
1(runtime.call32): /usr/lib/go/src/runtime/asm_amd64.s:472
2(runtime.gopanic): /usr/lib/go/src/runtime/panic.go:426
3(runtime.panicslice): /usr/lib/go/src/runtime/panic.go:21
4(main.collect_package_imports): /home/dominikh/prj/src/github.com/nsf/gocode/declcache.go:34
5(main.(*auto_complete_file).process_data): /home/dominikh/prj/src/github.com/nsf/gocode/autocompletefile.go:76
6(main.(*auto_complete_context).apropos): /home/dominikh/prj/src/github.com/nsf/gocode/autocompletecontext.go:293
7(main.server_auto_complete): /home/dominikh/prj/src/github.com/nsf/gocode/server.go:179
8(main.(*RPC).RPC_auto_complete): /home/dominikh/prj/src/github.com/nsf/gocode/rpc.go:26
9(runtime.call64): /usr/lib/go/src/runtime/asm_amd64.s:473
10(reflect.Value.call): /usr/lib/go/src/reflect/value.go:435
11(reflect.Value.Call): /usr/lib/go/src/reflect/value.go:303
12(net/rpc.(*service).call): /usr/lib/go/src/net/rpc/server.go:383
13(runtime.goexit): /usr/lib/go/src/runtime/asm_amd64.s:1998

@dominikh Judging by the stack trace, it probably existed for years there.

@dominikh fixed

@nsf you're welcome


update gh account and repo

This is a forked repo of https://github.com/KilleenCode/tauri-update-cloudflare, required for deployment of Tauri update server as Cloudflare edge function

@nazar-pc this is a temporary setup for our update server, we discussed with @ch00mba that it would be nice to use Terraform in the long run

But terraform is just for infra, it doesn't do anything with files updater would use to actually update and such

@nazar-pc we would still need an update server. It's just a matter of how and where we deploy it, this seems like an easy solution for now

I'm not against it, just hoped desktop app can just reach out to CDN where we'll upload executables as part of release process or something.


🌱 pkg/authorization: add delegation reason in audit

Summary
This is scavenging DelegateAuthorization from https://github.com/kcp-dev/kcp/pull/2089 to have delegation resons included in the kcp audit log.
Example for delegated authorization:
    "authorization.k8s.io/decision": "allow",
    "authorization.k8s.io/reason": "access granted",
    "bootstrap.authorization.kcp.dev/decision": "Allowed",
    "bootstrap.authorization.kcp.dev/reason": "bootstrap policy: RBAC: allowed by ClusterRoleBinding \"system:kcp:clusterworkspace:admin\" of ClusterRole \"cluster-admin\" to Group \"system:kcp:clusterworkspace:admin\"",
    "content.authorization.kcp.dev/decision": "Allowed",
    "content.authorization.kcp.dev/reason": "delegating due to \"root:e2e-org-b7zvn\" content policy: : systemcrd.authorization.kcp.dev: access granted",
    "maxpermissionpolicy.authorization.kcp.dev/decision": "Allowed",
    "maxpermissionpolicy.authorization.kcp.dev/reason": "delegating due to unbound resource: bootstrap.authorization.kcp.dev: access granted",
    "systemcrd.authorization.kcp.dev/decision": "Allowed",
    "systemcrd.authorization.kcp.dev/reason": "delegating due to no system CRD violation: maxpermissionpolicy.authorization.kcp.dev: access granted",
    "tenancy.kcp.dev/workspace": "root:e2e-org-b7zvn:provider-a",
    "toplevel.authorization.kcp.dev/decision": "Allowed",
    "toplevel.authorization.kcp.dev/reason": "delegating due to root workspace policy for \"e2e-org-b7zvn\": RBAC: allowed by ClusterRoleBinding \"system:admin:system:kcp:clusterworkspace:admin\" of ClusterRole \"cluster-admin\" to Group \"system:kcp:clusterworkspace:admin\": content.authorization.kcp.dev: access granted"

/lgtm
/approve


Deploy key doesn't work in multiple repositories (rw / r)

Gitea version (or commit ref): 1546458 / 1.4.1
Git version: 2.7.4
Operating system: Ubuntu 16.04.4 LTS
Database (use [x]):

[ ] PostgreSQL
[ ] MySQL
[ ] MSSQL
[x] SQLite

Can you reproduce the bug at https://try.gitea.io:

[x] Yes (provide example URL)
[ ] No
[ ] Not relevant

Log gist:

xorm.log
2018/05/13 11:50:57 [I] [SQL] SELECT `id`, `key_id`, `repo_id`, `name`, `fingerprint`, `mode`, `created_unix`, `updated_unix` FROM `deploy_key` WHERE (key_id = ? AND repo_id = ?) LIMIT 1 []interface {}{3, 8}

Description
I tried to add a deploy key with different read/write settings to multiple repositories:

add  deploy key to repository 1 as read/write
add same deploy key to repository 2 as read

Result:
deploy key in repository 1 works
deploy key in repository 1 doesn't work
git clone git@try.gitea.io:flori/test1.git
Cloning into 'test1'...
The authenticity of host 'try.gitea.io (2604:a880:400:d1::6b0:2001)' can't be established.
ECDSA key fingerprint is SHA256:ZALpHWW7Q1lMvG/9K2EJPApn6XiO4hx2/PN/zWcY7CI.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'try.gitea.io,2604:a880:400:d1::6b0:2001' (ECDSA) to the list of known hosts.
remote: Counting objects: 5, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 5 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (5/5), done.
Checking connectivity... done.

Cloning into 'test2'...
Gitea: Key access denied
Deploy key access denied: [key_id: 247, repo_id: 5568]
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Screenshots

Currently it is not supported to reuse key on multiple repositories

This should be fixed by #5939
Therefore I'm going to close this.


Fix minor typo in README.me

Fixed a possible minor typo in the readme

If 409 was the intended value, then feel free to close this PR.

Was a typo indeed (Tho, to be clear to anyone reading this: the value is allowed). Thanks for the patch!


Coco export start categories id from 0 instead of 1

Coco format needs that categories ids start with 1.
Ex: if I have 3 categories, their ids should be 1, 2 and 3.
But sadly label-studio via "export coco", set them as 0, 1 and 2.

Ok I bypassed the issue by setting explicit categories id in "settings > labelling interface > code". Then add category="1", etc.
Note, during previous export I didn't set this, so the export started with category id 0. But still this is a bug, it should start by 1 to be conform with Coco norms.
See example :
<View>

  <Header value="Select label and click the image to start"/>
  <Image name="image" value="$image" zoom="true" zoomControl="true"/>
  <PolygonLabels name="label" toName="image" strokeWidth="3" pointSize="small" opacity="0.9">
    <Label category="1" value="top" background="#f66151"/>
    <Label category="2" value="destination" background="#dc8add"/>
  </PolygonLabels>

</View>

Hi Abu, thank for your answer. No problem, I found a workaround, so this bug can be fixed when the team have needed resources. Have a nice day.


Add hover text to options popup

Adds hover text as a required field for options, which is displayed when hovering over a question mark icon next to each option in the popup. It should be a longer description with details that won't fit in the short name.

I went ahead and made both short and long descriptions part of the option objects. It still bugs me that there's hard coding of input types in popup.html, but... maybe a change for another time.


WIP: Add option to deploy Runtimeclass automatically

solves #6
This PR adds

support for creating the runtimeclass automatically

Adds tests for job reconciler testing the runtimeclass is successfully created

adding "CREATE_RUNTIME_CLASS" to the Helm chart (false per default)

The docker-build-push github action is now only running on merges/commits to the main branch.

a new test pipeline is running on PullRequests executing ginkgo tests

@mschmidt291 What is still missing here to merge it?

@mschmidt291 What is still missing here to merge it?

This PR only creates a Runtimeclass for crun, but it makes more sense to allow dynamic runtimeclass creation and not only for crun.

It hink this will ne obsolete with the implementation of https://github.com/KWasm/kwasm-operator/issues/25.


Script Isn't working anymore

Hi I just came across this and love the idea. My strong suit isn't JS so after trying to update the script it wouldn't seem to work. Is there something in the dom that changed, causing this script to break? It looks like after finding 0 connections the code just breaks.

Same Here


Query: host tauri backend in a remote machine and plug into the desktop frontend

@Abdenasser
Would u mind laying out the steps to host tauri dev backend in a remote ssh machine and plug it to the frontend?
Ref #7

@laciferin2024 what for ?

oh, I think you mean for us to build the linux image.. we can instead setup github actions to do that for us, but i also want to test it and play with it myself.. I'll maybe setup a virtual machine on my computer with ubuntu or some other distribution

@laciferin2024 what for ?

I want to bring in cross platform support. I think its possible for us to make a chrome app, remote visual appealing htop. I have a valid use case where i have a couple of my vms and I want to monitor the processes from time to time via neohtop. But they all necessitate either frontend decoupling or Remote Desktop protocol

it's cross platform, but it's a desktop app.. unless I'm understanding this wrong, you want frontend and backend to be separate/ or expose an API from the desktop/ or use tauri just as a frontend to talk to some rust agent on a different machine!

Yeah u guessed it right. Under the hood, tauri should be using websockets to run the rust code. So it should be possible to decouple the tauri backend.

@laciferin2024 this might be a good feature to implement, I can image people using  NeoHtop and connecting it through http or tcp with a NeoHtop agent running on some server.. lets start using github discussions instead of issues

Ok, sounds good


Benchmark of DbOom done by 3rd pary

Here: https://github.com/mstempell/sql2o/commit/9596fa83f3ca57a56b796a0da671c6936187e196
Send official pull request.

not being actively developed

I have used your commits for nee PR -> https://github.com/aaberg/sql2o/pull/292


Getting Error when attempting to deploy to Tenant App Catalog as Tenant Admin

Category

[x] Bug

I am attempting to provision the Starter Kit using Global Admin account.  I am following the instructions under Getting Started.  I am on the second step after getting pre-requisites all validated where I am running the command to apply the starterkit.pnp bundle.
Expected or Desired Behavior
Expectation that  Apply-PnPProvisioningTemplate -Path .\starterkit.pnp will start the provisioning step.
Observed Behavior
Apply-PnPProvisioningTemplate -Path .\starterkit.pnp
WARNING: The source site from which the template was generated had a base template ID value of GROUP#0, while the current target site has a base template ID value
 of TENANTADMIN#0. This could cause potential issues while applying the template.
Apply-PnPProvisioningTemplate : {"odata.error":{"code":"-2146232832, Microsoft.SharePoint.SPException","message":{"lang":"en-US","value":"The current user does
not have the permission to access the App Catalog."}}}
At line:1 char:1
+ Apply-PnPProvisioningTemplate -Path .\starterkit.pnp
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (:) [Apply-PnPProvisioningTemplate], Exception
    + FullyQualifiedErrorId : EXCEPTION,PnP.PowerShell.Commands.Provisioning.Site.ApplyProvisioningTemplate

Steps to Reproduce
Connect-PnPOnline -Url https://<tenant>-admin.sharepoint.com -Credentials (Get-Credential)
Apply-PnPProvisioningTemplate -Path .\starterkit.pnp

Environment Details (Development & Target environment)

Starter kit version: v2
OS:  Windows 10
Target Environment: SharePoint Online
Framework:  v10

Thansk to #437, i saw that i can turn on TraceLog when executing the command. Here is the output:

What version of pnp ps are you using? You may want to consider downgrading to 3.20.2004.0, which I have found to be successful. Though first confirm the account you are using is a listed SCA for your tenant app catalog.

I was using the latest version, 3.25.2009.1.  I have just downgraded to 3.20.2004.0.  Indeed, that did the trick.  I already ensured that SCA permissions were there on tenant app catalog site.
I have another dev tenant that was failing with 403 error. That one ahs MFA turned on.  I had to reset the "targeted release for everyon" option, so will want to test that tomorrow for MFA enabled tenants.

Looks like you are using Apply-PnPProvisioningTemplate instead of Apply-PnPTenantTemplate.
Apply-PnPTenantTemplate -Path .\starterkit.pnp

I opened up an issue over at PnP Core as well as this appears to be an issue with how the core engine provisions.
https://github.com/pnp/PnP-Sites-Core/issues/2757

Hi @romanatsogeti,
Thanks for using the PnP Starter Kit. Based on the provided description, you are connecting to the admin site:
Connect-PnPOnline -Url https://-admin.sharepoint.com -Credentials (Get-Credential) <= Wrong
Instead of using the root site collection of your tenant:
Connect-PnPOnline -Url https://.sharepoint.com -Credentials (Get-Credential) <= Correct
Moreover, you need to use Apply-PnPTenantTemplate instead of Apply-PnPProvisioningTemplate, as already highlighted by @bcameron1231 . I will close this issue. In case of any further need or issue, please create another item. Thanks.


Update weathermap-cacti-plugin.php

Fix for Weathermap plugin scroll doesn't work on first click #93

Congrats for getting this fixed!


Explain to use make help

Explain that you can find other test targets (docker etc) by using make help

Pushed small clarification. Here is make help output:
test                           Run all tests
busted                         Test Lua.
check                          Run luacheck to lint lua files
prove                          Test nginx
prove-docker                   Test nginx inside docker
builder-image                  Build builder image
runtime-image                  Build runtime image
push                           Push image to the registry
bash                           Run bash inside the builder image
test-builder-image             Smoke test the builder image. Pass any docker image in IMAGE_NAME parameter.
test-runtime-image             Smoke test the runtime image. Pass any docker image in IMAGE_NAME parameter.
clean                          Remove all running docker containers
help                           Print this help


Remove old benchmarking scripts and update documentation

We have created a new benchmarking test and so no longer need the old scripts as they do not cover the metrics that we want to check. These have therefore been deleted and I have updated the documentation to detail the purpose and use of the new benchmarking test.

Thanks again @AlexanderWells-diamond - hopefully that's it for PRs from me for a bit.


ICE: missing tokens for node: Expr

I tried this code:

fn main() {
    #[kani::proof]
    matches!(1, 1) || true
}

using the following command line invocation:
<command>

with Kani version: 0.54.0
I expected to see this happen: explanation

Instead, this happened: explanation
Kani Rust Verifier 0.54.0 (standalone)
error[E0658]: attributes on expressions are experimental
 --> l.rs:2:5
  |
2 |     #[kani::proof]
  |     ^^^^^^^^^^^^^^
  |
  = note: see issue #15701 <https://github.com/rust-lang/rust/issues/15701> for more information
  = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable
  = note: this compiler was built on 2024-08-06; consider upgrading it if it is out of date

error[E0658]: custom attributes cannot be applied to expressions
 --> l.rs:2:5
  |
2 |     #[kani::proof]
  |     ^^^^^^^^^^^^^^
  |
  = note: see issue #54727 <https://github.com/rust-lang/rust/issues/54727> for more information
  = help: add `#![feature(proc_macro_hygiene)]` to the crate attributes to enable
  = note: this compiler was built on 2024-08-06; consider upgrading it if it is out of date

thread 'rustc' panicked at /rustc/60d146580c10036ce89e019422c6bc2fd9729b65/compiler/rustc_ast/src/tokenstream.rs:456:54:
missing tokens for node: Expr { id: NodeId(4294967040), kind: MacCall(MacCall { path: Path { span: l.rs:3:5: 3:12 (#0), segments: [PathSegment { ident: matches#0, id: NodeId(4294967040), args: None }], tokens: None }, args: DelimArgs { dspan: DelimSpan { open: l.rs:3:13: 3:14 (#0), close: l.rs:3:18: 3:19 (#0) }, delim: Parenthesis, tokens: TokenStream([Token(Token { kind: Literal(Lit { kind: Integer, symbol: "1", suffix: None }), span: l.rs:3:14: 3:15 (#0) }, Joint), Token(Token { kind: Comma, span: l.rs:3:15: 3:16 (#0) }, Alone), Token(Token { kind: Literal(Lit { kind: Integer, symbol: "1", suffix: None }), span: l.rs:3:17: 3:18 (#0) }, JointHidden)]) } }), span: l.rs:3:5: 3:19 (#0), attrs: [], tokens: None }
stack backtrace:
   0: rust_begin_unwind
             at /rustc/60d146580c10036ce89e019422c6bc2fd9729b65/library/std/src/panicking.rs:662:5
   1: core::panicking::panic_fmt
             at /rustc/60d146580c10036ce89e019422c6bc2fd9729b65/library/core/src/panicking.rs:74:14
   2: <rustc_expand::base::Annotatable>::to_tokens
   3: <rustc_expand::expand::MacroExpander>::fully_expand_fragment
   4: <rustc_expand::expand::MacroExpander>::expand_crate
   5: rustc_interface::passes::resolver_for_lowering_raw
      [... omitted 2 frames ...]
   6: rustc_interface::interface::run_compiler::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Kani unexpectedly panicked during compilation.
Please file an issue here: https://github.com/model-checking/kani/issues/new?labels=bug&template=bug_report.md
error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0658`.
error: /home/matthias/.kani/kani-0.54.0/bin/kani-compiler exited with status exit status: 101

tbh this looks more like a rustc crash that a kani crash.
Is there a way for kani to dump the resulting / expanded rustc code that it feeds into rustc, in order to check if this ICEs with standalone rustc? :thinking:

Normally, this can be done using RUSTFLAGS="-Zunpretty=expanded" cargo kani. For example, running it on a hello world program produces:
$ RUSTFLAGS="-Zunpretty=expanded" cargo kani
Kani Rust Verifier 0.54.0 (cargo plugin)
   Compiling t12 v0.1.0 (/home/ubuntu/examples/t12)
#![feature(prelude_import)]
#![feature(register_tool)]
#![register_tool(kanitool)]
#[prelude_import]
use std::prelude::rust_2021::*;
#[macro_use]
extern crate std;
fn main() { { let _ = format_args!("Hello, world!"); }; }

But in the test you posted, it doesn't seem to be working:
$ RUSTFLAGS="-Zunpretty=expanded" cargo kani
Kani Rust Verifier 0.54.0 (cargo plugin)
   Compiling iss3446 v0.1.0 (/home/ubuntu/examples/iss3446)
error[E0658]: attributes on expressions are experimental
 --> src/main.rs:2:5
  |
2 |     #[kani::proof]
  |     ^^^^^^^^^^^^^^
  |
  = note: see issue #15701 <https://github.com/rust-lang/rust/issues/15701> for more information
  = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable
  = note: this compiler was built on 2024-08-06; consider upgrading it if it is out of date

thread 'rustc' panicked at /rustc/60d146580c10036ce89e019422c6bc2fd9729b65/compiler/rustc_ast/src/tokenstream.rs:456:54:
missing tokens for node: Expr { id: NodeId(4294967040), kind: MacCall(MacCall { path: Path { span: src/main.rs:3:5: 3:12 (#0), segments: [PathSegment { ident: matches#0, id: NodeId(4294967040), args: None }], tokens: None }, args: DelimArgs { dspan: DelimSpan { open: src/main.rs:3:13: 3:14 (#0), close: src/main.rs:3:18: 3:19 (#0) }, delim: Parenthesis, tokens: TokenStream([Token(Token { kind: Literal(Lit { kind: Integer, symbol: "1", suffix: None }), span: src/main.rs:3:14: 3:15 (#0) }, Joint), Token(Token { kind: Comma, span: src/main.rs:3:15: 3:16 (#0) }, Alone), Token(Token { kind: Literal(Lit { kind: Integer, symbol: "1", suffix: None }), span: src/main.rs:3:17: 3:18 (#0) }, JointHidden)]) } }), span: src/main.rs:3:5: 3:19 (#0), attrs: [], tokens: None }
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Kani unexpectedly panicked during compilation.error[E0658]: custom attributes cannot be applied to expressions
 --> src/main.rs:2:5
  |
2 |     #[kani::proof]
  |     ^^^^^^^^^^^^^^
  |
  = note: see issue #54727 <https://github.com/rust-lang/rust/issues/54727> for more information
  = help: add `#![feature(proc_macro_hygiene)]` to the crate attributes to enable
  = note: this compiler was built on 2024-08-06; consider upgrading it if it is out of date

Please file an issue here: https://github.com/model-checking/kani/issues/new?labels=bug&template=bug_report.md
error: internal compiler error: Kani unexpectedly panicked at panicked at /rustc/60d146580c10036ce89e019422c6bc2fd9729b65/compiler/rustc_ast/src/tokenstream.rs:456:54:
                                missing tokens for node: Expr { id: NodeId(4294967040), kind: MacCall(MacCall { path: Path { span: src/main.rs:3:5: 3:12 (#0), segments: [PathSegment { ident: matches#0, id: NodeId(4294967040), args: None }], tokens: None }, args: DelimArgs { dspan: DelimSpan { open: src/main.rs:3:13: 3:14 (#0), close: src/main.rs:3:18: 3:19 (#0) }, delim: Parenthesis, tokens: TokenStream([Token(Token { kind: Literal(Lit { kind: Integer, symbol: "1", suffix: None }), span: src/main.rs:3:14: 3:15 (#0) }, Joint), Token(Token { kind: Comma, span: src/main.rs:3:15: 3:16 (#0) }, Alone), Token(Token { kind: Literal(Lit { kind: Integer, symbol: "1", suffix: None }), span: src/main.rs:3:17: 3:18 (#0) }, JointHidden)]) } }), span: src/main.rs:3:5: 3:19 (#0), attrs: [], tokens: None }.

error: could not compile `iss3446` (bin "iss3446") due to 3 previous errors
error: Failed to compile `iss3446` due to an internal compiler error.: error: internal compiler error: Kani unexpectedly panicked at panicked at /rustc/60d146580c10036ce89e019422c6bc2fd9729b65/compiler/rustc_ast/src/tokenstream.rs:456:54:
                                missing tokens for node: Expr { id: NodeId(4294967040), kind: MacCall(MacCall { path: Path { span: src/main.rs:3:5: 3:12 (#0), segments: [PathSegment { ident: matches#0, id: NodeId(4294967040), args: None }], tokens: None }, args: DelimArgs { dspan: DelimSpan { open: src/main.rs:3:13: 3:14 (#0), close: src/main.rs:3:18: 3:19 (#0) }, delim: Parenthesis, tokens: TokenStream([Token(Token { kind: Literal(Lit { kind: Integer, symbol: "1", suffix: None }), span: src/main.rs:3:14: 3:15 (#0) }, Joint), Token(Token { kind: Comma, span: src/main.rs:3:15: 3:16 (#0) }, Alone), Token(Token { kind: Literal(Lit { kind: Integer, symbol: "1", suffix: None }), span: src/main.rs:3:17: 3:18 (#0) }, JointHidden)]) } }), span: src/main.rs:3:5: 3:19 (#0), attrs: [], tokens: None }.


WIP – not ready yet – need a few more things to land in google3

This is an automatically generated pull request.

Closing out – https://github.com/dart-lang/intl/pull/321 is truth!


Block book notification tests

To facilitate the tracking of an unconfirmed transaction an additional CountBase is created to keep track of the unconfirmed transactions. A count base was chosen to enable extension of its functionality into tracking non-matured transactions. In such a scenario each coin would have a defined maturity limit. This would also make it easier to detect and track transaction re-orgs.
If a new transaction is saved to the Transaction base with a block height of 0, its txid is added to count base at index 0.
Upon each incoming block notification all txids in the unconfirmed transaction count base are fetched. For each of them, their transaction data is re-fetched from Blockbook and compared with their existing saved transaction. If its block height is changed, the new transaction updates the old one and its txid is removed from the count base.
Blockbook does not expose an endpoint for block headers, so it's not possible to simply check for txid inclusion in them. Instead, the entire block can be fetched from Blockbook. It does not seem worth the extra bandwidth, especially compared to fetching just a couple of transactions. It might be interesting to eventually fetch the entire block when reaching a threshold of unconfirmed transactions.

I have not looked at the code but based on your description above it looks like a countbase is the incorrect database type for tracking unconfirmed transactions. The problem with a countbase is that you can only put one transaction per entry. It's basically an array. The architecture designed, but not yet implemented, was to use a rangebase. Then you could put all unconfirmed transactions at the range value zero and easily find them. As well you could also put transactions into the range base on their actual blockheight and if you needed to drop a transaction that was actually confirmed, you could easily find them based on the block height.


[ismrmrd] Removed unused dependencies

[x] Changes comply with the maintainer guide
[x] SHA512s are updated for each updated download
[x] The "supports" clause reflects platforms that may be fixed by this new version
[x] Any fixed CI baseline entries are removed from that file.
[x] Any patches that are no longer applied are deleted from the port's directory.
[x] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[x] Only one version is added to each modified port's versions file.

I confirmed that these dependencies are disabled by
        -DBUILD_TESTS=OFF
        -DBUILD_UTILITIES=OFF

Thanks!


MultiAgentDebate for predictions

Interesting!
Code LGTM, do you have any specific benchmark results or probably not yet?

Would also be interested to see the outcomes you get from this system. Especially because it's not super obvious to me that future even prediction (probabilistic answers) benefits in that same way as the kinds of problems they test on in that paper (maths/reasoning problems, which have a certain, knowable answer). If the limiting factor is in the prediction step, then hopefully we'll see an improvement here. But if the limiting factor is in the quality of the research, then maybe the performance won't be that different. Either way, very interested to see the results!

Would also be interested to see the outcomes you get from this system. Especially because it's not super obvious to me that future even prediction (probabilistic answers) benefits in that same way as the kinds of problems they test on in that paper (maths/reasoning problems, which have a certain, knowable answer). If the limiting factor is in the prediction step, then hopefully we'll see an improvement here. But if the limiting factor is in the quality of the research, then maybe the performance won't be that different. Either way, very interested to see the results!

Yeah, I think these are great points. I'll merge it as a function; and now that it's working, let's benchmark it and see if it tangibly helps


EventCategory Error in Admin Panel

When I go to the EventCategory page in the admin panel I get 'TypeError at /admin/calendarium/eventcategory/' and the page won't load. I'm on Python 3.8.10 and Django 3.2

@sreno77 This project is not working with Django 3.2 https://github.com/bitlabstudio/django-calendarium#compatibility
Feel free to come up with a merge request.


fixSkip unknown stats while show cached partition stats.

Don't show anything if cached partition stats for a column doesn't exists. Before it will show default value which is misleading.

run buildall


Feature Request: Change Light Theme Time based on the Weekday

I think it would be an enrichment to to be able to change the Mode based on the Weekday.

Hi @Daveismus, can you please explain what would be the benefits for the end user? The app acts like night shift (dark theme at night - same for all days, night is the same time for all days) and nowhere (both on PCs, Macs, phones) there is an option to change the time based on weekdays.

For example if you use it saturdays I want it to be longer dark in the morning, because I get up later.

This will not be implemented in favor of #24. Closing this ticket.


router-store and entity-service should not depend on exact versions

I'm submitting a...

[ ] Regression (a behavior that used to work and stopped working in a new release)
[x] Bug report
[ ] Performance issue
[ ] Feature request
[ ] Documentation issue or request
[ ] Support request
[ ] Other... Please describe:

Current behavior
router-store package has the following dependencies:
    "@datorama/akita": "5.0.2",
    "rxjs": "6.4.0",
    "@angular/core": "9.1.1",
    "@angular/router": "9.1.1",
    "@angular/common": "9.1.1"

and entity-service has the following:
    "@datorama/akita": "5.0.2",
    "@angular/core": "9.1.1",
    "@angular/common": "9.1.1"

Expected behavior
As a minimum those libraries should depend on a range of versions, not on an exact version. Ideally all library dependencies should be listed as peerDependencies instead of normal dependencies.
Minimal reproduction of the problem with instructions
Try to install the libraries mentioned above.
What is the motivation / use case for changing the behavior?
If your app depends on different library versions than the ones listed by router-store and entity-service, TypeScript will complain about mismatched types since, for example, Observable from<EMAIL_ADDRESS>is not the same as Observable from<EMAIL_ADDRESS>

Fixed in latest versions.


Does chronos handles day light savings ?

A job scheduled with startTime as yyyy-MM-DD'T'02:15:00.000+11:00 for the  scheduleTimeZone Australia/Sydney.
The time in which the job is triggered on the day on which light savings is over.

[ ] 02:15
[ ] 01:15
[ ] twice on 02:15 the same day.

Hi @cherianhormis,
By my reading of the code, Chronos should handle this by running it once at 02.15.
It would be great to have a test case around this though.

Thanks a lot Philip.
I will try implementing a test case for that.


Improvement: "Bring your own corpus"

It would just take a couple tweaks (and some input sanitizing) to allow someone to upload/copy paste a corpus to generate from on the website, and get a custom poem built from that text.

Done!


Header isn't read

I get this with every winCE file that I test.
I tested against these old files.
https://forum.xda-developers.com/t/nk-bin-and-dumprom.656086/?__cf_chl_jschl_tk__=D2uAXTkdfKd1Y3SVgHH3ka3tCpQxGJyAN1o60NbeGBo-1636038001-0-gaNycGzNChE
File "/home/user/works/wince-extractor/winceextractor.py", line 823, in <module>
   with WinCEExtractor(f, image_offset) as extractor:
 File "/home/user/works/wince-extractor/winceextractor.py", line 498, in __enter__
   self.analyze()
 File "/home/user/works/wince-extractor/winceextractor.py", line 519, in analyze
   romhdr_s = load_from_offset(self.data, self.romhdr_offset, RomHdr)
 File "/home/user/works/wince-extractor/winceextractor.py", line 431, in load_from_offset
   return structure.from_buffer_copy(data[offset:offset + ctypes.sizeof(structure)])
ValueError: Buffer size too small (0 instead of at least 84 bytes)

@ArtificialAmateur here I opened an issue.

The target files are for ARM, the wince decompression only tool targets the x86-specific compression algorithm that does additional preprocessing. It might be worth testing without the relative call opcode preprocessing.
Closing until a patch is submitted.


Improve the output of GPyOpt

To improve and generalize the way of the output is generated in GPyOpt.

Design an abstract class for representing the output of BO process.
Unify the code for generating output files for different interfaces.

There is little point of keeping this around, as I don't think it will be addressed in a foreseeable future.


Use trusted publisher approach for releasing

Self explanatory

Ping me once the PR is up so that I can register it in PyPI


Receiver form allows invalid input for some secrets

In the new receiver form for project monitoring, the YAML isn't cleared out properly when you change a secret from an existing secret to none.
I already fixed this behavior for the httpConfig and tlsConfig secrets. It's just a matter of porting the fix over to a few other fields, but I ran out of time.
To reproduce:

Create an AlertmanagerConfig
Within the AlertmanagerConfig, create a receiver. Let's call it slack-test
In the Secret with Slack Webhook URL field, select any secret and select a key with the secret.
Save the receiver.
Go to edit the receiver again, and this time set Secret with Slack Webhook URL to None.
Click Edit as YAML
See that the result of setting the secret to none is like this:

slackConfigs:
        - apiURL:
            key: username
            name: __[[NONE]]__

The expected behavior is for the whole value to be cleared out if no secret is selected. The apiURL field should just be deleted.
The workaround is to delete the values in YAML.
The affected secrets are the same ones I added in this PR, except for the ones in the httpConfig: https://github.com/rancher/dashboard/pull/5772 (The secrets I added in this PR are not affected: https://github.com/rancher/dashboard/pull/5850)

Can't test my PR until a routing bug is fixed

QA Template
Root cause
Didn't finish writing the code for clearing secrets when set to None
What was fixed, or what changes have occurred
When you are filling out a receiver form within an AlertmanagerConfig, the following 5 secrets are now cleared when set to None:

Email

auth password secret

Opsgenie

API key secret

PagerDuty (note: only one of these secrets can be seen at a time)

routing key secret
service key secret

Slack

API URL secret

Areas or cases that should be tested
Making sure YAML is still valid and can be saved when the above 5 secrets are set to None
What areas could experience regressions?
Can't think of any

reopening after following steps and not seeing expected behavior
version tested 2.6.6-rc2

created receiver
added slack
selected token
edited yaml to change name: none
saved
edit yaml

apiURL field remains

Not seeing expected behavior when testing

I just tried it again and I don't see the behavior in your screenshots. When I have an API url configured for the Slack receiver it shows up:

And then when I set the secret to None from the form view, then go to the YAML view, the API url is gone:

It seems that if you go to the YAML view first and then save, it works. But if you set it to none, then save without looking at YAML, it doesn't work.

Pass Verified in 2.6-head commit ID 2c21373

installed monitoring
installed alerting
created alertmanager config
added receiver for slack with auth: token
edited yaml and see apiURL section in yaml
saved
checked yaml and verified yaml was saved
edit config again on slack receiver
changed auth to 'none' on form
switched to yaml and verified that apiURL section was gone.
saved and rechecked
confirmed change was saved


MySQL table_stats_query failed when table name is one of reserved words

First off - database_cleaner is such a great help for me! Kudos to all contributors for your efforts in building, polishing and maintaining this.
I use MySQL for a Rails project which we use database_cleaner and RSpec to perform testing. Recently we've upgraded database_cleaner from version 1.5.0 to 1.6.2 and we can't clean with delete strategy anymore. We found out at some point that one of our tables is names "references" and it's reserved word in MySQL. Following are error logs (project name/full database schema stripped down to demonstrate problems)
Randomized with seed 60081

An error occurred in a `before(:suite)` hook.
Failure/Error: DatabaseCleaner.clean_with(:deletion)

ActiveRecord::StatementInvalid:
  Mysql2::Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'references' at line 1: SELECT "parameters" AS table_name, COUNT(*) AS exact_row_count FROM parameters UNION SELECT "references" AS table_name, COUNT(*) AS exact_row_count FROM references
# /apps/rvm/gems/ruby-2.4.1@project/gems/mysql2-0.4.10/lib/mysql2/client.rb:120:in `_query'
# /apps/rvm/gems/ruby-2.4.1@project/gems/mysql2-0.4.10/lib/mysql2/client.rb:120:in `block in query'
# /apps/rvm/gems/ruby-2.4.1@project/gems/mysql2-0.4.10/lib/mysql2/client.rb:119:in `handle_interrupt'
# /apps/rvm/gems/ruby-2.4.1@project/gems/mysql2-0.4.10/lib/mysql2/client.rb:119:in `query'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activerecord-5.1.4/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:214:in `block (2 levels) in execute'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activesupport-5.1.4/lib/active_support/dependencies/interlock.rb:46:in `block in permit_concurrent_loads'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activesupport-5.1.4/lib/active_support/concurrency/share_lock.rb:185:in `yield_shares'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activesupport-5.1.4/lib/active_support/dependencies/interlock.rb:45:in `permit_concurrent_loads'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activerecord-5.1.4/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:213:in `block in execute'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activerecord-5.1.4/lib/active_record/connection_adapters/abstract_adapter.rb:612:in `block (2 levels) in log'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activerecord-5.1.4/lib/active_record/connection_adapters/abstract_adapter.rb:611:in `block in log'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activesupport-5.1.4/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activerecord-5.1.4/lib/active_record/connection_adapters/abstract_adapter.rb:603:in `log'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activerecord-5.1.4/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:212:in `execute'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activerecord-5.1.4/lib/active_record/connection_adapters/mysql/database_statements.rb:26:in `execute'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activerecord-5.1.4/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:223:in `execute_and_free'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activerecord-5.1.4/lib/active_record/connection_adapters/mysql/database_statements.rb:31:in `exec_query'
# /apps/rvm/gems/ruby-2.4.1@project/gems/database_cleaner-1.6.2/lib/database_cleaner/active_record/deletion.rb:59:in `tables_with_new_rows'
# /apps/rvm/gems/ruby-2.4.1@project/gems/database_cleaner-1.6.2/lib/database_cleaner/active_record/deletion.rb:49:in `tables_to_truncate'
# /apps/rvm/gems/ruby-2.4.1@project/gems/database_cleaner-1.6.2/lib/database_cleaner/active_record/deletion.rb:108:in `block in clean'
# /apps/rvm/gems/ruby-2.4.1@project/gems/activerecord-5.1.4/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:183:in `disable_referential_integrity'
# /apps/rvm/gems/ruby-2.4.1@project/gems/database_cleaner-1.6.2/lib/database_cleaner/active_record/deletion.rb:107:in `clean'
# /apps/rvm/gems/ruby-2.4.1@project/gems/database_cleaner-1.6.2/lib/database_cleaner/base.rb:46:in `clean_with'
# /apps/rvm/gems/ruby-2.4.1@project/gems/database_cleaner-1.6.2/lib/database_cleaner/configuration.rb:91:in `block in clean_with'
# /apps/rvm/gems/ruby-2.4.1@project/gems/database_cleaner-1.6.2/lib/database_cleaner/configuration.rb:91:in `each'
# /apps/rvm/gems/ruby-2.4.1@project/gems/database_cleaner-1.6.2/lib/database_cleaner/configuration.rb:91:in `clean_with'
# ./spec/rails_helper.rb:120:in `block (2 levels) in <top (required)>'

And following are my sort-of db/schema.rb
ActiveRecord::Schema.define(version:<PHONE_NUMBER>2342) do

  create_table "parameters", id: :integer, force: :cascade, options: "ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci" do |t|
    t.string "key"
    t.text "value"
    t.string "description"
    t.datetime "created_at"
    t.datetime "updated_at"
  end

  create_table "references", id: :integer, force: :cascade, options: "ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci" do |t|
    t.string "type"
    t.string "name"
    t.string "abbreviation"
    t.string "description", limit: 5000
    t.datetime "created_at"
    t.datetime "updated_at"
    t.boolean "active_ind", default: true
  end

My Ruby-fu are not smart enough to do monkey patch the code but following modification (in https://github.com/DatabaseCleaner/database_cleaner/blob/master/lib/database_cleaner/active_record/deletion.rb#L70) allows me to get past the errors we got.
def table_stats_query(connection, db_name)
  if @cache_tables &&<EMAIL_ADDRESS>    return @table_stats_query
  else
    @table_stats_query = connection.select_values(<<-SQL).join(' UNION ')
           SELECT CONCAT('SELECT \"', table_name, '\" AS table_name, COUNT(*) AS exact_row_count FROM \`', table_name, '\`')
           FROM
           INFORMATION_SCHEMA.TABLES
           WHERE
           table_schema = '#{db_name}'
           AND #{::DatabaseCleaner::ActiveRecord::Base.exclusion_condition('table_name')};
    SQL
  end
end

I'm not sure that a) This problems also happens to other db adapters or not and b) this fix won't cause problems elsewhere as well.
Please advise.

Closed via https://github.com/DatabaseCleaner/database_cleaner/pull/501


Doc RawTableInner::find_insert_slot and also make it unsafe

Made this function unsafe, as it is possible to use the index returned by this function unsafely. Here are two functions that confirm the documentation I made:
#[test]
fn test_infinite_loop() {
	use ::alloc::vec::Vec;
	let mut table: RawTable<u16> = RawTable::with_capacity(20);

	assert_eq!(table.capacity(), 28);
	assert_eq!(table.buckets(), 32);
	for i in 0..table.buckets() {
		unsafe {
			let bucket_index = table.table.find_insert_slot(i as u64);

			table.table.set_ctrl_h2(bucket_index, i as u64);
			table.table.items += 1;

			table.bucket(bucket_index).write(i as u16);
		}
	}

	let vec = unsafe { table.iter().map(|x| x.read()).collect::<Vec<_>>() };

	assert_eq!(vec, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31]);

	// this never return
	let _bucket_index = unsafe { table.table.find_insert_slot(32) };
}

#[test]
fn test_undefined_behavior() {
	use ::alloc::vec::Vec;

	let mut table: RawTable<u16> = RawTable::with_capacity(3);

	assert_eq!(table.capacity(), 3);
	assert_eq!(table.buckets(), 4);
	for i in 0..3 {
		table.insert(i, i as u16, |i| *i as u64);
	}

	assert_eq!(table.table.items, 3);
	assert_eq!(table.table.growth_left, 0);

	let bucket_index = unsafe { table.table.find_insert_slot(3_u64) };

	assert_eq!(bucket_index, 3);

	unsafe {
		table.table.set_ctrl_h2(bucket_index, 3_u64);
		table.table.items += 1;
		table.bucket(bucket_index).write(3_u16);
	}

	let vec = unsafe { table.iter().map(|x| x.read()).collect::<Vec<_>>() };

	assert_eq!(vec, [0, 1, 2, 3]);
	let bucket_index = unsafe { table.table.find_insert_slot(4_u64) };
	assert_eq!(bucket_index, 4);
}

This function should not be unsafe. As you said in the doc, it is always safe to call. unsafe should only be used when a function can cause UB with certain arguments.

This function should not be unsafe. As you said in the doc, it is always safe to call. unsafe should only be used when a function can cause UB with certain arguments.

I removed unsafe and changed "Safety" to "Note"

@bors r+

:pushpin: Commit<PHONE_NUMBER>c4223c8d9f3e967dae0544be9088f7 has been approved by Amanieu
It is now in the queue for this repository.

:hourglass: Testing commit<PHONE_NUMBER>c4223c8d9f3e967dae0544be9088f7 with merge d40ffa1ad39c424bd24ad593bc3b488ccaebd06a...

:sunny: Test successful - checks-actions
Approved by: Amanieu
Pushing d40ffa1ad39c424bd24ad593bc3b488ccaebd06a to master...


Change verification key points in contract to constant

The VK_POINTS points variable storing the verification key points in the contract is not a constant.
The value will be stored in storage slots and would require reading every time. If this could be changed to a constant, the value will be part of the bytecode and verification will be cheaper (and also better performance I think).
Since this is an array it cannot be marked as constant directly, so other techniques need to be explored.

Hey @cedoor, would love to work on this ? Could you clarify the remaining tasks for this issue? Any additional context would be appreciated. Thanks!

Hi @0xshikhar, this issue is part of #354. Let's sync here: https://github.com/semaphore-protocol/semaphore/issues/345#issuecomment-2413395583

@jimmychu0807 please, leave a comment here.

Hi

Hi @0xshikhar, this issue is part of #354. Let's sync here: #345 (comment)

Sure, got it


Fixed compute_clips docstring

dilation was not passed into compute_clips or any of the functions called by it.

Codecov Report

Merging #1543 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master   #1543   +/-   ##
======================================
  Coverage    64.6%   64.6%
======================================
  Files          87      87
  Lines        6742    6742
  Branches     1034    1034
======================================
  Hits         4356    4356
  Misses       2085    2085
  Partials      301     301

Impacted Files
Coverage Δ

torchvision/datasets/video_utils.py
72.25% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


SAK-29779 update disableControls JavaScript to include checkboxes

https://jira.sakaiproject.org/browse/SAK-29779
The JavaScript functions need to be updated to include checkboxes in the disable/clone/hide algorithm.
I plan on consolodating all of this into a JavaScript file in reference for use across projects in the future (with a new fancy spinner style). However, until that time, the existing ones need to be tweaked.

Test failure unrelated to this PR (elasticsearch-impl test failure)


[Refactor] BirthdayyClient class

Refactors

Creation of a Birthday Bot class with these abstract notions
Rename the env file
Move all declare in env file

My other PR will depend on this one. Can we merge it?


Enhanced error reporting

Addresses #96.
Adds an Error::Os variant so clients can more easily handle errors.
On Windows, maps errors immediately if a file is not found or not accessible.

Here's a first go at an update.

Thanks a lot!


build: adjust ci workflow permissions

Coverage remained the same at 100.0% when pulling 60e76782e2c6b09a744bce67297de9d30274c523 on workflow-permissions into ccfd48f01916d202879489a11bf0f1c71f053454 on main.


Fix context validation issue

This PR includes fixing the context verification issue and disabling the Revocation List because we are not using the final standard.

@koptan please update the app version.


Fix auto update UX

Our automatic update process is pretty bad. We release once a week, and every week over a half million people need to go through this process.
There are errors, bugs, folks want better feedback, and the squirrel icon + release notes are really really confusing:

https://github.com/atom/settings-view/issues/511
https://github.com/atom/release-notes/pull/38
https://github.com/atom/atom/issues/5692
https://github.com/atom/atom/issues/6922
https://github.com/atom/atom/issues/3757
https://github.com/atom/atom/issues/8265

What happens now

Download an old version
Start it
Notice there is a blue squirrel in the status bar, and it says 'view release notes'
Click the squirrel
See the release notes, note that they are showing notes for an old release
Click the restart and update button
Atom quits, notice that there is no feedback as to what is happening.
It's still not back. What's up?
Atom restarts again after 5 - 15 seconds
Notice that the release notes are up in the reloaded window. They are still out of date, and still have the 'Restart and Update' button showing and enabled
Notice that the squirrel icon is still showing, and still blue, with the same tooltip text
I click the squirrel because it's still there, and not going away. It focuses the release notes. Ok.
I'm thinking: is there another update??!? What is happening?
I check the atom menu

Click the 'About' item, theres no information saying it's the latest version
I notice there is a version number, and a 'Check for update'
Nothing indicates I'm at the latest version

On reload, squirrel goes away; still nothing tells me I'm at the latest version. But no squirrel, so I guess so?

A 70% fix
tl;dr: fix the squirrel icon, remove the release notes package, use the about package for update status (similar to chrome).

An update becomes available
The blue squirrel shows, its tooltip says "Downloading update for version 1.0.20..."
Clicking the squirrel shows the about page which shows

the current version
new version detected
some text indicating that the update is being downloaded

When it's finished downloading:

the blue squirrel turns green, with a tooltip of "Version 1.0.20 is available"
the about page now shows that an update is available, and has a button to restart the editor
The menu item now takes you to the about page

Clicking the green squirrel still shows / focuses the about page
Clicking reload reloads the editor like today
On reload the about page is shown.
The about page indicates that you are up to date, and has a link to the release notes
The squirrel is gone after reload as the about page has the relevant information

Additionally, take a stab at the bugs:

https://github.com/atom/atom/issues/7854
https://github.com/atom/atom/issues/6482

Bonus:

In the about page, indicate which release rail you are on. beta? stable? development?

An extra 10%
Add some kind of feedback when atom is reloading. A small window with an infinite spinner would be sufficient. The goal is to indicate that it is working.
That last 20%

Add progress to the download in squirrel (cc @joshaber, is this possible today?)

Add progress to the menu item in %
Add progress to the squirrel icon

Could add a progress bar to the tooltip
Could make the blue squirrel "fill up" with green as it progresses

Add an option to turn off automatic downloads in the about page to fix https://github.com/atom/atom/issues/1882

Add progress to the download in squirrel (cc @joshaber, is this possible today?)

Not currently :disappointed: Certainly something that could be added.

What's difficulty / time commitment on something like that?

Atom restarts again after 5 - 15 seconds

This is a problem for GitHub Desktop on Mac too. Every time we do an update, we get crashes reported because users try to relaunch the app themselves since the updater takes so long to restart the app.

What's difficulty / time commitment on something like that?

The work itself isn't too hard. The time consuming part is testing. Probably a few days worth of work.

:heart: for the info about the mac update issues and the difficulty level.
Would a UI for restart progress make sense in squirrel or should we subscribe to something and show our own window?

Would a UI for restart progress make sense in squirrel or should we subscribe to something and show our own window?

Restart progress or download progress? Restart progress would be tricky since the app is quit at that point.

Restart progress

Yeah some kind of restart feedback. e.g. sketch has a little window with a progress bar when it's restarting after an update.

Oh interesting. Squirrel could do that, though it's a non-trivial amount of effort.
It'd also be interesting to see why restarting takes so long. I suspect there's work we could do up front, before we relaunch, that would shorten the restarting window.

I think download progress can be shown on Squirrel for Windows; I just haven't had enough time yet to dig into the code and try to implement that.  Though now that I've actually built Atom I might be able to make some progress soon :tm:.
also, /cc @paulcbetts and refs #8038
All auto-updater-labeled issues
All installer-labeled issues

The squirrel changing color would be a brilliant quick change.

Squirrel for Windows reports download progress already, in a very node.js friendly way, you just need to wire it up. That being said though, most of the work in Squirrel on Windows isn't downloading, it's reconstituting the full package from the delta. Ideally the download step of your download will be super-ass short

Refs https://github.com/atom/atom/issues/8911

@benogle Are we trying to make something like this?

I noticed that if we want to check for updates we may need to use the auto-update manager from the core. The about page, however, it organized as a separate package

we will just open up the about page from the squirrel

Yes. The release notes package will go away. It has a lot of problems, and it's just duplicating the atom/atom/releases page anyway, so we can just link to that page.

@benogle What are the best ways I can check for updates? currently the release-notes package uses caching to store versions and use that to check against, but I think something simpler can be done?

started working on this and first commit already submitted to https://github.com/atom/about/pull/5, but I am quite busy for the next couple of weeks so will not be able to finish this really soon. But I guess we can discuss on possible improvements based on this commit?

It would be great if linux version could at least check for a newer version.

Currently the implementation is the appearance of the squirrel if the editor emits an update-available event. Clicking on the squirrel will open the Atom release page where you can download the newest update. But I think that we would prefer an auto download and update mechanism like we had now?

On 17 Nov 2015, at 10:43 PM, Yuri<EMAIL_ADDRESS>wrote:
It would be great if linux version could at least check for a newer version.
—
Reply to this email directly or view it on GitHub https://github.com/atom/atom/issues/9164#issuecomment-157389083.

@ethanluoyc I think for linux it should be delivered via system's auto update mechanism based on repositories.
My comment was only about "hey! there is an update available!" notification.

@YuriSolovyov @ethanluoyc Yup, that's definitely something I've wanted to add to about (it's currently being tracked in https://github.com/atom/about/issues/1)

Are there any plans to do away with the usage of the US-only date order for timestamping releases? Kinda selfish seeing MM/DD/YYYY for an internationally-distributed product.
Whole world should just shake hands and use ISO's format, period.

Actually, Atom appears to really not restart at all after an update for me. The first few updates it did pretty well, but at some point the release notes stopped updating (they're still showing the notes for 1.1.0) and around that point Atom stopped auto-restarting after an upgrade. That or my computer is really much slower than I thought. I remember not manually restarting it after clicking the update button for half an our or so, because I didn't need it at that time so I thought it can take its time, and it didn't start again within this timeframe (yet it appears to have updated correctly).
I just updated from 1.3 to 1.3.1 and it didn't restart on its own and I couldn't find an active process once it was shut down.
But it's really confusing. If there wasn't a version info in the help menu I'd think I'm stuck at 1.1.0 for some reason.

I had no idea to look for or notice a squirrel in the bottom right hand corner before checking this issue and reading of it. I'm guessing a major percentage of the average user will never notice it either, in case its intended purpose is being noticed.
I just updated 1.0.19 -> 1.3.2 and clicking the "Restart and Install Update" menu option worked as described, on x64 Windows 10.
I would love to see some kind of progress % update UI somewhere for updating, doesn't have to be super accurate, update every second or 5, or show only every 10% made, etc.

Release notes has been removed and I think the blue squirrel went away, too.
No indication that atom is reloading nor any sort of indication that I'm now running the latest. And no % info on download progress, either.
Are these going to happen?

I think the blue squirrel went away, too.

The squirrel should still be present. Are you getting an update and not seeing it?

I'm on OS 10.10 and I do see the blue squirrel still. Clicking on it took me to release notes page, but it was not clear that there was an update available until I read through some posts and checked the Atom menu where I saw "Restart and Install Update". That worked, but there was no indication afterwards that the update had succeeded, i.e. no confirmation message, feedback, etc. But when I checked the Atom menu again and selected "Check for Update" it confirmed that I was on the latest version. Majority of my confusion I believe was trying to figure out the new update procedure since I am still accustomed to the old procedure. But I still feel that this was an improvement, however minor.

Thanks for the feedback. This is definitely something we are working on at the moment.

@judahstevenson this is pretty much the Chrome update experience: no notifications, it just works behind the scenes, and you have the manually check
@benogle has it been determined that Atom should strive to have a different / better update experience than Chrome?

Basically we're adding some things to the about page to be more like chrome. e.g.

Plus some feedback when it's downloading, when it's already up to date, etc. You can deal with it just like chrome and restart at your leisure, or you can pay attention to the squirrel and do a similar update flow from the about page.

Just an update. This is coming along in:

Foundational work: https://github.com/atom/atom/pull/10675
UI work: https://github.com/atom/about/pull/12

This is now super weird: https://github.com/atom/about/issues/24

Related: https://github.com/atom/atom/issues/4696

Apologies if this is not more constructive. But I found myself for 15 minutes staring at this:

And praying that, eventually, I would see this (which I eventually did):

Is this the place to discuss adding a % complete or KB of TOTAL for Atom?

@jhabdas Based on the conversation in this issue, it would appear that Squirrel.Mac doesn't report download percentages.  Squirrel.Windows does, but no one has had time to investigate how to hook that up with Atom.
(Squirrel is the update framework Atom uses, though the Windows version and Mac version are maintained by different people and work differently)

Squirrel.Mac doesn't report download percentages. Squirrel.Windows does

@50Wliu Thanks that's super helpful. Sorry I didn't take as much time as I should've parsing the thread. Seems like the next step is...

It's been a while since there's been any update on this—still find this very confusing every single update. (I'm on macOS 10.13)
It'd be great to have more feedback on what is going on. Clicking the Restart and Install button only occasionally seems to actually restart the app itself. More often, it closes all windows but Atom remains open in the dock. I then wait and wonder whether a new version is downloading/installing or Atom just didn't succeed in restarting itself. After 5-10 minutes, I'll give up and quit and re-open Atom manually—after which, sometimes I end up with the new version, and sometimes I don't and instead see the same Restart and Install button sitting there like I never clicked it. After a few rounds of this, I will eventually find myself with the new version, but after a year of updates, I honestly still don't know what I'm supposed to expect or do to update correctly.

Thanks very much for the feedback.
Unfortunately, because of the disparity in the APIs between the implementations of Squirrel, we're not going to take on adding a progress indicator for the automatic updates at this time. Because of this, and because since this issue has been opened, we've made a bunch of progress on improving the auto-update UX, we're going to close this issue.
If people have other feedback for fixing the auto-update experience beyond adding a progress indicator, please open a new issue for it.
Thanks everyone for your help!


Variable prod never initialized in README example

Dear CiFEr team,
The example shown in the README under the section Using a multi input scheme uses a variable prod that is used without initialization.
The code in question:
size_t numClients = 2;             // number of encryptors
size_t l = 3;                 // length of input vectors
mpz_t bound, prod;
mpz_init_set_ui(bound, 1000); // upper bound for input vectors

// Simulate collection of input data.
// X and Y represent matrices of input vectors, where X are collected
// from numClients encryptors (ommitted), and Y is only known by a single decryptor.
// Encryptor i only knows its own input vector X[i].
cfe_mat X, Y;
cfe_mat_inits(numClients, l, &X, &Y, NULL);
cfe_uniform_sample_mat(&X, bound);
cfe_uniform_sample_mat(&Y, bound);

// Trusted entity instantiates scheme instance and generates
// master keys for all the encryptors. It also derives the FE
// key derivedKey for the decryptor.
size_t modulus_len = 64;
cfe_ddh_multi m, decryptor;
cfe_ddh_multi_init(&m, numClients, l, modulus_len, bound);

cfe_mat mpk;
cfe_ddh_multi_sec_key msk;
cfe_ddh_multi_master_keys_init(&mpk, &msk, &m);
cfe_ddh_multi_generate_master_keys(&mpk, &msk, &m);
cfe_ddh_multi_fe_key fe_key;
cfe_ddh_multi_fe_key_init(&fe_key, &m);
cfe_ddh_multi_derive_fe_key(&fe_key, &m, &msk, &Y);

// Different encryptors may reside on different machines.
// We simulate this with the for loop below, where numClients
// encryptors are generated.
cfe_ddh_multi_enc encryptors[numClients];
for (size_t i = 0; i < numClients; i++) {
    cfe_ddh_multi_enc_init(&encryptors[i], &m);
}

// Each encryptor encrypts its own input vector X[i] with the
// keys given to it by the trusted entity.
cfe_mat ciphertext;
cfe_mat_init(&ciphertext, numClients, l + 1);
for (size_t i = 0; i < numClients; i++) {
    cfe_vec ct;
    cfe_vec *pub_key = cfe_mat_get_row_ptr(&mpk, i);
    cfe_vec *otp = cfe_mat_get_row_ptr(&msk.otp_key, i);
    cfe_vec *x_vec = cfe_mat_get_row_ptr(&X, i);
    cfe_ddh_multi_ciphertext_init(&ct, &encryptors[i]);
    cfe_ddh_multi_encrypt(&ct, &encryptors[i], x_vec, pub_key, otp);
    cfe_mat_set_vec(&ciphertext, &ct, i);
    cfe_vec_free(&ct);
}

// Ciphers are collected by decryptor, who then computes
// inner product over vectors from all encryptors.
cfe_ddh_multi_copy(&decryptor, &m);
cfe_ddh_multi_decrypt(prod, &decryptor, &ciphertext, &fe_key, &Y);

As the function cfe_ddh_multi_decrypt assumes that all the variables are initialized, the code should add an mpz_init(prod) before calling cfe_ddh_multi_decrypt(prod, &decryptor, &ciphertext, &fe_key, &Y).
This oversight is corroborated by the previous example shown in the README and the test files for multi_ddh where prod corresponds to xy which is initialized in both cases.
Best regards,
Aymeric

I also just noticed a typo in another code example of the same README under the section Using a single input scheme. The variable modulus_lenis assigned with the operator := without a semicolon (c.f. last line of below):
// Instantiation of a trusted entity that
// will generate master keys and FE key
size_t l = 2; // length of input vectors
mpz_t bound, fe_key, xy, el;
mpz_inits(bound, fe_key, xy, el, NULL);
mpz_set_ui(bound, 10); // upper bound for input vector coordinates
modulus_len := 128 // bit length of prime modulus p

[...]

The line should be replaced with modulus_len = 128;.
Best regards,
Aymeric

Hi Aymeric,
thanks for your comments! We will correct them as you suggested.
Best, Tilen


Changed Scout2 by ScoutSuite, as further work is not planned for Scout2

Thank you for the merge :)


Update benchmark-operator image location

Signed-off-by: Raul Sevilla<EMAIL_ADDRESS>Description
The benchmark-operator's image is moving to the cloud-bulldozer organization.
Fixes

Results for SNAFU CI Test

Test
Result
Runtime

snafu/hammerdb
PASS
00:06:15

snafu/smallfile_wrapper
PASS
00:05:52

snafu/flent_wrapper
PASS
00:09:46

snafu/scale_openshift_wrapper
PASS
00:09:36

snafu/sysbench
PASS
00:01:32

snafu/benchmarks/uperf
FAIL
00:19:02

snafu/image_pull_wrapper
PASS
00:04:10

snafu/ycsb_wrapper
PASS
00:04:32

snafu/stressng_wrapper
PASS
00:03:09


Re-calculate new sort order values.

Fixes https://github.com/wintercms/winter/issues/881
Re-calculate new sort order values so we no longer have an issue with duplicate sort order values causing records not to be sorted correctly.
This probably needs to be fixed in v1.2 as well, but I haven't tested that version yet.

@ericp-mrel would you mind applying this fix towards 1.2? Technically, 1.1 is in "security-only" fixes at this point.

@ericp-mrel are you still interested in getting this merged?

Sure, whatever's easiest for you :)


Kafka

This change is

Reviewed 10 of 12 files at r1.
Review status: 10 of 12 files reviewed at latest revision, 10 unresolved discussions, some commit checks failed.

mediator-app/src/main/java/net/wasdev/gameon/mediator/PlayerConnectionMediator.java, line 169 [r1] (raw file):

    }

I will have to still have init/destroy. Going round and round, because of construction order and JWT signing and who has to do what. That said, I think we can inject/use a dependent bean from the endpoint (potentially) or do something completely different.

mediator-app/src/main/java/net/wasdev/gameon/mediator/PlayerConnectionMediator.java, line 317 [r1] (raw file):

        if(!activeSubscription.isUnsubscribed())

Seems like we should just be able to call activeSubscription.unsubscribe, and have it not fail if we did that already.

mediator-app/src/main/java/net/wasdev/gameon/mediator/kafka/GameOnEvent.java, line 1 [r1] (raw file):

package net.wasdev.gameon.mediator.kafka;

copyright, whitespace

mediator-app/src/main/java/net/wasdev/gameon/mediator/kafka/KafkaCDIBridge.java, line 1 [r1] (raw file):

package net.wasdev.gameon.mediator.kafka;

copyright, whitespace

mediator-app/src/main/java/net/wasdev/gameon/mediator/kafka/KafkaCDIBridge.java, line 36 [r1] (raw file):

	private KafkaConsumer<String, String> consumer;

	@Resource( lookup = "java:comp/DefaultManagedScheduledExecutorService" )

you should not need the lookup part at all. @Resource should work standalone w/ nothing else.
@Resource
protected ManagedScheduledExecutorService executor;

mediator-app/src/main/java/net/wasdev/gameon/mediator/kafka/KafkaCDIBridge.java, line 43 [r1] (raw file):

	public void init(@Observes @Initialized(ApplicationScoped.class) Object init) {
		Thread r = new Thread() {

Use ManagedServiceThreadFactory thing, or did this only need to be a runnable that is then scheduled below?
We shouldn't be creating our own threads inside a container. We do this in mediator that you have , to create the thread that drains messages in websocket queues.
/** CDI injection of Java EE7 Managed thread factory */
@Resource
protected ManagedThreadFactory threadFactory;

mediator-app/src/main/java/net/wasdev/gameon/mediator/kafka/KafkaConsumerInjector.java, line 1 [r1] (raw file):

package net.wasdev.gameon.mediator.kafka;

copyright & whitespace

mediator-app/src/main/java/net/wasdev/gameon/mediator/kafka/KafkaRxAsyncDataProvider.java, line 1 [r1] (raw file):

package net.wasdev.gameon.mediator.kafka;

Copyright & whitespace

mediator-app/src/main/java/net/wasdev/gameon/mediator/kafka/KafkaRxJavaObservable.java, line 1 [r1] (raw file):

package net.wasdev.gameon.mediator.kafka;

copyright & whitespace

mediator-app/src/main/java/net/wasdev/gameon/mediator/kafka/KafkaRxJavaObservable.java, line 21 [r1] (raw file):

	private Provider<KafkaRxAsyncDataProvider> dataProvider;

	@Resource( lookup = "java:comp/DefaultManagedScheduledExecutorService" )

Just @Resource .. I don't get why you need to respecify the default.

Comments from Reviewable

Reviewed 2 of 12 files at r1.
Review status: all files reviewed at latest revision, 10 unresolved discussions, some commit checks failed.

Comments from Reviewable

Review status: all files reviewed at latest revision, 10 unresolved discussions, some commit checks failed.

mediator-app/src/main/java/net/wasdev/gameon/mediator/PlayerConnectionMediator.java, line 169 [r1] (raw file):
Previously, ebullient (Erin Schnabel) wrote…
> I will have to still have init/destroy. Going round and round, because of construction order and JWT signing and who has to do what. That said, I think we can inject/use a dependent bean from the endpoint (potentially) or do something completely different.

Aye.. if mediator doesn't become a 'proper' bean that's obtained in a functional state,  then we can always pass the kafka bean as an arg (and obtain it via a Provider in the creating class)

mediator-app/src/main/java/net/wasdev/gameon/mediator/PlayerConnectionMediator.java, line 317 [r1] (raw file):
Previously, ebullient (Erin Schnabel) wrote…
> Seems like we should just be able to call activeSubscription.unsubscribe, and have it not fail if we did that already.

Javadoc for Subscription from RXJava doesn't state it's behavior if called while already unsubscribed.. so I figured I'd at least try to call it when we are..

mediator-app/src/main/java/net/wasdev/gameon/mediator/kafka/KafkaCDIBridge.java, line 43 [r1] (raw file):
Previously, ebullient (Erin Schnabel) wrote…
> Use ManagedServiceThreadFactory thing, or did this only need to be a runnable that is then scheduled below?
> We shouldn't be creating our own threads inside a container. We do this in mediator that you have , to create the thread that drains messages in websocket queues.
>
>     /** CDI injection of Java EE7 Managed thread factory */
>     @Resource
>     protected ManagedThreadFactory threadFactory;
>

Indeed.. it's only a runnable.. updating..

Comments from Reviewable


[wip] Add trivy scanning

Signed-off-by: Naadir Jeewa<EMAIL_ADDRESS>

What this PR does / why we need it:
Adds Trivy scanning, which picks up more issues than dependabot. Was talking about it with @joekr
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #

Ah, aquasecurity would need to be added to the allow list
aquasecurity/trivy-action@master is not allowed to be used in oracle/cluster-api-provider-oci. Actions in this workflow must be: within a repository that belongs to your Enterprise account, created by GitHub, or matching the following: docker/*, gradle/wrapper-validation-action*<EMAIL_ADDRESS>ruby/setup-ruby*, graalvm/*.

No worries.


feat(@embark/deployment): output transaction hash of contract deployment

@jrainville I've added another commit that adds the TX hash to the deployment message as requested and kept the other one, as it might still be useful. Let me know if this should rather be removed again.
Also, this PR now depends on a new release of https://github.com/embark-framework/EmbarkJS/pull/28


Option to specify code file extension

There are compilers on decomp.me that do support C++ code but rely on file extension to determine if they should use the C++ compiler.
For example, this seems to be the case for most PSX compilers.
Only two 2.8.x versions have -x c++ or -language=c++ flag support.
Being able to specify the extension to use for code would probably be the simplest solution opposed to figuring out the language flags for various compiler versions.
This could be a dropdown? in scratch'es Options tab with options like .c, .cpp

some info here: all gccs seem to accept -xc++, but we hard-code -lang c for many of the ps1 gcc compilers when we run the system c preprocessor. for c scratches, this seems necessary, at least on older GCCs. more investigation may need to be done there, but a "quick" fix is to just create additional Compilers for any case we need C++ support for these


How can i play with specific time

How can I play MMPlayerview with the Specific seek time? I'm playing video in the TableViewcell I need to have videos play where they are paused while scrolling. So I'm asking where can I do that in the code?

Try to set this
playerLayer.cacheType = .memory(count: 10)
public enum MMPlayerCacheType {
case none
case memory(count: Int)
}
It will cache player last status on this url, when change another video and back this url ,will play the last status where video stop

Thanks for the quick reply. It helped me solved that thing. Super thanks for this...

Its okay, If you have any problem ,just let me know 👍


journal: implement remote journal

This commit implements for only Timestamp=u64.
This closes #117.
Signed-off-by: tison<EMAIL_ADDRESS>

@huachaohuang @zojw thanks for your comments. I've supported generic Timestamp with Serialize + DeserializeOwned.
IMO this patch can be still optimized in how to write Stream code and serde code. I'll try to integrate with your comments. And this PR itself is functionally completed. Ready for review.

Maybe the name "stream" for Journal is a bad choice. Because when it is a bit confused when mixed with the Stream trait in Rust.


Helpful explanation of Async and Await

[Enter feedback here]
This was very helpful thanks. It made me really understand how this works. And gave me enough details to also experiment a bit more on my own.
The only thing I would add is that the WhenAny() method doesn't break on an IsFaulted task. That might not be obvious to people unless they try that out or carefully read the documentation of WhenAny.

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

ID: 17d27a0d-c072-8c9f-7e31-3de60bee9ae8
Version Independent ID: e0c09794-e712-19ff-cb9f-12648d60d4f6
Content: Asynchronous programming in C#
Content Source: docs/csharp/programming-guide/concepts/async/index.md
Product: dotnet-csharp
Technology: csharp-async
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

Thanks for noting this @gerard7890
Closing as kudos.  (For this article, I'd rather not dive into the nuances of WhenAny, or other APIs used.)


Replace print-results with verbose

Currently, many arguments have a print_results optional argument which will provide statsmodels output for fit parametric models. Instead of this, I should replace with a new argument in _init_().
The new argument would be verbose, which when set to True would print all available parametric model fitting info (maybe some additional information as well depending on the estimator). Argument would default to False.
This would make it easier than controlling each print_results flag and would allow for the printing of additional information to the console.

StochasticTMLE which will be released in v0.8.3 follows the new verbose setup. All newly implemented estimators will follow this structure. For the release of v1.0.0, all other estimators will make the switch to the new verbose argument


Store the version of the generator used to create the project

Category

[ ] Question
[ ] Typo
[ ] Bug
[x] Enhancement / Suggestion
[ ] Additional article idea

Expected or Desired Behavior
When creating new project store the version of the generator used to create that project. This will help developers maintain integrity of their SharePoint Framework projects.
Observed Behavior
Currently the only way to figure out which version of the generator has been used to create the project, is by analyzing the versions of the different dependencies recorded in package.json. Which version of the generator has been used to create the project might not be that important now, but it will become essential once the SharePoint Framework becomes generally available and developers start using it in production. Often developers must not only be able to create new project but also support existing projects created in the past. If they would always keep their generator updated to the latest version, it could contain changes incompatible with the version used to create the project. Adding a new web part to an existing project could lead to errors hard to debug.
When creating the project you could store the version of the generator used to create the project in .yo.rc.json. When adding new web parts you could check if the recorded version matches the version of the current generator and display a warning if it doesn't. When updating the project to a newer version of SPFx developers could update the version number recorded in .yo.rc.json accordingly. In cases developers need to work with multiple versions of the generator to support the different projects in their organization, they could use a Docker image with the specific version of the generator installed.

Yes - this is being addressed now with some work to handle future framework versioning.

This information is now stored in the .yo-rc.json file


Update README - correct "Packages" location

Hi Tristano,
I have been using the Sublime Text editor for the past day or so and have discovered that the "Packages" location for the Scoop install is incorrect.
The menu option Preferences => Browse Packages... opens the correct folder: %USERPROFILE%\scoop\persist\sublime-text\Data\Packages.
The git clone https://github.com/tajmone/Sublime-PML PML instruction works correctly in this folder.
I have made the necessary change in this PR.
Kind Regards,
Liam

Since the PR was closed the changes can't be integrated.
I'll fix that manually, don't worry!

I realized that after I had submitted the PR, that I had done it against "master" rather than "dev" and was wondering if that is why the job failed. Then when I saw the EClint error, I was confused! :(
Anyway, thanks for taking care of this, Tristano!

Then when I saw the EClint error, I was confused

That was my fault! I didn't notice that one newly added test was failing the validation.
I should really add a Git commit filter that run the validation at every commit. In other repos, we've used a custom script to install and uninstall such filters. I should just copy it and add it here.

@celtic-coder, as promised, I've now added to the repository scripts to install and remove custom pre-commit Git hook that will validate the staged files against EditorConfig settings via ECLint:

git-hook-install.sh
git-hook-remove.sh

The advantage of this hook is that it will check only the staged files involved in the commit, unlike the validate.sh script which check the whole repository folder (including ignored and unstaged files).
So, even if the repository is failing the Travis CI build (e.g. because someone else introduced a malformed file, like it happened in your last PR, which was failing due to a bad file I had committed), you'll know that it's not failing because of your commit but due to a pre-existent condition.
Of course, you'll still need to install EClint in order to use the hook (the hook won't even install if you don't have EClint), but it's worth considering using the hook because it simply won't allow you to commit if your contents fail the checks.
For more info, see the CONTRIBUTING.md.

NOTE — You can always bypass the pre-commit hook via the --no-verify option, e.g.:
git commit --no-verify

@celtic-coder, I've had to update the Git hook because it wasn't handling properly filenames with spaces.
Just run again the installer and it will update the hook.
While testing it, I noticed that sometimes EClint fails to validate properly files, especially XML files. Probably it's one of its many bugs (i.e. it can't sanitize properly XML stream for some reason), but unfortunately EClint is no longer being actively developed and it's known to be buggy.
Currently there are no viable alternatives to EClint for EditorConfig validation, although I'm keeping an eye on one tool which I came across, but it's not yet production ready — it has its own bugs, but since it's actively maintained, I'm hoping that in the near future we'll be able to replace EClint with this newer tool. It's development is a bit slow, so it might take a while before some critical bugs are fixed.

Hi Tristano (@tajmone),
Yes, I know what it's like when there are problems with spaces in filenames in Windows. I use the Leo outlining editor to generated my AsciiDoctor files. I've had to make a small hack in the underlying Python code to make it work with spaces in both folder and filenames.
Trusting that you will be able to find a replacement for ECLint that meets your requirements.
Kind Regards,
Liam

Unfortunately, there's no way to avoid files with spaces in ST packages, because some OS-specific files must follow specific naming convention which include spaces; so reducing the custom files which contains spaces wouldn't solve the problem. But I'm confident that the new tweaks to the Git hook script have solved the problem once and for all (I simply forgot to consider the problem, since I usually avoid using files with spaces in my own projects).

Trusting that you will be able to find a replacement for ECLint that meets your requirements.

I'm not so sure about this. EditorConfig was designed mainly to instruct editors and IDEs on how to handle settings for code styles; using .editorconfig files for code validation is an added bonus which was taken on by individuals, and so far there have been only two tool to handle this, EClint being the most famous one, but went dead a few years ago (and eventually will no longer work with newer Node.js versions).
As mentioned, there's another tool (written in C#, but available as an NPM package), but it still needs to fix some issues before it can be used on GitHub. Being developed by a single user, the project is not evolving too fast, so we might have to wait still some time before adopting it.
The main problem is that the EditorConfig organization didn't endorse some feature requests that would have improved using .editorconfig files for validating (e.g. allowing support of native EOLs, or differentiating some options for editors and validators), which somehow has hindered the enthusiasm of using EditorConfig for validation too.
There are various cases where the settings for the editor and the validator tool don't overlap completely (e.g. an editor might need to be told to always use two space to indent, but a validator might encounter extra spaces in the actual sources, so having a different setting for the validator might be useful).
If I had enough spare time (which I don't) I would have loved to create such a tool myself, and probably create an alternative specification to EditorConfig too (which, IMO, has serious flows which make it impractical to use in many real case scenarios). But creating and maintaining such a tool would be quite time consuming, and not without challenges either.


Try to create a Discord channel for PD notifications

Not sure if this'll work or is worth doing, but I wanted to test the TF Discord provider.

Holy heck, it worked!
I could use TF to manage as much of my Discord server as there are resources for. But... that's well outside the scope of my home NAS. Should all my personal infrastructure (domain management, the NAS, the DO Kube cluster if I start that back up, any future home labs) be one repo? Or should I look into remote state sharing with TF/Spacelift?


RFC: DoubleTap call back

Is there a possiblity to include a doubleTap callback? Thanks!

Double tap seems to work it's just a matter of how to stack the layering of other views with the swipe-gestures view.


Support pointer events instead of just mouse/touch events

I've noticed that currently, input listeners are registered specifically for mouse and touch events. Depending on what your preference for browser support is, it's relatively well supported and generally easier to work with than mouse + touch, and is generally more futureproof (eg, handling additional types of input devices).

Looks interesting - is there some particular issue this would fix, or functionality it would add? (I don't often use NGL with a touchscreen so can't comment with any great experience on this)


⚠ SkipTheCommericals has degraded performance

In c7e3e94, SkipTheCommericals ($STC) experienced degraded performance:

HTTP code: 200
Response time: 1303 ms

Resolved: SkipTheCommericals performance has improved in 6bf832b.


Detach fails during VM shutdown

Setup: Photon RC, TP2 release
Steps to repro;

Create volume: docker volume create -d vmdk --name tv1
Run container: docker run -d -it --restart="always" -v tv1:/data busybox
Shudown VM from ESX UI
Noticed Server crash and disk tv1.vmdk remains attached to VM

05/20/16 18:47:04 2896177 [INFO   ] *** detachVMDK: /vmfs/volumes/4bad174b-b67f5cfc-2fc6-0026b966a303/dockvols/tv1.vmdk from Photon1 VM uuid = 564db5e5-a5a9-5d76-b349-70cd1326d9fd
05/20/16 18:47:04 2896177 [ERROR  ] (vim.fault.InvalidState) {
   dynamicType = <unset>,
   dynamicProperty = (vmodl.DynamicProperty) [],
   msg = 'The operation is not allowed in the current state.',
   faultCause = <unset>,
   faultMessage = (vmodl.LocalizableMessage) []
}
Traceback (most recent call last):
  File "/usr/lib/vmware/vmdkops/bin/vmdk_ops.py", line 691, in main
    handleVmciRequests()
  File "/usr/lib/vmware/vmdkops/bin/vmdk_ops.py", line 672, in handleVmciRequests
    details["Name"], opts)
  File "/usr/lib/vmware/vmdkops/bin/vmdk_ops.py", line 370, in executeRequest
    response = detachVMDK(vmdk_path, vm_name)
  File "/usr/lib/vmware/vmdkops/bin/vmdk_ops.py", line 320, in detachVMDK
    return disk_detach(vmdk_path, vm)
  File "/usr/lib/vmware/vmdkops/bin/vmdk_ops.py", line 613, in disk_detach
    wait_for_tasks(si, [vm.ReconfigVM_Task(spec=spec)])
  File "/usr/lib/vmware/vmdkops/bin/vmdk_ops.py", line 764, in wait_for_tasks
    raise task.info.error
vim.fault.InvalidState: (vim.fault.InvalidState) {
   dynamicType = <unset>,
   dynamicProperty = (vmodl.DynamicProperty) [],
   msg = 'The operation is not allowed in the current state.',
   faultCause = <unset>,
   faultMessage = (vmodl.LocalizableMessage) []
}
05/20/16 18:47:05 2898676 [INFO   ] === Starting vmdkops service ===

From Hostd log
ager opID=22e3cf71 user=dcui:dvolplug] Task Created : haTask-4-vim.VirtualMachine.reconfigure-539009485
s/volumes/4bad174b-b67f5cfc-2fc6-0026b966a303/Photon1/Photon1.vmx opID=22e3cf71 user=dcui:dvolplug] Invalid transition requested (VM_STATE_ON_SHUTTING_DOWN -> VM_STATE_RECONFIGURING): Invalid state
mfs/volumes/4bad174b-b67f5cfc-2fc6-0026b966a303/Photon1/Photon1.vmx opID=22e3cf71 user=dcui:dvolplug] Failed to start Reconfiguring: vim.fault.InvalidState
2e3cf71 user=dcui:dvolplug] AdapterServer caught exception: vim.fault.InvalidState

PR #433

An update:
Hiding the exception would not fix the actual bug - which is as follows:

VM is put in "shutting down" mode by ESX operation.
Vm reboot causes Docker to unmount and detach a volume, which sends 'detach' request to ESX
ESX fails the reconfig request because VM is in "shutting down" state.

python service crashes - this can be fixed by catching the exception
Volume stays attached - which is the key issue and cannot be fixed by catching the exception

End result - the VMDK volume stays attached after VM reboot.