example of compose two or more services with single binary

I like go-micro design, but if i want to provide single binary with all my services together. For example that implements some api with 10 different services. How can i do that with go-micro?
All this services need to communicate via message bus (nats or etcd).

You can try the Cobra Commander https://github.com/spf13/cobra and organize all services to the one binary with different run arguments.

No, i don't want different run arguments. I want to single args and use it for all services.
(registry, discovery and so).
My question is about how to initialize and register more then one service in  micro.

And also how to bundle some external software? For example i need nats server, so it needs to be started before all other services are run.

Go Micro was not designed to run multiple services as a single binary. It's for microservice development and is geared towards process independence. To build in one binary would require some hacking to ensure everything can be initialised multiple times.
When a new service is instantiated, if values are not provided for underlying systems it will use defaults. This is where the server has to be independently initialised to prevent conflict.
I believe doing anything like this would be an exploratory project. I think we'd welcome an example of it.
directory structure:
// single process example
examples/binary
    cmd/
      main.go   // single process init
    ping/          //service 1
    pong/        // service 2

I think start by creating a service initialiser which replaces the registry with an in-memory registry (you can find this in go-plugins) and also creates a new server so there's no overlap in startup.
Let me know if you need further help.

I'm not sure what the real reason you need a single binary is, but there's a tradeoff option: use Dockerfile + Docker-compose(or Kubernetes)
Specific steps:

use one Dockerfile  pack all your go-micro services,  inside you can use nginx or candy or go-micro proxy or grpc-gateway to reverse proxy the API. then the docker image, can build one  binary package to your customer. (if this is acceptable.)

use Docker-compose or Kubernetes  to deploy your services. the Configuration files can define the service startup sequence.

usage like this:

https://github.com/service-mesh/dockerfile/blob/master/python/3.6/Dockerfile

dockerfile

https://github.com/service-mesh/devops/blob/master/deploy/compose/local/common-mq-kafka.yml

docker-compose file

i usego-micro for a while.
project structure:
multi-apps:
apps/
  app1/
  	- api/
  	  - main.go
  	- srv/
  	  - handler/
  	    - api-controller.go
  	  - logic/
  	    - business-logic.go
  	  - model/
  	      - model-design.go
  	      - model-dao.go
  	  - proto/
  	  - util/
  	  - main.go
  	- config/
  	- common/
  	- main.go
  app2/
    - like app1
  app3/
    - like app1

one-big-app:
app/
  - api/
  - srv/
  	- handler/
  	- logic/
  	- model/
  	- proto/
  	- util
  - config/
  - common/
  - main.go

thanks, i'm try to understand

@hhstore single binary firstly for space. If i have 20 services each need 20*20 = 400Mb of binaries. But all of them use the same grpc/log and other common packages. So if i combine all to one service (that ships via rpm/deb and so) I can have 40Mb binary that do all the same things, and if somebody want to scale - they can run docker version of each component and run my binary . So i can combine two worlds

@asim so what i need to place in service1 and service2 and what in main to initialize ?

@asim also i found #96 and if i dont want to listen for tcp, does it possible to not listen ip if i use nats or etcd as async message transport?

also i'm try to create
map[string]micro.Service
and loop via main.go to init and register all services, but:
       web.Service does not implement micro.Service (wrong type for Client method)
                have Client() *http.Client
                want Client() client.Client

my example code https://github.com/vtolstov/centralv2
so in main.go as i see started only one service (web) and grpc is not

does it possible to combine grpc and rest on the same port as i do for grpc-gateway?

I think what you want is likely different from what we're all talking about it. It sounds like you want the ability to start any service from one binary. For this it's just a case of higher level initialisation.
Organise your services in a mono repo then provide the ability to generate to register and start via flag for each.
mybinary/
    cmd/
        service1
        service2
        service3
    main.go

Maybe something like this. Import all the service commands in your main.go and register them in a map or something of that nature. Then parse your flag and start the service you care about.
import (
    "github.com/mybinary/cmd/service1"
    "github.com/mybinary/cmd/service2"
    "github.com/mybinary/cmd/service3"
)

func main() {
    r := make(map[string]micro.Service)
    r[service1.String()] = service1.Service
    r[service2.String()] = service2.Service
    r[service3.String()] = service3.Service

    flag.Parse()

    service := *myserviceflag
    if srv, ok := r[service]; ok {
        srv.Run()
    }
}

@asim  so i don't need to call service.Init() for each of them?(if i want to have only my flags and configure each service via own flags?

That's right. Avoid calling service.Init and you can self initialise the command line.

Ok, if i don't use Init from service what minimal stuff i need to call to run services (without init and only run it not listen and not register).
Also - does it possible to disable listening for tcp for some services?

i found go-api in micro does it supported and can be used to my case?

Now main problem - hit control+c does not shutdown completely service.
./central
2018/10/25 15:34:19 Listening on _INBOX.Jeb5d71hTD2Qtwa30qLqnD
2018/10/25 15:34:19 Registering node: go-server-4b4bebdf-d852-11e8-90fa-80000208fe80
2018/10/25 15:34:21 Deregistering node: go-server-4b4bebdf-d852-11e8-90fa-80000208fe80

You can use something like this
gracefulShutdownChannel := make(chan os.Signal)
signal.Notify(gracefulShutdownChannel, syscall.SIGTERM, syscall.SIGINT)

Oh thanks! @igorrius that is worked fine. Does i need to wait when catching this signal or can os.Exit(0) immediately?

Oh thanks! @igorrius that is worked fine. Does i need to wait when catching this signal or can os.Exit(0) immediately?

Depends on your cases. You can terminate application immediately or call other logic. E.g. context close... whatever...

thanks as i see two services in the same binary works fine.

here I have an example of multiple deployable services in single  monorepo and,
account microservice has   Two Handlers registered in one microservice.
https://github.com/xmlking/micro-starter-kit


Use juju-reboot to automatically restart slurmdbd units

Description
This pull request adds juju-reboot to the _check_status(...) function so that the machine will automatically restart if it needs security updates applied. Using juju-reboot helps with automatic deployments as a human-operator is not required to manually intervene when the slurmdbd charm is first deployed.
How was the code tested?
I tested this charm on a private OpenStack instance with<EMAIL_ADDRESS>base images that needed security updates to be deployed.
Checklist

[x] I am the author of these changes, or I have the rights to submit them.
[x] I have added the relevant changes to the README and/or documentation.
[x] I have self reviewed my own code.
[ ] All requested changes and/or review comments have been resolved.

Let’s talk about this further before it gets merged.

Sounds good @jamesbeedy! Is there anything in particular about this proposed change that you would like to discuss? My main reasoning for adding this automatic reboot feature is that the "Machine needs reboot" conditional is interfering with my deployment scripts on clouds where the Juju base images are not as update to date with the latest Ubuntu packages.
I can get around the block by manually rebooting the machines when this conditional is encountered, but the commands are cloud-specific. This makes it difficult for when you are writing a bootstrapping script intended to be used with multiple clouds. juju-reboot is a "cloud-agnostic" tool that can be used to schedule a machine reboot after the running hook has finished executing. I found this to be the best of both worlds where we can apply security updates and not require human intervention during initial cloud deployment. Let me know what your thoughts are.

Sounds good @jamesbeedy! Is there anything in particular about this proposed change that you would like to discuss? My main reasoning for adding this automatic reboot feature is that the "Machine needs reboot" conditional is interfering with my deployment scripts on clouds where the Juju base images are not as update to date with the latest Ubuntu packages.
I can get around the block by manually rebooting the machines when this conditional is encountered, but the commands are cloud-specific. This makes it difficult for when you are writing a bootstrapping script intended to be used with multiple clouds. juju-reboot is a "cloud-agnostic" tool that can be used to schedule a machine reboot after the running hook has finished executing. I found this to be the best of both worlds where we can apply security updates and not require human intervention during initial cloud deployment. Let me know what your thoughts are.

Hey @NucciTheBoss ,
The reasons we have avoided juju-reboot in the past are:

