Pre-Incentivized testnet IBC things

We still have some IBC related things that we would like to complete by the incentivized testnet feature freeze. The main three are already in progress and should be fairly straight forward, which involve enabling IBC in the first place

[x] https://github.com/celestiaorg/celestia-core/pull/906
[x] https://github.com/celestiaorg/cosmos-sdk/pull/288
[x] https://github.com/celestiaorg/celestia-app/issues/412
[x] https://github.com/celestiaorg/celestia-app/issues/235
[x] The IBC portion of https://github.com/celestiaorg/celestia-app/issues/658 comment

I don't think we have social consensus yet on anything, but one simple idea that could be a good starting point would also be looking into only allowing transfers of Celestia tokens https://github.com/celestiaorg/celestia-app/pull/696#discussion_r1004251957 .

I've been following the various conversations happening around here just to gather as much context as possible and wanted to provide my view on a couple of these decisions:
1. Shall Celestia be deployed with IBC?
For me this is a resounding yes. Celestia depends on a marketplace whereby rollups can buy celestia tokens and validators and delegators can sell those tokens. This doesn't necessarily have to be through IBC (It most likely will be supported via centralized exchanges), but it's important to have that option there for users who prefer decentralised exchanges.
2. Should the Celestia network support anything else than the transferring of Celestia tokens?
I'm in agreement with what Ismail said about being as minimal as possible and like Zaki's suggestion. I think only the transfer module should be supported and only channels with the Celestia denomination should be allowed. There is no supported use case for any other denomination than the Celestia native token on Celestia. With that in mind, it shouldn't allow anything else by design.
3. Should we limit which chains connect with Celestia?
In alignment with the "permissionless" ethos, I think we should allow users to send Celestia tokens to and from whatever chain they want so long as it's sufficiently compensated. If we feel the resources for supporting IBC is incorrectly calculated we can modify this. We may want to put more emphasis on high throughput chains over lower throughput chains by increasing the gas to open connections and lowering the gas per transfer across the channel.
Are there any other questions on this topic we feel need to be resolved before mainnet launch? Does anyone have stronger opinions against the stances I've put forward i.e. should we set up a meeting in the near future to discuss these points? @evan-forbes @adlerjohn @liamsi @musalbas

In general I am in favor of enabling IBC for Celestia's native token, but I'd quite like to know the resource pricing for IBC for sanity checking

but I'd quite like to know the resource pricing for IBC for sanity checking

Okay I'll start to do some research on that

So looking into the IBC repository, it seems that there are no adjustments to gas consumption outside of how the SDK normally calculates it i.e. writes and reads to the kvstore (and signature verification) as follows:
// KVGasConfig returns a default gas config for KVStores.
func KVGasConfig() GasConfig {
	return GasConfig{
		HasCost:          1000,
		DeleteCost:       1000,
		ReadCostFlat:     1000,
		ReadCostPerByte:  3,
		WriteCostFlat:    2000,
		WriteCostPerByte: 30,
		IterNextCostFlat: 30,
	}
}

The main messages we'd expect and the average gas consumed (on Cosmos Hub) are:

Msg
Gas

MsgUpdateClient
~350,000

MsgTransfer
~90,000

MsgRecvPacket
~80,000

MsgAcknowledgement
~30,000

From looking into the code, IBC keeps as minimal amount of state as possible so the overhead per connection with a chain is actually quite low.

Is it the case that for example, IBC packets that contain more signatures (because the chain's validator set is bigger) or have higher proof size, would have higher gas?

In the SDK, all signatures have an additional "computational" cost (i.e. 590 gas for each ed25519 signature) but although IBC also verifies signatures, I don't believe it consumes gas. I have created an issue in their repo about it: https://github.com/cosmos/ibc-go/issues/2951

Why is it the case that normal signatures cost gas, but IBC ones don't?

I'm not sure if there was any intention behind it. From what I gather, the SDK decided that signature verification is costly enough to consider charging gas for verifying the signer of each sdk.Tx. The validator signatures in IBC are inside the messages of the Tx itself (specifically MsgUpdateClient), so the SDK is unaware of it and either IBC decided it didn't make sense, it was too difficult to implement (it's hard to know how many signatures needed to be verified), or that they simply missed it.

In general I am in favor of enabling IBC for Celestia's native token

To move forward with this, I think we can progress to #235, where we aim to find out what is needed to limit IBC to only Celestia's native token.
I, or @cmwaters, can talk with the IBC to see what the particular reason was for not charging gas, and then weight our options from there. In the future, I imagine that we should be able to add gas costs to those signatures if it becomes an issue.

closing, as we've merged our initial restrictions on IBC and enabled it. We will still document the gas usage, specifically how we are not currently charging gas for signatures and the values above, in #658

we also have a follow up for more thorough, yet slightly complex e2e tests for IBC connections to chains such as osmosis and cosmos hub in #1249, and then we will include the implemented token filter in specs in #734


Fix/linter

There are many white space changes with lines that contain single tabs- is this intentional?

Somehow Xcode does not to seem to honor my settings. :(


Required changes modified

Description
Required changes modified in these files

lib/models/alert.dart
lib/utils/bottom_navbar_tabs.dart
lib/widgets/onboarding_canvas_design.dart

Fixes #234
Have you read the Contributing Guidelines on Pull Requests?

Yes
[ ] No

Type of change
Please delete options that are not relevant.

Bug fix

Checklist:

My code follows the style guidelines(Clean Code) of this project
I have performed a self-review of my own code
My changes generate no new warnings
I have added tests/screenshots(if any) that prove my fix is effective or that my feature works.

Sorry for the disturbance but could you please add the label to my pull requests #244 #235 #238
Thank you so much for your support @avinashkranjan

Sorry for the disturbance but could you please add the label to my pull requests #244 #235 #238 Thank you so much for your support @avinashkranjan

Done.

Thank you @avinashkranjan :)


Allow features to be removed on build through configuration

Once #752 is in place, we can utilise tree shaking to remove dead code.
If we combine this with tools such as @rollup/plugin-replace then large parts of the code base can be trimmed out when building sp.js for those users who wish to build their own version but with unused features missing.
This was previously suggested in #677, a similar pattern to this should be achievable with rollupjs and rollup plugins.

This is really a dupe of #450. Closing in favour of the older issue.


SDCA CFN

Issue #, if available:
N/A
Description of changes:
Initial commit of CFN template and instructions.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Initial SDCA CFN commit/PR


[1.10.2] Crash on loading

Ok, so testing the newer versions I get this error:
http://pastebin.com/aDUKqGXp
Versions:
MC: 1.10.2
Forge: 1.10.2-<IP_ADDRESS>9-universal
compatlayer-1.11-0.1.4
mcjtylib-1.1x-2.3.1
rftools-1.1x-5.71
rftoolsdim-1.1x-4.51

I am also having this issue without rftoolsdim.

Thanks RedstoneMaster256 yup that was the problem. So many updates I was doing, I missed that detail.


As a user with administrator role, I want to see materials in the opened accordion section to add it to the carousel.

Administrator part, object for settings Головна => Важливе
After user opens "Додати матеріали" accordion section, there is a list of materials (take a look at mockup) sorted by date and time from newest to oldest.
List is displayed as cards styled for carousel.
Default number of cards is 10.
[Показати більше] button - placed on th end of opened cards, active opens +10 cards.
In case material has visual the card is displayed with visual and corresponding text.
Mockup of the card: https://www.figma.com/file/oxKazHLUvWYHjEvSjdcMH3/Dokazovi-5?node-id=1211%3A0
In case material does not have a visual the card is displayed with the corresponding text and grey background.
General page for all mockups: https://www.figma.com/file/oxKazHLUvWYHjEvSjdcMH3/Dokazovi-5
Epic link
https://github.com/ita-social-projects/dokazovi-be/issues/260

Tasks

[ ] sample task.

27/07/21
BA check
Not accepted
This functionality is not implemented yet.


"Maximum number of clients reached" when running DisplayInfo::all() multiple times

Hello, hope this message finds you well! First of all, thank you for your work. The screenshots crate is great.
I am running into an issue on screenshots crate which I've tracked up to here. There's a link to a video showing the issue at the bottom.
The Issue
When calling DisplayInfo::all() multiple times, the error "Maximum number of clients reached" shows up.
Possible Explanation
Each call to DisplayInfo::all() is creating a connection to X that is not being closed. This leads to too many connections, and X refuses a new one.
Example
This is a simple script which calls DisplayInfo::all() in a loop:

Eventually, this happens. Calls up to 178 were fine, but starting there, we have "Maximum number of clients reached".

This is a 3-minute video walking through the issue.
Unfortunately, I could not get it working. I tried adding some XCloseDisplay calls throughout the code, but it didn't work (segfaults and whatnot). I hope the video helps, and thank you once again for your work.
Resources
Script's source code:
https://github.com/mdacach/display_info_test/tree/main
Video explaining the issue:
https://www.dropbox.com/s/qseowr2pnetre4y/display_info_issue.mp4?dl=0
Function where I think the problem is:
https://github.com/nashaofu/display-info/blob/067a7adebefba72be81331975c04868b47d6b2f2/src/linux.rs#L11

Works perfectly! Thank you very much.
May I ask, out of curiosity:
1 - What was exactly the problem? I could not solve it by just adding a XCloseDisplay call (the code double-freed, I think).
2 - Where do I find documentation regarding XRR functions such as XRRFreeScreenResources? I did not find anything on the web.

Works perfectly! Thank you very much. May I ask, out of curiosity: 1 - What was exactly the problem? I could not solve it by just adding a XCloseDisplay call (the code double-freed, I think). 2 - Where do I find documentation regarding XRR functions such as XRRFreeScreenResources? I did not find anything on the web.

The problem caused by this commit, I found it would be released twice，So remove XCloseDisplay，the possible reason is that the following code releases XDisplay first. https://github.com/nashaofu/display-info/blob/d66c6991d8e9a897abd9184f1d80f00e07f8ecda/src/linux.rs#L27-L37
Official documentation: https://www.x.org/releases/X11R7.5/doc/index.html.

Thank you!


"Movila Banului" is listed in the drop-down menu

Description:
"Movila Banului" is listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Movila Banului" in the search bar.

Expected results
The location is listed in the drop-down menu as "Comuna, BUZĂU".


Mouse Navigation

Need to create keyboard and/or mouse navigation to emulate gameplay in the Fallout Universe.
Potentially, this could also disable typing completely (other than arrow keys and enter), and eliminate having to handle guesses that are not on the screen.

Currently there is a bug where if a word is partly on the first column and runs to the top of the second the indexing of the word hover class gets thrown off. I believe this is only due to components rendering twice via strict mode and would not be a problem in production, but it is still good practice to fix.

Reducing scope to mouse navigation because this was plenty of work. Keyboard potentially slated for later.
Also not removing typing as user input because this could be useful for mobile.


link to shields-docs.netlify.com in the docs

Add some links to/info about https://shields-docs.netlify.com/ in the docs
Refs #3883

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @chris48s!

:book:

Thanks for contributing to our documentation. We :heart: our documentarians!

  Generated by :no_entry_sign: dangerJS against dfa193196db1db96cb0c9d5a13bcc4badff09f1e

oh cool. We also get a preview app for the docs: https://deploy-preview-3957--shields-docs.netlify.com/

The main thing going on here is adding/changing links which will all need changing.
Lets just put this one on hold for the moment.


Assignment 1 Beatriz Diniz

Introduction

Hello, my name is Beatriz I am a PhD student from the Environmental Biotechnology department. In my free time I love to read and bake.
Reflections on the importance of RDM videos

The accessibility and reproducibility of your data give continuity to your research after you.
What would you like to learn during this course?

Tools that make data accessible and how to ensure continuity between master student projects.
Checklist assignments

[x] Assignment 1: creating a GitHub issue (before Class 1)
[x] Respond to the GitHub issue on 'data challenge'
[x] Assignment 2: Data Flow Map 1 (share a link in this issue before 7 March 13:00)
[x] Respond to the GitHub discussion on 'licenses'
[ ] Respond to the GitHub discussion on 'folder structure'
[x] Respond to this GitHub issue with your readme file
[ ] Assignment 3: Data Flow Map 2 (share a link in this issue before 14 March 13:00)
[ ] Assignment 4: Data Management Plan (before Class 2)
[ ] Respond to the GitHub discussion on 'Data Management Plans' if you have any questions (optional)
[ ] Assignment 5: Data Flow Map 3: submit your slide (before Class 2)

Assignment 2:
https://tud365-my.sharepoint.com/:p:/g/personal/mcanongialopes_tudelft_nl/EQDw9O-sjgJEpPZ3pBL3MycBQVeWFFsDwLgw8szdxRNe_w?e=ZdMNlv

Hi Beatriz,
I really like your Data Flow Map, especially since you have a clear vision of how student projects can be incorporated into your project. I am also storing my data on the project and the group drive. Additionally, I am making a back-up of my data on an external hard drive.

Hi @MBeatrizDiniz!

I agree with @TamaraJankovic03's comment on the student projects! You could also add a red flag there, not because the students are a 'red flag', but because you do have to work together on things - so it can be an added complication in that sense.
You haven't added the file formats of the data yet - this becomes more important for assignment 3. Good luck in the upcoming days!

readmefile -Beatriz Diniz.txt

Assignment 3
https://tud365-my.sharepoint.com/:p:/g/personal/mcanongialopes_tudelft_nl/EaoJXvNGB3ZApaScSlKF8WQBjPvywD6W1IR-KdGaBMB4Sg?e=gDMit4

Hi Bea,
Nice Data Flow Map, good that you included student projects! This is something I am now considering to add to my data flow map. You could elaborate on specific data maybe a bit more. In terms of data storage and back-ups we have very similar plans! :)

Well done on assignment 3!
On the theme Documentation (and Metadata):

You mention an excel template for data documentation: the columns of this template are also metadata!
Is there any information/process on what happens if some of the values are missing in the excel template? (might not be applicable if you never have missing data)
Are there any sub variables in the method/protocol information? (for example: temperature, time of experiment, amount of steps taken)

On file formats:

Very nice that you already start out with open file formats from the start! That makes sharing data/code in an open format later on much easier :)

