[IRGen] Narrow the “requires instantiation” bit for conformances.

The “requires instantiation” bit for protocol conformances that
might require runtime instantiation was set for essentially every
resilient conformance, so we would always be forced to create a
copy of the table. Narrow the “requires instantiation” bit to those
cases where there is something in the pattern that needs it to be
copied (for now, only associated type witnesses involving a type
parameter, which need to be cached differently). This optimizes
some narrow cases where we wouldn’t otherwise need a copy.

@swift-ci please smoke test and merge

@swift-ci please benchmark

Build comment file:
No performance and code size changes

How to read the data
The tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.
If you see any unexpected regressions, you should consider fixing the regressions before you merge the PR.
Noise: Sometimes the performance results (not code size!) contain false alarms. Unexpected regressions which are marked with '(?)' are probably noise. If you see regressions which you cannot explain you can try to run the benchmarks again. If regressions still show up, please consult with the performance team (@eeckstein).

Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 12-Core Intel Xeon E5
  Processor Speed: 2.7 GHz
  Number of Processors: 1
  Total Number of Cores: 12
  L2 Cache (per Core): 256 KB
  L3 Cache: 30 MB
  Memory: 64 GB


Add a job to ci.yml that does cargo install --locked --path ./zebrad/ zebrad

Motivation

A change got into our beta.6 release where a zebra-consensus depended upon a test-only method in zebra-state, so that when a user installs zebrad via cargo install --locked, it fails to compile.
Solution

We do not test this instruction as part of CI. This job addition to the ci.yml workflow does this, with no caching or anything, to simulate a user installing zebrad per our README instructions.
Closes #3449.
Depends-On: #4000
Review

@teor2345 @gustavovalverde
Reviewer Checklist

[x] Catches the build error
[ ] Simulates the installation instructions we give to users in README.md

Can we create a new workflow file for this job?
In future, we might want to also run it on each new tag.
Also, its run conditions are not the same as the ci.yml job, there are some minor differences:
    paths:
      # code (and tests, but this job doesn't build them)
      - '**/*.rs'
      # hard-coded checkpoints (and proptest regressions, but this job doesn't run them)
      - '**/*.txt'
      # dependencies
      - '**/Cargo.toml'
      - '**/Cargo.lock'

      # changes:
      #
      # workflow definitions
      # TODO: change to the new workflow name
      - '.github/workflows/ci.yml'

      # removals:
      #
      # no test data snapshots - this isn't a test
      # - '**/*.snap'
      # we don't run `cargo deny` in this check
      # - '**/deny.toml'

I opened #4000 to fix the underlying bug.

Needs rebasing/merging after #4000 merged

@mergifyio update

I do agree with @teor2345 comment of creating another workflow, but we have a pending PR to standardize workflow and jobs names. At least from my PoV we could start with this changes, and create an issue with teor's comment #3998 (comment) as a follow-up.

Sure, I opened a new ticket #4005.

It looks like this PR hung while fetching the zcash parameters, there is no log output, not even the command. This could be a GitHub actions bug.
Here is the last log:

2022-03-30T20:16:56.9788000Z Cache not found for input keys: macOS-sprout-and-sapling-params

https://github.com/ZcashFoundation/zebra/runs/5760640230?check_suite_focus=true#step:11:14
I'll re-run the job.

@mergifyio refresh


feat(augment_expanding): add configurable qt_quantile

Enable users to pass specific parameters to qt_quantile within augment_expanding
Involves more complicated error handling for passing tuples to maintain consistent tuple user experience
Added pl_quantile to utils.polars_helpers, but can decide later on the best place for it

Can hold off on merging. I am going to revise the current implementation (str, lambda: pl_quantile()) to (str, pl_quantile()).

Good to go!

pl_configurable functions need to be imported from utils.polars_helpers
to simplify user experience, some values are accessed locally within augment_expanding
these local values are stored in the dictionary (in augment_expanding)                         local_values = {                          'window_size': pandas_df.shape[0],                          'min_periods': min_periods                      }
for example the user will likely not know that for the quantile expanding window the window_size needs to be set to the length of the dataframe, therefore this needs to be handled automatically for them
as new configurable functions are created that require access to local values, this dictionary can be updated accordingly.


Bower component outdated