`juju-reboot didn't work on rhel variants (I think it does now though)
We didn't want to introduce the possibility for charm code to be able to disrupt running workloads.
GPU and infiniband drivers were built to match a specific kernel version, and we did not want to upgrade the kernel.

#1 was a hard blocker which it is not anymore, #2 though, was what we felt strongly about, #3 was imperative for our driver provisioning.
There have been ideas discussed concerning a tighter charm code integration with slurm, where the slurmd charm code would be responsible for draining the node and then when no jobs were running and the node was drained, authorize a reboot (but this still did not account for #3). To this extent, we decided against automated reboots and figured we would simply signal to the user if a reboot is needed and let the admin/user take care of things.
We also have discussed triggering a reboot from an action ... but then the action never completes and we end up in a strange situation there too.

100% lets drop it 👊

100% lets drop it fist_oncoming

Sweet! I'll get to work on removing the code then. We should discuss the issues with GPU and Infiniband drivers at the next sync.


shift+cmd+3 is not performing sort descending operation on lines

VSCode Version: 1.4 insiders (6ef86d5f85a531caa59bfb1715469fcfaa8d2efd)
OS Version:OSX

Steps to Reproduce:

Select some lines in a file and type shift+cmd+3

Expected: Lines should be sorted descending
Actual: Nothing happens
Note: Sort descending happens if select the command from pallette. Also shift+cmd+2 works properly.

@sandy081  On a Mac shift+cmd+3 by default is bound to taking a screenshot of your whole screen.

When you reassign another keybinding to the action, it works.
So, out of the box there should be a different keybinding.

I can remove the out-of-the-box keybinding.


Popup can't work normally

After all steps by document, I got this errors when I click the toolbar icon.

Please help me, how to make it work.

Even I run npm install style-loader then gulp watch, still get these error:


Site Access configured for an auth provider should not restrict local user login

When an Auth Provider is configured on Rancher 2.0, Admin can restrict access by using the Site Access settings to certain users/groups. It seems like configuring Site Access on any auth provider, also restricts access for Local users and local user cannot login.
Since Local Auth is always ON, a local user should be able to login always and site access of any other Auth provider should not affect local Auth.

I think this issue really should be prioritized.  We had to rebuild our test Rancher instance because of this.  There's a long story behind that and it showed us our backup strategy was flawed, but in the end, the root cause was this bug.  If your integrated auth provider stops working (in our case due to a wrong configuration change to it) you can't recover the server as you can't log in with ANY local account, including the local admin account.
I also see the desire to use local accounts for other purposes as well.


Quick question: What bar was used in the screenshot? Im asking becuase i couldnt find any bar that supported the workspaces

Nevermind i figured it out

May I see the bar's configuration ? Thanks.

https://github.com/vaxerski/Hyprland/wiki/FAQ#i-want-to-use-waybar-but-the-workspaces-dont-work


App doesn’t use second packager

I have this issue both with an internal app, and with the example app, after updating react-native.
git clone git@github.com:fabriciovergal/react-native-workers.git
cd react-native-workers/example
npm i && npm i<EMAIL_ADDRESS># In separate terminals:
react-native start
react-native start --port 8082
react-native run-android

In no case does anything actually trigger the second packager: both index.android.js and index.worker.js are packaged by the first packager, listening on port 8081. This causes issues when I try to run the debugger: if I launch the Chrome debugger, there seems about a 50-50 chance that it will show the app bundle or the worker bundle, respectively.

Note: I’m not having this problem with the iOS version of the same internal app (I had some different issues with the example, but since the bug I’m concerned with here doesn’t occur, and I know virtually dick all about Apple development, those aren’t relevant).

I think i have an issue due to the same thing that you mentioned. I just try the sample code provided in ReadMe and it sometimes works sometimes not. So, did you give up on this library or could you find a way?

I’ve stopped using this library, so I’m afraid I’m of no further help. (I wouldn’t call it giving up on it, as such—we migrated some functionality to native extensions rather than JS and had no further need for asynchronous JS execution.)

all right, thanks for the reply!

I also run into this issue on Android (no issues on iOS)
While the single packager works fine for the example app, in my own app it results in strange undefined errors when I try to import third party libraries (such as react-native-sqlite-storage in my case).  It seems that there is a related bug causing packager to fail to resolve certain modules in the index.worker.js.

As it turns out, the worker has no access to anything on NativeModules by default on android, they'd need to be configured explicitly.  Looking through the Java code it looks like methods are already in place to allow passing in Native Modules, there just needs to be some more wiring put in place when creating the worker


Horizontal drag scroll

Is your feature request related to a problem? Please describe.
I wanted to scroll horizontally just like we can do in trello. So, thought it is very much useful for others.
Describe alternatives you've considered
I tried react-indiana-drag-scroll npm module to wrap Board component

Any Updates?

@NishargShah we can achieve this using core js and I will try to make a PR as well when it will be ready.


STORM-2555 handle impersonation properly for HBase delegation token

Please refer STORM-2555 for more details.
There had been code block for handling impersonation, but actually it didn't work.
Please review and comment, thanks in advance.

This can be cherry-picked via 1.x-branch.

master and 1.x-branch are diverged due to STORM-2556.
Just raised PR for 1.x-branch (#2171) and will rebase the PR.

Rebased.

Also addressed review comments from 1.x branch.

@arunmahadevan
I think the changeset is same as #2171 except fixing some styles. Could you review this as well?

+1 LGTM


feat(codegen): code generator to bootstrap vocab file (#21)

Closes #21

Changes

new code generator added to generate vocab YAML file

Flags

Tests cases for field types like enumValues, relationships and fields is remaining.

Screenshots or Video

Related Issues

Issue #
Pull Request #

Author Checklist

[ ] Ensure you provide a DCO sign-off for your commits using the --signoff option of git commit.
[ ] Vital features and changes captured in unit and/or integration tests
[ ] Commits messages follow AP format
[ ] Extend the documentation, if necessary
[ ] Merging to main from fork:branchname

The npm run build:types command is failing in the build. Can you look into it, please?

@mttrbrts I investigated the error. Looks like the error is from concerto-vocabulary package. The following types shown in the error were not imported.
I tried to hard code a fix, some thing like this
export = Vocabulary;

// fix starts
import {VocabularyManager} from "../index";
import {ModelFile} from "@accordproject/concerto-core/types/index";
//fix ends

/**
* A vocabulary for a concerto model
* @class
* @memberof module:concerto-vocabulary
*/
declare class Vocabulary {
    /**
     * Create the Vocabulary
     * @constructor
     * @param {VocabularyManager} vocabularyManager - the manager for this vocabulary
     * @param {object} voc - the JSON representation of the vocabulary
     */
    constructor(vocabularyManager: VocabularyManager, voc: object);
    vocabularyManager: VocabularyManager;
    content: any;
    /**
     * Returns the namespace for the vocabulary
     * @returns {string} the namespace for this vocabulary
     */
    getNamespace(): string;
    /**
     * Returns the locale for the vocabulary
     * @returns {string} the locale for this vocabulary
     */
    getLocale(): string;
    /**
     * Returns the identifier for the vocabulary, composed of the namespace plus the locale
     * @returns {string} the identifier for this vocabulary
     */
    getIdentifier(): string;
    /**
     * Returns all the declarations for this vocabulary
     * @returns {Array} an array of objects
     */
    getTerms(): any[];
    /**
     * Gets the term for a concept, enum or property
     * @param {string} declarationName the name of a concept or enum
     * @param {string} [propertyName] the name of a property (optional)
     * @returns {string} the term or null if it does not exist
     */
    getTerm(declarationName: string, propertyName?: string): string;
    /**
     * Validates a vocabulary against a ModelFile, returning errors for
     * missing and additional terms.
     * @param {ModelFile} modelFile the model file for this vocabulary
     * @returns {*} an object with missingTerms and additionalTerms properties
     */
    validate(modelFile: ModelFile): any;
    /**
     * Converts the object to JSON
     * @returns {*} the contens of this vocabulary
     */
    toJSON(): any;
}

It works. But I think these types should be auto-imported. I believe these type declarations are auto-generated using the JSDOC comments? @dselman

The npm run build:types command is failing in the build. Can you look into it, please?

@mttrbrts I investigated the error. Looks like the error is from concerto-vocabulary package. The following types shown in the error were not imported. I tried to hard code a fix, some thing like this
export = Vocabulary;

// fix starts
import {VocabularyManager} from "../index";
import {ModelFile} from "@accordproject/concerto-core/types/index";
//fix ends

/**
* A vocabulary for a concerto model
* @class
* @memberof module:concerto-vocabulary
*/
declare class Vocabulary {
    /**
     * Create the Vocabulary
     * @constructor
     * @param {VocabularyManager} vocabularyManager - the manager for this vocabulary
     * @param {object} voc - the JSON representation of the vocabulary
     */
    constructor(vocabularyManager: VocabularyManager, voc: object);
    vocabularyManager: VocabularyManager;
    content: any;
    /**
     * Returns the namespace for the vocabulary
     * @returns {string} the namespace for this vocabulary
     */
    getNamespace(): string;
    /**
     * Returns the locale for the vocabulary
     * @returns {string} the locale for this vocabulary
     */
    getLocale(): string;
    /**
     * Returns the identifier for the vocabulary, composed of the namespace plus the locale
     * @returns {string} the identifier for this vocabulary
     */
    getIdentifier(): string;
    /**
     * Returns all the declarations for this vocabulary
     * @returns {Array} an array of objects
     */
    getTerms(): any[];
    /**
     * Gets the term for a concept, enum or property
     * @param {string} declarationName the name of a concept or enum
     * @param {string} [propertyName] the name of a property (optional)
     * @returns {string} the term or null if it does not exist
     */
    getTerm(declarationName: string, propertyName?: string): string;
    /**
     * Validates a vocabulary against a ModelFile, returning errors for
     * missing and additional terms.
     * @param {ModelFile} modelFile the model file for this vocabulary
     * @returns {*} an object with missingTerms and additionalTerms properties
     */
    validate(modelFile: ModelFile): any;
    /**
     * Converts the object to JSON
     * @returns {*} the contens of this vocabulary
     */
    toJSON(): any;
}

It works. But I think these types should be auto-imported. I believe these type declarations are auto-generated using the JSDOC comments? @dselman

Well spotted @sanketshevkar, I put in a fix here, https://github.com/accordproject/concerto/pull/657
Once that is merged you can update your dependency on the concerto-vocabulary package here, and the build should work. (I tested that locally already).

Okay got it. Thanks for the fix @mttrbrts 👍

Try locally with the unstable package<EMAIL_ADDRESS>if it works for you, I'll make a stable release

@mttrbrts it's working locally. 🙌

@mttrbrts it's working locally. 🙌

👍I've published 3.8.2 this evening.

I've made the changes and pushed the code. Locally I've encountered a merge conflict with a snapshot file. I'll fix that and update you.

coverage: 98.942% (+0.04%) from 98.906% when pulling eee5036b70241300636d609f0583a724476ca899 on sanketshevkar:sanketshevkar/i21/create-bootstrap-eng-vocab-file into ba60afd21eb50375f8289349998f535de12f6e11 on accordproject:main.

Not sure why, this branch shows no conflict with main, but I'm trying to rebase with main on my local, it's showing merge conflicts.

Not sure why, this branch shows no conflict with main, but I'm trying to rebase with main on my local, it's showing merge conflicts.

Likely your main branch has diverged. GitHub is happy, so we can merge.
I recommend deleting your local copy of main and checkout again. Otherwise, you can do a hard reset to the upstream branch.

Yep makes sense. Thanks for merging @mttrbrts. I think I should update the documentation next.

Documentation for vocabulary code generation
https://github.com/accordproject/concerto-docs/pull/16


Radio onchange refactor

The onchange event for radios is fairly wasteful. For large pages with lots of radios, it can use many more cycles than needed. A better implementation is to query up just the radios of the given name, then loop over those and call updateClasses_ against them.
This can't be done in the lifecycle of 1.x due to compatibility concerns with existing sites which may have wrapped the radio inputs in other elements in between the label.

I think holding off until post 1.x to address this makes sense.

ref. #4477

Nothing we can do in V1 about this. Let's just make sure it is taken care of building the new engine out for V2.


Cannot run concurrent IBAPI as thread safe

If you try to run two threads to invoke Client::connect in order to connect two clients at the same time will produce an error, see below:
thread 'main' panicked at 'called Result::unwrap() on an Err value: Io(Error { kind: UnexpectedEof, message: "failed to fill whole buffer" })', src/main.rs:40:61
stack backtrace:
0: rust_begin_unwind
at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:578:5
1: core::panicking::panic_fmt
at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/panicking.rs:67:14
2: core::result::unwrap_failed
at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/result.rs:1687:5
3: ibapi::main
note: Some details are omitted, run with RUST_BACKTRACE=full for a verbose backtrace.

Right now, you can't use a single instance of the client across multiple threads. That's a use case I decided not to handle. This might be a future enhancement. However, multiple threads with their own instance of the client is supported if they use distinct client ids.

Hi!
Can you provide a minimal code example of "multiple threads with their own instance of the client is supported if they use distinct client ids"?
Thanks a lot!


code --install-extension Prisma.prisma-insider@[version] returns Server returned 503

We are seeing many Server returned 503 errors from this command in our CI (GitHub Actions):
/workspaces/language-tools/.vscode-test/vscode-linux-x64-1.66.2/VSCode-linux-x64/bin/code --install-extension<EMAIL_ADDRESS>
This command is called for each new version (with the corresponding version)
The full source code is located at https://github.com/prisma/language-tools/blob/main/scripts/e2eTestsOnVsix/install_extension.js
The GitHub Action workflow runs:
https://github.com/prisma/language-tools/actions/workflows/e2e_published_vsix.yml
Error log example: https://github.com/prisma/language-tools/runs/6075977680?check_suite_focus=true#step:5:31
{
  status: 1,
  signal: null,
  output: [ null, 'Installing extensions...\n', 'Server returned 503\n' ],
  pid: 1875,
  stdout: 'Installing extensions...\n',
  stderr: 'Server returned 503\n'
}

Originally reported in https://github.com/microsoft/vscode-test/issues/142 and got the following answer:

Marketplace service is facing service issues the last couple of days. We are aware of this and we are looking into it.
Soon there should be an issue with more details in the microsoft/vsmarketplace repository

I found the status page at vsstatus.visualstudio.com and everything is green there 🤔

Isidor pointed me to this status event on a different URL (https://github.com/microsoft/vscode-test/issues/142#issuecomment-1102878873):
https://status.dev.azure.com/_event/302592133
So it seems that the https://vsstatus.visualstudio.com/ page is out of sync here.

Are you still facing this issue? Could you let us know if it is resolved

Looks all good now!
Thanks 💚


Lossless MIDI import/export roundtrip

import(export(bgm)) == bgm. For features not supported in MIDI we can read/write SequencerSpecific events

dup of #1 oops


Cannot see nodes/services/any in the UI

Hi,
When builder the Dockerfile and going to the inferface, I can't see anything concerning my nodes or services in the UI. When I go inside the container and try to wget my nodes for example, I receive them (wget $CONSUL_HTTP_ADDR/v1/catalog/nodes works). While I'm in the container, I can see them in consul_services.json.
Could it be because it tries to consult them directly, instead of asking the $CONSUL_HTTP_ADDR for information ?
If it still calls $CONSUL_HTTP_ADDR, then my network configuration is not the reason for this.
But then, when I try to build/launch from scratch (i.e without docker), running bundle exec consul-templaterb -c http://<IP_ADDRESS>:8500 samples/consul-ui/*.erb, the UI is still accessible, I see that the json files are filed (consul_nodes.json, consul_services.json), but I still don't see data present in the static html files of consul-ui (consul-templaterb/samples/consul-ui/consul-timeline-ui.html, built from the consul-templaterb/samples/consul-ui/consul-timeline-ui.html.erb file).
Perhaps the following errors in the browser (FF 77) console is the reason?
ReferenceError: navBarDecorator is not definedconsul-keys-ui.html:91:37
ReferenceError: fetchedResponseDecorator is not definedtypes.js:11:9

If not, could you please explain me where I missed a step?

Hello @simongareste ,
Indeed, by default, on docker, environment variables are not exported.
As explained in https://hub.docker.com/r/discoverycriteo/consul-templaterb, you have to run it with docker with docker run --env CONSUL_HTTP_ADDR=$CONSUL_HTTP_ADDR -p 8080:80/tcp discoverycriteo/consul-templaterb in your case (since $CONSUL_HTTP_ADDR contains the server you want to reach.
The reason why it works without docker is that consul-templaterb uses by default CONSUL_HTTP_ADDR from the environment unless you use the flag -c. If the flag -c is not specified and CONSUL_HTTP_ADDR is not present either, then, it will use by default http://localhost:8500.
I am gonna check for the issues you mentioned: about navBarDecorator and fetchedResponseDecorator. (It is a plugin system we are using internally at Criteo, so, it migt be a little bit less tested). Still, is the UI correctly responding or does it breaks everything?

@simongareste,
Indeed, thank you for you bug report: there was a bug fixed by https://github.com/criteo/consul-templaterb/commit/3a1dea99384817931a299fbf32826cd79199bef1 (a missing resource containing the decorator) in the Dockerfile.
I released a new Docker version 1.26.2 - should work on your machine now.
I will work with this new version, human tested a few seconds ago!
Sorry for such lame bug (to be fair, we don't use docker for this app in our real-world deployments, that's why).
To test again:
docker pull discoverycriteo/consul-templaterb
and run again with:
docker run --env CONSUL_HTTP_ADDR=$CONSUL_HTTP_ADDR -p 8080:80/tcp discoverycriteo/consul-templaterb
Thanks a lot for the bug report and feel free to create Pull Request if you modify the templates and want your changes included in the default version.
You can also have a look at https://github.com/criteo/consul-templaterb/blob/master/samples/consul-ui/decorators.js.erb to customize your UI (for instance, linking some metadata of your Consul nodes/services with internal services of yours).

Hi,
Indeed, with the javascript fixed it works as expected (I wasn't clear in my previous post, I did had everything working in the container, except the view displayed in my browser - the files were all valid, my env variable was correctly interpretated).
However, I believe you still have an issue in the repository, as the Gemfile.lock provided here states
BUNDLED WITH
   2.1.4

whereas the docker image ruby:2.5 comes with bundler 1.17.2. Because of this, building the image by directly building the Dockerfile upon clone won't work :
[...]
Step 5/10 : RUN bundle install
 ---> Running in 6507a122ed1f
You must use Bundler 2 or greater with this lockfile.
The command '/bin/sh -c bundle install' returned a non-zero code: 20

I see a few options to fix this:

update rubygems in the Dockerfile before running bundle install: RUN gem update --system. This leads to a warning (Warning: the running version of Bundler (2.1.2) is older than the version that created the lockfile (2.1.4). We suggest you to upgrade to the version that created the lockfile by running gem install bundler:2.1.4.), but compiles successfully, and works (my consul-ui is working fine)
do not ship the Gemfile.lock in the image, by adding Gemfile.lock to the .dockerignore file (or even remove the Gemfile.lock altogether). This would lead to a variation of gems in the image, depending on the time/date of the build, which may or may not be a super idea. May I suggest, however, to lighten the image and speed up the build by removing everything that is not necessary, starting with the .git folder and a few others files? I can do a pull request for this one.
upgrade the ruby image used, to one that is using the same bundle version as the one in your Gemfile.lock. This looks messy.
rebuild and recommit the Gemfile.lock with a 1.17.x version.
other options: I'm pretty sure there are a lot more options, these are the simplest that come to mind :)

@simongareste Arf... dependencies management with Ruby... I'll have a look, thank you!
Since you seem to know more than I do about dependency managemen with Ruby and Docker, would you like to create a Pull-Request?


Can't cut & paste nor highlight nor search in terminal window

These features are missing and are required for smooth development. This goes for the serial monitor and build windows especially.
platformio-ide-terminal 2.7.0, Atom 1.21.0, PlatformIO Core 3.5.0a16.

Cut and paste and selection work just fine, search is the only one left and thats a duplicate of https://github.com/platformio/platformio-atom-ide-terminal/issues/121


add 2D image metadata error

Hi,
I tried adding a 2D image (Project:/g/emcf/Mizzon/projects/2021/CLEM_course_2021/F30/g4_CLEMcourse/ temp folder just above).
and got an error at the end when writing the metadata:
riteDownscalingMetadata(tmp_folder=tmp_data_1-A, output_path=test/data/images/ome-zarr/1-A.ome.zarr, scale_factors=[[2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2]], dependency=DownscalingSlurm, metadata_format=ome.zarr, metadata_dict={"resolution": [0.03412], "unit": "micrometer", "setup_name": "1-A"}, output_key_prefix=, scale_offset=0, prefix=downscaling)
Traceback (most recent call last):
  File "/g/emcf/software/python/miniconda/envs/mobie/lib/python3.8/site-packages/luigi/worker.py", line 191, in run
    new_deps = self._run_get_new_deps()
  File "/g/emcf/software/python/miniconda/envs/mobie/lib/python3.8/site-packages/luigi/worker.py", line 133, in _run_get_new_deps
    task_gen = self.task.run()
  File "/g/emcf/software/python/miniconda/envs/mobie/lib/python3.8/site-packages/cluster_tools/downscaling/downscaling_workflow.py", line 33, in run
    vu.write_format_metadata(self.metadata_format, self.output_path, self.metadata_dict,
  File "/g/emcf/software/python/miniconda/envs/mobie/lib/python3.8/site-packages/cluster_tools/utils/volume_utils.py", line 529, in write_format_metadata
    _ome_zarr_metadata(path, prefix, metadata_dict, scale_factors, scale_offset)
  File "/g/emcf/software/python/miniconda/envs/mobie/lib/python3.8/site-packages/cluster_tools/utils/volume_utils.py", line 518, in _ome_zarr_metadata
    create_ngff_metadata(g, setup_name, axes_names, units=units, scales=scales)
  File "/g/emcf/software/python/miniconda/envs/mobie/lib/python3.8/site-packages/cluster_tools/utils/volume_utils.py", line 484, in create_ngff_metadata
    assert all(len(scale) == len(axes_names) for scale in scales)
AssertionError

I changed the resolution value to [res]*2 to make the dimensions consistent and this made it work.
I think it makes sense to check all these dimensions before starting the conversion process.

Could you also please check what is wrong with the local MoBIE project:
/g/emcf/Mizzon/projects/2021/CLEM_course_2021/clem-example-project
?
I have added the overview image as 2D OME-Zarr. But now the other local sources won't show up anymore but instead throw null pointer exceptions.

oh, and I noticed that I have no access to the bucket to upload that modified image...

I changed the resolution value to [res]*2 to make the dimensions consistent and this made it work.
I think it makes sense to check all these dimensions before starting the conversion process.

Yes, that's a good point.

Could you also please check what is wrong with the local MoBIE project:
/g/emcf/Mizzon/projects/2021/CLEM_course_2021/clem-example-project

Please run mobie.validate_project whenever you run into issues. It often tells you what's going wrong:
mobie.validate_project -i /g/emcf/Mizzon/projects/2021/CLEM_course_2021/clem-example-project/data
...
ValueError: Source name and name in ngff metadata don't match: em-overview != 1-A

oh, and I noticed that I have no access to the bucket to upload that modified image...

You'll need to contact Josep about this.

do you have the local n5 data for this project somewhere? It seems that this one is outdated.

Yes, the most recent version of the project is here: /g/kreshuk/pape/Work/mobie/clem-example-project.

Let me know if that works for you, otherwise I can copy it somewhere to /g/emcf and give you write permissions.

Alright,
would you mind copying over data/hela/images/ome-zarr/ from /g/emcf/Mizzon/projects/2021/CLEM_course_2021/clem-example-project/ to update it the EM overview?
I have pushed the updated metadata to the "publication" branch.

I don't want to mess with the permissions when git pulling myself...

I have copied it.


feat: build & test with Packit also on CentOS Stream 9

Now that the project can be built also with setuptools as available in CentOS Stream 9, then build it with Packit & test it using testing-farm also on that distribution.

Aha, the unicode playbook fails the validation on c9s -- mostly likely some issue when serializing the unicode characters to match how they were signed.
Switching this PR to draft for now, until that problem is fixed.


⚠ Bofrost.be has degraded performance

In 71c6268, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1112 ms

Resolved: Bofrost.be performance has improved in e3e3985 after 14 minutes.


Recalculate vertical levels for visible annotations

Hi,
I have a lot of annotations that I control with the maxDistance property. After I changed this property I reload all annotations with the reloadAnnotaions function.
All is fine except this:
if I reduce the distance it happens that the annotations remain where they were before, maybe at the very bottom or at the very top of the overlay, keeping a lot of unused space in the middle.
Is it possibile to reposition all the visibile annotations in a way that their remain as much as possible at the middle of the screen?
Thank you and congrats for the amazing library
Cheers

maxDistance property in conjunction with maxVerticalLevel, defines how annotations are aligned vertically. Meaning annotation that are closer to this value will be higher.
e.g. if you put maxDistance=10000 and maxVerticalLevel=5, then annotations should be positioned in 5 levels of 2000m(0-2km, 2-4km, 4-6km, 6-8km, 8-10km). So if you have annotations only on 8-10km of height, they should be at the top while bottom/middle of the screen should be empty. This is how it works currently. If this is not the case then its a bug, I'll have a look at it when I find the time.
If you don't specify  maxDistance explicitly, it should define vertical levels by the farthest annotation. Code for this is in setInitialVerticalLevels.

Ok, I think I got it.
It would be awesome if annotations are presented, as much as possible, always in the middle of the screen.
I try to explain:

let say that I have many annotations when I point to the north. They are pretty well displayed over all available space on the scree.
now I turn the phone to east, where I have just one annotation far from me (8-10 in you example). This annotations would appear in the top of the screen, forcing me to tilt up the phone to easily read it. It would be great if this one was presented on the middle of the screen.

Possible enhancement
I figured out how to achieve this by myself, but would be nice if there would be a public property to adjust the offset for the "virtual horizon", in a way to translate all the annotations up and down

@JacoGasp could you provide us a copy of working demo with your added code, please


Updated extern array with size 0 declarations to fix compiler warnings

GCC throws a warning if an extern array is declared with [0] and if the array is accessed in any way. Changing the declaration to use [] instead of [0] fixes this issue.

One commit subject has outdate in it while the others don't.

Should be fixed now @pabigot

AFAICT this has no conflicts with the type rename so this can be merged without rebasing.


basestring fixer is extremely disruptive

futurize --stage2 replaces all uses of basestring with str (and also makes str always be the text type), which breaks isinstance checks on native strings on Python 2.
If there were a string_types available, maybe futurize could use that instead  :)

Thanks for your comments. @eevee: I see your point. It would be better if stage 2 didn't cause previously working code to break on Py2.
If stage 2 imported basestring from past.builtins, the resulting code would no longer break on Py2 but it would be unlikely to run on Py3. Would this be an improvement? I think it might -- because, as you say, it would preserve the original intent of the code.
@eevee: Do you have any reason to prefer something like six's string_types tuple over the basestring object in past.builtins?
@QuLogic: would you agree to this change to fix_basestring.py?
The recent change in  fix_division_safe.py was somewhat similar.

I'm pretty sure I use basestring for the same reason as 99% of anyone uses basestring.  I have a Python 2 API that wants text, and I would love for it to be unicode, but the world is a cold and bitter place full of legacy concerns and a bad default string type, so I accept str as well.  In Python 2 you can largely get away with this thanks to the nearly-identical APIs and silent conversions.
I don't think I've ever seen basestring used in any way other than to test whether a value is text-ish, and Python 3 only has one text-ish type: str.  Thus I've always changed basestring to six.string_types when porting a codebase.
past's basestring would work as a substitute (and be an improvement over producing code that doesn't work at all), but it would also preserve semantics that don't really make any sense in Python 3.  Importing past is probably against the spirit of a tool called futurize, anyway.  :)
I can think of one other case where basestring is useful: for detecting whether a value is a container but not string-like.  But that's only necessary on Python 3 anyway, since str and unicode don't have __iter__ on Python 2.

Wouldn't it make more sense to replace isinstance(var, basestring) with:
from builtins import bytes, str

isinstance(var, (bytes, str))

The intention is clear, works in both versions, and doesn't require anything from past. As has been pointed out, it still may break since bytes and str can't mix in Py3 as they can in Py2, but at least it would continue to work in Py2 until the code base could be updated to work with Py3.
Perhaps this could be added as an alternative fixer for basestring.

@eevee and @eestrada : thanks for your input.
I've taken the conservative route to fixing this in v0.15.0 by importing the basestring class from past.builtins. This preserves the same behaviour on Py2.x and at least marks the code as needing attention on Py3 through the reference to past. I suppose the best translation of basestring on Py3 will depend on the circumstances: sometimes str or bytes, other times just str.
The main reason I chose this versus replacing basestring with the sensible suggestion of (bytes, str) was robustness and simplicity of implementation of the libfuturize fixer. I'm open to changing it to (bytes, str) in the future if I see enough of a need.
I believe the issue is resolved now, but, if not, please feel free to reopen it.

I'm cool with that, thank you  :)


Wrong pred_cls_ids Results

Hi,
I'm looking at demo.py codes, and when I ran it to test model's performance on ycbv dataset, I found the pretrained model couldn't segment objects correctly. For example, the GT object class ids should be [1, 4, 6, 19, 20], but the pred_cls_ids was [ 1  6  7  9 13 14 17 18 19 20 21]. I'd like to know how to solve this problem? Thank you!

Our segmentation branch is a kind of bottom-up method, which may lead to some false-positive results. There are some ways to filter out these false positives:

If the objects types in the scene are known as in some manipulation tasks, you can only select the results of target classes.
If not, ways to reject the false positives include:

Increase the threshold of the minimum number of object points here. That may also lead to missing of some heavily occluded objects or small objects that have little visible points.
Use the estimated object pose and mesh models to calculate loss with the scene point clouds and filter out objects with a designed threshold.


WORKPLACE TRANSFORMATION SITE Provisioning error

Describe the issue
Exception: The remote server returned an error: (400) Bad Request.
Provisioning action correlation ID: 5cba2c1e-4a05-440f-83bf-5256767c5ecb

Hi,
Thanks for using the Look Book site. This seems to be a random hiccup on the SharePoint side which would imply that the template should work properly if you try it one more time. Seems that the provisioning did succeed partially. Can you test this one more time and, in case of any failure, share the updated Correlation ID (by creating a new issue) for us to double-check the flow. Thanks.


Small update to not send blank DMs when response only consists of whitespace for Punishments.

Dont send DM if response only consists of whitespace. This can also be used to smartly disable ban/mute/unmute/kick/warn DMs while still allowing to do any kind of processing like maintaining Records in database upon Mod Action that the user wants to do.

nice


[Feature]: visible library order

Is your feature request related to a problem? Please elaborate.
thanks to visible_shared and visible_home, we can display collections on the home page.
but we can't order the libraries by preference. if libraries are to be left as is, no problem, we can order them in plex library manager, but when we have schedules collections (for holidays :-) )we can't display then on top :-/
it would be a nice feature.
thanks
Describe the solution you'd like
have a visible_order function :-)
Additional Information
No response

requested here https://features.metamanager.wiki/features/p/manage-home-screen-hubs


Add lifecycle events for route added / removed

Describe the feature
Just a simple addition to the hooks that already exists. This will add flexibility and can let someone be creative and do some cool stuff.
Additional context
There might be some additional lifecycle we should add as well

This could replace the meta handler info thing internally in Javalin.

Added in https://github.com/tipsy/javalin/commit/34afcce25bab6769799993d0c684c1896f2f322c


Review use of inline table styles in complex doc tables

https://github.com/fluid-project/infusion-docs/pull/103 reintroduced some inline CSS styling that had previous been in use in the previous incarnation of our documentation on the Confluence wiki platform. Given we had had to manage without this for a while, the information that it conveyed (that particular sets of options were exclusive and not to be used simultaneously) had been encoded by other means (particular reference symbols such as daggers and double daggers). However, we should review the use of this styling and whether it is worth hoisting up into the shared infusion-docs.css area
Additional context or notes
Originally filed as FLUID-6063 by @amb26 on November 11, 2016.

Comment Migrated from FLUID-6063 originally posted by @sbates-idrc on November 18, 2016

An alternative to the use of styling and symbols such as daggers and double daggers for variant values would be to repeat each variation in full, such as in the jQuery docs: http://api.jquery.com/attr/#attr2
I think this might be a little easier to read but there is going to be some overhead in maintenance due to the duplication of information.


nixosTests.wordpress: fix assertions

Fix for broken test merged in #73993.
Needed re.MULTILINE flag and using search instead of match to match single line in the input file.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Notify maintainers
cc @flokli @worldofpeace @tfc

Thanks!

@mmilata Thanks for fixing that :+1:


*: replace gofail with new failpoint implementation

Signed-off-by: Lonng<EMAIL_ADDRESS>
What problem does this PR solve?
Replace https://github.com/pingcap/gofail with the new failpoint implementation https://github.com/pingcap/failpoint.
What is changed and how it works?

Replace all failpoint injections
Replace related integration tests

Check List
Tests

Unit test
Integration test

Side effects
N/A
Related changes

Need to cherry-pick to the release branch

/run-all-tests tidb=master tikv=master pd=master

/run-all-tests

/run-all-tests

/run-all-tests

LGTM

/run-all-tests


Implement tests for new Wifi related functionality in Node

Issue thaliproject/Thali_CordovaPlugin#1314 which is closed by PR thaliproject/Thali_CordovaPlugin#1315 defines that networkChanged should return BSSID and SSID for both Android and iOS. We need tests in Node to confirm we are getting those values.
The PR also adds a new method to turn WiFi on and off. We need to run a test on Android only where we check current network status, turn Wifi to the opposite, check status again and then turn Wifi back to its original state.

Please look at testThaliWifiInfrastructure. With the new Android wifi control features we can now run those tests on Android (but not iOS). Especially the last test which checks to see if we properly restart when wifi is turned on and off.


Unable to download Butterknife 8.8.1

While using the dependency of Butterknife 8.8.1, it is not getting downloaded from the network.
Is this library still available?

Yep: http://repo1.maven.org/maven2/com/jakewharton/butterknife/8.8.1/


Mounted NFS folder does not reflect content

When I mount a folder, previously shared using NFS (I use the command "mount [hostname]:[/remote folder] [localFolder], The is executed without any issue but the local folder (local mount point) does not reflect the files which are in the remote one.
For example, If I have a file "foo.txt" in the remote machine, this file will not show up in the local mounted one.

Spoke with @EranShamir offline, but wanted to follow up here.
We do not follow network mounts at this time.  This is one of those things which would be great to add to our User Voice page to help us determine interest / priority.

I made a suggestion on the User Voice page for this a few months ago, so you could upvote that.
https://wpdev.uservoice.com/forums/266908-command-prompt-console-bash-on-ubuntu-on-windo/suggestions/13600230-support-nfs-mounts


Incredibly Low Accuracy

Hello! This repo looks great. I have tested this out on my local machine, with and without ngrok. I've noticed an abnormally low accuracy, with most pictures I try resulting in an incorrect result. This is very different from the accuracy in the README, which states an accuracy of 84.069 and a balanced accuracy of 86.033. Why would this be?

Thank you @QuarterNerd for your question. Sorry for my late response!
The code initially performed quite well, with detection model accuracy rates around 0.9x. Unfortunately, the initial weights, trained by a collaborator who contributed to this repository, were lost during a Drive cleanup. The results displayed in the README are based on his weights. I attempted to reproduce his results, but due to limited computational power, I was unable to train further. Consequently, the current results fluctuate around 0.6x.
This repository primarily serves as a demonstration and guide on how to create a web application for nutritional purposes. I encourage you to try training the model yourself. There are improved versions of YOLO available for you to experiment with.

This is very different from the accuracy in the README, which states an accuracy of 84.069 and a balanced accuracy of 86.033. Why would this be?

These accuracies belong to classification models, which is correct.


Update Cake comment line to match other comment lines

Reasons for making this change:

I was looking at the .gitignore for a .NET project when I noticed that the "uncomment these" lines for Cake had an extra space in comparison to that of other tools and exclusion recommendations. This change is hardly anything but nevertheless it's something I noticed 😁
Links to documentation supporting these rule changes:
This is not a major change and so does not require docs, just something I noticed 😅

Oops, looks like the Gitmoji extension got a little ahead of itself 💩


[Feature] Support ilike function

What type of PR is this：

[ ] BugFix
[x] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：
Fixes #14595
Problem Summary(Required) ：
SR has the function like but it is only case-sensitive function.
To support more scenario, we need another function named ilike, which is similar to like but is case-insensitive.
Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[ ] I have checked the version labels which the pr will be auto backported to target branch

[ ] 2.5
[ ] 2.4
[ ] 2.3
[ ] 2.2

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: uncleGen:x: dylonyudylonyu seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

[FE PR Coverage Check]
:heart_eyes: pass : 12 / 12 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/catalog/TableFunction.java
2
2
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/rewrite/scalar/SimplifiedPredicateRule.java
10
10
100.00%
[]

run starrocks_admit_test

[FE PR Coverage Check]
:heart_eyes: pass : 12 / 12 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/catalog/TableFunction.java
2
2
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/rewrite/scalar/SimplifiedPredicateRule.java
10
10
100.00%
[]

[FE PR Coverage Check]
:heart_eyes: pass : 12 / 12 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/catalog/TableFunction.java
2
2
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/rewrite/scalar/SimplifiedPredicateRule.java
10
10
100.00%
[]

ping

run starrocks_admit_test

@evelynzhaojie cc, add function


Sabreclaw → Saberclaw

In fact, the anticheat is called "Saberclaw", not "Sabreclaw"

Could you also update the name here and anywhere else its mentioned?


Potential bug: thread 'main' panicked at src/dirgraph/mod.rs:410:18:

Hi,
Thanks for all your hard work and effort in developing gsn2x. I have recently started using it and I am finding it brilliant. While experimenting with the rendering, I managed to crash the program. I am not sure whether it is my fault or an actual bug. Either way, I thought it was worth reporting
Describe the bug
During the rendering, I got this message
me@laptop gsn-template % ../../../GSN/gsn2x/target/release/gsn2x -a arch.svg -f full.svg -o out2 index.anon.gsn.yaml hazard.anon.gsn.yaml
Rendering "out2/hazard.anon.gsn.svg": OK
Rendering "out2/index.anon.gsn.svg": OK
Rendering "out2/arch.svg": OK
thread 'main' panicked at src/dirgraph/mod.rs:410:18:
called `Option::unwrap()` on a `None` value
note: run with `RUST_BACKTRACE=