On data publication:

Which data repository to use is indeed a discussion to have with your supervisors! You'll also need this information for your Data Management Plan (Assignment 4). Let me know if you need more help or information on data repositories!

Hello @MBeatrizDiniz very organized README file! I think that you can add also the folder structure in DATA & FILE OVERVIEW to make it even more understandable for others. :)

Assignment 5
https://tud365-my.sharepoint.com/:p:/g/personal/mcanongialopes_tudelft_nl/ERzYXJ1vTa9MqFuDxNugsmIBqW1LyXcVn3w7ACl01wmKRA?e=wYX4SQ

Thanks for your slide @MBeatrizDiniz!
Fair point on the file formats 👍 I'm happy to see that the readme files are useful!

Hi @MBeatrizDiniz: thanks for sharing your READme file. As @TamaraJankovic03 already mentioned - this looks very clear and organised, well done!
I see you're not referring to an ORCID, so I just wanted to point out that this is an identifier for researchers. Similar like the identifier to the publication, it provides a way to easily identify you as a person and associate your research outputs with you. You can set up your own ORCID very easily (and use it for some scholarly platforms such as Zenodo/publishing platforms). You can have a look at my ORCID to see what it looks like when there is information in the profile.


Dart support for Arduino

I am currently working on building support for compiling to Arduino in Dart. I am just posting this issue to check if there has been any work on this front that I can base off of. Feel free to close this issue if not, a pull request will come later on adding arduino support regardless.
Thanks