In the bower registry there is currently only the version "1.0.0" registered. I noticed that your git version tags are not valid Semver tags (http://semver.org/).
I suggest to make this project a valid bower component again as explained in http://bower.io/docs/creating-packages/#register. It requires a valid bower.json file and git version tags without the leading "v". I think having two git tags for each version should do the trick and already pushed tags don't need to be deleted.

This isn't registered in the shower registry (at least not by me). Per the docs, use git hooks with Bower.
https://github.com/cferdinandi/smooth-scroll#installing-with-package-managers

There is some component registered with the name "smooth-scroll". You can check it yourself:
https://bower.herokuapp.com/packages/smooth-scroll
But bower returns a diffrent component with the same name: https://github.com/Yappli/smooth-scroll
My issue was based on the identical naming of both components which caused the confision.
So everything is fine and one should not expect the bower component "smooth-scroll" to be related to this project.

Thanks four your help cferdinandi!

Yea, that's not mine.


changes VPC DNS to MoJO DNS servers

adds a new DHCP option set
attaches the new option set to the VPC
adds two new routes in main route table
to route DNS traffic through the TGW

LGTM


Visualisations of 3 forms of Bad Posture

2 comments:
The name of the component seems a bit generic, should be more specific.
The component isn't used anywhere. Should maybe replace the chair?


Investigate why CBOR appears to output twice the bytes encoded

I haven't seen exactly how this manifests, but it was very probably because we were not using the cbor::Decoder correctly. Here is the fix to that:
https://github.com/maidsafe/crust/commit/455fc98c66649a07fbd806a6d1cf28b44df70980
I'm going to close this one with the hope that it was it.


Failed to build docker images

Expected Behavior
Deploying a production instance of backstage should be simple
Current Behavior
Not enough docs, after digging around I find that I probably should do something like:
yarn
yarn workspace backend run build-image

From the root folder of the project.
This works fine on my local machine, but fail with a very unclear error in the CI:
yarn workspace v1.22.10
yarn run v1.22.10
$ backstage-cli backend:build-image --build --tag gcr.io/snyk-main/backstage
$ /home/circleci/project/node_modules/.bin/lerna run --scope backend --scope app build
lerna notice cli v3.22.1
lerna info ci enabled
lerna notice filter including ["backend","app"]
lerna info filter [ 'backend', 'app' ]
lerna info Executing command in 2 packages: "yarn run build"
lerna ERR! yarn run build exited 1 in 'app'
lerna ERR! yarn run build stdout:
$ backstage-cli app:build
Loaded config from app-config.yaml, app-config.local.yaml
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

lerna ERR! yarn run build stderr:
Env config file 'app-config.production.yaml' is not loaded as APP_ENV and NODE_ENV-based config loading has been removed
To load the config file, use --config <path>, listing every config file that you want to load
internal/child_process.js:403
    throw errnoException(err, 'spawn');
    ^

Error: spawn ENOMEM
    at ChildProcess.spawn (internal/child_process.js:403:11)
    at spawn (child_process.js:553:9)
    at Object.fork (child_process.js:121:10)
    at fork (/home/circleci/project/node_modules/worker-farm/lib/fork.js:17:36)
    at Farm.startChild (/home/circleci/project/node_modules/worker-farm/lib/farm.js:107:16)
    at Farm.processQueue (/home/circleci/project/node_modules/worker-farm/lib/farm.js:288:10)
    at Farm.<anonymous> (/home/circleci/project/node_modules/worker-farm/lib/farm.js:98:21)
    at listOnTimeout (internal/timers.js:554:17)
    at processTimers (internal/timers.js:497:7) {
  errno: -12,
  code: 'ENOMEM',
  syscall: 'spawn'
}
error Command failed with exit code 1.

Probably related to backstage/backstage#2994
Possible Solution

Document the flow for deploying backstage images (ideally, with common CI tools like GitHub actions)

Steps to Reproduce

Create new backstage project
Try to build docker image in CircleCI

Your Environment

NodeJS Version (v12): v14
Operating System and Version (e.g. Ubuntu 14.04): Circle docker image for node
Browser Information:

Seems like it's a memory issue, as it's throwing ENOMEM. You could reduce the work that the CLI is attempting to do in parallel by setting PARALLEL_ENV_VAR=1 in the env.
@andrewthauer, is this the issue or a similar one to what you were facing?

Yep, seems like it. CircleCI boxes incorrectly report the number of CPU's so tasks like terser may fail on their default medium machines.
You could try setting this first in the CI environment:
NODE_OPTIONS="--max-old-space-size=4096"

If that doesn't help then try setting which will limit terser to 2 parallel build tasks. This has been working for us consistently for the past 2-3 months now.
BACKSTAGE_CLI_BUILD_PARALLEL="2"

Yep, it took my some time (the config file error was really confusing) but I figured this was it and fixed it.
Non the less, it might be good to have an example build / release pipeline

@omerlh - Was the config error misleading in this context? I ended up contributing the BACKSTAGE_CLI_BUILD_PARALLEL fix a while back, but it was decided to keep it undocumented while it was being tried out. For us it's been working well, so maybe it's time to document it. @Rugvip - Where would be the best place to document this? Can we output environment variables in the CLI --help? I suspect it needs to be documented in a couple of places probably.

This one:

Env config file 'app-config.production.yaml' is not loaded as APP_ENV and NODE_ENV-based config loading has been removed
To load the config file, use --config , listing every config file that you want to load

It took me a while to figure I can just ignore it and it has nothing to do with my actual build issue

This one:

Env config file 'app-config.production.yaml' is not loaded as APP_ENV and NODE_ENV-based config loading has been removed
To load the config file, use --config , listing every config file that you want to load

It took me a while to figure I can just ignore it and it has nothing to do with my actual build issue

Yep I think we can remove that warning at this point tbh, it's been gone for quite a while at this point and is a potential source of confusion.

@andrewthauer In the CLI docs 😅  (they don't exist, I wanna write some proper ones but still a bit swamped)

@omerlh do you have a sample Dockerfile i can reference? i have the app-backend plugin enabled and was looking to build one image with the frontend and backend if possible.

If it helps, this is more or less what we have for running the app-backend:
FROM node:14-buster
WORKDIR /usr/src/app
COPY yarn.lock package.json ./
COPY app-config.yaml app-config.production.yaml ./
COPY packages/app ./packages/app
COPY packages/backend ./packages/backend
COPY plugins/welcome ./plugins/welcome
RUN yarn install --frozen-lockfile --production
CMD ["node", "packages/backend", "--config", "app-config.yaml", "--config", "app-config.production.yaml"]

and then build with:
yarn tsc && yarn workspace backend build && yarn workspace app build:prod && docker build . -t backstage

Thanks @andrewthauer have you tried running the container as non-root user?

@regicsolutions - Not with this image. But if you used the official node base images you could easily try it out with the node user.

@andrewthauer I am getting the following error with this Dockerfile in my /backend folder what am i missing?:
$ yarn tsc && yarn workspace backend build && yarn workspace app build:prod && docker build . -t backstage
yarn run v1.22.1
$ tsc
Done in 3.35s.
yarn workspace v1.22.1
yarn run v1.22.1
$ backstage-cli backend:build
Generated an empty chunk: "index.d"
Generated an empty chunk: "index.d"
Done in 1.65s.
Done in 1.92s.
yarn workspace v1.22.1
yarn run v1.22.1
error Command "build:prod" not found.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed.
Exit code: 1

Oh,sorry that was a custom npm script. You can probably just use build in your case.

@andrewthauer That worked, Thanks! Assuming your npm script allows you to build a specific environment? Would love to check it out!

The build:prod just adds a custom config file since we don't use production as our environment name. It's unlikely needed for most people. To be honest, I'm not sure this is actually needed with the app-backend now that I think about it. It might be a hold over from when we we had the frontend split out into another container.
// in packages/app/package.json
scripts: {
  "build:prod": "backstage-cli app:build --config ../../app-config.yaml --config ../../app-config.some-other-env.yaml"
}

@andrewthauer Thanks for sharing! With the app-backend plugin this script should technically live in the backend package.json no? definitely see it coming in handy when building multiple environments, each having there own command 😃

Any additional action on this, or perhaps close ? I know the Docker relating doco has been updated quite a bit, and with the progression of the project newer issues relating to the newer code may be a bit more valuable.  I'd suggest close but open to other opinions.

Think this is stale now and hopefully should be fixed with the latest docs here: https://backstage.io/docs/getting-started/deployment-docker


on darwin, curl uses system root certs

Issue description
nixpkgs's curl relies on /etc/ssl/cert.pem instead of using NIX_SSL_CERT_FILE.
Looks like curl's configure script tries a bunch of locations, finds a file at /etc/ssl/cert.pem and then hardwires that in preference to whatever logic involving NIX_SSL_CERT_FILE. If I rebuild curl locally without letting it see /etc/ssl/cert.pem, the resulting binary behaves as expected.
I suspect OSX started actually shipping that file at some point and the behavior of our builds silently changed, but I don't really know how OSX works. https://curl.haxx.se/mail/lib-2017-11/0070.html suggests we should pass --without-ca-bundle --without-ca-path to the configure script..
Steps to reproduce
$ env | grep SSL
NIX_SSL_CERT_FILE=/nix/var/nix/profiles/default/etc/ssl/certs/ca-bundle.crt

$ readlink $(which curl)
/nix/store/6s7vvjdsrw24mf16rm1mzcz4dycqpj9g-curl-7.60.0-bin/bin/curl

# this works:
$ curl -Ss https://google.com >/dev/null

# this shouldn't work, but does:
$ NIX_SSL_CERT_FILE=/dev/null curl -Ss https://google.com >/dev/null

$ sudo rm -f /etc/ssl/cert.pem

# this should work, but doesn't:
$ curl https://google.com
curl: (77) error setting certificate verify locations:
  CAfile: /etc/ssl/cert.pem
  CApath: none

# this works I guess:
$ SSL_CERT_FILE=$NIX_SSL_CERT_FILE curl -Ss https://google.com >/dev/null

Technical details

system: "x86_64-darwin"
host os: Darwin 16.7.0, macOS 10.12.6
multi-user?: yes
sandbox: no
version: nix-env (Nix) 2.0.1
channels(root): "nixpkgs-18.09pre142966.91ca88b3e6b"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixpkgs

This fixed go get for me. Thanks a lot @LnL7!
$ # Reproduce the curl issue by running 'go get' on ArneVogel/concat's sources.
$ nix-env -i go
$ git clone https://github.com/ArneVogel/concat.git
$ cd concat/
$ go get
# cd .; git clone https://github.com/abiosoft/semaphore <snip>/go/src/github.com/abiosoft/semaphore
Cloning into '<snip>/go/src/github.com/abiosoft/semaphore'...
fatal: unable to access 'https://github.com/abiosoft/semaphore/': error setting certificate verify locations:
  CAfile: /etc/ssl/cert.pem
  CApath: none
package github.com/abiosoft/semaphore: exit status 128
$ cd ..

$ # Install go with LnL7's patch.
$ git clone https://github.com/LnL7/nixpkgs.git
$ cd nixpkgs/
$ git checkout 288939ce22a8d63077e888db227289d9e36d41e5
$ nix-env -i -f ./default.nix go
$ cd ..

$ # Try 'go get' again. Observe that it succeeds (kinda...).
$ cd concat/
$ go get
go get: no install location for directory <snip>/concat outside GOPATH
	For more details see: 'go help gopath'

Great! We got some sporadic reports from people with cacert issues and from some debugging I knew the variables where getting ignored, but I didn't realise why.


cannot import name 'LLM' from 'vllm'

I ran into the above problem with Quickstart. Is there anything else I need to do

I faced the same issue when I downloaded from source. But when I straight ran pip install it worked

@LQchen1 is your file named vllm.py by chance? If so changing it should remove the error. Can you send the full error?

@NatanFreeman  You're right. When I change it to another name, it will be available

@LQchen1 Because you named the file vllm.py, instead of importing the library the python script was importing itself. Hence why it had no LLM export. is the issue solved then?

@NatanFreeman Thanks for your reply, it is now available！

If your problem is solved you should close the issue

@NatanFreeman One more question, if I have already downloaded the model file from huggingface, how can I use the model with vllm without downloading it again

Now I want to use the lmsys/vicuna-7b-v1.3 model, but a new error is generated

@zhuohan123

@LQchen1 just reset the kernel and it'll work fine

A new error is generated wrong output.

@FarziBuilder

In the latest output, the URL is not open


Add Power ISA e200 embedded core variant

This PR simply adds a new language and slaspec for the NXP e200 core family, with updates to the PPC opinion to auto-detect the language given an ELF binary to support load and decompilation. My specific need for this change was analysis of binaries for an NXP MPC5777C microcontroller, which features e200z7 cores.
In some variants of the e200, only VLE is supported. In others, both VLE and full 32-bit encoding. To my delight, the existing PPC ELF loader extension already does the work of deciding when to enable VLE decoding on required sections.
Note that some vector translations will require fixing, marked in code as FIXMEs, but this can be addressed in a follow-up. I've not thoroughly tested the architecture support, but it works well for my use case and may hopefully be useful to others. I'd appreciate some expert review to see if I've made any glaring oversights in the addition.
Fixes #2449

In my case it is not correctly decoding the isel instruction in e2007z:

see 0x46:


🎨 Improved headers layout in post editor and post settings side panel

fixes #18690
This change makes the headers for post editor main section and post settings side panel use sticky position instead of absolute/fixed respectively. This allows to solve the following 2 problems:

The published post actions wrapping over the "Add feature image" button (see #18690).
The header of the post settings section having incorrect width, and causing the underlying content to be visible on the right edge.

Problem 1 - before:

Problem 1 - after:

Problem 2 - before:

Problem 2 - after:

[x] There's a clear use-case for this code change, explained above
[x] Commit message has a short title & references relevant issues
[x] The build will pass (run yarn test:all and yarn lint)

Thank you @lorumic for your PR! These are some great improvements, only I saw that it breaks the header height between 448-1024px. This would have to be fixed before we can merge it 🙂

Thanks for the review @sanne-san. You're right, we need to set an appropriate padding for the header in that width range. I've just updated the PR to address this, could you please check that it now behaves as expected?


S3 put_object with SSEKMSKeyId on Google App Engine fails

Unable to put objects to S3 from GAE with ServerSideEncryption enabled using KMSKeyId, this same code works from a local environment and also from lambda functions.
Calls to put or get objects from S3 using ServerSideEncryption=AES256  or without any encryption work fine from GAE
from botocore.session import Session
from botocore.client import Config

AWSACCESSKEYID = '<ACCESS_KEY_ID>'
AWSSECRETACCESSKEY = '<SECRET_KEY>'
BUCKET = '<MY_BUCKET>'
REGION = 'us-east-1'
KMSKEYID = '<MY_KMS_KEY_ID>'

s3_client = Session().create_client(
    service_name='s3',
    aws_access_key_id=AWSACCESSKEYID,
    aws_secret_access_key=AWSSECRETACCESSKEY,
    region_name=REGION,
    config=Config(signature_version='s3v4'),
    use_ssl=True,
)

key = 'S3_object_key'
content = 'Som content'
response = s3_client.put_object(
    Bucket=BUCKET,
    Key=key,
    Body=content,
    ServerSideEncryption='aws:kms',
    SSEKMSKeyId=KMSKEYID)
print response

<Response [400]>
{
    'ResponseMetadata': {
        'HTTPStatusCode': 400,
        'RetryAttempts': 0,
        'HostId': '<host_id>',
        'RequestId': '3BE469E6E1F71791',
        'HTTPHeaders': {
            'x-amz-id-2': '<host_id>',
            'server': 'AmazonS3',
            'transfer-encoding': 'chunked',
            'connection': 'close',
            'x-amz-request-id': '3BE469E6E1F71791',
            'date': 'Tue, 13 Sep 2016 21:14:45 GMT',
            'content-type': 'application/xml'
        }
    },
    'Error': {
        'ArgumentValue': 'null',
        'Code': 'InvalidArgument',
        'ArgumentName': 'x-amz-server-side-encryption',
        'Message': 'Requests specifying Server Side Encryption with AWS KMS managed keys must be made over a secure connection.'
    }
}
Traceback (most recent call last):
  File "/botocore/client.py", line 159, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/botocore/client.py", line 500, in _make_api_call
    raise ClientError(parsed_response, operation_name)
ClientError: An error occurred (InvalidArgument) when calling the PutObject operation: Requests specifying Server Side Encryption with AWS KMS managed keys must be made over a secure connection.

@jamesls Thoughts?

or @kyleknap Any Thoughts?

I was able to find a work-around to get the request out to S3. Using the s3_client's generate_presigned_post I was then able to use requests to do a post to s3. I believe the issue with just using s3_client.put_object is that GAE intercepts the outgoing request and forces it to use HTTP instead of the required HTTPS. Using requests the request still gets intercepted but it's turned into a urlfetch call which allows HTTPS. The Working code is:
# Create some of the various supported conditions.
conditions = [
    {'x-amz-server-side-encryption': 'aws:kms'},
    {'x-amz-server-side-encryption-aws-kms-key-id': '<aws_kms_key_id>'}
]

# Retrieve the args for the presigned post.
fields = {
    'x-amz-server-side-encryption': 'aws:kms',
    'x-amz-server-side-encryption-aws-kms-key-id': '<aws_kms_key_id?'
}

s3_client = Session().create_client(
    service_name='s3',
    use_ssl=True,
    aws_access_key_id='<AWS_ACCESS_KEY_ID>',
    aws_secret_access_key='<AWS_SECRET_ACCESS_KEY>',
    config=Config(signature_version='s3v4')
)
post_args = s3_client.generate_presigned_post(
    '<my-bucket>', '<key>', Fields=fields, Conditions=conditions)

# Make sure that the form can be posted successfully.
files = {'file': ('<key>', '<content>')}

response = requests.post(
    post_args['url'], data=post_args['fields'], files=files)
assert response.status_code == 204


Changes list in Play Store also in english language

As an european without any knowledge in japanese language I'm not able to read your list of recently changes in the description of the app. Is there any possibility to add an english version of the changes list?

 However i use google translate between Jap/Eng to understand the changes list, it 's not perfect but this let me understand a bit the modifications. I've tryed Jap/Fre but the resultat was undicernable ...

I think my engRish capavility is poorer than Google translation :)
Kidding,
My english writing is verrrrry slow. It becomes a burden of release work.
I hope someone translates release information and shares it.

@tateisu if you find a way to translate from Japanese to English i can translate properly to French so.

I hope someone translates release information and shares it.

With "Google Translate" as basis of a translation (in my case to german and english language) as proposed by @H-F-M, it could generally be done. How you as the project maintainer want's to inform the translators and gets the translations prior to the releases? How to handle this?
The ready translations (or parts of it) can be given through pull requests. But how to inform the translators beforehand? Maybe an issue with translators mentioned?

@auge8472
actually i maintain the french translation of SubT "strings.xml", after an update, i checking that file to see if it was changed and if it's the case i put french translation in it, then he's available in next version of SubT after merging.
In fact, for the update information, some times google translate don't do the job when specific context (knowledge about Mastodon's network or programming specific expression) and give us fake information of the real concerned subject (I sometimes need @tateisu to have a more specific explanation in order to establish a good translation in the context).
In case of update information, i don't really know how to proceed, as you, i ask for @tateisu to indicate a good solution to provide translation with minimum delay.

this issue is beyond the scope that I can deal with,
If you have complaints please fork and deal with it yourself

Ok, for me, it's simple, when i know a new version is available, i'm going here and i translate (with google help from Japanese to English and from English to french by myself) then i post the translation here in this issue even it's closed and you @tetsuo you deal with it to update GPlay's language localization's page. Are you ok ? or any other solution ?

If you have complaints please fork and deal with it yourself

Hmm, a fork is o.k., because that's the common way to handle pull requests. But what do you mean with "deal with it yourself"? I would expect to set a text file with the translated changelog beside your original in japanese language.
@H-F-M: A fork, where you only change the translations of the changelog (like described before) is IMHO more fitting than to put the translations into this (somewhen) closed issue.

Example for v0.7.5:
1.Vérification de la possibilité de changer le compte d'édition dans les tests du "custom notification listener". Le copié/collé est définit sur "texte seulement".
2.Réorganisation du menu paramètres de l'application.
3.Ajout d'un compte utilisé par défaut lorsque le mode tablette est actif.
4.Changement de compte dans la fenêtre d'envoie de toot même lors d'une réponse est possible.
I'm not sure of the good translation for the [1] cause Google does not translate correctly and says incomprehensible things.
@auge8472 you can write in this issue even issue is closed that what i mean.
i'm open to any other suggestion like text file with pull request system.
"deal with it yourself" seems to be "find solution yourself" ^^

2 users blocked.

日本語の分かる人向けに説明します。
Playストアの「このリリースの新機能 」は「リリース後に編集する」ことができません。
なので「このリリースの新機能 」を多国語化しようとすると

自分で翻訳する
誰かに翻訳を頼んで出来上がるのを待つ
しかありません。
SubwayTooterの場合は個人で開発してることもあり、どちらの対応も私の手に余ると考えています。
別の誰かが別の場所で新機能の翻訳を行ってくれたらいいなあ、ていうかその程度が限界だと思います。
議論の中でも「私がサポートできる範囲を超えている」と表明しているんですが聞き入れてもらえなかったようです。
issueをissue以外の用途に使うようなことまで書かれてたので、こりゃムリだと思ってブロックしました。


[BUG] Move MMLSPARK info from tools to pip installable package

Description

pytest  tests/unit/examples/test_notebooks_pyspark.py requires info from directory tools/:
E           papermill.exceptions.PapermillExecutionError:
E           ---------------------------------------------------------------------------
E           Exception encountered at "In [1]":
E           ---------------------------------------------------------------------------
E           ModuleNotFoundError                       Traceback (most recent call last)
E           <ipython-input-1-a0f1f3501b03> in <module>
E                17 if not is_databricks():
E                18     # get the maven coordinates for MML Spark from databricks_install script
E           ---> 19     from tools.databricks_install import MMLSPARK_INFO
E                20     packages = [MMLSPARK_INFO["maven"]["coordinates"]]
E                21     repo = MMLSPARK_INFO["maven"].get("repo")
E
E           ModuleNotFoundError: No module named 'tools'

/anaconda/envs/reco/lib/python3.6/site-packages/papermill/execute.py:234: PapermillExecutionError

We could move the required MMLSPARK_INFO from tools/ to a definition built inside the pip package.
In which platform does it happen?

Any platform
How do we replicate the issue?

Create a conda / virtual environment
pip install ms-recommenders[examples,spark]
Run unit test tests/unit/examples/test_notebooks_pyspark.py with pytest -k criteo

Expected behavior (i.e. solution)

The tests should pass successfully even if tools/ directory is not present
Other Comments

it would be nice to have the mmlspark version set in setup.py with the rest of the dependencies, but i think that would mean setup.py would have to modify a separate file at installation (reco_utils/common/spark_utils.py?) to inject the location of the spark package & maven repo. Alternatively we could just put that information directly into spark_utils and put a note in setup.py that if you want to change the default version of mmlspark to modify spark_utils.py?
were you thinking that there would be an additional flag in start_or_get_spark() that would add mmlspark, or just store the info and leave it up to the user to retrieve it and pass it to start_or_get_spark() using the packages and repositories inputs?

I am open to suggestions. I was thinking of defining MMLSPARK_INFO somewhere in reco_utils/common/spark_utils.py where databricks_install.py would import it from, and it will also be available from the pip package.
I think setup.py doesn't need to be aware of MMLSPARK_INFO (after all it is irrelevant to Python). It is something that could be changed independently of the pip package by the user, if they want to test another mmlspark version.
I don't know about a flag for mmlspark, it may be a nice idea. Wouldn't it conflict with other packages the user may want to install?
@yueguoguo @miguelgfierro @loomlike any comments?

makes sense, for the flag i was thinking we could do something like this at the beginning of get_or_start_spark
def get_or_start_spark(..., mmlspark=False):
    new_packages = packages.copy() if isinstance(packages, list) else None
    new__repos = repositories.copy() if isinstance(repositories, list) else None
    if mmlspark:
        if new_pacakges is None:
            new_pacakges = []
        new_packages.append(MMLSPARK_PACKAGE)
        if new_repos is None:
            new_repos = []
        new_repos.append(MMLSPARK_REPOS)
    ...
    if new_packages is not None:
        submit_args = "--packages {} ".format(",".join(new_packages))
    if jargs is not None:
        submit_args += "--jars {} ".format(",".join(jars))
    if new_repos is not None:
       submit_args += "--repositories {}".format(",".join(new_repos))
    ...

Vote for adding mmlspark in the spark creation step. It makes less sense to put the very spark specific info into setup.py which is generic to the package. One thing to note is that the get_or_start_spark may not work nicely with databricks which has a different scheme for spark config (UI-based). Maybe we want to make this clear somewhere.

Vote for adding mmlspark in the spark creation step. It makes less sense to put the very spark specific info into setup.py which is generic to the package. One thing to note is that the get_or_start_spark may not work nicely with databricks which has a different scheme for spark config (UI-based). Maybe we want to make this clear somewhere.

I will wrap any calls in the notebooks inside a is_databricks() check (we already do this in a couple of notebooks).

Addressed in https://github.com/microsoft/recommenders/pull/1531


Closes: #21412: Fix unit test for carousel

Should fix build failed due to : https://github.com/twbs/bootstrap/commit/dab6a41e049de64653c8b91c28acf212137b0452

My apologies about this. It seems that #19058 moved the event.preventDefault() that #20907 removed, and GitHub failed to raise a conflict, resulting in the directive being added twice.

it's happened sometimes not a big deal @bardiharborow 😉


Setting custom property value once initialised

Is there a way to set custom property value once the view size is initialised. I want to know the size of the view before setting the value, using frame.size.height returns zero since the frame is initialised with zero

There’s currently no way to control this, but the property will be set again once the frame size is set so a (possibly ugly) workaround would be to override the setter for the property and ignore the value if the frame size is currently zero.

I am doing the exact same thing, looks hacky but gets the job done!


chore: fix deprecated analytics events fields

Changes

#779
#778
#777  👈
main

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

Join @AngelOnFira and the rest of your teammates on  Graphite


Error when running black-screen in Ubuntu

Since recent changes to the black-screen application, on Ubuntu 15.10 I am getting an an error when attempting to run the application (using "npm start"). See error in Figure 1.
Note. I could run the application successfully prior to these changes.
The error is produced by the command in gulpfile.js https://github.com/shockone/black-screen/blob/master/gulpfile.js#l43.
gulp.task("typescript", $.shell.task("npm run tsc", {cwd: "/Users/me/dev/black-screen"}));

If I change this to the following the application starts correctly:
gulp.task("typescript", $.shell.task("npm run tsc"));

Do you think this is an issue with just Linux? I am assuming it's working fine on OS X.
Figure 1. black-screen build error

Hey i believe this happens because you don't have typescript compiler installed.  I don't see tsc in the package.json dependencies. You could install it globally with npm install tsc -g and see if you are still hitting this error

Thanks for the feedback @verzil. I tried doing a global install of the the typescript compiler globally (using npm install -g tsc), however I still get the same error when attempting to run the application. I see i ran successfully for you on Arch - so it's probably an issue with my configuration.
Thanks again.

tsc is in the package dev dependencies. It is 'typescript'.  Re clone the repo, make sure you have the latest.
then follow the standard install procedures again.
if it is still not working, then maybe try manuelly compile it using tsc filename, (if you don't have it installed globally, you could do node_modules/typescript/bin/tsc filename.)

it could even be.. something with gulp. Because I'm getting permission denyed when running npm start sometimes.
From reading the logs, I assume its because gulp couldn't find tsc :/

The whole problem here is {cwd: "/Users/me/dev/black-screen"}. That obviously isn't everybody's working directory. Just remove that or use something a bit smarter like __dirname and let's call this fixed.

Thanks @mehcode  - changing "cwd" to my black-screen working directory (/home/michael/development/black-screen) did fix the problem :)
When I first encountered the error I set "cwd" to the relative path of my working directory (~/development/black-screen) but encountered the same error. Looks like it needs to be set to the absolute path.

I've removed the path. Sorry, guys.

No problems @shockone.


multiple arguments for author tag

author attribute is related to the package, even if the package contains multiple files from different contributors. If it allowed for multiple values there would be more ambiguity who each person is, and would be more difficult to display and comprehend.
Having a single field forces the package owner to decide on a single value. The field can be a person's name or an org/company name for multiple people. Other package managers do the same for these reasons.
Therefore closing as won't do.


Enroll only cr_ prefixed devices

This will fix the issue that all devices in crypttab are enrolled, even though this might not be desired. This implementation also will not replace the crypttab file, but only update it. This also creates a backup of the old file.
Please verify that this works as exected on different machines and use-cases

This doesn't rewrite the remove_crypttab_option yet, but that should, if the functionality proposed here is wanted, should also be done :)

I was thinking in a different approach instead of the name of the luks2 device. For example, we could use an x-sdbootutil. namespace attribute in /etc/crypttab to registers the ones that will be automatically tracked by sdbootutil. Or enumerate then in the /etc/sysconfig/fdetools file
The problem tracking only cr_* is that is a convention outside the expectation of the users (configuration files and such)

I am experimenting with adding x-sdbootutil.track to mark the encrypted devices that should be tracked by sdbootutil (enroll, unenroll, etc), and seems to be a viable solution.
The problem that I see is the migration. Current systems should manually add this option in /etc/crypttab so the device is recognized by sdbootutil.  This is why I am thinking that maybe makes more sense to make is as an opt-out, so adding x-sdbootutil.untrack instead in the devices that sdbootutil should ignore.
What do you think?

https://github.com/openSUSE/sdbootutil/pull/153

I am experimenting with adding x-sdbootutil.track to mark the encrypted devices that should be tracked by sdbootutil (enroll, unenroll, etc), and seems to be a viable solution.
The problem that I see is the migration. Current systems should manually add this option in /etc/crypttab so the device is recognized by sdbootutil. This is why I am thinking that maybe makes more sense to make is as an opt-out, so adding x-sdbootutil.untrack instead in the devices that sdbootutil should ignore.
What do you think?

I'm slowly getting back on track and working through my different projects :)
Hmm as a user I wouldn't expect my drive to get enrolled, but only the root drive, but that might be me.
And now the other PR is already merged, so I guess we will go with this ;)
It's fine as well :)