To Reproduce
These are the two files to reproduce the bug
index.anon.gsn.yaml
module:
  name: MainClaim
  brief: This is the index.gsn.yaml file
#  uses: [hazard.anon.gsn.yaml]

G00001:
  text: |-
    Some text
  supportedBy: [S00001, S00002]
S00001:
  text: |-
    Some text
  supportedBy: [Sn00001]
  inContextOf: [J00001, A00001, C00001]
  # rankIncrement: 2
  horizontalIndex:
    relative: 0
S00002:
  text: |-
    Some text
  supportedBy: [G00002]
  horizontalIndex:
    relative: 1
G00002:
  text: |-
    Some text
  undeveloped: true
J00001:
  text: |-
    Some text
  horizontalIndex:
    relative: 1
A00001:
  text: |-
    Some text
  horizontalIndex:
    relative: -1
C00001:
  text: |-
    Some text
  horizontalIndex:
    relative: -1
Sn00001:
  text: Some text
  rankIncrement: 2
  horizontalIndex:
    relative: -1

hazards.anon.gsn.yaml

module:
  name: ClaimHazard
  brief: This is a template for any hazard
  #  uses: [uca.gsn.yaml]
  extends:
    - module: MainClaim
      develops:
        G00002: [G00003]
G00003:
  text: |-
    Some text
  supportedBy: [S00003, S00004]