The now discontinued Dartino project (https://github.com/dartino/sdk) was an earlier attempt at running Dart with a custom compiler and runtime targeting embedded devices. What kind of approach do you have in mind?
cc @mraleph

Closing this issue as no action is expected on our side.

Hey @CorvetteCole, how it went? I googled for this, and this issue seems to be only mention for it in the internet - very weird - Dart would be so awesome on Arduino! All async features would solve pretty much main problems that you run into when trying to do anything - many people end up pretty much impelemnting their own event loops because they can't just use a delay :roll_eyes:
Did you at least see if dartino/sdk is anyhow usable/compile-able :eyes: ?

@TheLastGimbus I made some progress with getting Dart to run on the ESP32 platform actually, but sadly have not worked on it in awhile as I've been quite busy with other projects and life in general. I would LOVE to have most of Dart at my fingertips on an ESP32.
I had the basics going on the ESP32, but there were lots of weird bugs and it was nowhere near stable

Hello, I'm browsing a little about use dart in ESP8266 or ESP33, any news about that? That will be nice. Thank you

not from me! I've kind of given it up for now. Was a fun hobby but am too busy to work on it these days!


Consider IFilterFactory pattern for AuthorizeFilter

@HaoK can you please elaborate.

I don't have a ton of context I just filed it because harsh asked for something like this in the Mvc PR for authZ. I didn't want to make a big change as part of that so I filed this for tracking.

Looked at the feedback, it doesn't add much value other than following a pattern. It also doesn't affect the public surface much, it does add an extra indirection.


Auto format, using prettier before commit

Context:
to make formatting style consistent across the codebase

Great suggestion. Will try to add it with a next update

Added


enhancement request

Hi,
would you like to consider a setting that actually replaces the mark-as-read-dropdown completely?
I do not need to mark "older than 2 weeks" and so on, it's just a waste of space.
regards,
Friedhelm

To get as close to what you're looking for:  Check Hide left, Uncheck Hide Right, Check Hide dropdown in plugin preferences

excellent!
Thank you!


Bug: Editing a form and saving (closing) it closes the forms manager too

Open the "Manage forms" view, click on edit of the form you want to work on -- which correctly gets displayed in a new tab -- and save (close) it results in the forms manager closing as well.
I suggest adding an option in the settings pane to either keep the manager open for further processing of other forms or to close it.

This does not happen if you cancel the form.

I think this no longer happens,  right?

Correct and thank you!


Fix issue where query parameters are encoded twice

This PR fixes issue where set-definitions in format 'foo:bar' result into error because of encoding the character ':' twice. Tests have been updated to cover the scenario that is fixed here.

This is fixed by #42


Add Ag inversion karyotyping support

Resolves #604.

In this PR, I add support for karyotyping. I have added the functionality to ag3.py, as it is specific to gambiae complex - not for funestus.
This works by reading in the tag SNPs, subsetting to those positions, and calculating the mean genotype, returning a dataframe. Currently, the raw mean genotype is returned, but perhaps we should round it to 0,1,2 which might be less confusing for end users (the tag SNPs are not perfect).
The tag SNPs were obtained from https://github.com/rrlove/compkaryo/tree/master/compkaryo/targets but have been augmented with information about the alleles. Tag SNP data are bundled into the malariagen_data package as they are relatively small.
Users may have to be advised that some tag SNPs are applicable only to certain species in the gambiae complex. For example, I have seen people try and report the frequency of tag snps of an inversion which isn't even segregating in their species. In theory we could prevent this within the function, but I'm not sure if that's necessary.

Cool, thanks @sanjaynagi!
Just wondering about the biallelic SNPs, as it could be that SNPs which were biallelic in the dataset that Becca used are no longer biallelic in a different sample set. It could also get worse the more samples are included, i.e., the more samples you include in the analysis, the more SNPs you lose as they are no longer biallelic. This could lead to a situation where the same sample could get different results depending on which other samples it was analysed together with. Do you think this might be an issue?
IIRC the original analysis was done with Ag1000G phase 2 data, so we might be able to find the specific alternate alleles if we had to.

Also... the biallelic_snp_calls() function will recode some alleles to 0. E.g., if a SNP only has the 1 and 2 alleles in the main callset, then these get recoded as 0 and 1 in the dataset returned by biallelic_snp_calls(). Again possibly not a major issue as could be uncommon, but thought I'd mention.

Cool, thanks @sanjaynagi!
Just wondering about the biallelic SNPs, as it could be that SNPs which were biallelic in the dataset that Becca used are no longer biallelic in a different sample set. It could also get worse the more samples are included, i.e., the more samples you include in the analysis, the more SNPs you lose as they are no longer biallelic. This could lead to a situation where the same sample could get different results depending on which other samples it was analysed together with. Do you think this might be an issue?
IIRC the original analysis was done with Ag1000G phase 2 data, so we might be able to find the specific alternate alleles if we had to.

Indeed, its not ideal. In my experience, the biallelism problem from compkaryo will introduce some error to the mean genotype estimates, but not enough to actually really confuse karyotyping- i.e, if we round the mean genotypes to 0,1 or 2, I still think samples will be karyotyped correctly. Its a bit anecdotal and I don't have data to show that. Anyway, for this reason I decided to ignore this issue for now.
Although I agree it wouldn't be too difficult to find alleles - I would lean towards ignoring the issue for now, with a view to potentially finding specific tag SNP alleles soon (and perhaps doing funestus inversions at the same time?).

Also... the biallelic_snp_calls() function will recode some alleles to 0. E.g., if a SNP only has the 1 and 2 alleles in the main callset, then these get recoded as 0 and 1 in the dataset returned by biallelic_snp_calls(). Again possibly not a major issue as could be uncommon, but thought I'd mention.

ahhh, cool. Not really sure here what is the best approach (apart from doing it properly :laughing: )

@alimanfoo here is a notebook of me doing that https://colab.research.google.com/drive/1u9OYOtLdQoU8SnJLBCZILC_AhtlOv8Mk?usp=sharing
I get its a little hacky - is this sufficient do you reckon?
and where would you like to store the tag snps + alleles ?

I spoke with Alistair, we instead used phase 2 genotypes to very easily find the right ALT, here is the notebook -
https://colab.research.google.com/drive/12gUgv7kzIkSDImLJOy84OujyPatZcOyO?usp=sharing
Here is the csv file of tag snps + alts -  karyotype_tag_snps.csv
The question is, where do we store this file (and in what format?). Its 1080 rows (<20kb) in total. Perhaps we could just store it in the malariagen_data repo? otherwise GCS seeing as that is where we store data? @alimanfoo
Once we store it somewhere, Ill finish the PR.

Cool, ive added the functionality to check for exact alleles now. The only thing thats left to do I think, is put the tag snp data somewhere, and link to it properly.

2La works well...

2Rb...

Woohoooo (thanks for testing)

2Rc_gam isn't segregating in the sets I tested.
2Rc_col looks OK though...

Thanks @sanjaynagi. Are you cool if I push the notebook I made to test the karyotype calling? Might be nice to have it in the notebooks folder.

All looks good to me. Happy to be merged if CI passes?

Awesome, done!


[5.2] Improvements on DI aliases

Added 'auth.gate', 'bus', 'console', 'db.factory' and 'response' aliases to application.
Minor refactoring of core aliases binding - removed duplicate $aliases variable usage and unnescessary (array) casting.
Made aliases consistent in helpers (shortcuts only).
Made aliases in facade consistent (shortcuts only).

I actually think this is going the wrong way. I think we should put more emphisis on using the contracts. Ping @taylorotwell.

There are no contracts for several cases (like request and some managers). I think this is much better then using mixed aliases.
IMO contracts are best on method-based injection or using in framework itself, while app('request') or app('auth.gate') is much better for app-related code, then app(\Illuminate\Http\Request::class) or app(Gate::class) //needs typehint.


"Unable to get profile information from Google" when trying to sign in with Google

@dalbinaco were you able to fix this?

@zamhaq No. So I just went to "Forgot password" on Figma web and now I have an email and password like a regular account. Then I was able to login using email/password.

3 year old bug, congrats!


Support Bridging

Support bridging of moquette broker topics to any remote broker. This is a useful pattern for  IOT Device or gateway that runs moquette as broker in the field that decides to process some  topics local but other s to be forwarded to a remote bridge based on (runtime) configuration
https://mosquitto.org/man/mosquitto-conf-5.html Configuring Brudges
http://akeil.de/posts/mqtt-bridge-with-mosquitto-and-nginx.html

Instead of bridging I was thinking about high availability with master - master replication.


Problem running example

Hi @mrousavy , tried to run the example that is in the repository, but I get the following error:
yarn run v1.22.4
$ react-native run-android
info Running jetifier to migrate libraries to AndroidX. You can disable it using "--no-jetifier" flag.
Jetifier found 984 file(s) to forward-jetify. Using 8 workers...
info JS server already running.
info Installing the app...

FAILURE: Build failed with an exception.

* Where:
Build file '/Users/Username/Desktop/react-native-graph/example/android/app/build.gradle' line: 151

* What went wrong:
A problem occurred evaluating project ':app'.
> Could not get unknown property 'nativeArchitectures' for BuildType_Decorated{name=debug, debuggable=true, testCoverageEnabled=false, jniDebuggable=false, pseudoLocalesEnabled=false, renderscriptDebuggable=false, renderscriptOptimLevel=3, minifyEnabled=false, zipAlignEnabled=true, signingConfig=SigningConfig_Decorated{name=debug, storeFile=/Users/Username/Desktop/react-native-graph/example/android/app/debug.keystore, storePassword=android, keyAlias=androiddebugkey, keyPassword=android, storeType=jks, v1SigningEnabled=true, v2SigningEnabled=true, enableV1Signing=null, enableV2Signing=null, enableV3Signing=null, enableV4Signing=null}, embedMicroApp=false, mBuildConfigFields={}, mResValues={react_native_dev_server_port=com.android.builder.internal.ClassFieldImpl@99240943, react_native_inspector_proxy_port=com.android.builder.internal.ClassFieldImpl@44d408ec}, mProguardFiles=[], mConsumerProguardFiles=[], mManifestPlaceholders={}} of type com.android.build.gradle.internal.dsl.BuildType.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 4s

error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup.
Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081

FAILURE: Build failed with an exception.

* Where:
Build file '/Users/Username/Desktop/react-native-graph/example/android/app/build.gradle' line: 151

* What went wrong:
A problem occurred evaluating project ':app'.
> Could not get unknown property 'nativeArchitectures' for BuildType_Decorated{name=debug, debuggable=true, testCoverageEnabled=false, jniDebuggable=false, pseudoLocalesEnabled=false, renderscriptDebuggable=false, renderscriptOptimLevel=3, minifyEnabled=false, zipAlignEnabled=true, signingConfig=SigningConfig_Decorated{name=debug, storeFile=/Users/Username/Desktop/react-native-graph/example/android/app/debug.keystore, storePassword=android, keyAlias=androiddebugkey, keyPassword=android, storeType=jks, v1SigningEnabled=true, v2SigningEnabled=true, enableV1Signing=null, enableV2Signing=null, enableV3Signing=null, enableV4Signing=null}, embedMicroApp=false, mBuildConfigFields={}, mResValues={react_native_dev_server_port=com.android.builder.internal.ClassFieldImpl@99240943, react_native_inspector_proxy_port=com.android.builder.internal.ClassFieldImpl@44d408ec}, mProguardFiles=[], mConsumerProguardFiles=[], mManifestPlaceholders={}} of type com.android.build.gradle.internal.dsl.BuildType.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 4s

    at makeError (/Users/Username/Desktop/react-native-graph/example/node_modules/execa/index.js:174:9)
    at /Users/Username/Desktop/react-native-graph/example/node_modules/execa/index.js:278:16
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async runOnAllDevices (/Users/Username/Desktop/react-native-graph/example/node_modules/@react-native-community/cli-platform-android/build/commands/runAndroid/runOnAllDevices.js:109:5)
    at async Command.handleAction (/Users/Username/Desktop/react-native-graph/example/node_modules/@react-native-community/cli/build/index.js:192:9)
info Run CLI with --verbose flag for more details.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

I had to change the gradle version from gradle-6.2-all to gradle-6.7.1-all, because before I got the following error:
yarn run v1.22.4
$ react-native run-android
info Running jetifier to migrate libraries to AndroidX. You can disable it using "--no-jetifier" flag.
Jetifier found 984 file(s) to forward-jetify. Using 8 workers...
info JS server already running.
info Installing the app...

FAILURE: Build failed with an exception.

* Where:
Build file '/Users/Username/Desktop/react-native-graph/example/android/app/build.gradle' line: 1

* What went wrong:
A problem occurred evaluating project ':app'.
> Failed to apply plugin [id 'com.android.internal.version-check']
   > Minimum supported Gradle version is 6.7.1. Current version is 6.2. If using the gradle wrapper, try editing the distributionUrl in /Users/Username/Desktop/react-native-graph/example/android/gradle/wrapper/gradle-wrapper.properties to gradle-6.7.1-all.zip

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 5s

error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup.
Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081

FAILURE: Build failed with an exception.

* Where:
Build file '/Users/Username/Desktop/react-native-graph/example/android/app/build.gradle' line: 1

* What went wrong:
A problem occurred evaluating project ':app'.
> Failed to apply plugin [id 'com.android.internal.version-check']
   > Minimum supported Gradle version is 6.7.1. Current version is 6.2. If using the gradle wrapper, try editing the distributionUrl in /Users/Username/Desktop/react-native-graph/example/android/gradle/wrapper/gradle-wrapper.properties to gradle-6.7.1-all.zip

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 5s

    at makeError (/Users/Username/Desktop/react-native-graph/example/node_modules/execa/index.js:174:9)
    at /Users/Username/Desktop/react-native-graph/example/node_modules/execa/index.js:278:16
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async runOnAllDevices (/Users/Username/Desktop/react-native-graph/example/node_modules/@react-native-community/cli-platform-android/build/commands/runAndroid/runOnAllDevices.js:109:5)
    at async Command.handleAction (/Users/Username/Desktop/react-native-graph/example/node_modules/@react-native-community/cli/build/index.js:192:9)
info Run CLI with --verbose flag for more details.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

What am I doing wrong?

@mrousavy : Could you test it and let me know?

If by chance the project works for you by running it on an android device.

It doesn't, that's what I was saying. I extracted this component from a private production app, it works there.

When I try to disable the gesture, the app crashes and I get the following error:

I know, RNGH bug.

If by chance the project works for you by running it on an android device.

It doesn't, that's what I was saying. I extracted this component from a private production app, it works there.

When I try to disable the gesture, the app crashes and I get the following error:

I know, RNGH bug.

Maybe it should be mentioned somewhere that as-is, the package isn't working on Android.

Hello guys, any solution for Android so far?

This package doesn't work at all on Android. You guys should state that somewhere. Even the example app cannot be started, having the same issue. Extremely disappointing, such a great package yet it doesn't work.

This package doesn't work at all on Android. You guys should state that somewhere. Even the example app cannot be started, having the same issue. Extremely disappointing, such a great package yet it doesn't work.

I just ran yarn android in example/ and it built fine:

I am also using react-native-graph in a client app for Android and it works fine.

Most toggles are not working on Android. Maybe I do something wrong?


zopen-importenvs error

@HarithaIBM can you take a look when you get a chance

@lbdyck assuming this is fixed. Re-open if not.


Converting TSS2 PRIVATE KEY to RSA private Key for parsing the key into EVP_PKEY structure

Hi,
I have loaded the Private Key from TPM using openssl command,
openssl rsa -provider-path /usr/lib64/ossl-packages/ -provider tpm2 -out privatekey.pem -in handle:0x81010002
And the content of Private key is,
-----BEGIN TSS2 PRIVATE KEY-----
MIIBNQYGZ4EFCgEDoAMBAQECBEAAAAEEggEYARYAAQALAAYAcgAAABAAEAgAAAAA
AAEA1ulSPzuYEDTez5D8VOczFDVMRliHQ748NB9KYSlKn0H7QPO3gpHOrzR6tNS8
mNki3MtoizWb8LU9fq5J98rLJzC1kzisF4tjYXqs+QcK7MU1HfeGxa+dwtY8d6jI
Z2uew5i3u3nVPl/07tCwPXdv9FRjl5JoNPpADu7zmVMggwAEN6E+xw6PfouMWCwS
7R3p5IZFRZQn+lrX8xPPbcB7ImxfPjqx16PhknSng7PyQNMBkJNO0pA+20SxP4aP
WkG0SwbLJM+9QJQ6x9dpyTIK0pl4XJyryuE7yvv/qxZqeL6eThLFhaOlfwYROdsH
E2dsWX1sLdgNwVEy3sno6aR+CQQEAAIBgQ==
-----END TSS2 PRIVATE KEY-----
But i want to convert to RSA based private key
-----BEGIN PRIVATE KEY-----
MIIBNQYGZ4EFCgEDoAMBAQECBEAAAAEEggEYARYAAQALAAYAcgAAABAAEAgAAAAA
............................
Is there any API to do the conversion for parsing the key into EVP_PKEY structure

You should ask the question the authors of the tpm2 provider. This needs to be something tpm2 provider specific and we do not know the answer.


Report the correct line numbers when a fast test fails

Applied to main, and verified as working by the ensemble.


stdout op synthesis should support structured op payloads

The stdout driver adapter expects only a string template. It should be able to use structured op templates as well, where each field is taken as part of the output template.

@jshook I've been testing recent NBAdvisor work using the stdout driver with a cql workload. Maybe this is done. If not then please provide an example workload to test.


Add docs on native AOT optimization options

Summary
Add docs on optimization options in Native AOT.
Cc @dotnet/ilc-contrib

Internal previews

📄 File
🔗 Preview link

docs/core/deploying/native-aot/optimizing.md
docs/core/deploying/native-aot/optimizing

I reverted the 8.0 pivot in 20dba7fe73330e783eaa6509b182999012e0ea95 because we apparently can't pivot on .NET 8?


High Sierra.

Hi, this doesn't work with MacOS High Sierra.

@asayf If you want someone assistance it really helps if you give more detail.
If you are getting corruption when the videos play, that's being discussed here #377 . It's a bug in the drivers for Intel chips in certain Mac laptops.
If you are getting an error message saying that the screen saver needs to be updated, then that's a long standing bug in macOS that's been there since Swift was released. Select the screensaver, close System Preferences, re-open it and it should play fine.
If you are just getting a blank screen then that's most likely a firewall/proxy issue. Try caching the videos or connecting through another network.
Aside from the above issues, the screensaver works fine in High Sierra.

Hi @alistairmcmillan - yes, I'll give a little more context. As soon as I preview or 'hot corner' the screensaver, there's a glitch effect that appears after a second. I'm using a 2017 13" MacBook Pro with Touch ID.

@asayf Ah, thanks, that's the thing that's being discussed over in #377 .
Closing this as a duplicate of #377


Meeting Scheduler

Description
Scheduling team meeting without the hassle of back and forth conversations is passe. With this app, you can let anyone set up and create meetings. All you have to do is authorize your Google Calendar and share the app with anyone you would like to. You can completely customize the duration of meetings and let your friends and colleagues know when they can reach you. You can also add in multiple visitors, and if you have a meeting URL, you can also add that.
Schedule Team Meetings without the Hassle of Back-and-Forth Emails.
Integrations and features
A list of specific integrations, data sources, and specific features

Users can create unlimited custom meeting durations
Users can set their working hours on the settings page
You can schedule meetings at any available time while maintaining privacy
If you have a zoom account, you can add in meeting links, so no extra work is required
You can customize the meeting text to attach your meeting ID without any integration required.

Attachments

[x] Link to app - Meeting Scheduler
[x] Screenshots - Add one or more screenshots to help show your app.
[x] JSON Export - Attach the JSON export for your app to the issue.

Not able to review - no public link, no screenshots, and no JSON export.


Improve error message when using API command with non-remote registry.

If you try to use an API command (publish, yank, search, etc.) with a source replacement active (like cargo-vendor or cargo-local-registry), then you get a really weird "failed to fetch" error. This adds a specific check to provide a slightly nicer error.
I'm not entirely happy with the wording, but I think it gets the point across.

r? @nrc
(rust_highfive has picked a reviewer for you, use r? to override)

@bors: r+
WFM

:pushpin: Commit cce87428c03b4ec8ad1f58471c8dbd8f31b39ebd has been approved by alexcrichton

:hourglass: Testing commit cce87428c03b4ec8ad1f58471c8dbd8f31b39ebd with merge 6aca0415923a87b51b8e4bb13702befccf342df0...

:sunny: Test successful - checks-azure
Approved by: alexcrichton
Pushing 6aca0415923a87b51b8e4bb13702befccf342df0 to master...


[Android] On DeviceConnected handler the device.Status says it is Disconnected?

Android Bug:
When you add an event handler for DeviceConnected the device.Status is not updated and still says it's "Disconnected".

Device.State in Android is not in a very good condition, the code even raises the question.
	// TODO: investigate the validity of this. Android API seems to indicate that the
	// bond state is available, rather than the connected state, which are two different
	// things. you can be bonded but not connected.

According to Android API docs, "Being bonded (paired) with a remote device does not necessarily mean the device is currently connected. It just means that the pending procedure was completed at some earlier time, and the link key is still stored locally, ready to use on the next connection."


Implement HUD

The HUD will have the folowing components:

Ammo count
Health bar
Map that moves with the Player
Key symbols for keys owned

Design the HUD in GIMP

Completed - apart from lives/keys

Added keys - HUD complete


Random performance on other dataset, Why it Does not learns?

I applied your implementation on 2 other datasets. However, it works like a random classification with very low performance. Firstly I trained it on Dog vs Cat (kaggle problem) it can't learns this binary classification and has accuracy around 52 after 50 epochs, While the simple CNN can learns it very well. I also applied it on my own dataset with 20 classes but its accuracy was 6 percentage! Could please let me know what is the main reason of this important issue? Thanks

@mbenami  can you show me the detail of how to "add the 1st 2 blocks of vgg16 as input (with Pretrained wights)"

Hi @FlyDogFan
I change the CapsNet function in capsulenet.py file to fit my case
from keras.applications import vgg16
def CapsNet(input_shape, n_class, routings):
    """
    A Capsule Network on MNIST.
    :param input_shape: data shape, 3d, [width, height, channels]
    :param n_class: number of classes
    :param routings: number of routing iterations
    :return: Two Keras Models, the first one used for training, and the second one for evaluation.
            `eval_model` can also be used for training.
    """
    # x = layers.Input(shape=input_shape)

    x = vgg16.VGG16(input_shape=input_shape, include_top=False)

    # Layer 1: Just a conventional Conv2D layer
    conv1 = layers.Conv2D(filters=256, kernel_size=9, strides=1, padding='valid', activation='relu', name='conv1')(x.layers[6].output)

    # Layer 2: Conv2D layer with `squash` activation, then reshape to [None, num_capsule, dim_capsule]
    primarycaps = PrimaryCap(conv1, dim_capsule=8, n_channels=32, kernel_size=9, strides=2, padding='valid')

    # Layer 3: Capsule layer. Routing algorithm works here.
    digitcaps = CapsuleLayer(num_capsule=n_class, dim_capsule=16, routings=routings,
                             name='digitcaps')(primarycaps)

    # Layer 4: This is an auxiliary layer to replace each capsule with its length. Just to match the true label's shape.
    # If using tensorflow, this will not be necessary. :)
    out_caps = Length(name='capsnet')(digitcaps)

    # Decoder network.
    y = layers.Input(shape=(n_class,))
    masked_by_y = Mask()([digitcaps, y])  # The true label is used to mask the output of capsule layer. For training
    masked = Mask()(digitcaps)  # Mask using the capsule with maximal length. For prediction

    # Shared Decoder model in training and prediction
    decoder = models.Sequential(name='decoder')
    decoder.add(layers.Dense(512, activation='relu', input_dim=16*n_class))
    decoder.add(layers.Dense(1024, activation='relu'))
    decoder.add(layers.Dense(np.prod(input_shape), activation='sigmoid'))
    decoder.add(layers.Reshape(target_shape=input_shape, name='out_recon'))

    # Models for training and evaluation (prediction)
    train_model = models.Model([x.input, y], [out_caps, decoder(masked_by_y)])
    eval_model = models.Model(x.input, [out_caps, decoder(masked)])

    # manipulate model
    noise = layers.Input(shape=(n_class, 16))
    noised_digitcaps = layers.Add()([digitcaps, noise])
    masked_noised_y = Mask()([noised_digitcaps, y])
    manipulate_model = models.Model([x.input, y, noise], decoder(masked_noised_y))
    return train_model, eval_model, manipulate_model

The main changes is to use
x = vgg16.VGG16(input_shape=input_shape, include_top=False) as the first layer of the network
and change the rest of the code to fit that
I stop my research in this field as it was not giving me better results and the work was very slow
hope that in the future some progress will be about the speed so more research can be done

Hi
Thanks for your implementation.
I want to implement this code on RGB image for binary classification. Which part of code should be changed?

https://stackoverflow.com/questions/51203765/is-capsule-network-really-rotationally-invariant-in-practice


Bug : Youtube Video Failure

Failure on YouTube video does not explain why it failed in the error messages.
Sample video: https://www.youtube.com/live/lEUS3_Qjyjg?feature=shared

Merged To DEV


Add documentation

[x] add example Grafana dashboard
[ ] Prometheus connectivity
[ ] Docker Compose setup

Superseded by #19


Update dataset title and institution

This PR fixes #27
Value 'POV' is also set as value of the fields institutionCode and rightsHolder.
Via setttings I also updated the repository name and I also updated the Rproj. filename.
The mapping workflow run again: as expected, dwc_event.csv is fully changed.

Title proposed: "Monitoring of fishes and crustacea by the province East Flanders, Belgium".
If @filipmahieu approves it, PR #28 is ready for review.


Material You/Dynamic Color

Since the app is already using Material Design 3, Material You/Dynamic Color support, at least on Android, would be great.

Implemented in 6b0832a78b29b066e43fb12890f2c6c3a361202f
Will be released in v1.10.0


RecursionError with Griffe, Material

Describe the bug
Building mkdocstrings with Griffe>=0.33.0 fails with recursion error due to templates recursing.
Likely an issue between different plugins conflicting.
Debug logs
$ mkdocs build -v
  File "/home/USERNAME/mambaforge/envs/ENVNAME/lib/python3.9/site-packages/mkdocstrings_handlers/python/templates/material/expression.html", line 1, in top-level template code
    {% extends "_base/expression.html" %}
  File "/home/USERNAME/mambaforge/envs/ENVNAME/lib/python3.9/site-packages/mkdocstrings_handlers/python/templates/material/_base/expression.html", line 4, in top-level template code
    {%- include "expression.html" with context -%}
  File "/home/USERNAME/mambaforge/envs/ENVNAME/lib/python3.9/site-packages/mkdocstrings_handlers/python/templates/material/expression.html", line 1, in top-level template code
    {% extends "_base/expression.html" %}
  File "/home/USERNAME/mambaforge/envs/ENVNAME/lib/python3.9/site-packages/mkdocstrings_handlers/python/templates/material/_base/expression.html", line 4, in top-level template code
    {%- include "expression.html" with context -%}
  File "/home/USERNAME/mambaforge/envs/ENVNAME/lib/python3.9/site-packages/mkdocstrings_handlers/python/templates/material/expression.html", line 1, in top-level template code
    {% extends "_base/expression.html" %}
  File "/home/USERNAME/mambaforge/envs/ENVNAME/lib/python3.9/site-packages/mkdocstrings_handlers/python/templates/material/_base/expression.html", line 4, in top-level template code
    {%- include "expression.html" with context -%}
  File "/home/USERNAME/mambaforge/envs/ENVNAME/lib/python3.9/site-packages/mkdocstrings_handlers/python/templates/material/expression.html", line 1, in top-level template code
    {% extends "_base/expression.html" %}
  File "/home/USERNAME/mambaforge/envs/ENVNAME/lib/python3.9/site-packages/mkdocstrings_handlers/python/templates/material/_base/expression.html", line 4, in top-level template code
    {%- include "expression.html" with context -%}
  File "/home/USERNAME/mambaforge/envs/ENVNAME/lib/python3.9/site-packages/jinja2/utils.py", line 466, in get
    return self[key]
  File "/home/USERNAME/mambaforge/envs/ENVNAME/lib/python3.9/site-packages/jinja2/utils.py", line 508, in __getitem__
    self._remove(key)
RecursionError: maximum recursion depth exceeded in comparison

To Reproduce
Expected behavior
A clear and concise description of what you expected to happen.
System (please complete the following information):

griffe version: >=0.33.0
Python version: 3.9.5
OS: Ubuntu in WSL on Win 11 (but also others)

Additional context
Installed in mamba/conda environments.
Other library versions:
$ mamba list | grep mkdoc
mkdocs                    1.4.3                    pypi_0    pypi
mkdocs-autorefs           0.5.0                    pypi_0    pypi
mkdocs-click              0.8.0                    pypi_0    pypi
mkdocs-coverage           1.0.0                    pypi_0    pypi
mkdocs-jupyter            0.24.2                   pypi_0    pypi
mkdocs-material           9.1.2                    pypi_0    pypi
mkdocs-material-extensions 1.1.1                    pypi_0    pypi
mkdocs-monorepo-plugin    1.0.4                    pypi_0    pypi
mkdocs-techdocs-core      1.2.0                    pypi_0    pypi
mkdocstrings              0.20.0                   pypi_0    pypi
mkdocstrings-python       1.2.0                    pypi_0    pypi

I also tried removing mkdocs-monorepo-plugin and mkdocs-techdocs-core but they still failed.

Probable duplicate of #197. See https://github.com/mkdocstrings/python/discussions/98 on how to resolve this (in short: upgrade mkdocstrings-python).


Update package.json

Use octicons v8.0.1. Some new icons (like arrow-both) have been added in this version.

@ik9999, good call, but what do you think about instead making octicons a peer dependency with a broad version range?


In-browser rel="stylesheet/less" not loading from static file server

Hi.
UPDATE: Firebug does not report this by default but Chromium does. It turns out the issue has to do with cross-domain access control. less.js loads the .less file through ajax. Setting Access-Control-Allow-Origin solves the problem for me but it's not ideal.
We have a static file server from where we serve our css. The less file I'm trying to use will ultimately be served from there but for some reason files with rel="stylesheet/less" won't load. To be clear:
LOADS FINE:
<link rel="stylesheet" href="http://static.example.com/css/screen.less" type="text/css" media="screen, projection, print">
DOES NOT LOAD:
<link rel="stylesheet/less" href="http://static.example.com/css/screen.less" type="text/css" media="screen, projection, print">

same problem too,


can't directly load a TLS variable in IASM

Auto-merge toggled on

Why isn't this detected before becoming a linker error?  Shouldn't iasm give an error instead of generating an invalid relocation?

@yebblies It would be possible by looking v->isThreadlocal() in asm_merge_symbol().

This feels like it's papering over a bigger issue.


Expose wasm interface for supporting configure threads for WASM backend

Current WebNN-Polyfill auto select WASM backend depending on environment's supports of TensorFlow Wasm backend, see below codes
// In @tensorflow/tfjs-backend-wasm/dist/backend_wasm.js
/**
 * Initializes the wasm module and creates the js <--> wasm bridge.
 */
 export async function init() {
    const [simdSupported, threadsSupported] = await Promise.all([
        env().getAsync('WASM_HAS_SIMD_SUPPORT'),
        env().getAsync('WASM_HAS_MULTITHREAD_SUPPORT')
    ]);
    return new Promise((resolve, reject) => {
        const factoryConfig = {};
        ... ...
        factoryConfig.locateFile = (path, prefix) => {
            ... ...
            if (path.endsWith('.wasm')) {
                return getPathToWasmBinary(simdSupported, threadsSupported, wasmPathPrefix != null ? wasmPathPrefix : prefix);
            }
            return prefix + path;
        };
   ... ...
 }

/**
 * Returns the path of the WASM binary.
 * @param simdSupported whether SIMD is supported
 * @param threadsSupported whether multithreading is supported
 * @param wasmModuleFolder the directory containing the WASM binaries.
 */
function getPathToWasmBinary(simdSupported, threadsSupported, wasmModuleFolder) {
    ... ...
    let path = 'tfjs-backend-wasm.wasm';
    if (simdSupported && threadsSupported) {
        path = 'tfjs-backend-wasm-threaded-simd.wasm';
    }
    else if (simdSupported) {
        path = 'tfjs-backend-wasm-simd.wasm';
    }
    ... ....
    return wasmModuleFolder + path;
}

This PR is to expose wasm interface for user conveniently configuring threads for WASM backend if environment supported multi-threads, likes
  const wasm = navigator.ml.createContext().wasm;
  // Here to configure threads number
  wasm.setThreadsCount(n);

  const tf = navigator.ml.createContext().tf;
  await tf.setBackend('wasm')

@huningxin @Honry PTAL, thanks.

Can webnn-polyfill tell which wasm impl is used tfjs-backend-wasm-threaded-simd.wasm or tfjs-backend-wasm-simd.wasm?

Can webnn-polyfill tell which wasm impl is used tfjs-backend-wasm-threaded-simd.wasm or tfjs-backend-wasm-simd.wasm?

Addressed it with new printWasmBinary method, please take another look, thanks. @huningxin

This updated commit is for user setting Wasm backend with Wasm binary path and threads count configurations by tf and wasm interface from context.
@huningxin @Honry Please take another look, thanks.

please also update the version in package.json.

Done, PTAL, thanks.

Thanks for your reviewing! Let's merge it.


[Feature] Filter the moving and fixed image prior to registration

brainreg preprocesses the images prior to registration by filtering. We should replicate this functionality.
This will need a toggle in the UI, maybe a checkbox right above the Run button labelled Filter Images.

Sounds good, we should expose the parameters to the user to set via the UI.
In the same vein I guess we should also expose different filtering strategies! I'm unsure of how to present this via the UI, should we curate a set of filtering strategies and have users pick from those, or should we expose the entire skimage.filters and let users construct their own pipeline?


add missing setuptools_scm requirement

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin please rerender

I have an alternate that checks it (so we don't get surprised again)...


Improvement to resolve system property placeholders

This improvement is to resolve system property in the value of any properties mentioned in the pax-logging.properties file.
With this Fix, system will resolve the system properties mentioned within the value of the properties mentioned in the pax-logging.properties file. e.g:
org.ops4j.pax.logging.log4j2.config.file=${custom.home}/conf/log4j2.xml

Please review
Thanks
Danesh

Code looks fine, though there is a StrSubstitutor API in log4j2 already that you could use in theory. Can you also file an issue in jira so we have something in the changelog? Unit tests would be nice, too.

@jvz Thanks for the suggestions. I made the changes to use StrSubstitutor API in log4j2 and removed system property read logic. Please review.
JIRA issue: https://ops4j1.jira.com/browse/PAXLOGGING-236

Can you please review the fix and merge the PR. It would be great, if you can add this improvement in the next release.

Normally, we invite contributors to the ops4j organization so they can merge the code themselves and contribute more easily in the future. I don't know how to do that, but I'm sure someone can handle it. @ANierbeck ?

Oh, and your updates look good. Thanks for the PR!

daneshk I just invited you to the team, welcome aboard.

@jvz @ANierbeck Thanks for the quick response. Happy to be a part of the team :). I will proceed and merge the PR.


iboss Sentinel Solution

Required items, please complete
Change(s):

Initial commits

Reason for Change(s):

New iboss solution for Microsoft Sentinel

Testing Completed:

Passed!  - Failed:     0, Passed:  1872, Skipped:     0, Total:  1872, Duration: 25 s - Kqlvalidations.Tests.dll (netcoreapp3.1)

Hey @oshezaf , will please once have look for the parser , thanks.

Hey @mvforgione , the workbook query is failing, please check and update, thanks.


Is there a way to get the values of an excel drop-down list when that cell is pasted to a react-datasheet?

If I paste a drop-down list from an excel spreadsheet to a ReactDataSheet component I get the current value but not the list of possible values. Is there a way to retrieve the whole list of options?

Hey @shawnmitchell, not sure I understand correctly, if you copy from excel, if it doesn't get transferred to the clipboard, there is no way for a component to retrieve it.

Fair point :-/


Make the UI extension to install the charts from the market place

The idea is to make elemental installation a single step from the UI perspective.

Tested with latest elemental-ui dev extension (1.3.0):
If the operator is not already installed, elemental-ui will let you know and there is a button to install it directly without going through the Marketplace:

All good to me, I will add this to the automated test.


Move backends out of Noir

Since Noir is backend agnostic, this is a tracking issue to move the backends into their own repositories

The Aztec backend is a bit more difficult to pull out, I believe the structure is incorrect for the aim as it directly references the specific backends, instead the backends should reference the acvm I believe

Additionally, we want to be able to compile the Noir frontend without the backend's proving system, ie we only need everything unto the partial witness generator which is in Rust.

This was fixed a while back by @vezenovm


RangeError: Applying a mismatched transaction

this commit cause  RangeError, you can find more details here

How can I reproduce the issue?

Wait a minute.. I will create a minimal repo for reproduction later.

@dmonad  https://codesandbox.io/s/quirky-brattain-tbtinr,,, after changing y-prosemirror to v1.0.20, you'll find everything is fine.

I have the same issue. I think you highlighted the correct part in the commit. Reverting to v1.0.20 fixes.

Hey @dmonad! We also experienced the same issue over on Tiptap (strangely only in our Vue editor, the React editor worked just fine).
I pointed this it back to version 1.1.0, so the same version that was already reported.
We're going to fix the version to 1.0.20 for now - I'll help out as much as I can to resolve this issue. If you need something, let me know!


[fix] element.froalaEditor not defined in link function

Description
https://github.com/froala/angular-froala/issues/156
Changelog

Wrap source file in IIFE manner and include jQuery
Align the indentation

Hi @stefanneculai .. any chance we get this published to NPM ? thanks

@ahmadassaf we'll publish it by the end of this week.


fix: Reduce space between searchbar and table

Github Issue
Fixes #1492
Before

After

With pixel spacing dimension

How big is the gap? It would be great if it was exactly 15px. Also can you also include screenshots of:

Just searchbar - already included.
Just groupby
Searchbar + groupby together.

We need to make sure all these are consistent and have the same vertical spacing.

I have added screenshots for the pixel dimension between search/groupby bar and the table. The gap for searchbar is ~16px and for groupby is ~15px. I tried few different parameters, but this was the best I could get for them.

The gap for searchbar is ~16px and for groupby is ~15px

Unfortunately, that's not good enough since they can be also displayed side by side in which case, it will not look good.

@mturoci how can I try that scenario where both are used side by side ? Do you perhaps have an example maybe ?

table.py should have them both IIRC.

When put together, in table.py example both search and groupby had exact space of 15px


The URL path after the kubectl proxy is wrong

Hello together,
Couldn't reach the URL for the flink-jobmanager after running kubectl proxy
kubectl get services revealed the problem as the service is now called flink-jobmanager only
Please try out and merge if wanted :)
Best regards,
Alex

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

thank you @chtcil !


add automatic module name

This fixes https://issues.apache.org/jira/browse/CLI-299

Coverage remained the same at 96.358% when pulling b2258a3c416f642b067982de087af7ea2ff6be43 on msgilligan:msgilligan-add-automatic-module-name into 6acfed48faf761c19c763212b366720ef0d887c1 on apache:master.

Now that pom.xml has been upgraded this PR consists solely of creating an empty file named profile.module-name .

Closing: The next release will include a module-info file.


Segmentation fault

Hi, Thanks for sharing the code!!!
I ran download.sh file and success
so I run
sh .experiments/scripts/train_linemod.sh
after object buffer loaded, I get this error

----------Dataset loaded!---------<<<<<<<<
length of the training set: 2373
length of the testing set: 1336
number of sample points on mesh: 500
symmetry object list: [7, 8]
2019-04-08 03:59:01,660 : Train time 00h 00m 00s, Training started
/home/user/miniconda/envs/py36/lib/python3.6/site-packages/torch/nn/functional.py:1749: UserWarning: Default upsampling behavior when mode=bilinear is changed to align_corners=False since 0.4.0. Please specify align_corners=True if the old behavior is desired. See the documentation of nn.Upsample for details.
"See the documentation of nn.Upsample for details.".format(mode))
/home/user/miniconda/envs/py36/lib/python3.6/site-packages/torch/nn/modules/container.py:91: UserWarning: Implicit dimension choice for log_softmax has been deprecated. Change the call to include dim=X as an argument.
input = module(input)
Segmentation fault (core dumped)

How can I solve this error and run train code

Hi, sorry I think I just can't debug with a "Segmentation fault". Any more information?

Hi，I get something wrong in download.sh. Can you share the dataset you download :) Thanks a lot!