Hmm as a user I wouldn't expect my drive to get enrolled, but only the root drive, but that might be me.

My expectation is different, but I do not have a good argument to defend it.
But in any case cannot be the root drive only the one managed by sdbootutil. For example, cr_swap should be there too, and in MicroOS I guess etc and var (because of the overlays).  I am not sure about cr_home, but is hard for me to argue why sdbootutil should ignore it.

And now the other PR is already merged, so I guess we will go with this ;)

We can change it


HIVE-27023: Add setting to prevent tez session from being opened duri…

What changes were proposed in this pull request?
A setting to disable tez session being preemptively opened during startup of hive cli.
Why are the changes needed?
DML only operations won't need a tez session to be opened. Oozie action that launches hive cli for DML only operations  need this setting. Sometimes before the tez session thread could complete, the oozie hive action completes its DML operations and clears the scratch folders causing the tez session to fail with following exception:
Application application_1667416881396_24229473 failed 3 times due to AM Container for appattempt_1667416881396_24229473_000003 exited with exitCode: -1000
Failing this attempt.Diagnostics: [2023-02-02 19:02:12.139]File does not exist: hdfs://<name_node>/tmp/<db>/_tez_session_dir/4050c4b0-b7af-4eda-832b-399c954eb576/.tez/application_1667416881396_24229473/tez.session.local-resources.pbjava.io.FileNotFoundException: File does not exist: hdfs://<name_node>/tmp/<db>/_tez_session_dir/4050c4b0-b7af-4eda-832b-399c954eb576/.tez/application_1667416881396_24229473/tez.session.local-resources.pbat org.apache.hadoop.hdfs.DistributedFileSystem$29.doCall(DistributedFileSystem.java:1529)at org.apache.hadoop.hdfs.DistributedFileSystem$29.doCall(DistributedFileSystem.java:1522)at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)at org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1537)at