#  horizontalIndex:
#    absolute: 3

S00003:
  text: |-
    Some text
  supportedBy: [Sn00002]
  inContextOf: [A00003, J00003, C00003]
  horizontalIndex:
    relative: 2
S00004:
  text: |-
    Some text
  supportedBy: [G00004]
  horizontalIndex:
    relative: 1
#  rankIncrement: 1

G00004:
  text: |-
    Some text
  supportedBy: [S00005]
  # undeveloped: true
S00005:
  text: |-
    Some text
  undeveloped: true
A00003:
  text: |-
    Some text
  horizontalIndex:
    relative: -1
#  rankIncrement: 5
#  horizontalIndex:
#    absolute: 1
J00003:
  text: |-
    Some text
  horizontalIndex:
    relative: -1
#  rankIncrement: 5
C00003:
  text: |-
    Some text
  horizontalIndex:
    relative: -1
Sn00002:
  text: |-
    Some text
  rankIncrement: 2
#  horizontalIndex:
#      relative: -1

Desktop (please complete the following information):

macOs
gsn2x Version: [pulled and built a couple of days ago]

Fix
To fix this, I just had to swap the horizontal index of S00003 and S00004 and it worked fine
S00003:
  text: |
    Some text
  supportedBy: [Sn00002]
  inContextOf: [A00003, J00003, C00003]
  horizontalIndex:
      relative: 1