@gouxiangchen Without any other information I can only advise you to copy directly the lines from download.sh into your terminal or just open the links in your browser:
YCB-Video
Linemod
Trained Checkpoints

@BarbeBleue  Thanks for your advice! It turns out to be my network issue, and it works fine now ~.~

@j96w
thank you for reply. but I solved this problem..
it may be dataset path error

@MyungHaSong ,hi ,I met the same problem.  my datasets path is './datasets/ycb/YCB_Video_Dataset'. Do you know how to deal with it?


okpy.org and ok-server.appspot.com have different landing pages

I think ok-server.appspot.com is the correct landing page.

@Sumukh Did you get a chance to look at this? Don't think this is something I have control over. x)

I haven't. I'll try to keep them in sync. Remind me if I don't update it.
On Friday, July 3, 2015, Alvin Wan<EMAIL_ADDRESS>wrote:

@Sumukh https://github.com/Sumukh Did you get a chance to look at this?
Don't think this is something I have control over. x)
—
Reply to this email directly or view it on GitHub
https://github.com/Cal-CS-61A-Staff/ok/issues/393#issuecomment-118447111
.

Sounds good!

okpy.org now redirects to ok-server (over https)

*like 👍🏻


travis CI

Inspired by the recent successful setup.py improvements and pypi integration, it would be great to get pyhsmm and pybasicbayes tests set up with Travis CI.