Does this PR introduce any user-facing change?
New config value, otherwise no.
How was this patch tested?
Manually tested

@abstractdog @ramesh0201 So in this case with this config you can avoid to have a tez session? Is this safe?  I can imagine a use case for it. What do you think?

I don't get when this exactly happens: in the supported infrastructure (beeline + hiveserver2) if we don't configure an initial session pool in hiveserver2 (hive.server2.tez.initialize.default.sessions=false), there shouldn't be any tez session
how does this happen? hive cli is not supported any more

I don't get when this exactly happens: in the supported infrastructure (beeline + hiveserver2) if we don't configure an initial session pool in hiveserver2 (hive.server2.tez.initialize.default.sessions=false), there shouldn't be any tez session how does this happen? hive cli is not supported any more

@abstractdog - The issue can happen when Hive action is used in Oozie - https://github.com/apache/oozie/blob/d4e36739d798589567ac331b348e8786c876aefa/sharelib/hive/src/main/java/org/apache/oozie/action/hadoop/HiveMain.java#L312
It directly calls the CliDriver class which spawns a tez session.

thanks for clarifying @maswin
even if HiveCLI is not supported, oozie is still using that, so it makes sense to fix this, but introducing a new property doesn't seem to address the root cause, which is:
Sometimes before the tez session thread could complete, the oozie hive action completes its DML operations and clears the scratch folders causing the tez session to fail with following exception

this makes me think that in case there are operations using the tez session and then oozie does some DML operations, this can still happen, right? so the root cause looks independent of the fact that you reproduced it with DML-only scenario, so this fix is more likely hiding the problem, which is cleaning up scratch directories before tez sessions are closed, which is unexpected and needs to be fixed

this makes me think that in case there are operations using the tez session and then oozie does some DML operations, this can still happen, right? so the root cause looks independent of the fact that you reproduced it with DML-only scenario, so this fix is more likely hiding the problem, which is cleaning up scratch directories before tez sessions are closed, which is unexpected and needs to be fixed

Ahh, true.
This happens because the tez session is opened in a separate thread in async mode via beginStart() - https://github.com/apache/hive/blob/f78ca5df80c0bcb566f0915cda65112268df492c/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java#L785
And before closing the session we don't wait for the tez session to close.
I have add a call for endStart() in the finally block now. That should probably fix the root cause.
But it might also be beneficial to provide the setting to disable opening tez session everytime due to resource wastage.

@maswin : basically it makes sense to prevent tez sessions to be opened at all

we already have HIVE_CLI_TEZ_SESSION_ASYNC, let's have HIVE_CLI_TEZ_SESSION_LAZY_START for better naming
clarify in HiveConf what that means, I mean having both "async" and "lazy" could be very confusing at first sight: "async" is about starting SessionState and not waiting for tez session to be started, and "lazy" is about not starting tez session at all while starting SessionState

@maswin: I just reopened this, I think it looks good, let me merge if the tests pass

reopened again as I forgot about this :)

@maswin  can you please rebase this PR on top of master?

@maswin can you please rebase this PR on top of master?

@abstractdog : Done


Extend spo navigation node add to support audience targetting

Closes #4418

Great work! We'll review it ASAP!

Merged manually, thank you!


Google dashedline

Does any other open PR do the same thing?
No

What issue is this PR fixing?
Dashed lines support for google maps
https://github.com/react-community/react-native-maps/issues/33
How did you test this PR?
Android and simulator

resolved conflicts, were because I'm noob

Reapplied changes currently on master. Now is blazing fire

I want to add that is my first time writing obective C ahah

Really? It's really good for a first time! 👍

@satori-ytolstoguzov what do you mean with "you assume that there are always will be only 2 items" afaik it can be many but only consider even values, so 10, 10, 20 will be the same as 10, 10.  and 10, 20, 10 ,20 works fine.  at most there could be a warning about un-even array number but idk how to do it

There is no warning! I'm saying if the prop is passed for example [10,10,5] its a bad format but doesnt cause any issue, and we could show a yellow warning but don't think is needed :)

If this lacks something to be aproved please someone finish it, it has everything to work. As this is already being used in a released app.(atleast what is on our fork)
Best reggards.

Hi,
when is this going to be merged? I am also waiting for this feature.

Hi, Any progress on dashed lines?

Seriously

@filipef101 can you please resolve the conflicts?

@gabrielmoncea Haven't used this in long time, so you or someone else that can should resolve the conflicts.

Also probably needs some docs

a


Start to package bob for Debian (apt) and Archlinux (pacman) (and FreeBSD?)

just to point you into a direction -- we use shell scripts for debian/ubuntu and FreeBSD, e.g. over at https://github.com/robur-coop/albatross (take a look into the opam file)
the shell scripts only do stuff if (a) invoked manually or (b) running under orb -- that's why we release these exact opam files to the repository (and the shell scripts don't have an effect).


com.facebook.imagepipeline.memory.BitmapPool.alloc

My app have alot crash about com.facebook.imagepipeline.memory.BitmapPool.alloc after intergrate react-native-fast-image in Android.
I dont found any wrong in the intergration on my app.
Have anyonce have same issue in Android?
Have any suggest for check or resolve this issue?
Thanks~!

Don't have anyonce same my issue?

@maartenschumacher
Thank for your support.
I have used:
"react-native-fast-image": "^5.1.1"
react-native-cli: 2.0.1
react-native: 0.55.4


Introduce Account, HotWallet, Create AccountMeta

This PRs Extract the Account to an interface. The idea is that other types of wallets can be implemented.
The problem is that the current Account also contains Meta. This will create a breaking change on every transaction using Account.Meta. This was a bad implementation from the beginning. The Signing Method will be extracted to the account and live outside the transaction.
Hot wallet implementation is also added to maintain functionality.

This will be treated as a new release correct? Since it's breaking changes will it be updated to 2.0.0?


20-minute neighbourhood scenario

@StevePem has completed work on 20-minute neighbourhood scenario modelling for Melbourne and we have workshopped how this may be integrated into the visualisation platform.
Data is publicly available (https://osf.io/54zpc/), however some work will be required to get this in an appropriate format for presentation as a data story.
An idea is that ultimately, perhaps through linkage with other JIBE outputs, a data story can be developed that highlights the pathways to health impacts of 20 minute neighbourhood scenarios, through influence on mode choice and mode shift.

I've sketched this in; not complete but the data is now there so it has been demonstrated as a proof of concept.  While I'll keep refining things, I'll close this issue now.


Bad access exception while drawing gradient in 8.0.3

The following exception occurs while drawing an SVG with a gradient. The value of gradient is 0x0.
colorsAndOffsets is NULL

Closing because of inactivity.


refactor: convert word cloud to full react

🏆 Enhancements

non-legacy WordCloud is converted to native react.

📜 Documentation

Add storybook

@conglei @khtruong

comments addressed


Bump EKS Go versions in builder-base for 1.18, 1.19

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/hold

/unhold

/lgtm

/approve


Discussion on handling non trivial business logic

I'd like to ask the community how they approach sophisticated business logic in non trivial applications using redux-saga. In particular, the problem I'm trying to solve is how to compose business logic that spans multiple domains without coupling workers (and their domains) unnecessarily.
In the application I'm actively working on, each redux action may go through a series of sub systems (domains) based on an individual users tier and/or capabilities. The goal is to build a modular application that allows for whole sub systems (domains) to be hidden behind features flags, versioned, hot swapped etc. It's imperative for me to keep our sub systems highly decoupled to that end. The challenge thus for with redux-saga has been achieving that modularity while still having granular control of how/when to fire Saga's that span domains.
Let's say that I have three Saga domains foo, baz and bar each with their own watchers/workers and a use case scenario that needs to do work by orchestrating calls to workers across each domain sequentially. Ideally, this would be a matter of having each domain operate upon their part of the workflow either by calling it's own workers and then delegating to the domain next in the chain (i.e Chain of Responsibility) or for more granular orchestration offering a mechanism for a worker to yield put a meaningful state transition action and wait within a worker for other domains to have completed their work before resuming the original worker.
Chain of Responsibility Execution
ACTION -> foo.watcher() -> foo.worker() -> bar.watcher() -> bar.worker() -> baz.watcher() -> baz.worker()

Put and Wait
ACTION -> foo.watcher() -> foo.worker() [------------------------------------------]foo.worker() ------>
                                \- START_FOO_ACTION --> baz.watcher() -> baz.worker() [----] -/
                                \- START_FOO_ACTION --> bar.watcher() -> bar.worker() [--]-/

The above scenarios are currently not possible since all watchers are typically spawned/forked from the rootSaga meaning that they will all operate on incoming actions concurrently. In addition there isn't a built in mechanism (that I can find) for monitoring a Saga's lifecycle so that I could write my own yield put that waits for all other watcher/workers to handle an action before resuming.
          foo.watcher() -> foo.worker()
        /
ACTION -> baz.watcher() -> baz.worker()
        \
          bar.watcher() -> bar.worker()

What we've had to do then is pick a primary domain (on a per case basis) and make that domain responsible for the orchestration of business logic. This is not ideal as now that one domain and it's corresponding watcher/worker are tightly coupled to many other workers (of other domains). In our non trivial app this part of the code base becomes highly imperative, an extreme violation of the SRP and leads to a lot of bugs due to the centralized code churn.
ACTION -> foo.watcher() -> foo.worker() [------------------------] foo.worker() --->
                                \- baz.worker()[---] -/     \- bar.worker()[-] -/

I'm very interested to see if anyone else has run into these challenges and what possible solutions that have come up with. I'm happy to share some of my findings and solutions I've prototyped to continue this discussion if warranted.

This is getting at a very big and general question. This discussion may be relevant: https://github.com/reactjs/redux/issues/1528

Thank you @granmoe . I have been keeping up with that discussion. Another pertinent discussion is happening in the comments of this blog post.
Of particular interest to me at this point is how we can make the best of our current ecosystem around modeling effects at scale. I'm particularly interested in any ways members of the community have overcome redux's shortcomings in composability even if perhaps they are not theoretically pure to the origins of redux's design (elm) etc.

Wow, that was actually a great comments section! Thanks :-) @eclifford I had read that post when it came out, but never read the comments.