S00004:
  text: |
    Some text
  supportedBy: [G00004]
  horizontalIndex:
    relative: 2

Additional context
By the way, I could not use the keyword "uses", for some reason it tells me that the YAML is incorrect even though any verifier tells me it is valid. You'll notice I have commented out uses and manually provide all files to gsn2x.
Thanks!

@ecleipteon thank you very much for your kind and elaborate feedback.
I would consider this a bug, since there should be no crash, but rather an error message.
Unfortunately, I don't have access to my computer over the weekend.
I will work on this as soon as possible.

Ok @ecleipteon, I had a chance to have a look at your files. The problem is the "complete view". If you don't need that for the moment, you could temporarily use the -F option to disable it.
I will let you know once I found a fix for the problem.

@ecleipteon good news, I think I just fixed the problem. I try to release a bug fix version tonight.
With respect to the "uses: does not work" problem. I cannot reproduce that. I uncommented your "uses:" statement, and it worked immediately after adapting the file name to the name I gave it for regression testing.
Your example misses an "s" by the way. This should however not lead to an unparsable YAML, but rather to an error message that the file is not found. Could you please double check that?

I just release v3.2.1 with a fix. Please open a new issue if the "uses:" problem persists.

Thanks for the prompt fix! :-)
No problem, I will open another issue if I keep having troubles with using uses. It might be the s missing or perhaps some space/tab issue in my YAML that has disappeared following the anonymisation and the copy-pasting.
Thanks again!


Avoid retaining datatypes in PIR which are used only at the type level

We currently retain datatypes which are used only at the type level, including their constructors, matchers, and datatypes which they depend on.
This is true even if the datatype is mentioned only as the type of an ignored argument, for example. It would be nice not to do that: as a crude measure, we could replace them with any made up type with the same kind.

Example (in pseudo-PIR):
let datatype (Maybe :: Type -> Type) [a :: Type] match_Maybe [Just :: a -> Maybe a, Nothing :: Maybe a]
in \(x :: Maybe Integer) -> \(y :: Integer) -> y

Here Maybe appears only at the type level. We would like to get rid of as much of Maybe as we can (in particular, that will then lead to cascading opportunities to get rid of other stuff), but we do want to keep the program typechecking.
My idea is to replace Maybe with a simple made-up type of kind Type -> Type. In this case we can use a trivial type-lambda:
let Maybe :: Type -> Type = \(t :: Type) -> t
in \(x :: Maybe Integer) -> \(y :: Integer) -> y

More generally, datatypes are going to tend to have types that look like a tree of (->)s with leaves of kind Type. It should be pretty easy to generate a "simple" type of the same kind just using type lambdas.
Then we just replace the datatype binding for Maybe with a simple type binding with the new made-up type, and dead-code elimination should do the rest.

Working out which types are only retained in this way may be a bit annoying: the dead code analysis has no notion of "provenance". And we don't want to treat these as "dead", rather we need to identify them separately. Possibly the thing to do would be to run the dead code analysis again in a separate mode that ignores dependencies from terms to types, and then just look at what datatypes look "dead" in that analysis. Or maybe we could do something cleverer.