Integration with travis CI would be great. This might require one last upgrade to setup.py to force the CI system to run Cython when making a source distribution (python setup.py sdist), according to this: http://stackoverflow.com/questions/4505747/how-should-i-structure-a-python-package-that-contains-cython-code
Based on that post, we'd need to override the sdist class using something like this code (from above link):
from distutils.command.sdist import sdist as _sdist
class sdist(_sdist):
    def run(self):
        # Make sure the compiled Cython files in the distribution are up-to-date
        from Cython.Build import cythonize
        cythonize(['cython/mycythonmodule.pyx'])
        _sdist.run(self)
cmdclass['sdist'] = sdist

I don't have experience with travis CI so I don't know if that'd be necessary.

Just added Travis integration!


Typo in Step 3

I could not find the Export Template under project menu. Step 3 should read: On the File menu, choose Export Template.

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

ID: 99e16e6e-e5d1-964b-f220-cbb2c7e4b5e2
Version Independent ID: 94f82ff9-c61f-31d1-df37-f5e4320daf1c
Content: Create project templates for Visual Studio - Visual Studio
Content Source: docs/ide/how-to-create-project-templates.md
Product: visual-studio-dev15
GitHub Login: @gewarren
Microsoft Alias: gewarren

@pondybala That's interesting. Which version of Visual Studio are you using?