Im not sure if i grasped a problem at hand to its full extent - but wouldnt it be possible to implement such concurrent workers etc by simple combination of put + take patterns? Might be hard though if you dont know how many takers there are for the particular action.
Do you have any possible API in mind which would allow you to create such custom workflows?

@Andarist I'm looking to solve the many takers scenario. I want to be able to swap in and out domain actors at runtime without the modifying the core application. I want my domain actors to be able to be orchestrated together to fulfill business logic without explicit put and take continuation.
I've been part of building a fairly large Redux-Saga project in which we are forced to have workers calling other workers of totally different responsibilities due to temporal coupling. I in effect want to solve the temporal orchestration problem by applying some pattern to the usage of Redux Saga to better decouple domain logic while retaining granular orchestration.
I've thrown together a very quick POC on a possible solution.
https://github.com/eclifford/redux-saga-mediator-topology

This thread got a little bit stale, so I'm closing it. If you need to discuss this further, please just reply back here.


Installed and configured tailwindcss

Installed tailwindcss using the instructions found here

This has 67 files, we wont accept this, sorry - it still has the old files that has moved to other repo.
Unless you do your work on top of the fresh copy of master

Hi Samuel! We appreciate the contributions, but to Faith's point this does look like it will be a bit of a challenge to merge and get back up to date. There's a lot here to go through, so what I can do is we can leave this PR open, and if I have time in the future I'll go through this myself to see what we can merge up.
Thanks again for contributing!

I rebased and made sure that it was on the latest copy of master unless new
changes have been pushed to master since that time.  Also the bulk of the
changes here are caused by the linter. It would be worth running yarn lint
once in a while yourselves :). Regardless, I hear you. Will have the PR
closed as soon as I possibly can.
On Wed, 22 Sep 2021 at 03:05, cnp0 @.***> wrote:

Hi Samuel! We appreciate the contributions, but to Faith's point this does
look like it will be a bit of a challenge to merge and get back up to date.
There's a lot here to go through, so what I can do is we can leave this PR
open, and if I have time in the future I'll go through this myself to see
what we can merge up.
Thanks again for contributing!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/repomint/repomint-web/pull/36#issuecomment-924475002,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABCE5CATF77YZLZQ5UOUMCLUDEMS7ANCNFSM5EMZMUZA
.

I rebased and made sure that it was on the latest copy of master unless new changes have been pushed to master since that time. Also the bulk of the changes here are caused by the linter. It would be worth running yarn lint once in a while yourselves :). Regardless, I hear you. Will have the PR closed as soon as I possibly can.
…
On Wed, 22 Sep 2021 at 03:05, cnp0 @.***> wrote: Hi Samuel! We appreciate the contributions, but to Faith's point this does look like it will be a bit of a challenge to merge and get back up to date. There's a lot here to go through, so what I can do is we can leave this PR open, and if I have time in the future I'll go through this myself to see what we can merge up. Thanks again for contributing! — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub <#36 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABCE5CATF77YZLZQ5UOUMCLUDEMS7ANCNFSM5EMZMUZA .

I imagine you would redo your PR? I suggest dont use yarn lint for now as it clutters the PR changes, I will setup a husky command later on anyway. So the changes I expect would be the tailwind configs and work on the header and sidebar only. Thanks

Lol. I could have gladly redone the PR if you had asked me to instead of
“sorry, we won’t accept this PR”. Also maybe you should have asked why the
PR is so large if you didn’t have the time to go through it, would have
gladly and politely explained and made needed adjustments.
While you are at it, please work on a code of conduct and contribution
guideline as well if you intend to have “more active” contributors beyond
Ignition.
On Wed, 22 Sep 2021 at 07:28, Faith Morante @.***>
wrote:

I rebased and made sure that it was on the latest copy of master unless
new changes have been pushed to master since that time. Also the bulk of
the changes here are caused by the linter. It would be worth running yarn
lint once in a while yourselves :). Regardless, I hear you. Will have the
PR closed as soon as I possibly can.
… <#m_2245198970719022780_>
On Wed, 22 Sep 2021 at 03:05, cnp0 @.***> wrote: Hi Samuel! We
appreciate the contributions, but to Faith's point this does look like it
will be a bit of a challenge to merge and get back up to date. There's a
lot here to go through, so what I can do is we can leave this PR open, and
if I have time in the future I'll go through this myself to see what we can
merge up. Thanks again for contributing! — You are receiving this because
you authored the thread. Reply to this email directly, view it on GitHub <#36
(comment)
https://github.com/repomint/repomint-web/pull/36#issuecomment-924475002>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABCE5CATF77YZLZQ5UOUMCLUDEMS7ANCNFSM5EMZMUZA
.
I imagine you would redo your PR? I suggest dont use yarn lint for now as
it clutters the PR changes, I will setup a husky command later on anyway.
So the changes I expect would be the tailwind configs and work on the
header and sidebar only. Thanks
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/repomint/repomint-web/pull/36#issuecomment-924573626,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABCE5CD6BHYYYJQIKXP7LELUDFLO3ANCNFSM5EMZMUZA
.

Yea that's my bad, wrong words came out. Please let me know if you will still make adjustments on this PR

No drama please. Closing. If we want a resubmission let’s try this again without conflict.


refactor: support right-to-left direction using styled-components as style engine

https://mui.com/guides/styled-engine/#how-to-switch-to-styled-components
using styled-components as style engine
https://mui.com/guides/right-to-left/
using the StyleSheetManager and providing the stylis-plugin-rtl as an item in the stylisPlugins property

ok so this is only to make rtl work? We are not replacing makeStyles here? Using this approach, can we still switch out makeStyles?

ok so this is only to make rtl work? We are not replacing makeStyles here? Using this approach, can we still switch out makeStyles?

Yes, This PR only makes RTL work. I plan to replace makestyles and v4 theme together. Yes, we can.


Invalid CSS should be rejected

Right now, scss-lint is totally fine with
.foo {
  padding: 30;
}

Can we please reject that?

Hey @ptarjan, that CSS looks perfectly valid to me from a syntactical perspective. If you are referring to the lack of units on padding, this kind of checking can get complicated since it's hard for scss-lint to know all the situations where specifying units would make sense (especially when you need to also work around interpolation).
There might be a solution where we can get the PropertyUnits linter to report a warning when no units are provided for certain properties. I'd be open to a pull request adding that functionality, otherwise I'll get to it when I can.

Yes that's exactly what I meant, the missing units.

Does PropertyUnits not already have this functionality? I'm looking at the
    border: ['px'] # Only pixels

line here

An nice. Then I'm proposing that by default all the allowed HTML units should be in there.

@ptarjan is there a documented list of CSS properties and their allowed units you could point to? That would make implemented this request pretty trivial.

Sadly I don't, I'd be Googling for it like you would. Can you start small with the obvious ones and then grow it as we notice problems? I'd start with padding (and all the 4 -top, -right variants), margin (and variants) font-size, height, and width.


Hostname only is not permitted as external link

Please verify that this bug has NOT been raised before.

[x] I checked and didn't find a similar issue

Describe the bug*
When adding an external link when editing a stock item, only a fully qualified domain name is permitted in the URL, e.g. https://foo.bar.
When entering a URL which consists only of a hostname e.g. https://foo, an error is raised (Enter a valid URL):

The validation should be enhanced that hostname only is also allowed .
Steps to Reproduce

Go to a stock item
Edit stock item
try to enter https://foo as external link

Expected behaviour
When entering https://foo as external link it should be accepted an the stock item should be saved.
Deployment Method

[ ] Docker
[ ] Package
[x] Bare metal
[ ] Other - added info in Steps to Reproduce

Version Information
Version Information:
InvenTree-Version: 0.16.2
Django Version: 4.2.15
Commit Hash: 065aca4
Commit Date: 2024-09-10
Database: postgresql
Debug-Mode: True
Deployed using Docker: False
Platform: Linux-5.15.0-122-generic-x86_64-with-glibc2.35
Installer: GIT
Active plugins: False
Please verify if you can reproduce this bug on the demo site.

[x] I can reproduce this bug on the demo site.

Relevant log output
No response

Resolving adresses like that serverside poses risks of internal network information, I do not see this as a bug.

@matmair I do not think this requires resolving anything on the server side - this is just validation of a text field, right?

@SchrodingersGat @matmair
Yes it's just about validation of the user entry. No need of network resolving anything.
As of now the external link feature is not usable in my case. I'm using InvenTree in the intranet and have a GitLab instance also running there. When it comes to stock parts I've used the link feature to link to certain labeled issues.
As our network infrastructure changed, there is now only the hostname, so I can't enter new external links or update the existing ones.
Seems to me like a bug, as RFC2396 states that the hostname can contain the toplabel only:
host                = hostname | IPv4address
hostname      = *( domainlabel "." ) toplabel [ "." ]

This is a restriction in django itself - https://docs.djangoproject.com/en/4.2/ref/validators/#urlvalidator
The URLValidator class (which we sub-class in our code) prevents non-loopback addresses which do not specify a TLD. e.g.
Valid

https://www.google.com
http://localhost

Invalid

https://www.google
http://myserver

I'm not sure if there is a clean way for us to code around this, even if we wanted to