Note that this does not have the problem mentioned in https://github.com/input-output-hk/plutus/issues/4148#issuecomment-950748526. Since we are only changing the type level, and we erase programs, this really is safe.


Use a TCP Proxy to disable unsharded primary (in tests)

When we need to test that a query is performed against a replica and not the primary, we have traditionally done so by disconnecting, changing the DB config hash, and reconnection – and doing it in reverse after the test.
With this change, we will instead connect to the unsharded primary DB via a proxy, which can then be disabled and re-enabled before and after such tests. This gives us (or at least me) much more confidence that our tests will keep working across all Rails versions.

Looks novel but viable. My chief concerns would be around performance (if this had an enormous test suite) and a tricky implementation (but we're already in a database gem). There's also the possibility of using a command line proxy (haproxy? nc?), but this seems seems totally reasonable and less brittle than the previous version.


Debug 122

Which Issue was this PR made for?

Closes #122

What is within the scope with this PR
What is NOT in the scope with this PR
Related Issue
Other sidenotes that reviewer should be aware of

Doesn't fix the root issue so I'd rather now merge this into main. Also, keeping the DeviceSelector mounted doesn't fix the issue where the selected audio device in JoinPage doesn't reflect what gets selected when RoomPage loads.
I like the type fixing in UserInfoContext though.

Fixed the audio device issue in so can revert the permanent mount change:

#128

Instead of handling this error here:
https://github.com/Amijakan/mochatto/blob/ac7828db3e1a7eed8659f3b21830c08ff827e035/client/src/components/AvatarCanvas.tsx#L81-L82
Let's handle it within UserInfoContext:
https://github.com/Amijakan/mochatto/blob/ac7828db3e1a7eed8659f3b21830c08ff827e035/client/src/contexts/UserInfoContext.tsx#L31-L38
Have a check to see if all the elements of a UserInfo exists in newInfo, and add it in if it doesn't.

Also, this PR should merge into bugs-123 instead of main.

Something more like a git flow kind of usage


How to insert/merge multi-level block?

Hi, I am trying to insert a multi-level level block to an original yaml file:
original:
apiVersion: test
kind: test
metadata:
  name: test
  namespace: test
spec:
  infrastructureTemplate:
    apiVersion: test
    kind: test
    name: test
  kubeadmConfigSpec:
    clusterConfiguration:
      apiServer:
        extraArgs:
          cloud-provider: external

the patch file would be:
spec:
metadata:
  name: test
  namespace: test
spec:
  kubeadmConfigSpec:
    clusterConfiguration:
      imageRepository: test
      kubernetesVersion: test
        - etcd:
            local:
              dataDir: test
              imageRepository: test
              imageTag: test

the combination would be:

apiVersion: test
kind: test
metadata:
  name: test
  namespace: test
spec:
  infrastructureTemplate:
    apiVersion: test
    kind: test
    name: test
  kubeadmConfigSpec:
    clusterConfiguration:
      imageRepository: test
      kubernetesVersion: test
        - etcd:
            local:
              dataDir: test
              imageRepository: test
              imageTag: test
      apiServer:
        extraArgs:
          cloud-provider: external

But I tried overlay method but it doesn't work with a multi-level insert. Can I get some guidance on how to do this? Thanks!

Hi @jiatongw,
The overlay package is exactly what you're looking for! Although it seems like you have invalid yaml in your example, more specifically, the block:
...
clusterConfiguration:
      imageRepository: test
      kubernetesVersion: test
        - etcd:
            local:
              dataDir: test
              imageRepository: test
              imageTag: test
...

Is invalid at the - etcd line. This array item needs to be in an array but is currently in a map.
I have added <some-key> as the container for the array item but otherwise, this is an example of using the overlay package to achieve what you've described: https://get-ytt.io/#gist:https://gist.github.com/ewrenn8/e61a6234ea175eec7958be76dc2ebfea.

@ewrenn8 I think the second example is what I am look for. Thanks!
There is another question: in my real case, the metadata.name and metadata.namespace are variables. So I think maybe I can use apiVersion and kind to match?
Is #@overlay/match by=overlay.subset({"apiVersion":"test"}, {"kind": test}) a valid one?

Just tested using the interactive playground.. it is not valid. overlay.subset takes only one argument. Is there a way to match by kind and apiversion?

Hey @jiatongw, you could do #@overlay/match by=overlay.subset({"apiVersion":"test", "kind": test})

given that yall sorted out two questions, im going to close this issue.


hi, the program does not redirect, last FW (i got no error) do you have any idea?

I just tried this instant, I don't get an error but it doesn't redirect me ... I have the help page as usual .. although everything has been done in the rules . is there a solution ?
cordially :)

closed i have bypass with esp ...


'Leave Group' doesn't work

Describe the bug
Cannot leave a group
To Reproduce
In a group, tap menu and then "Leave group"
Sometime nothing happens, sometimes the channel disappears for a few moments just to come back and I'm still able to enter and read messages

Check out https://github.com/KoalaSat/nostros/releases/tag/v<IP_ADDRESS>-alpha
:)

Fixed for https://github.com/KoalaSat/nostros/releases/tag/v<IP_ADDRESS>-alpha


dynamoose scan doesn't results all records in the collection

Summary:
while doing scan, it results  only first 1000 records while there are 2000 records in the collection. I don't believe there is any configuration that restricts returning entire records in the table.
Code sample:
Schema
// Code here

//User is the name of the schema
User
.scan({})
.exec()
.then((results) => {
// Here the results only have first 1000 records.
})
.catch();
Model
// Code here

General
// Code here

Current output and behavior:
Expected output and behavior:
Environment:
Operating System:
Operating System Version: Ubuntu 16.10
Node.js version (node -v):  10.15.3
yarn version: (yarn -v):  1.10.1
Dynamoose version:  1.6.5
Dynamoose Plugins:

Dynamoose Plugins:

[ ] Yes, I believe that one or multiple 3rd party Dynamoose plugins are effecting this issue
[ + ] No, I believe this issue is independent of any 3rd party Dynamoose plugins I'm using
[ ] Unknown, I'm unsure if Dynamoose plugins are effecting this issue
[ ] I am not using any Dynamoose plugins

Other information (if applicable):
Type (select 1):

[ ] Bug report
[ ] Feature suggestion
[1] Question
[ ] Other suggestion
[ ] Something not listed here

Other:

[1] I have read through the Dynamoose documentation before posting this issue
[1] I have searched through the GitHub issues (including closed issues) and pull requests to ensure this issue has not already been raised before
[1] I have searched the internet and Stack Overflow to ensure this issue hasn't been raised or answered before
[1] I have tested the code provided and am confident it doesn't work as intended
[ ] I have ensured that all of my plugins that I'm using with Dynamoose are listed above
[1] I have filled out all fields above
[ ] I am running the latest version of Dynamoose

@adhavann DynamoDB limits the response from scans to 1MB.

The result set from a Scan is limited to 1 MB per call. You can use the LastEvaluatedKey from the scan response to retrieve more results.

-- from https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html

You can use Scan.all to handle this, or manually do another scan using the last key.


[mandatory-inlining] Improve readability by using standard loop variable names for instructions, basic blocks.

[mandatory-inlining] Improve readability by using standard loop variable names for instructions, basic blocks.
F{I,E} is generally used for function iterators over a module's functions.
B{I,E} are generally standard for block iterator, block end. I make the II
change just to make it clearer that the given value is an instruction iterator
like in other parts of the SIL Optimizer.
rdar://31521023

@swift-ci smoke test and merge


Failed to load OPT-30B checkpoint

System

GPU: Tesla V100 (32G)
Cuda: 11.3
Pytorch: torch==1.12.1+cu113
ColossalAI: 0.1.12+torch1.12cu11.3
EnergonAI: master

OPT-30B
checkpoints can be found here:  https://github.com/facebookresearch/metaseq/tree/main/projects/OPT

OPT-30B
30B
part0, part1

Start fastapi
cd EnergonAI/examples/opt

CUDA_VISIBLE_DEVICES=0,1 CUDA_HOME=/usr/local/cuda-11.3 LD_LIBRARY_PATH=/usr/local/cuda-11.3/lib64 python opt_fastapi.py opt-30b --tp 2

we got the following logs
[W socket.cpp:558] [c10d] The client socket has failed to connect to [localhost]:19990 (errno: 99 - Cannot assign requested address).
[12/29/22 16:23:12] INFO     colossalai - colossalai - INFO:
                             python3.8/site-packages/colossalai/context/parallel_context.py:521
                             set_device
                    INFO     colossalai - colossalai - INFO: process rank 0 is bound to device 0
[12/29/22 16:23:12] INFO     colossalai - colossalai - INFO:
                             python3.8/site-packages/colossalai/context/parallel_context.py:521
                             set_device
                    INFO     colossalai - colossalai - INFO: process rank 1 is bound to device 1
[12/29/22 16:23:14] INFO     colossalai - colossalai - INFO:
                             python3.8/site-packages/colossalai/context/parallel_context.py:557
                             set_seed
[12/29/22 16:23:14] INFO     colossalai - colossalai - INFO:
                             python3.8/site-packages/colossalai/context/parallel_context.py:557
                             set_seed
                    INFO     colossalai - colossalai - INFO: initialized seed on rank 0, numpy: 1024, python random: 1024,
                             ParallelMode.DATA: 1024, ParallelMode.TENSOR: 1024,the default parallel seed is ParallelMode.DATA.
                    INFO     colossalai - colossalai - INFO: initialized seed on rank 1, numpy: 1024, python random: 1024,
                             ParallelMode.DATA: 1024, ParallelMode.TENSOR: 1025,the default parallel seed is ParallelMode.DATA.
                    INFO     colossalai - colossalai - INFO:
                             python3.8/site-packages/colossalai/initialize.py:117 launch
                    INFO     colossalai - colossalai - INFO: Distributed environment is initialized, data parallel size: 1, pipeline
                             parallel size: 1, tensor parallel size: 2
[12/29/22 16:23:17] INFO     colossalai - energonai - INFO:
                             python3.8/site-packages/energonai/model/model_factory.py:195
                             create_pipeline_model
                    INFO     colossalai - energonai - INFO: ==> Rank 0 built layer 0-48 / total 48
                    INFO     colossalai - energonai - INFO:
                             python3.8/site-packages/energonai/model/model_factory.py:200
                             create_pipeline_model
                    INFO     colossalai - energonai - INFO: Rank0/0 model size = 30.7120128 GB