Do not use global websocket.DefaultDialer

This change makes it so that each forward gets its own dialer rather
then all sharing the global websocket.DefaultDialer. It allows WebsocketTLSClientConfig to
set a different TLS config than the one used in the http RoundTripper,
the TLS config in the http RoundTripper will still be used as a
fallback if one wasn't set by the user.
Adds the new optSetter WebsocketNetDialContext to set a custom
DialContet for WebSocket use.
Closes https://github.com/vulcand/oxy/issues/199

OK this change doesn't address #125, the test is still failing on travis. On deeper inspection, I'm not really sure what TestWebSocketNumGoRoutine is trying to test. It just compares the number of goroutines before and after sending a WebSocket request. FWIW the logic under test here looks to be consistent but is covered by other tests.

OK this change doesn't address #125, the test is still failing on travis. On deeper inspection, I'm not really sure what TestWebSocketNumGoRoutine is trying to test. It just compares the number of goroutines before and after sending a WebSocket request. FWIW the logic under test here looks to be consistent but is covered by other tests.
I've reverted the change to un-skip the test, all others still pass.

Maybe @juliens could help on this?

Hey @juliens any chance you'll be able to take a look at this soon?

This PR is getting stale but it's still an issue, any chance it can get reviewed? If there is some concern with the quality of the PR please let me know so I may address it.

Considering the refactoring #229 , the specific code for websocket has been removed so this PR cannot be merged.


Confusion with structure member optionality in IDL v2 in clients

The spec says that a client (i.e. a non-authoritative model consumer) should render a structure member shape with @default as:

Present unless also @clientOptional or part of an @input structure.

My reading of that is that the bar member of the Foo structure in this model:
operation MyOperation {
    input: Foo
}

structure Foo {
    @default("hello")
    bar: String
}

should be rendered in Rust as not optional, i.e. a plain std::string::String:
struct Foo {
    bar: String
}