We are using the same validator for this specific field and the fields where we eventually call them so changes should be made carefully. I find running a network without any tldr to be a very outlandish edge case and not something that can be expected to be supported.

@SchrodingersGat in my eyes this is a wontfix item - we never allowed links without a domain

@matmair agreed - @momu you will just have to work around this limitation


WIP

API change check
APIView has identified API level changes in this PR and created following API reviews.
System.Net.ClientModel


 There is probably more that can (and should) be done with transform logic, but this is a quick win.

Real world:
single play session (running through TestSceneAutoplay once)
object alloc count reduction 15%
memory alloc bytes reduction 10%


Project initialized

Peer-to-peer code review

Hi @Ndaboom   ,
Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉

Highlights
The Project is following JavaScript best Practices✅
The Project follows DRY, KISS, and YAGNI rules. ✅
The Project follows HTML & CSS best Practices ✅
Linters are working properly ✅
Optional suggestions
Cheers and Happy coding!👏👏👏


The window terminated unexpectedly (reason: 'crashed' code: '-1073741819')

Type: Bug
Open Extensions tab and a dialogue opens which reads:
The window terminated unexpectedly (reason: 'crashed' code: '-1073741819')
Dump.zip
2024/04/30 - NB: With extensions enabled crash occurs shortly after start but I haven't provided the reproduction here.
VS Code version: Code 1.87.2 (863d2581ecda6849923a2118d93a088b0745d9d6, 2024-03-08T15:20:17.278Z)
OS version: Windows_NT x64 10.0.19045
Modes:

System Info

Item
Value

CPUs
AMD Ryzen 5 3600 6-Core Processor               (12 x 3600)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
15.93GB (10.24GB free)

Process Argv
--disable-extensions --crash-reporter-id a3899707-306e-4780-be26-eb47b1ee921e

Screen Reader
no

VM
0%

Extensions disabled
A/B Experiments
vsliv368cf:30146710
vspor879:30202332
vspor708:30202333
vspor363:30204092
vscod805:30301674
binariesv615:30325510
vsaa593cf:30376535
py29gd2263:30899288
c4g48928:30535728
azure-dev_surveyone:30548225
962ge761:30959799
pythongtdpath:30769146
welcomedialog:30910333
pythonidxpt:30866567
pythonnoceb:30805159
asynctok:30898717
pythontestfixt:30902429
pythonregdiag2:30936856
pyreplss1:30897532
pythonmypyd1:30879173
pythoncet0:30885854
2e7ec940:30998029
pythontbext0:30879054
accentitlementst:30995554
dsvsc016:30899300
dsvsc017:30899301
dsvsc018:30899302
cppperfnew:30979542
d34g3935:30971562
fegfb526:30981948
bg6jg535:30979843
ccp2r3:30993541
dsvsc020:30976470
pythonait:30996668
dsvsc021:30996838

I concluded at somepoint the crash occurs after opening the extensions tab.

I also have this situation. If I solve it successfully, I will come back to share

Maybe this can help you. https://stackoverflow.com/questions/76703203/the-window-terminated-unexpectedly-reason-crashed-code-135

Thanks for your suggestions, I completely uninstalled and reinstalled VSCode, and later found that it can be used normally, and the extension can also be operated graphically。I hope it can be helpful to you。
------------------ 原始邮件 ------------------
发件人:                                                                                "microsoft/vscode"                                                                                @.>;
发送时间: 2024年10月24日(星期四) 下午3:18
@.>;
<EMAIL_ADDRESS>主题: Re: [microsoft/vscode] The window terminated unexpectedly (reason: 'crashed' code: '-1073741819')  (Issue #208494)
Thanks for the suggestions, I have completed these at points. I use a system install but it claims that the files have been edited, this persisted until a few versions ago at the time of writing.
My workaround is to use the command line to update all extensions, then don't open the Extensions view. That way I can work as normal.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>

I now get various issues, including this but also UI crashing and processes not ending on unspecified crashing.
I think my GPU has been the cause is now more obviously broken as many other apps are unstable when using GPU such as Steam and Firefox.


Page uuid, Context uuid and Browser uuid should start with (page|context|browser)=

To clearly indicate that an uuid is for page, context or browser, the identifier should contain a prefix that explicitly states this.
This could in the future also allow us to use these in enhanced selector syntaxes (for instance clicking a button in a different page on a different browser and then observing changes in the current one).

fixed


Add device info to HTML report

After a test run our HTML reports list tests with failures.  This seems to be working as expected.  However, when you click on a test to view the details, the failure reason is often (not always) listed twice.
Example:
^ org.quest.johnny.activity.URLExceptionTest#AddAndRemoveExceptionTest(2)
android.support.test.espresso.NoMatchingViewException: No views in hierarchy found matching: with text: is "Privacy & Security"
android.support.test.espresso.NoMatchingViewException: No views in hierarchy found matching: with text: is "Privacy & Security"

^ org.quest.johnny.activity.ChangeSearchEngineTest#SearchSuggestionTest(2)
android.support.test.uiautomator.UiObjectNotFoundException: UiSelector[CLASS=android.widget.TextView, DESCRIPTION=localhost_42393, ENABLED=true]
android.support.test.uiautomator.UiObjectNotFoundException: UiSelector[RESOURCE_ID=org.mozilla.focus.debug:id/suggestionList]

^ org.quest.johnny.activity.ChangeSearchEngineTest#SearchTest(2)
android.support.test.espresso.base.DefaultFailureHandler$AssertionFailedWithCauseError: '"Tab 1"' doesn't match: Tab 2
android.support.test.espresso.base.DefaultFailureHandler$AssertionFailedWithCauseError: '"Tab 1"' doesn't match: Tab 2

^ org.quest.johnny.activity.SettingsBlockToggleTest#SettingsToggleTest(1)
android.support.test.uiautomator.UiObjectNotFoundException: UiSelector[RESOURCE_ID=org.mozilla.focus.debug:id/suggestionList]

Can you send me your aggregated JUnit XML so I can debug?

^ org.quest.johnny.activity.URLExceptionTest#AddAndRemoveExceptionTest(2)

what this means is the test AddAndRemoveExceptionTest executed twice (2)
are you using repeatTests in Flank?

repeat tests is set to: 1, i assume that means they should only run once

yep, XML merging bug then.

Feature will be addressed in the new reporting experience. More details will be available next week.

hey, device info is now in the HTML report 😄

Nice!!!  Thank you 🙏
Pe 29 mar. 2019, la 15:41, bootstraponline<EMAIL_ADDRESS>a scris:

hey, device info is now in the HTML report 😄
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Remove NOA Dependency

NOA is only used for setting the translationY of the view for pre HC
devices. Instead of importing the entire library (700+ method count)
for one method call, copy the the AnimatorProxy class and only keep the
needed methods.

The majority of the changes in the gradle file and the SlidingUpPanelLayout.java file are due to the formatter be run.

Hi Kenny, this is actually how I used to have this, but I decided to include the library and avoid code duplication. If you are using Proguard, it will typically take care of excluding all the unnecessary code. Thoughts?

I am currently not using Proguard as my app isn't too large (about 30K methods). I'm just a little over zealous on removing unnecessary dependencies. If you decide not to merge this its okay, I can build an aar on a local branch that removes the NOA dependency as the min SDK in my app is 14.

Hi Kenny, I highly recommend using proguard in your app. It's a must for security and performance. Many other libraries do exactly the same thing that I'm doing to only use a single class. Thank you for your interest in contributing, but I will not be merging this PR.

No problem. The app is open source, so I don't see the need for it, thanks anyway!


Service Bus Samples issues

Section Link:

Reason:
SESSION_QUEUE_NAME Variables not defined.
Suggestion:
Add SESSION_QUEUE_NAME = os.environ['SERVICE_BUS_SESSION_QUEUE_NAME'].
@jongio for notification.

This was resolved by @yunhaoling in commit #be67ece4 and will be going out with 7.0.0b8
Thanks as always for the report :)


Compute tube tortuosity measures

This is a CLI that takes a tre file, computes tortuosity measures for all tubes in it, and writes the computed measures to a CSV file.

@vovythevov ready to merge from my side. can you possibly take a quick look?

Lokks good to me , +1


_on_resize or No completion weird crash

Operating system or device - Godot version:
Arch Linux 64bit - Godot built from source 48dc4d92a8f3c9eb42456eda2433c6fcaff0c723
I run Godot via primusrun (Nvidia Optimis Laptop :-1: )
Issue description
I'm working on my project - pseudo terminal emulator for Godot. It's basicly rewrite of my old project using new Godot features. Every time I try to add line
if x <= size.x: to transfer_to() method in buffer.gd Godot crashes.
It should looks like this
func transfer_to(buffer):
	for y in buffer.size.y:
		if y <= size.y:

size is Vector2D
Steps to reproduce:

Open my project in Godot
Open buffer.gd
Try to add if y <= y.size: line in transfer_to(buffer): method at the beggining of first loop (for y in buffer.size.y)
Note I know that that line of code wouldn't work and I shoud use range() but I suppose that does not matter for now.
Project itself works, you can run it, works as expected.

I captured little video to show the issue:  https://www.youtube.com/watch?v=z-6zQ851g7g&feature=youtu.be
Godot output: https://gist.github.com/TeddyDD/842a54a7fd045b202af1a0ccb0541297
This line might be relevant (or not?): https://github.com/TeddyDD/gtern/blob/master/addons/terminal/terminal.gd#L45 It was called by signal before _ready() (font was null) I'm talking about this because of this line from Godot output
ERROR: emit_signal: Error calling method from signal 'resized': 'Control(terminal.gd)::_on_resize': Method not found.
   At: core/object.cpp:1210.

Link to minimal example project
Here is my project https://github.com/TeddyDD/gtern
Sorry if this not very precise issue description but this is pretty weird :confused:

This odd, but I get a gut feeling this might be related to the new compiler issues we're having with GCC 6 #4623 (since you're running Arch Linux you're certainly using this version if you keep your system up to date).
Try building with Clang, it's just a matter of adding CC="clang" CXX="clang++" to the SCons command line (after installing Clang, of course, which is easily done with pacman -S clang).

I compiled with clang this time but It's still the same
VBoxContainer: 136,100 pią, 13 maj 2016, 07:59:35
bind toptions
LOCAL PATH: res://demo.tscn from res://demo.tscn
ERROR: emit_signal: Error calling method from signal 'resized': 'Control(terminal.gd)::_on_resize': Method not found.
   At: core/object.cpp:1210.
settings changed

There's no occurrence of _on_resize in the whole code base, so I suspect a bug in your scene. Did you connect terminal.gd's Control to a non existing method?

Terminal is just a control. I connected the resized() signal to _on_resize() method in terminal.gd

This is a duplicate / related to #4555 where it can't find the type of buffer, after initializing buffer  to a Vector2 where it is declared it no longer crashes.

I edited this file in external editor and it was working but now every my code calls method transfer_to() in buffer.gd editor crashes. Not sure If this is related or no but I'll post error message
ERROR: put_packet: Condition ' p_buffer_size+4 > temp_buffer.size() ' is true. returned: ERR_INVALID_PARAMETER
   At: core/io/packet_peer.cpp:228.
ERROR: put_packet: Condition ' p_buffer_size+4 > temp_buffer.size() ' is true. returned: ERR_INVALID_PARAMETER
   At: core/io/packet_peer.cpp:228.
