[XDS] Do not track resources when there is no subscription interested in it.

Title: Do not track resources that have no subscribers.
Description:
In DeltaSubscriptionState, all the resources from Server are "tracked"/put-into-resourceState without condition.
see https://github.com/envoyproxy/envoy/blob/main/source/common/config/delta_subscription_state.cc#L125-L128
This could cause resources been tracked when there is 0 subscribers:

Server sends "A, B, C" via EDS response,
DeltaSubscriptionState will track them with their version, even if there is no subscription of A,B,C at all.
upon reconnection, EDS will request A,B,C as they are in the resource_state_ with a version, they will be sent to the Server as if Envoy has A,B,C EdsClusters while there are none.

Repro steps:
See the Description section.

/cc @yanavlasov

cc @ adisuissa

the communication between the two parties are totally async:
after step 2, there will be a request to Server with "A" in the resource_name_unsubscribe list, b
but in the same time, the Client could have already received an EDS response from Server with "A" in it, queued right after the CDS response, "A" gets tracked again by Envoy.
The EDS request with resource_name_unsubscribe{"A"} is sent to Server, server removes it from the stream, but when reconnection happens "A" will be resent to Server as it will not be removed by EDS response, while in CDS's point of view, it's already "removed" (leaked).

I think what you are describing isn't related to unsubscribed resources.
This will probably occur in the following scenario:

Client sends a request for resource {A}.
Server sends a response containing resources {A,B}.
Reconnect happens.
Client will send a request for resources {A,B}, although it only registered for {A}.

I wonder if this can be reproduced in an integration test, or if upon a reconnect updateSubscriptionInterest will remove the resource.

Yeah, it's just the scenario we are seeing in our product.
as the title says, right now it will "track resources when there is no subscription interested in it".

https://github.com/envoyproxy/envoy/pull/18295 is merged, let's close this issue.


DOC:QA notebook link broken

Issue with current documentation:
https://python.langchain.com/docs/modules/chains/popular/question_answering.html Link for question answering
Idea or request for content:
Fix and redirect to a different link

Hi, check out the following link: https://python.langchain.com/docs/use_cases/question_answering/


[vendor-change] Fortio update to 0.8.0 - with semver not need to specify the tag, dep picks up the latest release tag

2 phase commit needed when tests pass
changes/release notes:
https://github.com/istio/fortio/releases/tag/v0.8.0

matching vendor pr https://github.com/istio/vendor-istio/pull/33

/lgtm


"Default Video Quality" no longer works?

I have it set at 144p, which https://odysee.com/@AlphaNerd:8/the-tik-tok-data-breach-is-fake!-for:e supports.  But it either sets to auto or a previous non-auto value that is not 144p.
I do see the button on the video player flash between few settings at times, though.

Seemed to work here. Did you save the settings? Refresh help? Check network tab too to see which version it's playing ... v3 is 144p

Oh, requires a Save + Refresh.
Repro:

Select one video with all the transcoding options.
My default was "Auto", and it played with "Auto" -- great.
Settings > Default = 360p > Save
Load same video -- it's stuck at Auto
Load a different video -- stuck at auto
Refresh and load the same video -- working now


Fix for optimization

Hey, Nice to meet you!  Thanks amazing OSS💯
I think it should be more simple and optimized so I did 3 things.

[x] Optimize Access control.
[x] Rename Window.swift toContainerView which is different to its filename .
[x] Remove WindowRootViewController.swift because it's unused.

Please Review✨
Thank you!

Sorry for the delay. Can you update the PR?

I'm thinking about:

Rename Window.swift toContainerView which is different to its filename .

Maybe it would be better to rename the file According to the class. What do you think?

@PGLongo Thanks for your review!!
update PR and Fix.


Error when executing train.py in chainer

autoencoder / chainer_vaegan / src / train.py
When I ran this, an error sentence appeared as follows.
Traceback (most recent call last):
File "train.py", line 456, in
train (enc_model, gen_model, dis_model, optimizer_enc, optimizer_gen, optimizer_dis, args.iter, out_image_dir = args.out_image_dir)
File "train.py", line 408, in train
loss_enc, loss_gen, loss_dis, loss_rec, loss_rnn = train_one (enc, gen, dis, rnn_model, optimizer_enc, optimizer_gen, optimizer_dis, i)
File "train.py", line 276, in train_one
z0, mean, var, _ = enc [0] (Variable (x_in))
ValueError: need more than 3 values to unpack
What kind of error is this?
I have not got python knowledge since I have not spent a lot of time for the first time in the program.
How can I remove the error?
I created a trajectory folder in the roboinstruct root folder and copied the data (task - 3001, task - 3002, task - 3003, task - 3005, task - 3006) recorded by al5d demonstration.
I also created a models folder in the roboinstruct root folder.
Ubuntu 16.04
Python 2.7
Chainer 2.1
copy 1.03
cudnn 6
I ran using these.

The problem was that the encoder function returns 3 values but in the train.py we are expecting 4 values. I made a quick fix to autoencoder / chainer_vaegan / src / net.py line 44 is now changed to
return z, mean, var, h4. I hope this solves the problem.


Add 'push' command

Ideally one would be able to push an updated configuration version without having to 'activate' it on either network.

This should be possible already.  But in practice it is a bit different for pipeline vs snippets.
The save operation does this but it validates the property first. This might have been confusing because if the current version was already "active" in staging or production a new version must be created as part of save action since already active versions are not editable.
Usage:
    pipeline save -p <pipeline_name> <environment>
or
    snippets save
either operation will push the local change without doing an activation.


Add x-api-key to search call

Describe your PR
This PR adds an x-api-key parameter to our calls to the search endpoint
Fixes #311
Pages/Interfaces that will change
/businesses search page
Screenshots / video of changes
This will appear in the network tab of your browser dev tools when you execute a search (highlighted here).  I'll need confirmation from @elchris that this is what we're looking for, since the API changes aren't deployed yet.

Steps to test

@elchris help! :)

Additional notes

[x] Q: do we make any other API calls to our own endpoints? I couldn't find any.
[ ] I'd like to implement react-query to better cache search calls on the front end at some point (that should maybe be broken out into its own issue?)

@elchris I'm going through the checklist in #311 to get this done, and I see reference to a staging environment... do we have/use a staging environment? I don't recall ever using one for the website.
If we don't, this is ready to merge - the correspomding API key is on netlify for the production environment

@mbifulco feel free to add an issue for the react-query stuff. That seems like a great addition!


feat(rust): use orchestrator api builder for command

Current behavior

Proposed changes

Checks

[ ] All commits in this Pull Request are signed and Verified by Github.
[ ] All commits in this Pull Request follow the Ockam commit message convention.
[ ] I accept the Ockam Community Code of Conduct.
[ ] I have accepted the Ockam Contributor License Agreement by adding my Git/Github details in a row at the end of the CONTRIBUTORS.csv file in a separate pull request to the build-trust/ockam-contributors repository. The easiest way to do this is to edit the CONTRIBUTORS.csv file in the github web UI and create a PR, this will mark the commit as verified.

Closing this PR for now. We might pick up something similar when refactoring the NodeManager


rename all SidechainDB class according to bitcoin style guide

#9

Almost everything is perfect, just a few changes to be made that I'll point out :+1:

Alright so just undo renaming the include guards (top and bottom of the sidechaindb.h file) and push that commit into your branch and everything can be squashed / merged. Thanks again! :+1:

seems all right now? :)
I wonder why textbook for C++ is so thick... :(


Sample Conditions for OIDC Policy

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

What article on docs.github.com is affected?
https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services#configuring-the-role-and-trust-policy
What part(s) of the article would you like to see updated?
The addition of ForAllValues in the operator introduces the potential for some unexpected results. From the docs:

The condition returns true if every key value in the request matches at least one value in the policy. It also returns true if there are no keys in the request, or if the key values resolve to a null data set, such as an empty string.

I recognize that this was added to allow custom claims. I suggest a compromise of breaking sub into a separate condition.
"Condition": {
                "ForAllValues:StringEquals": {
                    "token.actions.githubusercontent.com:aud": "sts.amazonaws.com"
                },
                "StringEquals": {
                    "token.actions.githubusercontent.com:sub": "repo:octo-org/octo-repo:ref:refs/heads/octo-branch"
                }
            }

Additional information
When policy validation is added for role trust policies, the FORALLVALUES_WITH_SINGLE_VALUED_KEY check would be triggered for the sample condition as written.

@matthewcarter95
Thanks so much for opening an issue! I'll triage this for the team to take a look :eyes:

@matthewcarter95 Thanks so much for your patience. I spoke with the team and we are not going to accept this contribution :yellow_heart: . We really appreciate your time and interest in improving GitHub docs 💖 .


Stored procedure missing when using mysql as a backend

I'm trying to use the mysql as the store for OIDC.  The schema provided appears to be incorrect, (or maybe the SQL being issued by the OIDC flow is assuming that hsqldb is being used?)
from oidc.properties:
from oidc.properties:
oidc.db.schema=%{idp.home}/conf/schema/mysql-schema.sql
oidc.db.driver=com.mysql.jdbc.Driver
oidc.db.url=jdbc:mysql://mysql.example.edu:3306/oidc?autoReconnect=true
oidc.db.uid=oidc
oidc.db.psw=password
from idp-process.log:
2017-05-04 17:41:25,874 - ERROR [javax.persistence.PersistenceException:76] - xxx.xxx.xxx.xxx -
javax.persistence.PersistenceException: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.6.0.v20150309-bf26070): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: PROCEDURE shibboleth_stage.IDENTITY does not exist
Error Code: 1305
Call: CALL IDENTITY()
Query: ValueReadQuery(name="SEQ_GEN_IDENTITY" sql="CALL IDENTITY()")
at org.eclipse.persistence.internal.jpa.EntityManagerImpl.flush(EntityManagerImpl.java:879)
Caused by: org.eclipse.persistence.exceptions.DatabaseException:
Internal Exception: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: PROCEDURE shibboleth_stage.IDENTITY does not exist
Error Code: 1305
Call: CALL IDENTITY()
Query: ValueReadQuery(name="SEQ_GEN_IDENTITY" sql="CALL IDENTITY()")
at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:340)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: PROCEDURE shibboleth_stage.IDENTITY does not exist
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

You want to check with https://github.com/mitreid-connect/OpenID-Connect-Java-Spring-Server first and see they can provide a better schema definition.
https://github.com/mitreid-connect/OpenID-Connect-Java-Spring-Server/tree/master/openid-connect-server-webapp/src/main/resources/db/mysql

Correct link for 1.2: https://github.com/mitreid-connect/OpenID-Connect-Java-Spring-Server/tree/1.2.x/openid-connect-server-webapp/src/main/resources/db/tables

The mysql schema available from the mitreid-connect repo is the same as the
one distributed in the shibboleth-oidc repo.
Liam
On Fri, May 5, 2017 at 9:37 AM, Misagh Moayyed<EMAIL_ADDRESS>wrote:

Correct link for 1.2: https://github.com/mitreid-
connect/OpenID-Connect-Java-Spring-Server/tree/1.2.x/
openid-connect-server-webapp/src/main/resources/db/tables
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/uchicago/shibboleth-oidc/issues/41#issuecomment-299482315,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA-SK1l5IhRbOARrEuYJy9qHow0EalGoks5r2zQ_gaJpZM4NRREm
.

Thanks for checking. That would be something for them to fix, I suppose.

Actually, the problem seems to be in system/conf/oidc-protocol-storage.xml
The databasePlatform property needs to match the database backend being used, e.g.
<bean id="jpaAdapter" class="org.springframework.orm.jpa.vendor.EclipseLinkJpaVendorAdapter">
    <property name="databasePlatform" value="org.eclipse.persistence.platform.database.MySQLPlatform" />
    <property name="showSql" value="true" />
</bean>


when client disconnected normally, broker will not publish disconnected $SYS message

fix in 0.9.0 release. emqttd_mod_presence will publish 'disconnected' message.

fix in 0.9.0 release. emqttd_mod_presence will publish 'disconnected' message.


Wrong filename in text

This filename and the diagram above it are correct for the v2.0.0-alpha.3 node template. They are referring to this file.
If you're developing against an older node template (like pre-v2.0-3e65111) you should follow this version of the tutorial. https://substrate.dev/docs/en/tutorials/build-a-dapp/pallet

Did I edit the wrong thing? https://substrate.dev/docs/en/next/tutorials/build-a-dapp/pallet - this tutorial has the wrong filename in text


Request additional Identifers.org prefixes

[ ] GitHub: links to repos
[ ] Linguist: programming languages
[ ] SIO
[ ] FunderRegistry
[ ] Physiome model repository
[ ] SED-ML model languages
[ ] SED-ML data formats

I submitted requests for all of the above so all of the main URIs we're using can be expressed via Identfiers.org.

All have been approved


Fix invalid listener setting method

Overview
Fix listener setting method
https://github.com/nohana/NohanaFeatureDiscovery/issues/3

🙆


Snap Template Highlight

Snap The template highlight to the grid instead of to the mouse. My guess is switching the logic from the MeasuredTemplate to the MeasuredTemplateDocument will be the fix.

closed by 1.2.0


I hope that the tfjs-models project will increase the configuration resource link method

Hi guys, I used tfjs-models project on my vue project for the first time today, and I also successfully launched posenet and handpose. Thank you for your contribution, but due to some special reasons, I cannot open tfhub.dev Just like google.com, I found that tfhub.dev will redirect to storage.googleapis.com, I can access storage.googleapis.com normally, and there is no problem running posenet, but handpose will fail to load mode, so I hope it can Provide a url method to configure the model, easy to replace https://github.com/tensorflow/tfjs-models/blob/master/handpose/src/index.ts 28 lines 38 lines 48 lines links.
My English is not very good, this is machine translation, thank you again for your contribution

@yulong88888
This i not the Tfjs repo,please move this issue to closed status and open it in the correct repo.

@Saduf2019 Sorry, I can't find the issue option in https://github.com/tensorflow/tfjs-models, can you help me

I completed the requirement by code overwriting


VR Toolkit in SceneKit and Swift 2

For a VR or SceneKit section:
VR_Toolkit_iOS SceneKit based toolkit to create interactive VR scenes, games or else. In Swift 2.

@Aralekk I'm closing this issue because I created an issue about a category for VR


Crypto app design

Is it allowed to create multiple pull requests for the same app design?
For eg: If I am creating the crypto app design, can I add more and more features under new PRs or we need to create single PR with whole code?

you can create multiple PR but make sure that the PR that you create has enough changes to make it a proper PR

Hey @tanmoy27112000 ,  I would like to work on this issue

@tanmoy27112000 is there any deadline by which I need to complete this?

@shatanikmahanty by 31st October

Hello! I would like to work on this issue.


[enhancement] Rename the cmd/tf_operator to cmd/tf-operator

The new name is more k8s style, and #350 also sets the repo name to tf-operator.
And, the command name in kubeflow should be changed, too.

Hi @gaocegege I would like to work on this issue. Could you please elaborate a little bit since I am just a beginner here.

Hi @AK-ayush
Thank you and I think you just update the package name. But I think we need to make sure that the changes will not break kubeflow. So maybe you need to file a PR to kubeflow, too.

@jlewi Could we update the package name now? Or we could wait until we release a version.

This should be fine.
Kubeflow's ksonnet registry uses a specific Docker image so when we update the Docker image we can catch and fix any breakages.

@AK-ayush Then feel free to just update the package name in this repo, and you can file a WIP PR ASAP and the CI test will help you debug 😄

@gaocegege I've submitted initial PR #393 Please, have a look at it and let me know. Thanks

Close as https://github.com/kubeflow/tf-operator/pull/393.


IncludedBuild.name is only the directory name, but not rootProject.name since gradle 6.0

Expected Behavior
configuring a projects settings.gradle like that:
// otherProject/settings.gradle
rootProject.name='prjID'
println 'project settings evaluated'

sets the name regardless of the directory it is checked out
// otherProject/build.gradle
println "my name is $name"

when using this in a composite build:
// settings.gradle
includeBuild 'includedBuild'
println 'composite settings evaluated'

this should also be the name of the project when used as includedBuild
// build.gradle
gradle.includedBuilds.each {build -> println "includedBuild name is: $build.name" }

so the output should be:
composite settings evaluated
project settings evaluated

> Configure project :prjID
my name is prjID

> Configure project :
includedBuild name is: prjID

Current Behavior
with gradle 6 includedBuild.getName() returns the directory name regardless of the settings.gradle of the included build:
composite settings evaluated
project settings evaluated

> Configure project :otherBuild
my name is prjID

> Configure project :
includedBuild name is: otherBuild <-- this is wrong!

Context
we use naming patterns to provide convinience tasks in a included build to start tasks implemented in the sub builds, much like having a multi module build, but only for a subset of tasks in a composite build environment. These mappings failed when we
upgraded to gradle 6 due to the fact that the subproject and the composite build do not operate with the same project name.
Steps to Reproduce
example is provided above
Your Environment
Windows 10 (2004)
tested with: Gradle 6.0.1, 6.2.1, 6.3, 6.4.1, 6.5.1, 6.6.1, 6.7.1, 6.8, 6.8.1
last working example: Gradle 5.6.4

This was an intentional change in 6.0 and it is documented:
https://docs.gradle.org/current/userguide/upgrading_version_5.html#changes_to_build_and_task_names_in_composite_builds


Accept an initialState in getStore

To help with testing store data.
:eyeglasses: @nramadas

:fish:


Installing from source [Win10] [Anaconda]

I noticed a peculiarity while installing procgen as mentioned in Readme.md

pip install procgen doesn't work for some reason on python 3.9.6 (conda)
conda needs to be on "PATH" in windows for the python -c from procgen import ProcgenGym3Env; ProcgenGym3Env(num=1, env_name='coinrun') to succeed

There are no wheels for 3.9, if the CI works it may be easy to publish these soon
That makes sense, I'd accept a PR to clarify the docs or improve the error message

Going to close this since there should be 3.9 wheels, feel free to file a new issue if there are other issues.


questions about data sources available in globalnames/gnverifier searches

I have just discovered gnverifier and I wonder if it does what I think it does.
Sorry if some of these questions are perhaps more suitable for other gnames repositories:

I understand gnverifier is just a way of accessing globalnames service without using a browser. But if I just want to use Python, is there any difference between using gnverifier (i.e. system calls from Python) or access resolver.globalnames.org (api calls from Python)?
Where can I read a bit about the reasons for some globalnames Data Sources being available and some others not? It's odd to me not seeing any of these global vascular plants databases:
WCVP (World Catalog of Vascular Plants: see website, dataset, article),
LCVP (Leipzig Catalog of Vascular Plants: see dataset & article),
WFO (World Flora Online: see website, dataset and article)
All these offer whole dataset download links (instead of an API service). Is that the reason for them not being available?
Do globalnames and gnverifier search against the original data sources web sites (which could be offline sometimes) or against globalnames-stored copies? (AFAIK, many of the available datasets do not offer any API access point).
So I hope it's just a matter of time seeing WCVP / LCVP / WFO copies available and searchable as well.
In the mean time, does globalnames offer any other piece of software for verifying names against a locally downloaded dataset (i.e., download WCVP and run gnverifier -or whatever- against it, somehow)
Citation & versioning:
Shouldn't globalnames Data Sources page include links to the original datasets? It's hard for me to compare globalnames returned results against original datasource, if I can't access those data sources in some other way.
Also, I suppose some of the available data sources have versioning systems. How can we know which version of the data source is globalnames serving?

Please don't take these comments as criticism. I do like globalnames so much and I want to use and cite it. So I need to have a clear understanding of how it works.
Thanks a lot in advance for your answers.