But I don't see the purpose of @default in this particular example then. The user still has to always provide a value for bar.
Should the phrase be reworded to "Present unless also @clientOptional or reachable via an operation's input"?
Note that adding @input is not listed as a backwards incompatible change, so it feels odd that @input appears in that table: if I were to add @input to the Foo structure shape in the model above, the spec would dictate that bar be of type Option<T> then, and that is backwards incompatible in Rust.

But what's the purpose of @default then? The user still has to always provide a value for bar.

I think this is something you need to answer yourself when building a generator. It sounds like more of a general question on how to use default values with a struct in Rust. I know in languages with constructors, builders, etc, you have an opportunity to set defaults when they aren't provided.

Should the phrase be reworded to "Present unless also @clientOptional or reachable via an operation's input"?

I think you're inferring that because it requires a value in the example Rust type, then all inputs should have optional members for anything that has a default value so that caller doesn't have to set the default themselves. I think that's the same question as above though. Plenty of types are shared between inputs and outputs though, and it doesn't seem easy to manage for a team modeling their service because you can at any time go from referencing a shape only in input to referencing it in both input and output.

Plenty of types are shared between inputs and outputs though, and it doesn't seem easy to manage for a team modeling their service because you can at any time go from referencing a shape only in input to referencing it in both input and output.

Yeah that's fair. I think I'm now inclined to keep the spec as-is in this regard, because changing the type of a struct member when it ceases to be transitively reachable in operation input is likely to cause confusion, whereas adding/removing @input is a more conscious act, and the type change only affects the direct members of the structure shape that has @input.

It sounds like more of a general question on how to use default values with a struct in Rust. I know in languages with constructors, builders, etc, you have an opportunity to set defaults when they aren't provided.

Yes, in Rust we will use builders to enact the benefits of @default. This is the way it will work:
let foo = Foo::builder().build();
let foo2 = Foo::builder().bar("hello").build();
let foo3 = Foo {
    bar: String::from("hello"),
}
assert_eq!(foo, foo2);
assert_eq!(foo2, foo3);

I think all that remains to be cleared up is whether adding and removing @input is a backwards compatible change. You can see from my example that if I add @input, bar would become Option<String>: code using the builder API would not break, but code instantiating the struct directly would.
// Works, same code with same semantics.
let foo = Foo::builder().build();
// Still works because the builder method for `.bar()` wraps `"hello"` in `Some`
// in its implementation.
let foo2 = Foo::builder().bar("hello").build();
// Breaking change.
let foo2 = Foo {
    bar: Some(String::from("hello")),
}

You get a similar situation when considering an example where you remove @required from a structure member when the structure is marked with the @input trait. I agree with the spec's sentiment that "relaxing a constraint" should not break client code, but in Rust going from T to Option<T> (or viceversa) is, unfortunately, a breaking change. These are situations that are only starting to surface in IDL v2 because in IDL v1 we render everything as Option<T> in clients.
I don't see a way to mitigate this breakage by modifying the spec, so this most likely should be addressed in the Rust code generator. I don't know how though; perhaps @rcoh has some trick up his sleeve.

Yeah, adding the @input trait is interesting for clients. Most client generators create dedicated synthetic input shapes if the model doesn't already mark an operation input structure with the @input trait. So for client generators in practice, it's fine. But it's probably more straightforward to just call this a breaking change in the spec.


Fixes NamedTupleSchema incompatability with python builtin namedtuple…

….  When namedtuple is given a string fields parameter, it inteprets the string as being a list delimited by either spaces or commas. NamedTupleSchema converted a string parameter into a tuple of fields, one per character, which is incorrect and results in invalid field names when using whitespace delimiters. See https://docs.python.org/3/library/collections.html#collections.namedtuple for reference.

Here's the relevant section of the documentation.

The field_names are a sequence of strings such as ['x', 'y']. Alternatively, field_names can be a single string with each fieldname separated by whitespace and/or commas, for example 'x y' or 'x, y'.

Excellent!  Yes to keeping full compatibility. :)  Thanks.


docs: broken links on Get Started/Introduction

Hi everyone!
I've found a bug on Introduction Page.
When clicking on:

Getting started with Clarity Core using our Web Components
Getting started with Clarity Angular using our Angular Components

you get 404 pages because:

redirects to https://next.clarity.design/angular/components/web-components/get-started.html instead of https://next.clarity.design/web-components/get-started/
redirects to https://next.clarity.design/angular/components/angular-components/get-started.html instead of https://next.clarity.design/angular-components/get-started/

To reproduce open https://next.clarity.design/get-started/ and then click on those links otherwise, when trying to open those broken links in a new tab or new window you don't get 404 pages, but starting page and the menu isn't collapsing - which you will experience when opening links above directly. This I'm not sure how to fix.
I would be happy to fix the documentation. Any tips would be useful.

@macieyn thanks for point this out ;)

@macieyn thanks for point this out ;)

This is fixed on https://clarity.design/get-started/. Closing as resolved.

This is fixed on https://clarity.design/get-started/. Closing as resolved.


Service usage by 3rd party

Hi @daviddengcn,
Thanks a lot for doing go-search.org, it's really wonderful.
I'd like to ask you if it's ok for you to allow the Go plugin for IntelliJ IDEA to use your service.
If you'd like to see how things will look like, you can view the PR here: https://github.com/go-lang-plugin-org/go-lang-idea-plugin/pull/1555
Of course, the plugin will identify itself in the user agent and it tries to cancel the connections as soon as possible / delay doing them before sending the requests.
Please let me know your thoughts on this.
Thank you for your time and help.
Kind regards,
Florin

Thanks!
Feel free to use it in the plugin as long as there is a link to go-search, which has been seen in the PR's snapshot. I'll try my best to maintain the service but nothing could be guaranteed.


Can’t add custom questions

Whenever I write something in the code with custom questions it doesn’t work, or change anything.