ERROR: operator[]: Condition ' p_index<0 || p_index>=size() ' is true. returned: aux
   At: core/vector.h:132.

Same  thing as #4555. There's an easy way to reproduce stated there:
var x
func _ready():
    x=x. #crashes when typing the dot

Basically this is a infinite recursion when trying to guess the identifier type, so it causes a stack overflow and crash.

I could just confirm #4555 (marked as duplicate of this) on master, so probably not fully fixed...


Fix typo in TFrontendService

Why are the changes needed?

Duplicate with
https://github.com/apache/kyuubi/blob/master/kyuubi-common/src/main/scala/org/apache/kyuubi/service/TFrontendService.scala#L265-L280
How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[ ] Run test locally before make a pull request

https://github.com/apache/kyuubi/blob/master/kyuubi-common/src/main/scala/org/apache/kyuubi/service/TFrontendService.scala#L265-L280

Codecov Report

Merging #4205 (4822cbf) into master (5357a02) will decrease coverage by 0.07%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##             master    #4205      +/-   ##
============================================
- Coverage     53.05%   52.99%   -0.07%
  Complexity       13       13
============================================
  Files           548      548
  Lines         30000    30000
  Branches       4034     4034
============================================
- Hits          15917    15898      -19
- Misses        12602    12620      +18
- Partials       1481     1482       +1

Impacted Files
Coverage Δ

...a/org/apache/kyuubi/service/TFrontendService.scala
90.93% <100.00%> (ø)

...client/exception/RetryableKyuubiRestException.java
0.00% <0.00%> (-100.00%)
:arrow_down:

.../org/apache/kyuubi/client/RetryableRestClient.java
48.78% <0.00%> (-24.40%)
:arrow_down:

...main/java/org/apache/kyuubi/client/RestClient.java
82.75% <0.00%> (-3.45%)
:arrow_down:

...apache/kyuubi/engine/JpsApplicationOperation.scala
77.41% <0.00%> (-3.23%)
:arrow_down:

...g/apache/kyuubi/operation/BatchJobSubmission.scala
74.71% <0.00%> (-2.25%)
:arrow_down:

...rg/apache/kyuubi/ctl/cmd/log/LogBatchCommand.scala
59.09% <0.00%> (-1.52%)
:arrow_down:

.../engine/spark/session/SparkSQLSessionManager.scala
78.48% <0.00%> (-1.27%)
:arrow_down:

...ain/scala/org/apache/kyuubi/engine/EngineRef.scala
74.60% <0.00%> (-0.80%)
:arrow_down:

...rc/main/scala/org/apache/spark/ui/EnginePage.scala
79.26% <0.00%> (+0.28%)
:arrow_up:

... and 1 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

thanks, merged to master


Update package.json to use oni package name, and add reference to Till Arnold in 'thanks' section

Thanks @tillarnold for letting us have the oni package name, and thanks @bert88sta for reaching out!

Fix #279


Remove old "web3py" package entry from PyPI

What was wrong?
As discussed on Gitter, PyPI should just have web3, not web3py.
Cute Animal Picture

@void4 this is going to need to be done by you as you seem to be the sole owner of that repository.

I removed web3py.


Added: shellcheck 0.6.0

Hmm, I thought you could specify and install a single binary: shellcheck is a single binary utility, not a proper installer. If there's a way to make that work, you'll probably want this metadata too:
repo: https://github.com/koalaman/shellcheck
license: GPLv3

unfortunately, xcopy (non-installers) aren't supported right now.
you can follow https://github.com/appget/appget/issues/4 for the proposed plan.


32bit odbc connection to sybase ase

Environment

Python: 32-bit Python 2.7
pyodbc: pypyodbc-1.3.5 from https://pypi.python.org/pypi/pypyodbc
OS: Win7 (64-bit)
DB: Sybase ASE
driver: ODBC driver for Adaptive Server Enterprise

Issue
"expected behavior"
I'd like to connect to the DB without errors.
"observed behavior"
I execute the following lines
import sys
sys.path.insert(0, 'C:\mypath\pypyodbc-1.3.5')
import pypyodbc
conn = pypyodbc.connect(r'uid=xxxx;pwd=xxxx;DRIVER={Adaptive Server Enterprise};port=1234;server=11.222.333.444;charset=iso_1;')

and the last one gives an error (it seems that the charset is the issue)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\mypath\pypyodbc-1.3.5\pypyodbc.py", line 2454, in __init__
    self.connect(connectString, autocommit, ansi, timeout, unicode_results, readonly)
  File "C:\mypath\pypyodbc-1.3.5\pypyodbc.py", line 2528, in connect
    check_success(self, ret)
  File "C:\mypath\pypyodbc-1.3.5\pypyodbc.py", line 1009, in check_success
    ctrl_err(SQL_HANDLE_DBC, ODBC_obj.dbc_h, ret, ODBC_obj.ansi)
  File "C:\mypath\pypyodbc-1.3.5\pypyodbc.py", line 985, in ctrl_err
    raise Error(state,err_text)
pypyodbc.Error: (u'HY092', u'[HY092] [Sybase][ODBC Driver]Invalid attribute or option identifier')

Excuseme: now I've done
c:\Python27\Scripts\pip.exe install pyodbc
Collecting pyodbc
  Downloading pyodbc-4.0.19-cp27-cp27m-win32.whl (50kB)
    100% |################################| 51kB 1.1MB/s
Installing collected packages: pyodbc
Successfully installed pyodbc-4.0.19

And it did the trick


Table Resullts API

This PR adds the table results API. Here is an example:
http://<IP_ADDRESS>/api/v1/pathcounts/?node1=13178&node2=14729

Here is some example API output as of https://github.com/greenelab/hetmech-backend/pull/20/commits/ce28bd64ccb189b0bea8b9bddbb1bb73571f874a
{
   "count":12,
   "next":null,
   "previous":null,
   "results":[
      {
         "id":2,
         "path_count":128,
         "dwpc":4.4994979054079,
         "p_value":0.0416820292095926,
         "metapath":"CuGr>GdD",
         "source":13178,
         "target":14729,
         "dgp":254315
      },
      {
         "id":65456,
         "path_count":393,
         "dwpc":4.04384269747063,
         "p_value":0.0472654434062544,
         "metapath":"CuGuAlD",
         "source":13178,
         "target":14729,
         "dgp":260866
      }
   ]
}

Dongbo and I discussed modifying the format a bit to include:
source_node:
  db_id: 123
  metanode: Compound
  identifier: DB93242
  name: Bupropion
  # other node fields here
target_node:
  # same as source_node
path_counts:
  db_id: 2
  metapath: CuGuAlD
  path_count: 128
  dwpc: 4.04384269747063
  # fields from degreegroupedpermutation table (minus id and redundant metapath)
  p-value: 0.004

This format would allow us additional flexibility to say add another table such as paths. However, having multiple tables returned could break the pagination? @dongbohu we could also make a separate API call for each key (source_node, target_node, path_count, paths). Potentially then we could have an API call that combined the separate API calls. We can chat more about what makes the most sense.

@dhimmel I just realized that a metapath may correspond to too many records in DegreeGroupedPermutation table. For example, the metapath CuGeAlD has 4982 records in this table. If we include them together with each PathCounts record, the data volume in this API call will be large and include a lot of redundancy.

Here are the results from https://github.com/greenelab/hetmech-backend/pull/20/commits/41f5408e8094680d206ca683f9b28c6edd7bbf49 produced by http://search-api.het.io/api/v1/querypair/?qsource=13178&qtarget=14729
{
  "qsource":{
    "id":13178,
    "identifier":"DB00091",
    "identifier_type":"str",
    "name":"Cyclosporine",
    "url":"http://www.drugbank.ca/drugs/DB00091",
    "data":{
      "url":"http://www.drugbank.ca/drugs/DB00091",
      "inchi":"InChI=1/C62H111N11O12/c1-25-27-28-40(15)52(75)51-56(79)65-43(26-2)58(81)67(18)33-48(74)68(19)44(29-34(3)4)55(78)66-49(38(11)12)61(84)69(20)45(30-35(5)6)54(77)63-41(16)53(76)64-42(17)57(80)70(21)46(31-36(7)8)59(82)71(22)47(32-37(9)10)60(83)72(23)50(39(13)14)62(85)73(51)24/h25,27,34-47,49-52,75H,26,28-33H2,1-24H3,(H,63,77)(H,64,76)(H,65,79)(H,66,78)/b27-25+",
      "source":"DrugBank",
      "license":"CC BY-NC 4.0",
      "inchikey":"InChIKey=PMATZTZNYRCHOR-IMVLJIQENA-N"
    },
    "metanode":"Compound"
  },
  "qtarget":{
    "id":14729,
    "identifier":"DOID:0050741",
    "identifier_type":"str",
    "name":"alcohol dependence",
    "url":"http://purl.obolibrary.org/obo/DOID_0050741",
    "data":{
      "url":"http://purl.obolibrary.org/obo/DOID_0050741",
      "source":"Disease Ontology",
      "license":"CC BY 3.0"
    },
    "metanode":"Disease"
  },
  "pathCounts":[
    {
      "id":2,
      "dgp":{
        "source_degree":233,
        "target_degree":143,
        "n_dwpcs":200,
        "n_nonzero_dwpcs":200,
        "nonzero_mean":4.10051914283032,
        "nonzero_sd":0.225722267167067
      },
      "path_count":128,
      "dwpc":4.4994979054079,
      "p_value":0.0416820292095926,
      "metapath":"CuGr>GdD",
      "source":13178,
      "target":14729
    }, # CONTINUES
  ]
}

@dhimmel I updated the code to switch source_degree and target_degree when necessary. Compare the outputs of:
https://search-api.het.io/api/v1/querypair/?source=14729&target=13178
and:
https://search-api.het.io/api/v1/querypair/?source=13178&target=14729
(The code becomes uglier though.)