* I understand gnverifier is just a way of accessing globalnames service without using a browser. But if I just want to use Python, is there any **difference** between using gnverifier (i.e. system calls from Python) or access [resolver.globalnames.org](https://resolver.globalnames.org) (api calls from Python)?

GNverifier is a faster version of resolve.globalnames.org and it has its own api:
https://apidoc.globalnames.org/gnames
web interface is at https://verifier.globalnames.org, but the web UI is just
gnverifier -p 80 or something like that
So if you want to use python, it is better to use gnames service. API is not yet guaranteed to be backward compatible, but changes will not be very big.  resolver.globalnames.org is going to be retired somewhere in 2023 or the end of 2022.

* Where can I read a bit about the reasons for some globalnames [Data Sources](http://resolver.globalnames.org/data_sources) being available and some others not? It's odd to me not seeing any of these global vascular plants databases:

Some sources got into GNverifier by some weird chance and are not updated, but most important sources are updated 2 times a year (for resolver and verifier).
Some sources got by my own initiative, others were requested by users.

  **WCVP** (_World Catalog of Vascular Plants_: see [website](http://wcvp.science.kew.org/), [dataset](http://sftp.kew.org/pub/data-repositories/WCVP/), [article](https://doi.org/10.1038/s41597-021-00997-6)),

I Think I can start harvesting it, nobody was asking for it before. Vascular plants ar mostly covered by Catalogue of Life (they use Michael Hassler World of Vascular Plants) and IPNI as a nomenclatural source.

  **LCVP** (_Leipzig Catalog of Vascular Plants_: see [dataset](https://github.com/idiv-biodiversity/LCVP) & [article](https://doi.org/10.1038/s41597-020-00702-z)),

Another source that I can start harvesting.

  **WFO** (_World Flora Online_: see [website](http://www.worldfloraonline.org/), [dataset](http://www.worldfloraonline.org/downloadData) and [article](https://doi.org/10.1002/tax.12373))

WFO is in plans for the year already. William Ulate is preparing their data for GNverifier, and estimation now is this December.

  All these offer whole dataset download links (instead of an API service). Is that the reason for them not being available?

GNverivier uses whole datasets for everything, so it is not a problem.

* Do globalnames and gnverifier search against the **original** data sources **web sites** (which could be offline sometimes) **or against globalnames-stored copies**? (AFAIK, many of the available datasets do not offer any API access point).

All data is downloaded and normalized with GNparser and other tools. So the service does not depend on
API of other resources.

  So I hope it's just a matter of time seeing WCVP / LCVP / WFO copies available and searchable as well.

I will investigate WCVP and LCVP availability. If all is good, they should appear in December/January in both resolver and GNverifier

* In the mean time, does globalnames offer any other piece of software for **verifying names against a locally downloaded dataset** (i.e., download WCVP and run gnverifier -or whatever- against it, somehow)

Datasets must be normalized, and it is not a trivial task, so for  now it is not possible yet. If I will greate a registry for automatic download of data say, in DarwinCore format, such thing wil be possible.

* **Citation & versioning**:
  Shouldn't globalnames [Data Sources](http://resolver.globalnames.org/data_sources) page include **links to the original datasets**? It's hard for me to compare globalnames returned results against original datasource, if I can't access those data sources in some other way.

You can find links for databases (if i know them) on this page:
https://verifier.globalnames.org/data_sources
Also, when possible GNverifier provides links back to the original data.
However,  I do think citation shoud be improved.

  Also, I suppose some of the available data sources have versioning systems. How can we know **which version of the data source** is globalnames serving?

I did not figure out how to normalize versioning from the sources yet. I would say it can be done manually, but I did not get to that yet. You can sort of estimate how fresh data is by the date of upload:
https://verifier.globalnames.org/?all_matches=&all_sources=&capitalize=on&format=html&names=Plantago+major

Please don't take these comments as criticism. I do like globalnames so much and I want to use and cite it. So I need to have a clear understanding of how it works. Thanks a lot in advance for your answers.

Constructive feedback like yours is very welcomed! Thank you @abubelinha

Thanks a lot to you @dimus. I am indeed very interested in those vascular plants datasets being available.

https://verifier.globalnames.org/data_sources
Also, when possible GNverifier provides links back to the original data.

Thanks for that link (it shows much more info about data sources than http://resolver.globalnames.org/data_sources).
I am curious about the last data source (195), updated last month. Where did you download the dataset from? I see their website is searchable but I can't find any links to the dataset.

Datasets must be normalized, and it is not a trivial task, so for now it is not possible yet. If I will greate a registry for automatic download of data say, in DarwinCore format, such thing wil be possible.

Even if it's far beyond my understanding, I wonder if that normalization process it is somehow documented. I am curious about it.
Also, I asked this question about a much simpler task but I wonder if you have any advices on how to accomplish it from Python. Would you use any gnames app or not? (I posted it under gnmatcher because I didn't know which gnames project could be closer to my question).

I am curious about the last data source (195), updated last month. Where did you download the dataset from? I see their website is searchable but I can't find any links to the dataset.

Algaebase usually is not shared with other projects, I just got lucky, and they agreed to share their names.

Even if it's far beyond my understanding, I wonder if that normalization process it is somehow documented. I am curious about it.

I use https://github.com/GlobalNamesArchitecture/dwca_hunter for this purpose. When I get resources, I will make a faster harvester, and, hopefully a registry so people can provide data sources themselves.

Also, I asked this question about a much simpler task

I'll answer your question at gnmatcher

Regarding the possibility of having a registry to let people provide data sources, I think that's a great idea.
This make me ask if, as a data provider, I could also run a gnames web service providing name matching services but limited only to those datasets of my interest (i.e., my own data and perhaps also a small subset of certain plants and fungi datasets, but filtering only the names of those taxa occurring in my region). Is this in theory possible? And specially, would this permite to reduce the hardware requeriments?
In gnames documentation I see it's possible to download a gnames pgsql database dump, so after doing it, I could filter out the vast majority of data and finally try to insert my own information.
LOL ... assuming I am able to understand the database. Is there a gnames ER schema available somewhere?
By the way, many of the data sources versions are quite recent: 1, 2, 3, 5, 9, 11, 12 ... (many more) ... 193, 194, 195: were updated during 2021.
But the linked database dump is quite old (gnames-latest.sql.gz 28-Nov-2020).
I also see a very recent all-names-2021-11-14.txt file.
Perhaps the dump format has changed somehow and the documentation has to be updated?
Or perhaps the txt file is a completely different auto-generated thing, not suitable to regenerate the database?
Thanks a lot!

Regarding the verifer api you mentioned above,

GNverifier is a faster version of resolver.globalnames.org and it has its own api:
https://apidoc.globalnames.org/gnames

I see a major difference with https://resolver.globalnames.org/api
In resolver, I could send an id for each of the names in my list:
my-id-1|Parus major
my-id-2|Corvus corax
my-id-2|Ciconia ciconia
...

I suppose those ids were necessary because there is no guarantee that the results array will be sorted in the same order as the requested names. Correct?
But in https://apidoc.globalnames.org/gnames I don't see an option for setting this identifiers.
Does this mean the order in the API response is guaranteed now to match the order of requested names?
Thanks

@abubelinha I am trying a simpler approach to off-line names matching. Take a look at https://github.com/gnames/gndiff. It is a project that allows to compare two sci. names datasets against each other. Let me know if it covers all/some of your needs. If you do have a feedback, please open tickets at gndiff repo

WFO is added with id 196, WCVP and LCVP are in https://github.com/GlobalNamesArchitecture/dwca_hunter/issues/55
and https://github.com/GlobalNamesArchitecture/dwca_hunter/issues/54

Sorry, I was busy with other projects last month and had missed your last comments.
Regarding the new data sources:

Not important, but WFO (196) looks like to have some odd description format?
WCVP & LCVP. Could you explain their status? I already see their entries in verifier (197 WCVP &  198 LCVP). But you commented they are in dwca_hunter (don't know what that means, specially for LCVP where you mentioned inconsistencies).

Versions available in verifier are already expected to work correctly? (I guess the names with inconsistencies would have been filtered out?)
Regarding gndiff, it sounds really great ... but I still have to check it (have seen your posts right now).
Thanks for all this!  A lot!!

Not important, but WFO (196) looks like to have some odd description format?

yeah, hopefully they will fix it in their DwCA file next time.

WCVP & LCVP. Could you explain their status? I already see their entries in verifier (197 WCVP & 198 LCVP). But you commented they are in dwca_hunter (don't know what that means, specially for LCVP where you https://github.com/GlobalNamesArchitecture/dwca_hunter/issues/55#issuecomment-1003121704).

I use legacy harvester for resolver.globalnames.org, until I make a new harvester for gnverifier. As a result changes in resolver always get to gnverifier, so the databases are mostly in sync.
https://github.com/GlobalNamesArchitecture/dwca_hunter is a legacy tool  I made to create Darwin Core files out of all kind of
formats different datasets come up with. When I move data from whatever format to DwCA all the inconsistencies in a dataset appear. I found quite a few in LCVP and even made an Issue for them.

There are two statuses for datasets - included into resolver/gnverifier and not included ;)

Hi @dimus
This recent publication is quite related to several datasets of vascular plants available in Global Names (196, 197, 198 plus WorldPlants, which you might like to include too).
It compares their contents and also addresses problems parsing the names and so on:
The big four of plant taxonomy – a comparison of global checklists of vascular plant names
https://doi.org/10.1111/nph.18961
I bet you already know it, but just in case


[<IP_ADDRESS> Updating Our CI Pipeline]: Add .gitlab.yml file

In chapter 3.8.5.* we have broked the current test stage in our CI pipeline. Need to provide the configuration for the gitlab users as well as github users

I'm not a Gitlab expert, but I managed to get a working pipeline with this gitlab-ci.yml file:
image: "rust:latest"

# Runs the pipeline on both the main branch and all feature branches
workflow:
  rules:
    - if: '$CI_COMMIT_BRANCH == "main"'
    - if: '$CI_COMMIT_BRANCH =~ /^feature\//'

services:
  - postgres:latest

variables:
  POSTGRES_DB: newsletter
  POSTGRES_USER: postgres
  POSTGRES_PASSWORD: password
  POSTGRES_HOST: postgres
  DB_PORT: 5432
  DATABASE_URL: "postgres://$POSTGRES_USER:$POSTGRES_PASSWORD@$POSTGRES_HOST:$DB_PORT/$POSTGRES_DB"
  Z2P__DATABASE__HOST: $POSTGRES_HOST

cache: # Caches build artifacts so we don't build from scratch in both build and test
  key: ${CI_COMMIT_REF_SLUG}
  paths:
    - .cargo/bin
    - .cargo/registry/index
    - .cargo/registry/cache
    - target/debug/deps
    - target/debug/build
  policy: pull-push

default:
  before_script:
    - export CARGO_HOME="$CI_PROJECT_DIR/.cargo"
    - export PATH="$CARGO_HOME/bin:$PATH"
    - rustc --version
    - cargo --version
    - if ! [ -x "$(command -v cargo-sqlx)" ]; then - cargo install --version='~0.7' sqlx-cli --no-default-features --features rustls,postgres; fi
    - apt-get update -yq && apt-get install -yq postgresql-client
    - SKIP_DOCKER=true ./scripts/init_db.sh
    # This is to ensure that the database is reachable and give it some time to initialize.
    - until psql "dbname=$POSTGRES_DB user=$POSTGRES_USER password=$POSTGRES_PASSWORD host=postgres" -c '\l'; do sleep 3; done

stages:
  - build
  - test

build:
  stage: build
  script:
    - cargo build

test-code:
  stage: test
  script:
    - cargo test
    - if ! [ -x "$(command -v cargo-tarpaulin)" ]; then cargo install cargo-tarpaulin; fi
    - cargo tarpaulin --ignore-tests

lint-code:
  stage: test
  script:
    - rustup component add clippy
    - cargo clippy -- -D warnings

audit-code:
  stage: test
  script:
    - if ! [ -x "$(command -v cargo-audit)" ]; then cargo install cargo-audit; fi
    - cargo audit

and this change to configuration.rs:

#[derive(serde::Deserialize)]
pub struct  Settings {
    pub database: DatabaseSettings,
    pub application_port: u16
}

#[derive(serde::Deserialize)]
pub struct DatabaseSettings {
    pub username: String,
    pub password: String,
    pub port: u16,
    pub host: String,
    pub database_name: String
}

impl DatabaseSettings {
    pub fn connection_string(&self) -> String {
        format!(
            "postgres://{}:{}@{}:{}/{}",
            self.username, self.password, self.host, self.port, self.database_name
        )
    }
}

pub fn get_configuration() -> Result<Settings, config::ConfigError>{
    // Initialize our configuration reader
    let settings = config::Config::builder()
        // Read configuration values from configuration.yaml file
        .add_source(
            config::File::new("configuration.yaml", config::FileFormat::Yaml)
        )
        .add_source(
            config::Environment::with_prefix("Z2P").separator("__")
        )
        .build()?;

    // Try to convert configuration values into Settings type
    settings.try_deserialize::<Settings>()
}

I've added Environment Variables as another config source, with a prefix of Z2P so I could override the database host from <IP_ADDRESS> to postgres which seemed necessary in order to connect to Postgres runtime in the health_check.rs integration test.
Now I get the same RowNotFound error in my pipeline as when running locally.
Maybe it's helpful for someone else trying to get gitlab working :)

In the next book release I chose to standardise on GitHub Actions as the blessed CI runner. Closing this one as a result.


feat: add upload-multi-file method for google cloud storage

Description

Added UploadMultiFile method for GCS.
Added UploadMultiFile method to RainbowConfig.

Hi @opensaucerer
I wanted to write tests for both the UploadFile method, and UploadMultiFile methods, but I couldn't create them because I couldn't create stubs for getting the bucket and object from the client. The method panics when using the same method used for the tests for s3. I think there's a way we can decouple the initial file operations from the operations involving the gcs object so we can create stubs for them when testing.
What do you think?

Hi @Emmrys-Jay really sorry this took so long.
I'll make some updates to this now and merge it. I already wrote tests for UploadFile in the gcs package.


When drawing shapes in/on a Grid the clipping at edges and corners is different from left/Top and Right/Bottom.

Describe the bug
When drawing shapes in/on a Grid the clipping at edges and corners is different from left/Top and Right/Bottom.
Steps to reproduce the bug
Draw a shape at 0,0 and Gridwidth, GridHeight.
Repo: https://github.com/groovykool/DottedGrids.git
Expected behavior
Clipping in each corner and side of the grid should be the same.  And a line drawn on the edge/corner of a grid should be visible
Screenshots

Version Info
2.4.2
NuGet package version:
2.4.2

1909

Desktop

That's a really strange bug. Setting margin/padding etc doesn't change the behavior. Seems that grid really doesn't like rendering items that extend to the right or bottom.

very strange.. @codendone do you think this is a rendering issue?

I suspect there is an oddity in a rendering optimization here, with the code checking somewhere to not draw beyond the available bounds provided by its panel but not doing a similar check for negative values. The code should be changed to be consistent.

Should I give up on Drawing on Grids and create a custom panel?
This is still an issue in 2.5

Since WinUI 3 is not going to be available for UWP.  This bug needs to be fixed in WinUI 2.x.

Will this Bug ever be fixed?  Still in 2.6.1.

Correct, this is an issue in core XAML code for determining whether a layout clip needs to be applied, and can only be fixed in a core system XAML change.
Apps can work around the issue by applying an explicit UIElement.Clip on the panel, though this requires assigning the correct size on the RectangleGeometry specified for the Clip.

How can I report this bug for "core system XAML code".  Or Please forward this bug to the appropriate Microsoft Team.
I am very disappointed that it is over a year later and the bug is not even assigned to the correct team.

This is the correct team, however our bar for issues we fix with the OS version of the framework is quite high since we are investing in Winui3.  Winui3 will end up being the proper place for this fix to be made.

But Winui3 has abandoned UWP.  It was my understanding that Winui2.x development was continuing?  I guess the correct answer is not really.

Still a bug in ALL versions of Winui.

Not fixed in any version of WinUi.......


Always wait for managed resources to be deleted during deletion flow

How to categorize this PR?

/area robustness
/kind bug
What this PR does / why we need it:
Sometimes not all shoot managed resources were deleted and the task WaitUntilShootManagedResourcesDeleted times out. If the infrastructure (had no dependency on the former) was deleted then the WaitUntilShootManagedResourcesDeleted was no longer executed because of cleanupShootResources=false and the kapi gets deleted.
This PR fixes this.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Release note:

A bug was fixed where sometimes the `kube-apiserver` was deleted during shoot deletion flow even though there were still shoot managed resources present.

/test pull-gardener-unit

/milestone v1.60


Component build - fix embedded dependencies in output

Adjust the Vite configuration to handle external dependencies correctly by sourcing them from each individual package, rather than from the root.


The example is too easy, I have problem with cargo workspace, need some complex example

Hi,
I have see all the example, but they are too simple, can you tech us how to build a complex example?
It will be nice if there are some lib.rs and serveral workspace, now windows::bindings don't work well in the suition.
Thanks for review my question.

@ouliuquan thanks for reporting. Unfortunately, there's too little detail in your comment to know how we can help. There are infinite possible ways to use this crate, and while we can keep adding more examples, there's no way we'll know if it helps in your case.
Please post specific and reproducible errors you are seeing we can address your question.


Add Heketi Block Volume create and delete calls.

Signed-off-by: Humble Chirammal<EMAIL_ADDRESS>

still need some more Heketi code:
cmd/glusterblock-provisioner/glusterblock-provisioner.go:416: cli.BlockVolumeCreate undefined (type *client.Client has no field or method BlockVolumeCreate)
cmd/glusterblock-provisioner/glusterblock-provisioner.go:534: cli.BlockVolumeDelete undefined (type *client.Client has no field or method BlockVolumeDelete)

Let me correct it . Thanks!

it is complaining still w/ same error :(

@wongma7 It has passed the tests :) . Can you please review/merge this PR ?


Iterator assertions

Is there a dart equivalent for this?

iterator.shouldBeEmpty()
iterator.shouldHaveNext()

Point against implementing shouldHaveNext in Dart: The Iterator interface only supports moving to the next element, so checking if there is a next element always would lead to changing the current iterator with this side effect.


Adding HTTP "PATCH" support to API calls

Would be really nice to support HTTP "PATCH" for API calls. Passing a "hook_method=PATCH" to the scripts would be nice as well.

FYI hook_method variable is implemented. Regards


Example in Angular and Axios

Add of operation with Angular and Axios

Hi @lelouchB,
I uploaded the PR with the example of Angular and Axios,
in the same way the example in live is inside,
I share the link https://codesandbox.io/s/final-space-api-with-angular-and-axios-kstxk

@lelouchB
I had not seen the Labeler error again,
it scared me
😂

Hi @lelouchB
the PR is ok?

Hi @lelouchB
the PR is ok?

Yes
Will get to it most probably today.
Thanks

Hi @lelouchB
the PR is ok?

Yes, this is great
Will get to it most probably today. And ship it to production
Thanks

I liked the project,
if there is more to do I am willing to continue contributing.
Cheers!

Moving forward I am thinking of adding GraphQL support to the API.
I will let you know once that starts.
Thanks 😊

Hey @guzbarraf
It's live, I made some minor changes
https://finalspaceapi.com/docs/angular
Thanks for your contribution

Hey @guzbarraf
It's live, I made some minor changes
https://finalspaceapi.com/docs/angular
Thanks for your contribution

Looks better

Hi @lelouchB
can you still add hacktoberfest labels to these PRs,
so that they count in the hacktoberfest?

@guzbarraf
Done


seting use_video_port to True causes freeze

Using the videoport causes picamera to freeze and never return.
Hardware: Raspberry Pi Camera Rev 1.3; Raspberry Pi 3 Model B V1.2
Reproducing code: (If you set the last True to False it works, but that is too slow for me)
import picamera;

class DataWrapper():

    def __init__(self):
        self._rawData = "";
        self._isready = False;

    def write(self, data):
        self._rawData += data;

    def flush(self):
        self._isready = True;

camera = picamera.PiCamera();
cache = DataWrapper();

camera.resolution = (2592, 1944);
camera.rotation = 180;
camera.capture(cache, 'png', True);

Confirmed, but I'm afraid there's nothing I can do about this: this is a duplicate of #62.
I've had several (intermittent) issues with the PNG codec in the past (which is one reason it's commented out in the test suite; too many cases where it just locks up the camera). It's also not hardware accelerated, so it's pretty slow compared to JPEG (given you're concerned about speed).
If you're using PNG because you don't want any lossy compression at all then just capture an unencoded format like YUV, but frankly I'd suggest you're much better off capturing in JPEG with a high quality level. It'll be much faster and the loss of detail is unimportant for the vast majority of applications.

Well, just tested out the jpeg encoder and wow that's fast. I guess i'll just stick with that. Maybe you should document the problems with png somewhere in the docs. And I'm not actually concerned about the quality and my eyes can't see a difference between YUV and JPEG at 100%.

Good stuff - incidentally, if you want high speed processing have a look at the next version of the docs (the "latest" branch on RTD); I've re-written a lot of stuff in the advanced recipes section including the rapid capture and processing recipe which has some fancy tricks for doing very rapid JPEG capture (basically splitting up an MJPEG stream).


Small typo to fix

When the plugin is enabled and in the top toolbar, the new tab is spelled "abmient" and not "ambient".
Wonderful plugin. This sort of integration into godot is genius and exactly what the software needed to speedup workflow! i love it.

Thanks, love this plugin.


Cache realm for thread, instead of recreating it on every access

In unscientific profiling (scrolling through a group chat of mine for about 5 seconds,) +realmForUser:andDevice: was crazy expensive. On my iMac Pro, it accounted for 534ms of CPU time. After this patch, it dropped to 21ms.

Let me know!
Signed-off-by: Adlai Holler<EMAIL_ADDRESS>

Thanks @Adlai-Holler for this optimisation:
Can you do the following things, please?

[ ] Pull request updates CHANGES.rst
[ ] Pull request includes a sign off

Sure, done on this one. Changed the approach slightly to make sure we don't leak realms with different userid/deviceid. WDYT?

This improvement is very interesting. I can see those times on my iPhoneX with my matrix account:
2021-02-16 18:29:12.347726+0100 Riot[40849:4528662] [MXRealmCryptoStore] realmForUser took 0.474ms
2021-02-16 18:29:12.349777+0100 Riot[40849:4528662] [MXRealmCryptoStore] realmForUser took 0.564ms
2021-02-16 18:29:12.515522+0100 Riot[40849:4528656] [MXRealmCryptoStore] realmForUser took 14.172ms
2021-02-16 18:29:12.905919+0100 Riot[40849:4528680] [MXRealmCryptoStore] realmForUser took 13.663ms
2021-02-16 18:29:13.682404+0100 Riot[40849:4528662] [MXRealmCryptoStore] realmForUser took 13.858ms
2021-02-16 18:29:13.943062+0100 Riot[40849:4528680] [MXRealmCryptoStore] realmForUser took 3.081ms
2021-02-16 18:29:16.683603+0100 Riot[40849:4528662] [MXRealmCryptoStore] realmForUser took 4.345ms
2021-02-16 18:29:16.850570+0100 Riot[40849:4529208] [MXRealmCryptoStore] realmForUser took 3.497ms
2021-02-16 18:29:20.033412+0100 Riot[40849:4528662] [MXRealmCryptoStore] realmForUser took 12.924ms
2021-02-16 18:29:21.773849+0100 Riot[40849:4528662] [MXRealmCryptoStore] realmForUser took 13.849ms

I would be very happy to kill them.
Unfortunately, your PR makes the code unstable. I cannot explain it why yet. Is it an issue because we retain too much thread or too much realm instances? I do not know.
The stability issue is visible when running all tests from MXCryptoTests. I can see around 12 tests failing. They can pass if ran individually but it is not great.
testAliceAndBobWithNewDevice is a good example of test that randomly passes when you launch it alone. It passes 1 out of 3 tries.

Ah, good thing we’ve got those unit tests. I’ll investigate later today.

We had another look at this recently and even tried different implementations on the same note but the app remains unstable. Investing more time into it is probably not a good idea and the only feasible solution appears to be to get rid of realm entirely / rewrite the crypto part.
Thank you for taking the time to raise this PR but I think it's time we close it 🙏


ArgumentError: Invalid argument(s): Cannot find executable for zip.

#31059  Steps to Reproduce

From Android Studio Welcome window try "Start a new Flutter Project"
Pick Flutter Application
The Fill details: project name, description, location
left all marked as default and hit finist

Logs
Flutter crash report; please file at https://github.com/flutter/flutter/issues.

## command

flutter --no-color create --template app --description TodoApp description --org com.bixlabs --project-name todo_app todo_app

## exception

ArgumentError: Invalid argument(s): Cannot find executable for zip.

#0      _getExecutable (package:process/src/interface/local_process_manager.dart:127:5)
#1      LocalProcessManager.runSync (package:process/src/interface/local_process_manager.dart:94:30)
#2      _DefaultProcessUtils.exitsHappySync (package:flutter_tools/src/base/process.dart:541:30)
#3      _PosixUtils.verifyZip (package:flutter_tools/src/base/os.dart:226:19)
#4      CachedArtifact._downloadArchive. (package:flutter_tools/src/cache.dart:595:20)
#5      CachedArtifact._withDownloadFile (package:flutter_tools/src/cache.dart:628:26)
#6      CachedArtifact._downloadArchive (package:flutter_tools/src/cache.dart:594:12)
#7      CachedArtifact._downloadZipArchive (package:flutter_tools/src/cache.dart:615:12)
#8      EngineCachedArtifact.updateInner (package:flutter_tools/src/cache.dart:743:13)
#9      CachedArtifact.update (package:flutter_tools/src/cache.dart:550:11)
#10     Cache.updateAll (package:flutter_tools/src/cache.dart:428:24)
#11     FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:685:27)
#12     FlutterCommand.run. (package:flutter_tools/src/runner/flutter_command.dart:608:33)

#13     FlutterCommand.run. (package:flutter_tools/src/runner/flutter_command.dart)
#14     AppContext.run. (package:flutter_tools/src/base/context.dart:150:29)
#15     _rootRun (dart:async/zone.dart:1126:13)
#16     _CustomZone.run (dart:async/zone.dart:1023:19)
#17     _runZoned (dart:async/zone.dart:1518:10)
#18     runZoned (dart:async/zone.dart:1465:12)
#19     AppContext.run (package:flutter_tools/src/base/context.dart:149:18)
#20     FlutterCommand.run (package:flutter_tools/src/runner/flutter_command.dart:598:20)
#21     CommandRunner.runCommand (package:args/command_runner.dart:197:27)
#22     FlutterCommandRunner.runCommand. (package:flutter_tools/src/runner/flutter_command_runner.dart:339:21)

#23     FlutterCommandRunner.runCommand. (package:flutter_tools/src/runner/flutter_command_runner.dart)
#24     AppContext.run. (package:flutter_tools/src/base/context.dart:150:29)
#25     _rootRun (dart:async/zone.dart:1126:13)
#26     _CustomZone.run (dart:async/zone.dart:1023:19)
#27     _runZoned (dart:async/zone.dart:1518:10)
#28     runZoned (dart:async/zone.dart:1465:12)
#29     AppContext.run (package:flutter_tools/src/base/context.dart:149:18)
#30     FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:288:19)
#31     CommandRunner.run. (package:args/command_runner.dart:112:25)
#32     new Future.sync (dart:async/future.dart:224:31)
#33     CommandRunner.run (package:args/command_runner.dart:112:14)
#34     FlutterCommandRunner.run (package:flutter_tools/src/runner/flutter_command_runner.dart:231:18)
#35     run.. (package:flutter_tools/runner.dart:63:22)
#36     _rootRun (dart:async/zone.dart:1126:13)
#37     _CustomZone.run (dart:async/zone.dart:1023:19)
#38     _runZoned (dart:async/zone.dart:1518:10)
#39     runZoned (dart:async/zone.dart:1502:12)
#40     run. (package:flutter_tools/runner.dart:61:18)

#41     run. (package:flutter_tools/runner.dart)
#42     runInContext.runnerWrapper (package:flutter_tools/src/context_runner.dart:69:18)

#43     runInContext.runnerWrapper (package:flutter_tools/src/context_runner.dart)
#44     AppContext.run. (package:flutter_tools/src/base/context.dart:150:29)
#45     _rootRun (dart:async/zone.dart:1126:13)
#46     _CustomZone.run (dart:async/zone.dart:1023:19)
#47     _runZoned (dart:async/zone.dart:1518:10)
#48     runZoned (dart:async/zone.dart:1465:12)
#49     AppContext.run (package:flutter_tools/src/base/context.dart:149:18)
#50     runInContext (package:flutter_tools/src/context_runner.dart:72:24)
#51     run (package:flutter_tools/runner.dart:50:10)

#52     main (package:flutter_tools/executable.dart:69:9)
#53     main (file:///opt/flutter/packages/flutter_tools/bin/flutter_tools.dart:8:3)
#54     _startIsolate. (dart:isolate-patch/isolate_patch.dart:299:32)
#55     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:168:12)

## flutter doctor

[✓] Flutter (Channel master, v1.15.19-pre.15, on Linux, locale C)
• Flutter version 1.15.19-pre.15 at /opt/flutter
• Framework revision 714d579839 (21 hours ago), 2020-03-08 15:06:02 -0400
• Engine revision a10f555733
• Dart version 2.8.0 (build 2.8.0-dev.12.0 9983424a3c)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at /home/rkmax/Android/Sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-29, build-tools 29.0.2
• Java binary at: /home/rkmax/.local/share/JetBrains/Toolbox/apps/AndroidStudio/ch-0/192.6241897/jre/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
• All Android licenses accepted.
[✓] Android Studio (version 3.6)
• Android Studio at /home/rkmax/.local/share/JetBrains/Toolbox/apps/AndroidStudio/ch-0/192.6241897
• Flutter plugin version 43.0.2
• Dart plugin version 192.7761
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
[!] Connected device
! No devices available
! Doctor found issues in 2 categories.

## `flutter doctor -v`

Oops; flutter has exited unexpectedly: "Invalid argument(s): Cannot find executable for zip.".
A crash report has been written to /home/rkmax/flutter_01.log.
This crash may already be reported. Check GitHub for similar crashes.
https://git.io/JvzT1
To report your crash to the Flutter team, first read the guide to filing a bug.
https://flutter.dev/docs/resources/bug-reports
Create a new GitHub issue by pasting this link into your browser and completing the issue template. Thank you!
https://git.io/JvowG

I'm using flutter master because issue with Linux 5.5 Kernel

It was really weird I have not install zip package before on my system and work flawlessly and now I have to do it. after installing start working again. I'll left the issue open to let it know that is necessary to add that dependency in some way

zip is listed as a system requirement https://flutter.dev/docs/get-started/install/linux#system-requirements
But the tool could give a better error when those dependencies aren't found.

@jmagman agreed, I think the action point here should be tool exit with instructions to install zip.

This has been fixed on the master channel by simple not using zip https://github.com/flutter/flutter/pull/52331.


emails with subject that contains a newline "\n" fail to get sent

If a subject contains a newline char "\n" that is following by ":" it can potentially be a security issue and will be blocked by the python smtp library. To avoid this issue we need to automatically replace any "\n" chars with a space

fixed in commit:
https://github.com/QualiSystemsLab/cloudshell-email/commit/7e863f3ee9a45644b016a8800b89d857d959b0b0


1.26.0 upgrade: Async vector store creation

uncomment the polling block:
def test_create_vector_store_with_files(
    openai_client: OpenAI, weaviate_client: weaviate.client.WeaviateClient
):
    with open("./tests/test.txt", "rb") as file:
        file_txt = openai_client.files.create(file=file, purpose="assistants")
    with open("./tests/test.pdf", "rb") as file:
        file_pdf = openai_client.files.create(file=file, purpose="assistants")

    response = openai_client.beta.vector_stores.create(
        name="Example Vector Store",
        metadata={"example_key": "example_value"},
        file_ids=[file_txt.id, file_pdf.id],
    )

    assert isinstance(response, VectorStore)
    assert response.id is not None
    assert response.file_counts.total == 2

    # # wait untill uploads are completed
    # max_checks = 5
    # check_interval = 2
    # for _ in range(max_checks):
    #     time.sleep(check_interval)
    #     response = openai_client.beta.vector_stores.retrieve(response.id)

    #     assert response.status in ["in_progress", "completed"]

    #     if response.status == "completed":
    #         break
    # else:
    #     # If the loop completes without breaking, assert failure due to timeout
    #     assert False, "Run did not complete within the expected time."

    # assert response.usage_bytes > 5700

    if not use_openai:
        assert (
            weaviate_client.collections.exists(id_to_string(response.id))
            is True
        )
        print("id_to_string(response.id):", id_to_string(response.id))
        collection = weaviate_client.collections.get(id_to_string(response.id))

        res = collection.query.near_text(
            query="Here is a second line of text", limit=1
        )

        assert len(res.objects) == 1
        assert (
            "Here is a second line of text"
            in res.objects[0].properties["text"]
        )

#33


[Batch] Disable whl_no_aio check to unblock track 2 beta release

Temporary workaround for release pipeline test failures ModuleNotFoundError: No module named 'aiohttp'.

API change check
API changes are not detected in this pull request.


Select input: Can it be multiselect?

Hi, it seems that the multiselect option is available in Bootstrap and in a sample of the Inputs page but it is commented.
Is it because it does not work or does it need to be developed?

I too am encountering this issue:
<FormGroup floating label="Contact Group(s)">
    <Input type="select" placeholder="Contact Group(s)" name="contact_groups" multiple>
        <option value=""></option>
        {#each contactGroups as group}
            <option value={group.value}>{group.label}</option>
        {/each}
    </Input>
</FormGroup>

Renders only the <label> tag, the <select> tag doesn't render:
<div class="mb-3 form-floating">
    <label>Contact Group(s) </label>
</div>


implement expan.version

This approach is based on : http://stackoverflow.com/questions/2058802/how-can-i-get-the-version-defined-in-setup-py-setuptools-in-my-package/2073599#2073599

awesome, thanks!


[feature] Add support for seeking to a specific timestamp

It seems that the only supported commands for seeking are relative to the current position in the media. I would like a command to skip to a specific timestamp.
The reason I want this ability is so that I can investigate adding support for sponsorblock, in essence having a daemon watch all chromecasts on LAN, look up sponsor / midroll timestamps via the sponsorskip database, and automatically skip ads on all local chromecasts.
I suspect that using the relative seek commands would provide a subpar experience since the watch command has a polling interval, so the daemon would need to estimate when the player reaches the start of the segment to skip, as well as potential delays sending the seek command could lead to seeking too far.

This seems like it should be possible to do. It won't work for live-streaming media, or media that is being transcoded by ffmpeg, but for the rest it should work. I'll take a look into this.

Thanks! If possible, it would also be great to seek to a float, since sponsorblock + contributors submit timestamps with pretty high precision.

I have added a seek-to <timestamp_float> command to master. This seems to be working for me at the moment when trying out on Youtube, so hopefully it works for you! I will add this to a new release a bit later today.

Thanks that should be perfect!


Preview doesn't respond to light / dark theme changes in the tutorial

Describe the bug
In my tutorial, I want the preview window to react to changes in dark/light button that are available on the top bar - currently, the code and md change, but not my site

Would love some guidance
Link to a StackBlitz project which shows the error
No response
Steps to reproduce
In a new tutorial, click the light/dark theme  and see that it doesn't affect the preview window.
Even when I added media queries, it didn't respond:
/* Dark Mode Styles */
@media (prefers-color-scheme: dark) {
  body {
    background-color: #121212;
    color: #e0e0e0;
  }
}

Expected behavior
I would like a way to be aware in the preview of the light/dark change of the tutorial
Screenshots
No response
Platform

TutorialKit version: [e.g. 1.0.1]
OS: [e.g. macOS, Windows, Linux]
Browser: [e.g. Chrome, Safari, Firefox]
Version: [e.g. 91.1]

Additional context
No response

Another option might be for TutorialKit to postMessage the iframe to notify it whenever prefers-color-scheme changes, and though will still require you to capture that within the iframe yourself to apply it.
There's also a new WC API option @Nemikolh is working on for programmatically injecting scripts into all devservers which TutorialKit would be able to leverage for doing this automatically, but TBD on when that's going to land (hopefully in the next few weeks iirc).

Hey everyone! :wave: Really interesting conversation! :smiley:
I think this is definitely something we will try to solve at the WebContainer API level under a flag so that everyone that use the WebContainer API can enjoy that feature.
I believe we might be able to solve this using the color-scheme CSS property and by patching window.matchMedia.
However, I haven't yet experimented with the idea and would need to double-check to be sure.
Also like @EricSimons said, we talked about having an API to easily inject scripts in previews. This is however very TBD at this point.

I think matching the prefers-color-scheme property, and allowing to manually switch from dark to light mode should be treated as slightly different issues.
The color-scheme property seems to allow forcing the use of the browser default light or dark theme, but doesn't affect the prefers-color-scheme media query.
In this this demo the "light" theme media query is still matched despite using a dark color-scheme at the root and on the button itself. However the light-dark function is affected by the root color-scheme. So using color-scheme attribute only works partially, you still need to apply an explicit top-level "dark" class at some point.
Fun fact: it makes it surprisingly difficult to implement a dark/light toggle in a webcontainer because there is a very strong isolation of CSS selector inheritance so a top-level ".dark" is of no use (or at least I failed to use it last time I've checked). Ironically the CSS styles themselves are less isolated and some inheritance is possible.

Thanks for the detailed write up @eric-burel! And my apologies for not having sent an update regarding this issue and our current plan.
We are not going to do it using color-scheme and a matchMedia patch. When we discussed it, some raised similar concerns as you and after quick experiments it turned out to not be a very good idea.
Ou current plan is to expose at the WC API level a function, maybe called setPreviewRootAttributes that when called with:
webcontainer.setPreviewsRootAttributes({
  class: 'dark',
});

It will update all iframes <html> element to include that new attribute and newly created iframes will have those attributes set. This should be pretty flexible as it allow to set any attribute to any value (style could even be set as well if one wanted to).
At the TutorialKit level, we will essentially call that function based on the value of the theme and expose it as previewClassName property that can be set. This will be opt-in to avoid breaking tutorial that don't need this.
Let me know what you think! :smiley:


TypeError: Cannot read property 'message' of undefined

I think this error appeared when I upgraded ember-template-lint to v3.

This seems to have broken template lint integration with non-unstable ELS (embertooling.vscode-ember):
(node:77599) UnhandledPromiseRejectionWarning: TypeError: errors.map is not a function
    at TemplateLinter.<anonymous> (/Users/dfreeman/.vscode/extensions/embertooling.vscode-ember-0.2.1/node_modules/@emberwatch/ember-language-server/lib/template-linter.js:38:38)
    at Generator.next (<anonymous>)
    at fulfilled (/Users/dfreeman/.vscode/extensions/embertooling.vscode-ember-0.2.1/node_modules/@emberwatch/ember-language-server/lib/template-linter.js:4:58)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)

Sticking a console.log in there, I can see errors is a pending promise rather than an array.

@dfreeman embertooling.vscode-ember is not really supported, consider Unstable LS as Stable

Hi, what's the situation with this? I've had 'hbs/check-hbs-template-literals': 'off' for a while now and eager to get it back. on


feat: add typings for toast custom props

Information
First of all, thanks for this great library :) I'm currently implementing it in our system, and I notice I have a need to pass custom props in the toast method, so I can use them when rendering toasts. This already seems to be working, but types aren't covering this situation so I added them in this PR. What do you think?

Hey @timolins any chance you could take a look at this? :)


Jumps to the beginning of the line when editing at the end

If I go to the end of the line, and this end of the line is not visible when horizontal scroll is set to the leftmost position, and then I type anything or just use the arrow keys (left or right) the scroll jumps to the leftmost position so I don't see the cursor.

I can reproduce this, and it is indeed an issue if you want to use horizontal scrolling. I never encountered this before because I tend to keep my line lengths short. I tried to fix this, but have so far been unable to come up with a solution. This extension uses the revealRange function to keep a range visible in the viewport. However, this function doesn't do the right thing when horizontal scrolling is required to make the range visible. I'm not sure if it is a bug or intended behavior.
I also tested this with the "alwaysCenter" option enabled and found that it does not have the bad behavior you describe.

@TickleForce thank you for the quick response! Sorry for being unavailable.
I grabbed the code and played with it a little. I'm not quite sure but seems like revealRange works well with horizontal scrolling when the range consists of one line. Also seems like it doesn't really depend on revealType parameter.
I created an issue for vscode, let's see what happens next :)
https://github.com/Microsoft/vscode/issues/32049

Is it possible for you to detect when the change is on the same line or multi-line, and not run revealRange when it's on the same line?
Cmd + Right, or A in Vim mode goes to the end and it constantly causes me the problem.

This is still an issue

This makes the extension basically unusable if your workflow includes a gridview or anything like that where you have small windows.
I'm guessing at this point this won't be fixed though.


Goto definition of implementation of trait is not accurate.

https://github.com/rust-analyzer/rust-analyzer/blob/c16e6474f9e4d11d967e5309735b0e673f4c24da/crates/ide/src/goto_definition.rs#L176-L178
When I run goto definition of .try_to_nav, it navigate to
https://github.com/rust-analyzer/rust-analyzer/blob/c16e6474f9e4d11d967e5309735b0e673f4c24da/crates/ide/src/display/navigation_target.rs#L74-L76
which seems not accurate. Because def is in clear definition Definition. So It should navigate to implementation of .try_to_nav
https://github.com/rust-analyzer/rust-analyzer/blob/c16e6474f9e4d11d967e5309735b0e673f4c24da/crates/ide/src/display/navigation_target.rs#L202-L204

Duplicate of #4558.


Training on artificial language data (server logs, medical records, etc.)

Hi and thank you for your amazing work! I would like to train GPT-2 in Colab TPU on non-natural language sequential categorical data like server logs, medical records or weather events. What do I have to change in your code to prepare a dataset with word-level encoding (instead of BPE) and successfully run training?
P.S. I think I would be very useful for the community if we have a quick tutorial section on this in Readme.
Thank you!

Hello there!
There already is a small tutorial in the README under the heading "Using Your Own Data". Unfortunately, it's not very beginner friendly, due to how shoddy my code is overall. I haven't tested this code in colab, and word-level encoding is not implemented. This project is somewhat in "archive" mode, as I currently have no time or intention to improve on it. I would recommend looking into other more mature LM implementations, such as Hugging Face's Transformers library. Hope that helps!


Backports 0.17 pr8

Rebased cleanly on develop, haven't ran tests or built it, so might be ready for review might not be :)

PRs 13119-13079 were already backported via #3539, pls rebase

rebased

cherry-picked and squashed


Handling new distributions added after locking

A few days ago, the zope.interface maintainers added some new distributions to their 4.5.0 release. This broke our builds, because pipenv install downloaded the new cp36-manylinux1 wheel, which did not match any of the saved hashes.
Ideally, pipenv would not attempt to download any distribution that does not have a hash in the lockfile. This may not be easy without work on pip's side (https://github.com/pypa/pip/issues/5874), but I wanted to bring it to your attention.

I believe it's not really that hard, we just need to define the desired behavior first (which will require a PEEP.  I would like to see that outlined anyway, as the implementation is a bit murky.  Would it be preferred for instance that we just suggest the user re-lock if they don't have input disabled?  That's easy enough.
If not, we have some options:

We can extend our patches to pip's wheel priority sorting / selection algorithm, see https://github.com/pypa/pipenv/blob/master/tasks/vendoring/patches/patched/pip18.patch#L134 for example (but this only works when resolving, so we would have to output a specific target wheel for pip to install)
We could modify the installation process on our end to simply stop asking questions, and instead always pass explicit files/links (we need to store more metadata or query first to achieve this)
We could pre-filter the simple index down to matching candidates, hash check those, filter out the non-matching ones, and kind of patch in the sorting algorithm there for candidate selection (in order to respect --no-binary and --only-binary etc)
Something cleverer than these?

Well I think we can outline what we want as a desired behavior pretty easily. The hard part will be getting consensus and implementation

I would expose a top-level function set_pip_module that takes a string (or an imported module) to set the global variable.


Timer functions under the same application do not run concurrently

I have two python timer triggered functions, that occasionally need to run concurrently.
Function A runs every minute and completes in 1-2 seconds.
Function B runs on the hour at 15, 16, 17 each day and completes in 3-5 minutes.
While B is running I still want A to trigger, but what I am experiencing is that at 1500 Function B triggers and A will not run until 3-5 minutes later after B is ready.
The functions are under the same "Application". Not sure of the correct terminology, but for clarity they can be viewed under the same "Functions (Read Only)" hierarchy in the portal.
First of all is the behaviour I want to achieve possible this way or do I need to separate the functions into their own resources in Azure?

As referenced in issue #236 it seems that setting FUNCTIONS_WORKER_PROCESS_COUNT > 1 in Application settings fixes this.

Closing this, for anyone stumbling upon this refer to #236


feat(rust): Vault - MPC - Secure Multiparty Computation / Threshold Signatures

Proposed Changes
This pull request tries to add MPC / Threshold Signature functionality to the ockam vault.
The main parts are the trait secret_key_share_vault and implementation secret_key_share_impl
this implementation is discussed here  #1374

@L3pereira Awesome! Thank you for sending the PR 🙏
We're launching a new set of examples and guides over the weekend so it may be next week before we're able to give the some feedback on the PR.
In the meantime, a couple of requests:

We maintain a linear history in our develop branch so could you rebase to develop and remove the merge commits.

Could you accept our CLA
Read the CLA at
https://www.ockam.io/learn/how-to-guides/contributing/cla/
To accept the CLA please send a different PR to our contributors repo indicating that you accept the CLA by adding your
Git/Github details in a row at the end of the CONTRIBUTORS.csv file:
https://github.com/ockam-network/contributors/blob/master/CONTRIBUTORS.csv

Looking forward to merging your first contribution!! 🥳

Marked with Status: Abandoned for potential closing:

Vault structure has changed drastically since this PR
Commits are not signed
Merge commits present
Complex feature difficult to audit
Adds new dependencies that must be analyzed

@L3pereira thank you for taking the time to contribute.
Sorry we couldn't merge this. We still want to have threshold signature functionality in Ockam but are unsure about the exact design of what that would look like. We're planning to hire an applied cryptographer soon who can think more deeply about this area. Until then, we're very grateful that you sent this PR.
Thank you and happy new year.


Second page of pdf not shwoing

I was checking helloword example and I replaced pdf file with multple pages pdf.
It was showing first page of pdf file and not showing other pages of pdf file.

As you can see here, the "Hello world" example only shows one page. For a basic examples with a multi-page PDF file, see e.g. http://mozilla.github.io/pdf.js/examples/learning/prevnext.html. The code for both of these examples are placed in https://github.com/mozilla/pdf.js/tree/master/examples/learning.
There are also examples using the new, and still under development, viewer components. Please see the "Simple viewer" example in https://github.com/mozilla/pdf.js/tree/master/examples/components.
Closing as answered.


Cu charts select new date

Purpose or Intent
When you select date in C&U screen. you get an error.
Parent issue: #10071

@dclarizio review please. It fix this issue, but I am not sure if I dont create other one.

What happens with the task data if you don't destroy it?

@PanSpagetka looks good in the UI . . . please address @martinpovolny's comment above, then this can be merged.

@dclarizio @martinpovolny Ok. it seems that that task stays there. So I probably have to find another way.

@miq-bot add_label wip

LGTM, miq_observe_date makes much more sense for a datepicker than miqSelectPickerEvent..

@miq-bot remove_label wip

(I'd merge, but simulate_queue_worker is blowing up for me now (regardless of this PR), so I'll leave the honor to someone else..)


Locking the mutex on dispatch prevents altering state inside reducer?

This seems like a bug.
Given that Store.Dispatch() locks the mutex, if you try to alter state inside of the reducer then you have a deadlock.  It's possible I don't understand how this works, as I'd expect that if the mutex was locked for Reading you wouldn't be able to GetState() inside the reducer either, but your test cases show that you can?
Your test cases do not involve updating the state tree inside the reducer at all.  Is this even possible?

@chadfurman makes sense for me! I'll check it! Thanks!

I ended up using gredux and forking it to add selectors. I like how the state in that project is a type and how the state is passed to the reducer like in react


Error passing from version 0.0.9 to 0.0.10

Hi,
I have this log file, after I upgrade video player media kit from 0.0.9 to 0.0.10, before was working fine.
`../../../.pub-cache/hosted/pub.dev/video_player_media_kit-0.0.10/lib/video_player_media_kit_platform/video_player_media_kit_platform_ffi.dart:80:45: Error: Member not found: 'VideoController.create'.
controllers[id] = await VideoController.create(player);
^^^^^^
../../../.pub-cache/hosted/pub.dev/video_player_media_kit-0.0.10/lib/video_player_media_kit_platform/video_player_media_kit_platform_ffi.dart:264:29: Error: The method 'dispose' isn't defined for the class 'VideoController'.

'VideoController' is from 'package:media_kit_video/src/video_controller/video_controller.dart' ('../../../.pub-cache/hosted/pub.dev/media_kit_video-0.0.10/lib/src/video_controller/video_controller.dart').
Try correcting the name to the name of an existing method, or defining a method named 'dispose'.
controllers[textureId]!.dispose();`

Yes media_kit released an update yesterday, I will update to it today hopefully

Ok so, need to wait the new update for this version to work, right?

Or use a media_kit override with 0.0.7 as a version

I try to override:
dependency:
  ...
dependency_overrides:
  media_kit_video: 0.0.7
But I get this error log:
`../../../.pub-cache/hosted/pub.dev/media_kit_video-0.0.7/lib/src/video_controller_android.dart:22:8: Error: Error when reading '../../../.pub-cache/hosted/pub.dev/media_kit-0.0.8/lib/src/libmpv/core/native_library.dart': No such file or directory
import 'package:media_kit/src/libmpv/core/native_library.dart';
^
../../../.pub-cache/hosted/pub.dev/media_kit_video-0.0.7/lib/src/video_controller_android.dart:100:5: Error: Undefined name 'NativeLibrary'.
NativeLibrary.ensureInitialized();
^^^^^^^^^^^^^
../../../.pub-cache/hosted/pub.dev/media_kit_video-0.0.7/lib/src/video_controller_android.dart:101:41: Error: Undefined name 'NativeLibrary'.
final mpv = MPV(DynamicLibrary.open(NativeLibrary.path));
^^^^^^^^^^^^^
../../../.pub-cache/hosted/pub.dev/media_kit_video-0.0.7/lib/src/video_controller_android.dart:156:5: Error: The getter 'NativeLibrary' isn't defined for the class 'VideoControllerAndroid'.

'VideoControllerAndroid' is from 'package:media_kit_video/src/video_controller_android.dart' ('../../../.pub-cache/hosted/pub.dev/media_kit_video-0.0.7/lib/src/video_controller_android.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'NativeLibrary'.
NativeLibrary.ensureInitialized();
^^^^^^^^^^^^^
../../../.pub-cache/hosted/pub.dev/media_kit_video-0.0.7/lib/src/video_controller_android.dart:157:41: Error: The getter 'NativeLibrary' isn't defined for the class 'VideoControllerAndroid'.
'VideoControllerAndroid' is from 'package:media_kit_video/src/video_controller_android.dart' ('../../../.pub-cache/hosted/pub.dev/media_kit_video-0.0.7/lib/src/video_controller_android.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'NativeLibrary'.
final mpv = MPV(DynamicLibrary.open(NativeLibrary.path));`

where it ask for NativeLibrary.

My bad,
for who have the same problem, in the meantime you need both media_kit and media_kit_video to 0.0.7
like this:
dependency
    ...
dependency_overrides:
   media_kit: 0.0.7
   media_kit_video: 0.0.7

Yes I forgot that, anyway I will fix it and let you know here

fixed in new release


Illegal start of statement

Original issue #603
Repo with an example project
I'm trying to expand a function declaration into a private class and it's factory function:
object test {
  @constr def Print(s: String): Call[Unit]
}

where @constr should expand into a private class with a def, so the annotation result value looks this: q"$genClass; $getFunc". It fails to compile:
[error] <macro>:2: illegal start of statement (no modifiers allowed here)
[error]   private final class $constr$PrintLine(val value: String) extends SystemCall[Unit] {}
[error]   ^

So it looks something like this after expansion:
object test {
  {
    private class generatedClass
    def generatedFunc
  }
}

maybe i'm simply missing some restriction.
Note:

The example project uses Typelevel Scala compiler, but Lightbend's doesn't work as well
Intellij's macro expansion feature works, but SBT fails to compile

Have you tried removing the private modifier? I think the class is already private since it's wrapped in a block.

@olafurpg it works without the modifier, but i need to have it hidden within the object, hence i need to use private.

@4lex1v private classes are not allowed in Scala
scala> object a { { private class b } }
<console>:1: error: illegal start of statement (no modifiers allowed here)
object a { { private class b } }
             ^

could you get away with putting the class inside the def body?

@olafurpg They are, but i don't need it inside the block, i want to generate a private class with the corresponding function, i.e:
object outer {
  @constr def Something(): Trait[A]
}

into
object outer {
  private class impl extends Trait[A]
  def Something() = ...
}

Would this work?
object outer {
  def Something() = {
    class impl extends Trait[A]
    ...
  }
}

I'm not sure if it's currently possible to expand as you describe, @DavidDudson may know better than me

@olafurpg Unfortunately not. I wonder if described behaviour is intentional or it's a issue and may be eventually fixed?

I think the issue here is that inline def apply returns a Tree which cannot be two sequential statements unless it's wrapped in block. It might be possible to change it to return Seq[Tree]. I recommend you read over https://github.com/scalameta/paradise/issues/158 and pitch your thoughts

@olafurpg i'm sorry but i don't understand, it perfectly works if i drop private modifier, but not with it?

I'm wondering if this pattern match is failing for some reason.
https://github.com/scalameta/paradise/blob/master/plugin/src/main/scala/org/scalameta/paradise/typechecker/Expanders.scala#L202
I'll investigate tonight or tomorrow

@olafurpg It looks like we definitely can switch to immutable.Seq[Tree], If I'm reading the expander code correctly

@DavidDudson How about treating blocks as sequences of trees by unwrapping them internally in expanders?

@xeno-by That's what should be happening already. See that line of code I linked.

Yeah, that's how I was remembering it. I also was surprised that it didn't work.

Does the issue with the private modifier related to the Seq[Tree] result type?

Information on the issue:
This an example output of a macro which exibits this issue (Which is fine, it makes sense)
{
  private class Foo
  trait Bar
}

The problem, is that in order to get from that m.Tree, to the g.Tree
we of course call .syntax, and then reparse.
After the reparse we check the g.Tree for blocks and extract stats from it.
Its the reparse that breaks, I presume anything that it restricted during parse inside blocks (including private modifiers) will break.

Fixed in #161

Note private[X] still will not work


Advanced WordPress menu filter allows cross-page navigation

Follow up for #94. This should perhaps be a pull request on README.md. Let me know.
This will check whether the navigation menu links have been configured with any # anchors and if they point to the current page or somewhere else. All outbound links must avoid data-scroll attribute.
add_filter( "nav_menu_link_attributes", function( $atts ) {

    if ( isset( $_SERVER["REQUEST_URI"] ) && $_SERVER["REQUEST_URI"] ) {

        if ( isset( $atts["href"] ) && false !== strpos( $atts["href"], $_SERVER["REQUEST_URI"] . "#" ) ) {

            $atts["data-scroll"] = "true";

        }

    }

    return $atts;

} );

Use if ( isset( $_SERVER["REQUEST_URI"] ) && $REQUEST_URI = sanitize_text_field( wp_unslash( $_SERVER["REQUEST_URI"] ) ) ) {} if you want to pass WordPress Coding Standards  (0.8.0) compliance.

This is by far way better than my example, BUT... I'm actually leaning towards a JS-based implementation and will be updating the docs accordingly. See https://github.com/cferdinandi/smooth-scroll/issues/202 and https://github.com/cferdinandi/smooth-scroll/issues/201.

I've decided to update my readme with a JS-based approach instead. Thanks for this, though!

It doesn't look like the JS addresses the outbound links issue?

 Nice catch... I'll update accordingly...

Fixed. Thanks again!

That regex doesn't seem to address relative URL without a hostname?

But if one omits the hostname, you could theoretically get some false positives in there.

I'm not sure I follow. One example?

Wouldn't Some link match as "internal and on this page" if you were on the homepage and the test only looked at the pathname, not the hostname?
Also, I just tested this using a domain without an explicit hostname. The browser infers one as the current domain when not including explicitly, so we should be all set.

Cool beans. I'll hop back here if I find anything different from real world experiences later on. Thanks for the work :100:


Thread-safety and cancel-safety

Are the methods safe to use across threads and are they safe to cancel?

Thread safety is a given in safe Rust. Most types are Send + Sync and can be used across threads.
TransferFuture is not cancel safe and documents this caveat. Use the Queue API, whose next_complete is cancel-safe.


Progressive loading support

Does basis support progressive loading?
For example can we make a custom loader for three.js?

Not currently,. but it could and I left room for this in the format/transcoders. For ETC1S, once you get the header and global codebooks, you can decode the texture levels as you get them. How important is this use case?

Hmm, pretty important IMHO. Because I am going to create a proposal for future standards in the web.
At the other hand I think we need to simplify documentation also and add flipY feature (if it not exist). Probably this is more important for community.

you can decode the texture levels as you get them.

@munrocket note that this is possible in the Basis format today, it just has never been implemented in the three.js loaders (or requested, for that matter).

Yeah, we can fetch an image with chunks, drop it into wasm sandbox and waiting for some c++ codec magic.

you can decode the texture levels as you get them.

Ah I get it. Sorry, language gap.

You should take a look at .ktx2.

We've exposed container independent transcoding support in the JavaScript wrappers (basis_wrappers.cpp). So you can extract the individual sections of a .basis file and store them in your own file format, then transcode them on the fly as needed.


scorecard: 2.2.8 -> 3.0.1

Motivation for this change
Bump scorecard to 3.0.1
Populated buildDate since they use SOURCE_DATE_EPOCH for that now
Needed to do that within postFetch since the SOURCE_DATE_EPOCH set during the build is just wrong
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[X] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[X] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

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

[X] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 140968 run on x86_64-linux 1

1 package built:

scorecard


Native uploader

Hi Chris,
Your project is the first i found that allows for native uploading of hex files. (Most are only wrappers around avrdude). Congrats for that.
As i play around with arduino a lot i needed a way to version my projects. But also to track what version was in a arduino after i uploaded it.
I created a build server (with gitlab and gitlab-ci that will produce a hex as build files. The first lines printed on the serial port are it's project, and git hash so i can track the loaded project/version.
Second i implemented a python project that will use the API of gitlab to download the HEX files. Now i only need a good way to upload it in one click to my connected board. (i dislike the arvdude wrapper i use now, because i have to close the serial in order to use it).
Could u tell me how hard it was to implement the protocol to upload the hex file?
Or could i better implement the gitlab API in .Net ;)
Thanks for the project. I will play with it for sure.

Hi Pimmetje,
Thank you for your interest in this library. As to the question how hard it is to implement the actual Arduino upload functionality: like most things in life, not very hard once you figure out exactly how.
There is a couple of logical things to do. First, you must parse the HEX file contents. I implemented this in the following library (which gets used by the ArduinoSketchUploader). The HEX format really is quite straightforward, I found the Wikipedia article on it sufficient to understand its structure.
Then, depending on the Arduino used (or more specifically, the MCU and the specific bootloader ROM installed on said Arduino), you need to talk it's protocol. Typically, it is a rough (sometimes incomplete) version of an Atmel protocol. E.g. the Optiboot bootloader which is stock on the Arduino Uno R3 uses the STK500 (version 1) protocol. Once you find the documentation you can start implementing.
You might find this blog post I wrote about implementing the protocol a useful read.
When you are playing around with the code, be aware that some of it is really quite sensitive, and that putting breakpoints in certain locations can cause the code to behave differently than when running in an uninterrupted fashion.
Best regards,
Christophe

I should have asked the question differently ;). How long did it take to get the first version working for you?
Do you think it's useful to have a application that can download the hex file from a build server and upload it?

The first version was probably up and running in an evening or 2-3 I think.
As far as the usefulness is concerned: that totally depends on the observer. I personally have no need for such a program, but that might be completely different for you and/or other people. Grabbing the binary from the build server (1) and uploading it to an Arduino (2) sound like 2 distinct logical steps to script / configure in an automatic deployment solution perhaps (e.g. Octopus)?
Such a solution might be overkill for your situation though, in which a simple script / program might be a good solution (depending on the exact use case).
Best regards,
Christophe


Thank god for this, you saved me

I can't figure out how to say thank you except to file this and say you just saved me after 2 days of wasted broken installs and deps on an A100.

Thank god for this

Well, you could thank me instead :stuck_out_tongue: Jokes aside, thanks for posting this. It means a lot. I'm glad that this project helped you out.
If you find the time, could you tell me how your envs were broken before? While working on #73, I figured that detecting broken envs would also be good addition for this tools. In the future we might even have ltt fix to fix the env automatically. But all of this depends on correctly detecting broken envs and the reason why they are broken in the first place.
Plus, did you encounter any issues with light-the-torch? Was the usage clear just from the README?

My only request would be to add torchvision (and maybe torchaudio) as extra possible installs along with? I held my breath when I added it but it worked ok.

Most PyTorch distributions, including torchvision and torchaudio are already supported. There is no public list, but I'm periodically monitoring their indices to check if we are missing something.
https://github.com/pmeier/light-the-torch/blob/eda21f3d1398e0551546f6fde0e79f309de0951d/light_the_torch/_patch.py#L38-L50
If something breaks, feel free to reach out.

My nvidia-smi said one thing about cuda (11.6), my nvcc -V said another

That is indeed very confusing and I fell for it myself in the beginning. nvcc reports the version of the CUDA toolkit you have installed, while nvidia-smi reports the version up to which compiled CUDA code is supported on your machine. So in your case, you can use everything with CUDA<=11.7, which I believe is everything PyTorch hosts at the moment.
Plus, unless you actually want to compile CUDA code, e.g. building PyTorch from source, you don't need the CUDA toolkit installed on your system at all. PyTorch ships everything you need at runtime inside the wheels. This is why they are so large. You only need to have the driver installed.
TL;DR if you ever have to install wheels manually again, trust nvidia-smi.


logging: Add support for new 'in place' mode to SWO backend

Currently the SWO logger backend produces no output if CONFIG_LOG_IMMEDIATE Kconfig option is enabled. This has been overlooked when the new backend API for 'in place' mode was added. This PR fixes the issue.

If you desire this fix in 1.14, please open or associate this PR with an Issue.

I've opened the issue #15008.


Initial set up CSS

I just pushed the html. I made the containers and the boxes and then made them scrollable. I made the search bars for each element as we discussed when we created in the wire frame.


deleting last buffer opens first

When I have multiple buffers open and delete the last opened one (in bufferline it is the one on the far right) it should select the previous buffer but it instead selects the first one.
I tried to fix this with something like this here but it does not take vim tabs into count so it does only work if there is only one vim tab open.
Do you have any clue how to fix this on mine or maybe on your side?
My approach so far:
local function close()
  local buffers = require("bufferline.utils").get_valid_buffers()
  local buf_count = require("bufferline.utils").get_buf_count()
  local buf_current = vim.fn.bufnr('#')

  local buf_last = buffers[buf_count - 1]

  if (buf_current == buf_last) then
    bufdel.delete_buffer()
    vim.cmd('bprevious')
  else
    bufdel.delete_buffer()
  end
end

I have implemented this feature in the latest commit.

Thank you so much will give it a try :)))


Reading a bucket behaves different on emulator

Description
My function behaves different when running in the emulator. I wrote a simple function which reads a bucket file. Running the function on remote prints works as expected and print out the full json file. The same function in the emulator logs just the last ~10 lines from this file.
Environment details

OS: MacOS X 10.11.6
Node.js version: 6.11.1
npm version: 3.10.10
google-cloud-node version:
Google Cloud SDK 164.0.0
alpha 2017.03.24
beta 2017.03.24
bq 2.0.24
core 2017.07.25
gcloud
gsutil 4.27
kubectl

Steps to reproduce

Given we have this cloud function

const gcs = require('@google-cloud/storage')();

exports.myFunc = function myFunc(event, callback) {
  const { bucketId, objectId } = event.data.attributes;

  const bucket = gcs.bucket(bucketId);
  const file = bucket.file(objectId);

  file.download().then((data) => {
    console.log('Content:', data.toString());
    callback();
  }).catch(callback);
};

and a valid json file test.json in our bucket my-bucket
We start the cloud emulator with functions start
and deploy the function with functions deploy receiveMetadata -T=some-topic-e=myFunc
together with functions call receiveMetadata --data='{"attributes":{"bucketId": "my-bucket", "objectId":"test.json"}}'
I expect that console.log prints out the full test.json content, but it only show a subset of the file (last buffer data).
A deploy of the same function to the Google Cloud Prints out the full test.json content

Hmm, I was unable to reproduce. What version of @google-cloud/storage did you use? I used 1.2.1.
I deployed your function to my emulator, and it successfully downloaded and printed a file that has over 1000 lines of text.
It might possibly work better if you did this instead:
const gcs = require('@google-cloud/storage')();

exports.myFunc = function myFunc(event, callback) {
  const { bucketId, objectId } = event.data.attributes;

  const bucket = gcs.bucket(bucketId);
  const file = bucket.file(objectId);

  file.createReadStream()
    .on('error', callback)
    .on('end', callback)
    .pipe(process.stdout);
};