Hi, this repository is just a fork of the original one (https://github.com/sylveon/discord-ban-appeals) adjusted to the needs of my server, we do not provide support or anything related to it, please ask in the original one.


Current status of API is unclear

@kahaaga I've merged main (which is #168 ) into my branch that defines the encoding API and also implements it for histograms. Things remain unclear to me, mainly because discussions were spread across many different issues and PRs and I no longer remember where the information is supposed to be.
Is it correct that all main API functions start with the estimator types? This means that we have:

entropy(e::Entropy, p::ProbEst, x, ...)
probabilities(p::ProbEst, x, ...)
probabilities_and_outcomes(p::ProbEst, x, ...)

But as far as I can tell, these are the only two functions that follow this appraoch of having first the type. The following functions have the different approach of having first input x, and then the probabilities type:

outcome_space
total_outcomes
missing_outcomes
outcomes

Can you please explain what is the overall plan? Should we make all functions follow the first or the second version in the order of arguments?

My opinion: we make all functions follow the first order. That is: type first, then the argument.

ok I do this in a new PR

@kahaaga and what do we do about the encode and decode functions? They were encode(χ, e::Encoding) before. Should the order be changed?
I have to admit I find it more natural to have encoding(element, encoding). Because it reads "encode this value using that encoding." The other way around it doesn't read naturally: encode, using this encoding, this value.
Which also makes me think, why did we change the probabilities interface to have the type first? For the entropies I got your argument: it made extending entropies to joint entropies natural. But does this argument carry over to probabilities? Notice that the Julia style guide says "put type first", but this is a bit missleading: this is for the cases that the type decides the return type, such as in rand(Int, x). In our case the estimator doesn't decide the return type, only the return value.
On the other hand, it would be good to have an idea of how in general the broader Julia community does this. Is the "algorithm deciding argument" before or after the input data? In JuliaDynamics overall it is first input data and then algorithm deciding argument. Eg. that's how it is done in RecurrenceAnalysis.jl or TimeseriesSurrogates.jl: surrogate(x, method). I could be in the wrong though, and everywhere else it is done the other way around. Let's try to collect at least a couple of examples from other repos?

I've opened this: https://discourse.julialang.org/t/design-q-order-of-arguments-input-data-and-algorithm-type/91768

Good idea on consulting with the community!

I have to admit I find it more natural to have encoding(element, encoding). Because it reads "encode this value using that encoding." The other way around it doesn't read naturally: encode, using this encoding, this value.

Well, it depends on how you phrase it. Take encode(x, method::A). There's "encode x using method of type A", and there's "A-encode x".
I don't feel strongly about either option beyond the vararg-argument, but the vargarg-argument weights pretty strongly in my opinion. I've gone through several rounds of design proposal for the CausalityTools methods without coming up with anything reasonably developer-friendly, because without it, we're back to writing a bunch of specialized methods for all input argument combinations. This is a pain, is error-prone, hard to document and hard to debug.
A third option is to have the types as the first argument to methods that will never accept vargargs as the last argument. But how do we know if a method won't be extended with varargs later? In some cases it is obvious that it will never happen, but in other cases it is not so clear.

Which also makes me think, why did we change the probabilities interface to have the type first?

I think the reasoning was just "follow the same style everywhere". But since there is no established guidelines on the topic, we could also just decide on a style guide ourselves.
Anyways, we should see what the community thinks too.
I'll try to find some examples from well-established packages in the meanwhile.

Some examples from other packages with functionality for estimating some statistic from data (I'll fill this out as I investigate more)
StatsBase.jl
Implements different algorithms as a different function, and parameters as keyword arguments. They do knuths_sample and fisher_yates_sample, where we'd do sample!(Knuths(), args...) and sample(FisherYates(), args...).
Distributions.jl
Uses a similar type-based approach, where each distributions is its own type. They dispatch on type-first, then input. For example, fit_mle(dist::D, x), where D <: Distribution. However, here the return type is also of type D, so this again is not really comparable to our situation.

Ok, a radically different suggestion: use functors instead, like we do in TimeseriesSurrogates. For motivation, see the last comment in https://discourse.julialang.org/t/how-are-functors-useful/24110/28.
What if we instead of having entropy(e::Shannon, args...), we define EntropyShannon() and use it as a functor? In general, it would look something like:
struct EntropyShannon; params...; end
struct EntropyRenyi; params...; end
struct EntropyTsallis; params...; end
...

(e::EntropyShannon)(x...)
(e::EntropyRenyi)(x...)
(e::EntropyTsallis)(x...)

This would also simplify stuff in CausalityTools, where on the v2 branch one would do
struct MIShannon <: MutualInformation; params...; end
struct MITsallis <: MutualInformation; params...; end
....

mutualinfo(def::MITsallisTypeA,  measure::MITsallis, est::SomeEstimator, x, y)
mutualinfo(def::MITsallisTypeB,  measure::MITsallis, est::SomeEstimator, x, y)
....

With a functor approach, this would be the much less verbose
(mi::MITsallis)(def::MITsallisTypeA, est, x, y, ....) # seamlessly compute multi-information using varargs
(mi::MITsallis)(def::MITsallisTypeA, est, x, y, ...)

I actually like this a lot more than the current approach. Moreover, implementing generator-type structs, as desired in #70, would come very naturally.

It seems that the community generally leans towards type first, input afterwards. So let's do this everywhere.

I don't see any immediate benefit for functors for entropies. At the moment it appears that you have to create exactly the same amount of structs and define the same amount of new functions. And a user would have to learn exactly the same amount of new things plus one more, the concept of functors, which I don't think is at all as a basic of a concept as a function.
So why use something conceptiually more complicated than functions?

mutualinfo(def::MITsallisTypeA,  measure::MITsallis, est::SomeEstimator, x, y)

off-topic, but I think that this is too much for a user. I wouldn't define MIType at all and just use different functions all together. Having three different types to decide the "algorithm" used probably is a good hint that the name of the function should be where the specialization should occur at.

Ok I read now the discourse post you linked that argues in favor of functors for establishing a 1-argument-function interface. Hence, this would be only valid if we could achieve that. We can't; we will always have a probabilities estimator and a data input. The alternative of passing the probability estimator as a "parameter" to the entropy functor goes again what we want to achieve here on an educational level: that the entropy and the probability extraction are two genuinely different things.

And a user would have to learn exactly the same amount of new things plus one more, the concept of functors, which I don't think is at all as a basic of a concept as a function.

Good point.

It seems that the community generally leans towards type first, input afterwards. So let's do this everywhere.

Ok, fine with me! Let's do that.

off-topic, but I think that this is too much for a user. I wouldn't define MIType at all and just use different functions all together. Having three different types to decide the "algorithm" used probably is a good hint that the name of the function should be where the specialization should occur at.

I opened an issue for this in CausalityTools. See the linked issue above.

The advantage would be pre-allocation for speed ups during repeated computations (i.e. surrogate testing).

This is possible just as well with the struct. The pre-allocation happens once you initialize e = Shannon(). It doesn't matter if you call e as e(est, x) or entropy(e, est, x). At least with our surrogate package it could have happened just like that just as well. You could have r = RandomPhase(); surrogenerator(r, x) and r has pre-initialized the FT plan.

okay, I'll finish #187 tomorrow then with the final decided upon API which is: types are always first argument, but no functors.

This is possible just as well with the struct. The pre-allocation happens once you initialize e = Shannon(). It doesn't matter if you call e as e(est, x) or entropy(e, est, x). At least with our surrogate package it could have happened just like that just as well. You could have r = RandomPhase(); surrogenerator(r, x) and r has pre-initialized the FT plan.

Ah, yes. Let's keep this in mind for later.

okay, I'll finish https://github.com/JuliaDynamics/Entropies.jl/pull/187 tomorrow then with the final decided upon API which is: types are always first argument, but no functors.

Sounds good.


PDF Miner returns different results every time #306

I have noticed the issue with PDF miner.
It returns different results each time for my PDF doc. This is my code:
import requests
from io import BytesIO
from pdfminer import high_level

def pdf_sublink_extraction(pdf_links, sleep):

    associatedTextList = []
    for pdf_link in pdf_links:
        print("pdf link", pdf_link, '\n')
        try:
            response = requests.get(pdf_link)
            print('response', response, '\n')
            with BytesIO(response.content) as data:

                num_of_pages = len(list(high_level.extract_pages(data)))

                full_pdf_text = high_level.extract_text(data, password='', page_numbers = None, maxpages = 5, codec='utf-8', caching=True, laparams=None)
                full_pdf_text = full_pdf_text.replace('\n\n\n\n', '\n').strip()

        except:
            full_pdf_text = "PDF File: " + pdf_link + "\n\nUnable to parse PDF file!"

    return full_pdf_text

print(pdf_sublink_extraction(['https://www.buelach.ch/fileadmin/files/documents/Finanzen/2016_2020_finanzplan.pdf'], 0))
print()
print()
print(pdf_sublink_extraction(['https://www.buelach.ch/fileadmin/files/documents/Finanzen/2016_2020_finanzplan.pdf'], 0))

I checked the results with this tool:
https://www.diffchecker.com/diff
And it returns different results. The difference is in numbers in some lines.
Is that a bug, or Im doing something wrong?

I cannot reproduce.
I'm using this code:
from io import BytesIO

import requests

from pdfminer import high_level

PDF_LINK = 'https://www.buelach.ch/fileadmin/files/documents/Finanzen/2016_2020_finanzplan.pdf'

texts = []
for i in range(2):
    response = requests.get(PDF_LINK)
    text = high_level.extract_text(BytesIO(response.content), maxpages=5)
    texts.append(text)

print(texts[0] == texts[1])

The output is
True


Permission denied when a path to folder is provided to ImportJobRequest

🔍 Before submitting the issue

[x] I have searched among the existing issues
[x] I am using a Python virtual environment

🐞 Description of the bug
Providing path in form of [“.“],  [“.\”], [".\MyFolderName"] to any ‘files’ (data_files, combined_files, attachment_files) parameter in import request, results in error:
Traceback (most recent call last):
  File "C:\Automation\STK\STKTests\jobqueue\jobqueue-smoke-test.py", line 240, in <module>
    import_job = api_client.create_job_and_wait(job_request=import_request)
  File "C:\Program Files\Python313\Lib\site-packages\ansys\grantami\jobqueue\_connection.py", line 354, in create_job_and_wait
    job = self.create_job(job_request=job_request)
  File "C:\Program Files\Python313\Lib\site-packages\ansys\grantami\jobqueue\_connection.py", line 396, in create_job
    job_request._post_files(api_client=self.job_queue_api)
  File "C:\Program Files\Python313\Lib\site-packages\ansys\grantami\jobqueue\_models.py", line 450, in _post_files
    file_id = api_client.upload_file(file=file.path)
  File "C:\Program Files\Python313\Lib\site-packages\ansys\grantami\serverapi_openapi\api\job_queue_api.py", line 1056, in upload_file
    data = self._upload_file_with_http_info(file, _return_http_data_only=True)
  File "C:\Program Files\Python313\Lib\site-packages\ansys\grantami\serverapi_openapi\api\job_queue_api.py", line 1097, in _upload_file_with_http_info
    return self.api_client.call_api(
  File "C:\Program Files\Python313\Lib\site-packages\ansys\openapi\common\_api_client.py", line 475, in call_api
    return self.__call_api(
  File "C:\Program Files\Python313\Lib\site-packages\ansys\openapi\common\_api_client.py", line 182, in __call_api
    post_param_tuples = self.prepare_post_parameters(post_params, files)
  File "C:\Program Files\Python313\Lib\site-packages\ansys\openapi\common\_api_client.py", line 684, in prepare_post_parameters
    with open(file_name, "rb") as f:
PermissionError: [Errno 13] Permission denied: '.'`

📝 Steps to reproduce
prepare ExcelImportJobRequest where one of files parameter is a path to a folder, and create a job with it
import_request = jobqueue.ExcelImportJobRequest(
    name = "name",
    description = "description",
    template_file = ".\myTemplate.xls",
    data_files = [".\\FolderWithDataFiles"]
)

import_job = api_client.create_job_and_wait(job_request=import_request)

💻 Which operating system are you using?
Windows
📀 Which ANSYS version are you using?
ansys-grantami-jobqueue 1.1.0rc0
ansys-grantami-serverapi-openapi 4.0.0
ansys-openapi-common 2.2.0
GRANTA_MIScriptingToolkit 4.1.75
Granta MI b. 25.1.1888
🐍 Which Python version are you using?
3.13
📦 Installed packages
ansys-grantami-jobqueue==1.1.0rc0
ansys-grantami-recordlists==1.3.0rc0
ansys-grantami-serverapi-openapi==4.0.0
ansys-openapi-common==2.2.0
certifi==2024.8.30
cffi==1.17.1
charset-normalizer==3.4.0
cryptography==43.0.3
filetype==1.2.0
GRANTA_MIScriptingToolkit @ file:///C:/Automation/STK/scripting-toolkit-4-1-75/pip/granta_miscriptingtoolkit-4.1.75-cp38-abi3-win_amd64.whl#sha256=7be8c6e46f63c29c0fde2a30911b2c3a607c5fb6443258b56e77339ca4db58b0
idna==3.10
jaraco.classes==3.4.0
jaraco.context==6.0.1
jaraco.functools==4.1.0
keyring==25.5.0
more-itertools==10.5.0
packaging==24.2
pycparser==2.22
pyparsing==3.2.0
pypiwin32==223
pyspnego==0.11.2
python-dateutil==2.9.0.post0
pywin32==308
pywin32-ctypes==0.2.3
requests==2.32.3
requests-negotiate-sspi==0.5.2
requests_ntlm==1.3.0
six==1.16.0
sspilib==0.2.0
urllib3==2.2.3

There are a few issues here:

".\myTemplate.xls" has a backslash, which is an escape character in Python. ".\myTemplate.xls" will be converted into ".myTemplate.xls" (because there's no such \m escape sequence, and it will emit a warning), and will then fail to resolve the file that doesn't exist.
[".\\FolderWithDataFiles"]: Double backslash will work, but we don't support references to folders, only files.

I can't reproduce any of these issues with forward slashes, properly escaped backslash characters or r"raw\strings", so I'm closing this ticket.


Add infrastructure for TypeScript

Add build system, change paths to refer to built code in dist/,
and convert all imports to ES6 modules.
This PR is set to merge to the next branch, so we will coordinate merging to master across the three modules at once.

Pull Request Test Coverage Report for Build 508

311 of 314 (99.04%)  changed or added relevant lines in 38 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-27.7%) to 49.879%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

lib/config/index.js
9
10
90.0%

lib/helpers/oauth2.js
5
6
83.33%

lib/messaging.js
5
6
83.33%

Totals

Change from base Build 493:
-27.7%

Covered Lines:
1945

Relevant Lines:
3816

💛  - Coveralls