load 2 files using 1 procs
[12/29/22 16:23:17] INFO     colossalai - energonai - INFO:
                             python3.8/site-packages/energonai/model/model_factory.py:195
                             create_pipeline_model
                    INFO     colossalai - energonai - INFO: ==> Rank 1 built layer 0-48 / total 48
                    INFO     colossalai - energonai - INFO:
                             python3.8/site-packages/energonai/model/model_factory.py:200
                             create_pipeline_model
                    INFO     colossalai - energonai - INFO: Rank1/0 model size = 30.7120128 GB
Load file time: 42.683 s
Load file time: 42.661 s

then about 10minutes later, the error occurred:
size mismatch
raise RuntimeError('Error(s) in loading state_dict for {}:\n\t{}'.format(
RuntimeError: Error(s) in loading state_dict for PipelineModel:
        size mismatch for blocks.0.attn.dense.weight: copying a param with shape torch.Size([7168, 1792]) from checkpoint, the shape in current model is torch.Size([7168, 3584]).
        size mismatch for blocks.0.mlp.dense_1.weight: copying a param with shape torch.Size([7168, 7168]) from checkpoint, the shape in current model is torch.Size([14336, 7168]).
        size mismatch for blocks.0.mlp.dense_1.bias: copying a param with shape torch.Size([7168]) from checkpoint, the shape in current model is torch.Size([14336]).
        size mismatch for blocks.0.mlp.dense_2.weight: copying a param with shape torch.Size([7168, 7168]) from checkpoint, the shape in current model is torch.Size([7168, 14336]).

Missing keys in state_dict:
RuntimeError: Error(s) in loading state_dict for PipelineModel:
        Missing key(s) in state_dict: "blocks.0.attn.query_.weight", "blocks.0.attn.query_.bias", "blocks.0.attn.key_.weight", "blocks.0.attn.key_.bias", "blocks.0.attn.value_.weight", "blocks.0.attn.value_.bias", "

Unexpected key(s) in state_dict:
Unexpected key(s) in state_dict: "blocks.0.self_attn.qkv_proj.weight", "blocks.0.self_attn.qkv_proj.bias", "blocks.1.self_attn.qkv_proj.weight", "blocks.1.self_attn.qkv_proj.bias", "blocks.2.self_attn.qkv_proj.weight",

So what's wrong? Or any pre-processing should be done like 66B/175B?
Thanks you so much

Hi, you may try these weights https://huggingface.co/facebook/opt-30b/tree/main

Hi, you may try these weights https://huggingface.co/facebook/opt-30b/tree/main

Yes, I've tried. But I'm confused by the weird result(even messy generated) , see https://github.com/facebookresearch/metaseq/issues/595


when perform() called, TypeError: import_caf.default.cancelToken is not a constructor raised.

Hi
I try to use cue-concurrency in my project
Vue 3.05
Vue-Concurrency 2.0.3
My code
<script setup>
...
const headBrand = ref({});
const getNavigationCategoryTask = useTask(function*() {
  const res = yield axios.get("/api/sample.json");
  console.log(res);
  headBrand.value =  res.data.data.brnd;
});

getNavigationCategoryTask.perform();
...

But it failed  when call perform();
  Uncaught (in promise) TypeError: import_caf.default.cancelToken is not a constructor
    at TaskInstance.ts:175
    at Proxy._run (TaskInstance.ts:207)
    at E (TaskInstance.ts:163)
    at Proxy.perform (Task.ts:139)
    at setup (CategoryPage.vue:552)
    at callWithErrorHandling (runtime-core.esm-bundler.js:154)
    at setupStatefulComponent (runtime-core.esm-bundler.js:6542)
    at setupComponent (runtime-core.esm-bundler.js:6503)
    at mountComponent (runtime-core.esm-bundler.js:4206)
    at processComponent (runtime-core.esm-bundler.js:4182)
(anonymous)	@	TaskInstance.ts:175
_run	@	TaskInstance.ts:207
E	@	TaskInstance.ts:163
perform	@	Task.ts:139
setup	@	CategoryPage.vue:552

Hey @narusas , thanks for the report. I havent' encountered this one yet. Is this vue-cli? It might be some npm install problem where caf wasn't installed. caf is a dependency of vue-concurrency


impl TryFrom for fallible string conversions

As the name suggests, this would remove some boilerplate in my public code. Specifically, I need TryFrom<OsString> for a U16CString although I don't see why this shouldn't be implemented for all fallible types.

This makes sense, it's better for the user to be explicit anyways.


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target_f01d48ae-c8ab-48e7-89df-0f630df52843/pull/1 is merged into live branch.
Auto archive content to https://github.com/VSC-Service-Account/docs-archive-test-target_f01d48ae-c8ab-48e7-89df-0f630df52843.git

Docs Build status updates of commit 1fa54d6:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-ServiceAccountCannotAccessRepository] Your repository https://github.com/VSC-Service-Account/docs-archive-test-source has enabled Docs Build service account. It seems that at least one of the accounts, e2ebd1, does not have Read permission to the repo. Please ask your repo admin to grant correct permission to service accounts (refer to this document: https://review.docs.microsoft.com/en-us/engineering/projects/ops/engdocs/how-to-grant-service-account-permission-in-your-repository?branch=master#ops-e2e-ppe) and then retry the build. Don't know who to contact? Refer https://repos.opensource.microsoft.com/VSC-Service-Account/repos/docs-archive-test-source/permissions/ to get admin list of the repo if the repo is in one of the organizations Microsoft owns.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Multi workspaces bot token issue

Hi,
im building an app that can be used by multiple workspace of different companies. The BOT_TOKEN i used from env is hard code for my companys slack. How do i send slack interactive message to other companys slack. Currently, it ives me CHANNEL_NOT_FOUND. When my bot, tries to access other workspaces channels.

Hello,
To support your application to run on multiple workspaces, we recommend you set up OAuth authentication for your bot instead of hard-coding bot tokens. This approach creates OAuth HTTP endpoints that your bot responds to, and allows for your bot to host an "Add to Slack" button that users can click to initiate an OAuth authentication process between your bot and the user's specific Slack workspace.
Upon the successful completion of such an OAuth dance, your bot will be given a Slack-workspace-specific bot token. The OAuth documentation details the concept of an "installation store." This is a feature built into Bolt that gives you an ability to store all the relevant information (which we refer to as "installations"). This installation data includes workspace-specific bot tokens, user tokens (if your bot asks for user permissions to act on behalf of users) and relevant workspace information like team_id and enterprise_id (if applicable). Finally, upon receiving specific events from the Slack backend, Bolt transparently integrates with the installation store to retrieve the correct token based on workspace identifiers present in the event payloads.
Have a read through the docs I mentioned - I hope it can clarify how to set up your app for multiple workspaces.

@filmaj is there a way to get WebAPI client bound to a specific team without events? I connected an app through OAuth with installationStore, but now I want to send a message to a particular channel when something happens in our system.

@ledniy yes you could use the fetchInstallation method of your installation store to fetch the installation information yourself based on team or enterprise ID, no?

@filmaj is the installation store available somewhere on the app or should I initialize it in a different place and then use both in installationStore property as well as separated service?

should I initialize it in a different place and then use both in installationStore property as well as separated service?

This seems like a reasonable approach to me.
We have a few examples in this repo that may be helpful:

a full custom implementation of an installation store. In this example, the fetch and store methods were implemented directly. If you use this approach, then you have full control on how the installation information is stored (via storeInstallation) - so you have full visibility and control in how it is retrieved (via fetchInstallation).
use of the FileInstallation store. Here you don't have to implement the fetch/store/delete methods, but the implementation is static and very specific (the information is stored in a file).

Using the methods of the installation store, you can retrieve the token(s) for your situation as required and then create a new web client instance.
Indeed there is a webclientpool, though this is mostly just for caching purposes, and at this time is a private member.


Lastest release has an issue with Firebase reference / not recognized.

Please provide us with the following information:

OS?

windows 10

Repro steps.

Was this an app that wasn't created using the CLI? What change did you do on your code? etc.
Nothing changed except the version of angular cli betta 22-1. Reverted back to beta 17 and firebase reference works just fine.

Try using angularfire2 with betta 22-1 and use a firebase reference like this and see if you get an error:
userPost(postForm) {
let userPost = this.af.auth.subscribe( (user) => {
if (user) {
firebase.database().ref('users/' + user.uid + '/userposts').push(postForm.value.postText);
this.postForm.reset();
} else {
console.log("No user logged in!")
}
});
}
Mention any other details that might be useful.
Have everything set up correctly and has worked in all previous version as far as I know. Currently using the latest angularfire2 npm install.

Thanks! We'll be in touch soon.

Can you setup a repo that shows the error with the latest version? Also what's the error that shows up?

Closed as inactive.


Extend Program to encompass Projects

This implies that one trial or one study can belong to several program (one breeding program, one project, ...)
Upgrade the program specification with the following  fields (commented):
   "program": {
        "type":"breedingProgram", //values among: "breeding program", "project"
        "grantInformation":"EU: FP7-244374",//taken from dataverse. Not sure it should be inclueded
        "abbreviation": "P1",
        "additionalInfo": {  },
        "commonCropName": "Tomatillo",
        "documentationURL": "https://wiki.brapi.org",
        "externalReferences": [
          {
            "referenceID": "doi:10.155454/12341234",
            "referenceSource": "DOI"
          }, ...
        ],
        "leadPersonDbId": "fe6f5c50",
        "leadPersonName": "Bob Robertson",
        "objective": "Make a better tomatillo",
        "programDbId": "f60f15b2",
        "programName": "Tomatillo_Breeding_Program" // other possible value : "DROPS (DROught-tolerant yielding PlantS) . ID FP7-244374 ."
      }

@BrapiCoordinatorSelby a proposition referencing ne of our many discussion from 7 Oct. Up to you to propose this to inclusion or not.


Implement code generation for Effect

This also changes code generation for Let such that a let* is generated for nested Lets in the backend syntax. Similarly, the Effect variants are compiled into a let* as seen in the snapshot test. This also adds support for running snapshot tests with main declarations.

I'll write code to get assert working later today, such that we can test runtime behaviour as well.

I'll complete the code for runtime tests then we can merge

@JordanMartinez I've ported assert over to Scheme, however full programs can't be ran yet, with a blocker right now being ADTs. We can either wait for #85 or merge this and create a new PR.


Security: “X-XSS-Protection”头缺失或不安全

In GitLab by @sokril on Apr 20, 2020, 03:19

In GitLab by @liyanq528 on Apr 20, 2020, 07:07
pr !2398


Experiment for improving pilot handling of large services

The throttle on event processing is removed by default, can be added back if needed (but so far my tests show it's better without). By processing events faster there is less cache recomputation, for a given sidecar QPS. By prolonging the update, more cache clear were happening and more requests from envoy with an empty cache.
Also added logs, to evaluate how many requests from envoy and what the latency is. The sidecar for pilot doesn't report mixer metrics, and pilot doesn't log response times.

whyunolint ;-)

@costinm: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-smoke.sh
9437d9ce4c296efda6a3abb68a38e4ad501dd7fa
link
/test e2e-smoke

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Costin, if Pilot is an upstream cluster in envoy, the stats should be collected in Prometheus so long as you deploy mixer and Prometheus add one.

Pilot uses a custom config - will need to be changed to add mixer calls
(and mixer cluster).
Same for mixer - it has an envoy in front, but it doesn't report to itself.
Right now the envoys are only used to secure the communication.
If someone familiar with mixer can do this in a separate PR - we may even
see nice graphs !
On Tue, Feb 13, 2018 at 7:05 PM, mandarjog<EMAIL_ADDRESS>wrote:

Costin, if Pilot is an upstream cluster in envoy, the stats should be
collected in Prometheus so long as you deploy mixer and Prometheus add one.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/3477#issuecomment-365481704, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAFI6lSmz9RJa-i_ef6zKsJfRyOz22fZks5tUk2TgaJpZM4SEr1T
.

Each event blows up the cache - but the re-computation happens when envoy requests something.
By processing the events faster ( 4 seconds instead of 100 ) we get fewer envoy requests and re-computations.
Part 2 of the fix - in separate PR (maybe Martin or someone else can help:-) is to not blow the cache
immediately after an event if it was recently cleared, but instead set a timer so the cache cleaning is
delayed to a reasonable rate.
And Part 3 obviously (as discussed) is to have the most common events - workload/endpoint changes -
use a more direct path and not go trough full cache blowing or event-by-event loading.

@costinm: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-smoke.sh
be0bc1765b3bcb983533ce211056ae78802d8436
link
/test e2e-smoke

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@costinm: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-smoke.sh
be0bc1765b3bcb983533ce211056ae78802d8436
link
/test e2e-smoke

prow/istio-pilot-e2e.sh
be0bc1765b3bcb983533ce211056ae78802d8436
link
/test istio-pilot-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@costinm
envoy_cluster_out_istio_pilot_istio_system_svc_cluster_local_http_discovery_upstream_rq_time
This is a metric that we already collect and you can look at it on prometheus.

Let me clarify. Each event from AppendServiceHandler and AppendInstanceHandler in Pilot (not mixer filter in envoy), blows up the cache (out.ClearCache() ). So, by increasing the event frequency, you are merely flushing the cache more times more quickly as opposed to the previous mode.
What we really need is a way to squash the events from k8s (not throttle). i.e. we need a level triggered interrupt mode that sets a flag saying there have been changes in k8s.. You unset it, flush the cache. Since we don't process the content of these events, we just need to know whether there was a platform event or not..

Yes, you are right - we will process the events faster and flush the cache
faster ( still once per event ). The number of
clearCache doesn't change with this PR, just the frequency.  Where it helps
is that a lot of memory allocation happens when
envoy makes a request and populates the cache. If you happen to finish with
100 events in one second - before any envoy
makes a request - you clean the cache 100 times but it's never filled.
Agree, separate PR needed to also make sure we can squash (not throttle), I
used the wrong term. But I would
squash the 'clear cache' events - batching k8s events is also desirable,
but I think it's a bit longer term.
On Wed, Feb 14, 2018 at 1:55 PM, Shriram Rajagopalan <
<EMAIL_ADDRESS>wrote:

Let me clarify. Each event from AppendServiceHandler and
AppendInstanceHandler in Pilot (not mixer filter in envoy), blows up the
cache (out.ClearCache() ). So, by increasing the event frequency, you are
merely flushing the cache more times more quickly as opposed to the
previous mode.
What we really need is a way to squash the events from k8s (not throttle).
i.e. we need a level triggered interrupt mode that sets a flag saying there
have been changes in k8s.. You unset it, flush the cache. Since we don't
process the content of these events, we just need to know whether there was
a platform event or not..
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/3477#issuecomment-365757826, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAFI6jmw3aE0XLhxVbaBun8S_xQWXx5pks5tU1ZcgaJpZM4SEr1T
.

If I  can get a quick approval/lgtm, maybe it can make it into 0.6...

/lgtm

please put in summary how this is configured/used
(and expected change if any of default behavior)


a11y scrolling broken on Android

Not sure when this happened, but when the a11y focus reaches the last partially visible element of a scrollable list, that element is no longer brought into view. Also, when the focus moves past the last visible element, the list is no longer scrolled.

Looks like something on Android broke as this problem is not limited to Flutter apps. a11y scrolling also doesn't work anymore in native android apps (e.g. settings).

Interesting: Nexus 6P with Android 7.1.2 and TalkBack 5.2.1 is broken.
My other phone (Moto 4G with Android 7.0 and TalkBack 5.2.1) is unaffected.

Re-installing the TalkBack apk fixed this.


[backend] Add health check API to monitor service

Currently, I deployed Casdoor to my server by using K8s, but Casdoor didn't have /health API, so I can't process the deployment.
K8s need API  health check to control whether the service is healthy or not.
Can we add this endpoint?

@thanhtinhpas1 hi, can you make a PR to add it?

@thanhtinhpas1 hi, can you make a PR to add it?

Sure, will send an MR in a few days.

@thanhtinhpas1 done at: https://github.com/casdoor/casdoor/commit/3d9b305bbb7a6b1eaf41ad191c7b32cce42355cb


Momentary flash of unstyled content.

For a brief moment the bar seems to load without any styles applied before kicking in,
My guess is the call to get the CSS script is asynchronous and and we should put some mech in place to watch for when the file is actually added to the DOM and loaded before we progress forward.

Alternative solution now available with Promise support, download parallels, chaining and script support. Requires browser to support ES6 and Fetch API.
https://github.com/jhabdas/fetch-inject

Thanks Josh, I will be sure to check that out.
On 9 Mar 2017 6:23 pm, "Josh Habdas"<EMAIL_ADDRESS>wrote:

Alternative solution now available with Promise support, download
parallels, chaining and script support. Requires browser to support ES6 and
Fetch API.
https://github.com/jhabdas/fetch-inject
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/sorry-app/status-bar/issues/19#issuecomment-285436174,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAtiK13OxvuMZU8efUbBgUUcEKs5p_v2ks5rkEO5gaJpZM4IRFZf
.


Interstitial Ad not showing

Since the update, my ads won't show for some reason, my code is as shown below.
 admob.interstitial.config({
        id: 'my-id',
        isTesting: false
 });

admob.interstitial.prepare();

admob.interstitial.show();

Any ideas?

Are you calling admob.interstitial.show() immediately? Please have a look on the example,
see if you code has any difference.

@ratson Is there an event for me to use to check if the ad is ready?
In my code, I'm not immediately calling it, it only runs if a condition is met which happens later on in the app.

@Script47 In current version you could simply use:
admob.interstitial.prepare();
document.addEventListener('admob.interstitial.events.LOAD', function(event) {
  admob.interstitial.show();
})

In the next release you will be able to prepare the interstitial and checks if it's ready on-demand using admob.interstitial.isReady().then(isReady => console.log("Am I ready?", isReady)).
Also check the docs https://ratson.github.io/cordova-plugin-admob-free/variable/index.html#static-variable-interstitial and examples pointed out by ratson.

Odd... I have all the events, but no errors are showing at all, neither is the ad.

@ratson @vintage
Bump - Still not working, any ideas?

@Script47
Does this one works for you?
admob.interstitial.config({
        id: <PUT_YOUR_ID>,
        isTesting: true,
        autoShow: true
      });
admob.prepare();

If not, what errors shows on the browser console or xcode/adb console?

Update
For those of you who (like me) were struglling to get this to work using Intel XDK should note that you use use deviceready instead of the app.Ready function, this was causing the plugin not to work for me.


Defined shutdown behavior

Description
Currently we do not have a defined shutdown behavior for agent and server. When the user presses CTRL-C which results in SIGINT this is neither handled in server nor agent which results in killing the apps.
Goals
Define and implement a shutdown behavior for agent and server
Tasks

[ ] Create concept including what should happen to running workloads
[ ] Implement concept

See also https://dev.to/antoinecoulon/avoid-this-when-running-containerized-applications-in-production-562k for more infos on termination signals.

So currently it looks like there is no need to have a defined shutdown behavior. Ankaios is designed in a way to be shutdown any time.
So we can close this issue.


Update CI

Closes #15.
Prerequisite:

[ ] Create rust-av/av1-grain project on codecov.io
[ ] Add a secret called CODECOV_TOKEN to this repository

Changes:

Run all CI on ubuntu (no platform-specific code)
Switch to codecov
Update MIRIFLAGS

Removed:

valgrind, fuzzing (stubs)
rust-code-analysis
weighted-code-coverage

rust-code-analysis and weighted-code-coverage could arguably be added back, but I'm not sure it's necessary to run these in CI.

Should probably fix clippy errors first, to see the actual CI runs.

@lu-zero I am not sure who has the permissions for this, but can you add a codecov token for this repository (instructions)? Or maybe ping someone who can? Thanks in advance


[Quantum] [Draft - do not merge] Do not display update message if version numbers are not available

This checklist is used to make sure that common guidelines for a pull request are followed.

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your PR is merged into master branch, a new PR will be created to update src/index.json automatically.
The precondition is to put your code inside this repo and upgrade the version in the PR but do not modify src/index.json.

Quantum


Review the structure of the package

Review the structure of the package:

include pre-commit
review github actions
review makefile
review the structure of the setup.py file for inclusion of MD files

This issue depends on #4 #5 #6 #7 #8


Issue 42197: flow: metrics for imported run types

Rationale
Add flow folder metrics to count flow data types and how the data was imported

Here's an example of the generated json
flow-metrics.txt

Here's an example of the generated json
flow-metrics.txt

No, I don't expect to get metrics for a single container.  It was just easier to write the queries using LabKey SQL and the flow schema doesn't work with cross container queries.  If gathering the metrics is slow, I could rewrite the queries in database sql.

No, I don't expect to get metrics for a single container.  It was just easier to write the queries using LabKey SQL and the flow schema doesn't work with cross container queries.  If gathering the metrics is slow, I could rewrite the queries in database sql.