The output from https://search-api.het.io/api/v1/querypair/?source=14729&target=13178 as of https://github.com/greenelab/hetmech-backend/pull/20/commits/181f55b33e86c2cdef0025377026186081549dab looks excellent:
{
  "source":{
    "id":14729,
    "identifier":"DOID:0050741",
    "identifier_type":"str",
    "name":"alcohol dependence",
    "url":"http://purl.obolibrary.org/obo/DOID_0050741",
    "data":{
      "url":"http://purl.obolibrary.org/obo/DOID_0050741",
      "source":"Disease Ontology",
      "license":"CC BY 3.0"
    },
    "metanode":"Disease"
  },
  "target":{
    "id":13178,
    "identifier":"DB00091",
    "identifier_type":"str",
    "name":"Cyclosporine",
    "url":"http://www.drugbank.ca/drugs/DB00091",
    "data":{
      "url":"http://www.drugbank.ca/drugs/DB00091",
      "inchi":"InChI=1/C62H111N11O12/c1-25-27-28-40(15)52(75)51-56(79)65-43(26-2)58(81)67(18)33-48(74)68(19)44(29-34(3)4)55(78)66-49(38(11)12)61(84)69(20)45(30-35(5)6)54(77)63-41(16)53(76)64-42(17)57(80)70(21)46(31-36(7)8)59(82)71(22)47(32-37(9)10)60(83)72(23)50(39(13)14)62(85)73(51)24/h25,27,34-47,49-52,75H,26,28-33H2,1-24H3,(H,63,77)(H,64,76)(H,65,79)(H,66,78)/b27-25+",
      "source":"DrugBank",
      "license":"CC BY-NC 4.0",
      "inchikey":"InChIKey=PMATZTZNYRCHOR-IMVLJIQENA-N"
    },
    "metanode":"Compound"
  },
  "path_counts":[
    {
      "id":150311,
      "path_count":244,
      "dwpc":2.76953131012329,
      "p_value":0.0015411045586865,
      "metapath_abbreviation":"CbGeAlD",
      "metapath_name":"Compound–binds–Gene–expresses–Anatomy–localizes–Disease",
      "source_degree":37,
      "target_degree":30,
      "n_dwpcs":600,
      "n_nonzero_dwpcs":600,
      "nonzero_mean":1.48563890548344,
      "nonzero_sd":0.357956995841383,
      "reversed":true
    },
    {
      "id":133322,
      "path_count":2746,
      "dwpc":4.10026645609758,
      "p_value":0.00541078836690376,
      "metapath_abbreviation":"CuGeAlD",
      "metapath_name":"Compound–upregulates–Gene–expresses–Anatomy–localizes–Disease",
      "source_degree":37,
      "target_degree":233,
      "n_dwpcs":200,
      "n_nonzero_dwpcs":200,
      "nonzero_mean":3.29381061625178,
      "nonzero_sd":0.297228691538334,
      "reversed":true
    }, # CONTINUES
  ]
}


Customize decompress dialog text (lite mode)

Is it possible to change the standard text "Decompressing the Crosswalk project" inside the dialog that appear on the first run?

Which way did you used to install crosswalk lite?

i'm using phonegap build, i switch to lite using this param in the config.xml:

Hello, we are using crosswalk 17 lite via cordova with the command line interface and face the same problem.
Lots of our beta testers are confused to see the term 'crosswalk', because they do not know what 'crosswalk' is and think they have just downloaded some kind of adware or similar.
I know, that the crosswalk project got shutdown, but we hope that this issue might get fixed, since this is pretty much a show stopper for us.
Why not simply remove the 'crosswalk' term from the dialog or even give control over the dialog text?

Given Crosswalk is not being actively maintained, I'm afraid this will be solved any time soon. With that said, should anyone step up this will likely only be fixed in recent, non-lite versions. Crosswalk Lite is seriously outdated compared to the non-Lite version and has not seen any updates in a very long time.

Thanks for your qick reply, though unfortunately with bad news.
So as far as I understand it, only chance for us would be either:
(1) to build crosswalk lite and the cordova plugin ourselves and circumvent the maven server process.
or (2) to change the crosswalk .so with a hex editor by erasing the 'crosswalk' name from the dialog and then signing our .apk again.
Since (1) seems overkill and not well documented, we will certainly opt for (2).
Regarding crosswalk lite being outdated - we totally do not mind. We only need a reliable platform to run our static html/css/js files. Without crosswalk, we consider giving up the webplatform for android, since we do not feel safe with an ever-green chrome updating itself all the time. We feel pretty frustrated, that Intel decided to drop the project.

What can we do to solve this issue and be able to configure this text ?
This very issue makes the whole Crosswalk-lite projet unusable in an international app...

There is a way to modify the text that appears on the first run.
**Using APK Editor **
Install your apk on your device.
Download APK Editor from the Play Store.
Open APK Editor and then select "Select Apk from App".
Select your  app.
Select full edit.
Under the Strings Tab, look for crosswalk_install_title and decompression_progress_message .
Edit both of these, then select build.
Your app will be rebuilt and signed.
Install and test app. You  will see that the decompression  has now changed.
Using APK tool
Download the Apk tool jar file. Install instructions can be found here  https://ibotpeaches.github.io/Apktool/install/
Place jar file in the same folder as apk.
Open console and navigate to the folder, run the following command java -jar apktool.jar d test.apk , where test.apk is your apk.
A folder name test will be created, again test will be the name of your apk. This folder will contain the files and folders generated as a result of decompressing your apk.
Navigate to res/values/strings.xml
In strings.xml search for crosswalk_install_title and decompression_progress_message .
Edit them.
Save
Compile apk by running java -jar apktool.jar b test.apk, again this will be run in the same folder as your apk. This will create an apk which is located in the dist folder of the folder created by running the previous decompression command.
You then need to sign the apk as the apk tool does not do this for you.
You can use this tool to sign your apk https://shatter-box.com/knowledgebase/android-apk-signing-tool-apk-signer/

Are you seriously considering to hack a binary for an open source project ?
There is an existing preference mechanism, supported by cordova plugin API and configurable in the config.xml file exactly for that. It is used by countless plugins to display customized messages (like the geolocation plugin).
The message to configure has simply to be taken out of the "constant code" and an indirection added to get it from the preference file.
Is this project completely abandoned ?

I have the same issue - the "Decompressing the Crosswalk project" will just confuse customers? Has anyone found a relatively easy way to get rid of this message on the initial install?

Same here. How to customize that message?

Looking for a solution too!

Answer of @Blake-007 is too complecate
Simply write two lines in app/src/main/res/values/strings.xml file
<string name="decompression_progress_message">First app setup executing…</string>
<string name="crosswalk_install_title">Please, wait</string>

They will overwrite the original strings


User-defined MHC sequence

I put the codes below in the PANDORA.py
from PANDORA import Target
from PANDORA import Pandora
from PANDORA import Database
db = Database.load()
target = Target(id = 'ara1',
N_chain_seq= 'xxxxxxxxxxx',
peptide = 'xxxxxxxxxxxx',
use_netmhcpan = True,
MHC_class='II')
case = Pandora.Pandora(target, db)
case.model()
and then python ./PANDORA.py but got an error
Traceback (most recent call last):
File "/mnt/chsrhome/xxxx/./PANDORA.py", line 2, in
from PANDORA import Target
File "/mnt/chsrhome/xxxx/PANDORA.py", line 2, in
from PANDORA import Target
ImportError: cannot import name 'Target' from partially initialized module 'PANDORA' (most likely due to a circular import) (/mnt/chsrhome/xxxx/PANDORA.py)
Just tested pandora-run -m I -i myTestCase -a HLA-A*0201 -p LLFGYPVYV -k 2,9. It worked well. However, the command line seems not to have the argument for "N_chain_seq".

Hi @bsb2014, that is not exacty how PANDORA is supposed to be used (nor most part of other python packages installed from source).
You are not supposed to change the package itself in any way, nor you need your scripts to be in the same folder. Once you have run the installation (in your case, according to issue #250 , pip install e .), PANDORA will be available as a python package to any python (py3) scripts that runs in that same environment (in your case, I assume the conda environment set up by mamba).
So, you can create your python script (e.g. MyScript.py), and put your code in there:
from PANDORA import Target
from PANDORA import Pandora
from PANDORA import Database
db = Database.load()
target = Target(id = 'ara1',
N_chain_seq= 'xxxxxxxxxxx',
peptide = 'xxxxxxxxxxxx',
use_netmhcpan = True,
MHC_class='II')
case = Pandora.Pandora(target, db)
case.model()

This will import PANDORA, even if it's not in the same folder or script.
Please remember to change back all the edits you made to PANDORA.py. That, and all the other files from the package, should stay unchanged.
On the other hand, the command-line implementation (" pandora-run -m I -i myTestCase -a HLA-A*0201 -p LLFGYPVYV -k 2,9 " ) it's designed to quickly model straightforward cases, therefore is much more flexible and open to personalization than the python interface.
Please let me know if you have any further questions!

This time, I put the codes in PANDORA_MHCii.py and got a different error as follows
WARNING: Missing M chain (Alpha chain) sequence and allele name.
Traceback (most recent call last):
File "/mnt/chsrhome/xxxx/./PANDORA_MHCii.py", line 10, in
target = Target(id = 'ara1',
File "/mnt/chsrhome/xxxx/src/PANDORA/PANDORA/PMHC/PMHC.py", line 300, in init
self.fill_allele_seq_info(use_templ_seq=use_templ_seq)
File "/mnt/chsrhome/xxxx/src/PANDORA/PANDORA/PMHC/PMHC.py", line 538, in fill_allele_seq_info
raise Exception('No MHC chain available')
Exception: No MHC chain available
I would appreciate if if you could give me some suggestions.

I see. To model MHC-II cases, PANDORA needs informations about both the MHC chains, or at leats it needs to know that your beta chain is HLA-DRB1, so it can automatically use HLA-DRA*01:01 as default alpha chain.
So you can either specify both the chains allele names (the beta chain allele name won't be used to replace your user-defined N_chain_seq, no need to worry about that), or specify only the beta chain name and let pandora automatically assign the alpha chain, or give a sequence for the both of them:
Specify both allele names:
from PANDORA import Target
from PANDORA import Pandora
from PANDORA import Database
db = Database.load()
target = Target(id = 'ara1',
allele_type=['HLA-DRB1*01:01', 'HLA-DRA*01:01']
N_chain_seq= 'xxxxxxxxxxx',
peptide = 'xxxxxxxxxxxx',
use_netmhcpan = True,
MHC_class='II')
case = Pandora.Pandora(target, db)
case.model()

Or specify the Alpha chain sequence as M_chain_seq (I used the HLA-DRA*01:01 that you can also find in your database at ~/PANDORA_databases/default/mhcseqs/HLA_cleaned.fasta)
from PANDORA import Target
from PANDORA import Pandora
from PANDORA import Database
db = Database.load()
target = Target(id = 'ara1',
M_chain_seq='MAISGVPVLGFFIIAVLMSAQESWAIKEEHVIIQAEFYLNPDQSGEFMFDFDGDEIFHVDMAKKETVWRLEEFGRFASFEAQGALANIAVDKANLEIMTKRSNYTPITNVPPEVTVLTNSPVELREPNVLICFIDKFTPPVVNVTWLRNGKPVTTGVSETVFLPREDHLFRKFHYLPFLPSTEDVYDCRVEHWGLDEPLLKHWEFDAPSPLPETTENVVCALGLTVGLVGIIIGTIFIIKGVRKSNAAERRGPL'
N_chain_seq= 'xxxxxxxxxxx',
peptide = 'xxxxxxxxxxxx',
use_netmhcpan = True,
MHC_class='II')
case = Pandora.Pandora(target, db)
case.model()

Let me know if it works!

Great, all looks good! Remember now that ara1.BL00190001.pdb is the best model, but you can also take a look at the other top-5 models, as their molpdf score seems to be quite similar.
Good luck with your project!

Many thanks for your help with setting up the Pandora!!

Is it normal if Molpdf score is negative? thanks

Hi, yes. Molpdf is the MODELLER objective function, it's a relative score and it can easily be negative. The lower it is, the better the model, but it can be used only to compare between models of the same complex (i.e. you cannot use it to compare between models of different peptide-MHC complexes)


RuntimeError: Model class django.contrib.sites.models.Site doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.

Python 3.5.1
Django 1.9.1

Django 1.9
Python 2.7
same issue here,

try adding 'django.contrib.sites' in INSTALLED_APPS

Python 2.7.8
Django 1.9
Works! Thanks!