Data modelling

@dkapitan - I think this a good place for you to step in.
See below @Michelangelo367's ideas - I am guessing you have some thoughts and could perhaps assist with some guidance or focus?

What I have done in the past for UWV is as follows:
Creating a data model and checking the data with the source (system). And from the application screens, we used the possibilities of building a data model from scratch.
We can do more or less the same with CBS data, since CBS has already some presentation screens (with filters) on their website. That information is familiar for clients like Gemeente or Commercial organizations.
I think we should start with the basic detail key views (data model) and then expanding them with more fields. And then add aggregation views in a later stage.

I think statline data has been transformed with python in google cloud tables (dataverbinders-cbs-dl), so we are missing some original information which is present in the csv downloads of cbs statline.
Or is (dataverbinders-cbs-dl) not the raw import data?
dataverbinders-cbs-dl: cbs_v4_83765NED
If I compare
cbs_statline_metadata_csv..png, cbs_statline_untyped_203629_csv..png, cbs_statline_typed_203639_csv..png
(downloads: metadata, onbewerkte dataset - filter amsterdam, dataset voor grafische weergave - filter amsterdam)
Onbewerkte dataset
Onderwerpen:  Alles (108),  Wijken en buurten: Selectie (579 / 16667), Aantal geselecteerde cellen: 62.532
https://opendata.cbs.nl/statline/portal.html?_la=nl&_catalog=CBS&tableId=83765NED&_theme=235
with:
google_cloud_83765NED_MeasureGroups..png, google_cloud_83765NED_Observations.png, google_cloud_83765NED_WijkenenBuurtenCodes.png, google_cloud_83765NED_WijkenenBuurtenGroups.png
It would be beneficial to add the missing fields (red) of printscreen "missing metadata fields in google cloud", so we can make (sub)groups available as a selection criteria for visualization reports!

To do:
Still need to calculate the summary for instance mannen_6 in combination with wijkenenbuurten and see if the same number appears in google cloud. The total summary number for mannen_6 for typed and untyped are the same.
Action:
In CSV files I noticed the soortregio_2 (Gemeente, Wijk, Buurt). I guess it's from the first two letters of Wijkenbuurten (GM, WK, BU), but perhaps there is a separate lookup reference table table available. Otherwise we need to add the Code (GM, WK, BU) with description into the table 83765NED_WijkenenBuurtenCodes.
The item Mannen_6 is trimmed into Mannen and the ID 6 is not available in the Google Cloud Platform. Mannen (6) and Vrouwen (7) are a sublist of Geslacht (8) (TopicGroup).
Action:
What we need to do is add the hierarchy id (topicgroup) into measuregroups and add the missing hierarchy id's into measurecodes! Or creating a seperate hierarchy table. We need to see how reports are performing as well as a check.
I guess this issue with hierarchy structure and description is present in other tables as well!

I see that there is a hierarchy in the parquet files measuregroups and measurecodes, but It's not the csv numbering.
So, we can still make the relationship!
No action needed!!
I see the T001038 MeasureGroupID in the 83765NED_MeasureCodes as well.
T001038 is the link to  ********
83765NED_MeasureGroups:
{
"Id": "T001038",       ********
"Index": "8",
"Title": "Geslacht",
"Description": "",
"ParentId": "M000352"
},
83765NED_MeasureCodes:
{
"Identifier": "3000",
"Index": "9",
"Title": "Mannen",
"Description": "",
"MeasureGroupId": "T001038",    ********
"DataType": "Long",
"Unit": "aantal",
"Format": null,
"Decimals": "0",
"PresentationType": "Absolute"
},
{
"Identifier": "4000",
"Index": "10",
"Title": "Vrouwen",
"Description": "",
"MeasureGroupId": "T001038",  ********
"DataType": "Long",
"Unit": "aantal",
"Format": null,
"Decimals": "0",
"PresentationType": "Absolute"
},

@Michelangelo367 let's try to meet online this week to get to know each other and discuss this project. I have just send you a LinkedIn request.

I noticed that there are duplicates in table cbs_v4_83765NED.83765NED_Observations
See select query:
Output:  row 1-8

@galamit86 Do you know how to get similar website search results (8) and get as well the table information with python script?
Is the table information like for instance 83005NED stored as 83005NED_DataProperties ( Source format PARQUET)?
Is it possible to select the Parquet data with SQL?

I already found standard python scripts of cbs v3 and v4.

I noticed that there are duplicates in table cbs_v4_83765NED.83765NED_Observations
See select query:
Output: row 1-8

@Michelangelo367 @galamit86
I think we may have duplicate data in dataverbinders-cbs-dl because this query does yield only 2 rows as a result:
SELECT * FROM `dataverbinders-dev.cbs_v4_83765NED.83765NED_Observations`
where Measure in ('3000', '4000') and WijkenEnBuurten = 'GM0363'

@galamit86 @dkapitan Daniel mentioned topic mantelzorg and huisarts today;
I am thinking as well about topics that are now in discussion at provincies:
1)weten hoe de woon-, werk, leer en vervoerspatronen veranderen als gevolg van COVID
2)wat zijn structurele effecten van COVID op natuurontwikkeling (stikstof, CO2, fijnstof, etc )
3)inzicht krijgen in de samenstelling van de agrarische sector; gericht op verduurzaming van de landbouw
4)Voor zwemwaterlocaties kunnen voorspellen hoe de kwaliteit van het zwemwater zich gaat ontwikkelen zodat ik
gerichter proefmonsters kan afnemen
Should I first focus on developing datamodel for mantelzorg and huisarts?

@galamit86 @dkapitan  How can I connect to google cloud platform and retrieve table information (like select * from ...) with Python?

I noticed that there are duplicates in table cbs_v4_83765NED.83765NED_Observations
See select query:
Output: row 1-8

@Michelangelo367 @galamit86
I think we may have duplicate data in dataverbinders-cbs-dl because this query does yield only 2 rows as a result:
SELECT * FROM `dataverbinders-dev.cbs_v4_83765NED.83765NED_Observations`
where Measure in ('3000', '4000') and WijkenEnBuurten = 'GM0363'

That's true. There was a bug in the code relating to V4 datasets, that I fixed a while ago, but I haven't force-pushed all v4 datasets a second time. I just manually pushed 83765NED, so it's ok. I will rerun all V4 soon.

@Michelangelo367 - re your other question(s) - I am not 100% sure what you are looking for, and if it's one question or more.
If you want to interact directly with the Parquet files stored on Google storage, you should look at the Google Storage API.
If you want to interact with BQ (which I think is more likely), you should look at the Google BQ API. By using BQ as an intermediate, you can use SQL "on" the parquet files - our tables are linked to the parquet files.
If you need something else, let me know, maybe a call would help.

@galamit86 I noticed that older year have sometimes a different output table.
Do you know if cbs is changing old table structure (like 2016-2017) to the new table structure (format)(2018-2020) or not?
I had an example of Kerncijfers wijken en buurten:
2016/2017 -   83765NED, 83487NED
2018/2019/2020 - 84799NED, 84583NED, 84286NED

@galamit86 I noticed that older year have sometimes a different output table.
Do you know if cbs is changing old table structure (like 2016-2017) to the new table structure (format)(2018-2020) or not?
I had an example of Kerncijfers wijken en buurten:
2016/2017 - 83765NED, 83487NED
2018/2019/2020 - 84799NED, 84583NED, 84286NED

I don't know, sorry..

@Michelangelo367 - re your other question(s) - I am not 100% sure what you are looking for, and if it's one question or more.
If you want to interact directly with the Parquet files stored on Google storage, you should look at the Google Storage API.
If you want to interact with BQ (which I think is more likely), you should look at the Google BQ API. By using BQ as an intermediate, you can use SQL "on" the parquet files - our tables are linked to the parquet files.
If you need something else, let me know, maybe a call would help.

In BQ I used a select * from, but then I got an error because of parquet file.
I think it's better to schedule a call, so we can discuss some thing about how better to use Google Big Query.
How about videocall tomorrow around 15:30?

I think it's better to schedule a call, so we can discuss some thing about how better to use Google Big Query.
How about videocall tomorrow around 15:30?

Sure. I have another call at 16:00, so if you think a half hour is enough, that's fine - otherwise I'm available the rest of the day, so earlier or later is also fine.

I think it's better to schedule a call, so we can discuss some thing about how better to use Google Big Query.
How about videocall tomorrow around 15:30?

Sure. I have another call at 16:00, so if you think a half hour is enough, that's fine - otherwise I'm available the rest of the day, so earlier or later is also fine.

15:30 is great. Shall I schedule a meeting?


refactor: add payToAddress and getBalance to on-chain service

this is the 2nd split of the on-chain pay use case refactor

Move on-chain address validator to domain
Add payToAddress and getBalance to onchain service
Update error parsing in on-chain service
Update getOnChainFeeEstimate with 1 param policy

you want to update this as part of another PR @dolcalmi ?
https://github.com/GaloyMoney/galoy/blob/e4ab3c0790fe3ceeffa48a5fd2dcdd5e4dfab786/src/graphql/root/mutation/onchain-payment-send.ts#L35

you want to update this as part of another PR @dolcalmi ?
https://github.com/GaloyMoney/galoy/blob/e4ab3c0790fe3ceeffa48a5fd2dcdd5e4dfab786/src/graphql/root/mutation/onchain-payment-send.ts#L35

not sure if this is ideal to have api v2 still referring to v1 code

you want to update this as part of another PR @dolcalmi ?
https://github.com/GaloyMoney/galoy/blob/e4ab3c0790fe3ceeffa48a5fd2dcdd5e4dfab786/src/graphql/root/mutation/onchain-payment-send.ts#L35

yes, this is part of a 3 steps migration


Commit message regex linter

Something like
git mit-config lint enable commit-message-regex '/^(Added|Updated|Fixed|Removed): /'

I am not sure about this. I think part of what I want to do with this nudge people towards good practices.
So I would be up for a series of lints on Conventional Changelog or some similar system.


Implement queue event handler.

Closes #147

[x] Implement QueueADD event handler

Can we close this one?


quote reserved word type in tail.pp so rake validate succeeds

running bundle rake validate fails with following errors:
bundle exec rake validate
ruby -c lib/facter/collectd_version.rb
Syntax OK
---> syntax:manifests
Use of reserved word: type, must be quoted if intended to be a String value at /home/piotr/git/puppet-module-collectd/tests/plugins/tail.pp:10:7
Use of reserved word: type, must be quoted if intended to be a String value at /home/piotr/git/puppet-module-collectd/tests/plugins/tail.pp:16:7
Use of reserved word: type, must be quoted if intended to be a String value at /home/piotr/git/puppet-module-collectd/tests/plugins/tail.pp:29:7
Found 3 errors. Giving up
rake aborted!
Quoting type (and all other keys to be style consistent) makes rake validate work

Thanks for the contribution!


Update README.md for 0.7.0

Installation
Quality standards
Examples, documentation
License
Changelog

Leaving examples for the next version.


[Code health] Remove Navigator

Continue #2889 and Remove Navigator completely

We still have some usages left in MainActivity. Are those in the scope of this cleanup as well?

We still have some usages left in MainActivity. Are those in the scope of this cleanup as well?

doing in part 3, will raise today.


Is there any option to mention vnetResourceGroup ?

I was trying to build an Internal kubernetes cluster on the Azure cloud , but failed when exposing application because I was unable to create an internal LoadBalancer service in kubernetes. It fails with the following error .
  Type     Reason                      Age               From                Message
  ----     ------                      ----              ----                -------
  Normal   EnsuringLoadBalancer        7s (x3 over 22s)  service-controller  Ensuring load balancer
  Warning  CreatingLoadBalancerFailed  7s (x3 over 22s)  service-controller  Error creating load balancer (will retry): Failed to ensure load balancer for service default/nginx: ensure(default/nginx): lb(kubernetes-internal) - failed to get subnet: /subscriptions/****/resourceGroups/****/providers/Microsoft.Network/virtualNetworks/****/subnets/****

It look like the loadbalancer is unable to find Subnet (as the error states "failed to get subnet") and this because I am trying to use a VNET which is in another ResourceGroup. In ACS-Engine there is  an option to mention custom vnet group called  "vnetResourceGroup" . Does kubespray support any options like that to deploy a kubernetes cluster in Azure using a VNET from another ResourceGroup ?
PS : Everything works perfectly when cluster and VNET are in same Azure ResourceGroup

@eynet did you ever find a solution for this? I'm running into the same problem. My Vnet/subnets are in a different resource group from my cluster, although I have provided the vnet resource group, the SPN doesn't have permission to create any resources in the vnet resource group.

@eynet @HighwayofLife can you confirm with the changes from https://github.com/kubernetes-incubator/kubespray/pull/2434 ?


fix: bump audit package versions FUI-1529

🤔    What does this PR do?

Bump some node module dependencies with issues

📑    How should this be tested?
Update test steps to match your PR:
1. Checkout branch
2. `npm run bootstrap`
3. `npm run test:unit`

To test the LSP is working correctly in VSCode
1. `cd packages/showcase/example`
2. `code .` (or manually open VSCode via the UI to the `example` directory on your filesystem).
3. Open a typescript file such as `root.ts`
4. In the Command Palette choose `TypeScript: select typescript version...` and then choose the workspace version
5. The LSP should be enabled. You will need to make a code change after the LSP is enabled before you see any Intellisense.

In the root run `npm audit` and there should be nothing more urgent than moderate vulnerability

✅    Checklist

[X] I have added tests for my changes.
[X] I have updated the project documentation.
[X] I have followed the contribution guidelines.

A bit weird to see only the package lock, but none of the package.json updated - that means it was regenerated, which can have unintended consequences. Normally you bump version in package.json and re-run install which updates package lock, but only the specific packages.


Update ProtoData and include dependencies in the type system

In this PR we make the validation's type system know about the module's dependencies. For that, we source info from the ProtobufDependency view.
We also make the runtime routine that unpacks Anys check if the type is known or now. If the type packed into the Any is unknown, the message is not validated and a warning is logged.
Also, fixes #69.

@armiol, @alexander-yevsyukov, PTAL.

@armiol, PTAL.


Fix to tokenizing mod_rewrite rules

Escaped characters prior didn't remove the escape character , which was incorrect. Also, sections can be enclosed by quotation marks ", which are trimmed from rules now.
Notes:

Currently using .Trim() and .Replace() to do this.
Characters can be escaped in string enclosed by quotation marks. Hence no matter what we remove the \ characters,

@Tratcher

:shipit:


Can you review this article interest ?

Azure Multi-Factor Authentication Server provides a way to secure resources with MFA capabilities. As of July 1, 2019, Microsoft will no longer offer MFA Server for new deployments. New customers who would like to require multi-factor authentication from their users should use cloud-based Azure Multi-Factor Authentication. Existing customers who have activated MFA Server prior to July 1 will be able to download the latest version, future updates and generate activation credentials as usual.
Source: https://www.microsoft.com/en-us/download/details.aspx?id=55849

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

ID: 75965afd-b39c-5bf0-bc9a-7520bddfd4af
Version Independent ID: be56aebb-04fb-0518-017f-5a7115c8038b
Content: Getting started Azure Multi-Factor Authentication Server - Azure Active Directory
Content Source: articles/active-directory/authentication/howto-mfaserver-deploy.md
Service: active-directory
Sub-service: authentication
GitHub Login: @MicrosoftGuyJFlo
Microsoft Alias: joflore

@TheOtherBillGates Thanks for your feedback! We will investigate and update as appropriate.

@TheOtherBillGates what is your specific question about the announcement?

@TheOtherBillGates since we have not heard back from you we will proceed to close this thread. Please open a new issue with specific feedback if you would like for us to update the article.


NEXT-31047 - Improve payment handlers

1. Why is this change necessary?
2. What does this change do, exactly?
3. Describe each step to reproduce the issue or behaviour.
4. Please link to the relevant issues (if any).
5. Checklist

[ ] I have rebased my changes to remove merge conflicts
[ ] I have written tests and verified that they fail without my change
[ ] I have created a changelog file with all necessary information about my changes
[ ] I have written or adjusted the documentation according to my changes
[ ] This change has comments for package types, values, functions, and non-obvious lines of code
[ ] I have read the contribution requirements and fulfil them.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: lernhart:x: mstegmeyerYou have signed the CLA already but the status is still pending? Let us recheck it.

This was merged yesterday with our internal gitlab, I'm closing it here :)


Improved files structure; Added asyncValidators; Improved drag&drop

Codecov Report

Merging #362 into master will decrease coverage by 0.28%.
The diff coverage is 75.51%.

@@            Coverage Diff             @@
##           master     #362      +/-   ##
==========================================
- Coverage   64.78%   64.49%   -0.29%
==========================================
  Files          17       21       +4
  Lines       29373    29616     +243
  Branches      147      147
==========================================
+ Hits        19028    19101      +73
- Misses      10266    10431     +165
- Partials       79       84       +5

Impacted Files
Coverage Δ

modules/core/pipes/highlight.pipe.ts
73.68% <ø> (ø)

modules/components/dropdown/index.ts
66.66% <ø> (ø)

modules/core/helpers/accessor.ts
83.78% <ø> (ø)

modules/core/pipes/index.ts
66.66% <ø> (ø)

modules/core/index.ts
75% <ø> (ø)

modules/core/helpers/constants.ts
100% <ø> (ø)

modules/components/tag/index.ts
75% <ø> (ø)

modules/core/helpers/listen.ts
75% <100%> (ø)

...omponents/dropdown/tag-input-dropdown.component.ts
70.07% <100%> (ø)
:arrow_up:

modules/components/index.ts
85.71% <50%> (+19.04%)
:arrow_up:

... and 17 more

Continue to review full report at Codecov.

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


Add note to README that docker-compose up won't work when other postgres is running

I kept getting
stac-api     | sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) FATAL:  role "username" does not exist

when running docker-compose up.
It turned out (with help from this SO answer) that I had a global system Postgres on my Mac that was also running on port 5432. So the Postgres in Docker was being hidden by the system Postgres. When I shut down the system postgres, docker-compose up worked.

closing this with #101 (thanks @bitner!)


fix: add translation in toast

I added the translation of the success or error messages in the toast notifications because they were still hardcoded.

Awesome thanks!


tib888 can impl

This old CAN implementation was done by @tib888 for stm32f103xx.
Maybe someone will be interested and test it.

I don't have any experience with CAN buses, so I can't comment much on it unfortunately

It was a working and almost complete implementation. However it doesn't implement the embedded-hal CAN abstraction yet...

However it doesn't implement the embedded-hal CAN abstraction yet...

IIRC, an embedded-hal CAN abstraction is considered out of scope for that project.

It was a working and almost complete implementation

Was as in "it's not working anymore" or "it hasn't been tested recently"? If it's the latter and one or two people with experience of CAN buses can comment on this, I wouldn't mind merging it :)

Any ideas how to test it? It loosk like CAN is a real problem in embedded hal, it's not done after 3 attempts. So maybe it's better to have some implementation, then another and then conclude interface to embedded hal?

Yea, sounds reasonable. The testing doesn't really have be thorough, just some indication that it does roughly what's expected :P

unproven?

@TheZoq2 Thing is with lack of docs and examples it's kinda hard to write an example.
How can I include this file in test project?

Yea, lack of examples and docs certainly makes it harder, perhaps @tib888 could help answer some questions.
You probably first want to rebase this PR onto the current master, hopefully that should happen without conflicts.
git clone git@github.com:burrbull/stm32f1xx-hal.git
cd stm32f1xx-hal
git remote add upstream git@github.com:stm32/stm32f1xx-hal.git
git rebase upstream/master

Then you can add that version of the crate to your project using
[dependencies.stm32f1xx_hal]
path = "path/to/stm32f1xx-hal

I've rebased, so now it should work with
[dependencies.stm32f1xx_hal]
git = "https://github.com/burrbull/stm32f1xx-hal"
branch = "can2"

anyone got demo app working? Or something like test app?
What cases we need to check?

Well there is one example beside my original implementation:
https://github.com/tib888/stm32f1xx-hal/blob/master/examples/can-loopback.rs
That should be updated, and since it is a simple loopback test, could be run on a BluePill.
Unfortunately I do not have time to deal with this, but I plan revisit this in a few months.

Little corrections
[dependencies.stm32f1xx-hal]
features = ["rt", "stm32f103", "medium"]
git = "https://github.com/burrbull/stm32f1xx-hal"
branch = "can2"

Also, we have a problem with compilation with error like:
>cargo build
   Compiling stm32f1xx-hal v0.5.3 (https://github.com/burrbull/stm32f1xx-hal?branch=can2#36dbdabc)
error[E0624]: method `mapr` is private
   --> .cargo\git\checkouts\stm32f1xx-hal-bc72ae77c0f80995\36dbdab\src\can.rs:351:14
    |
351 |         mapr.mapr()
    |              ^^^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0624`.
error: could not compile `stm32f1xx-hal`.

To learn more, run the command again with --verbose.

That is strange, because mapr method is public according to https://docs.rs/stm32f1xx-hal/0.2.1/stm32f1xx_hal/afio/struct.MAPR.html#method.mapr

You're using version 0.5.3 of the crate but looking at the 0.2.1 version of the documentation.

@arrowcircle try again

@therealprof , @burrbull Thanks!
Now it throws a lot of errors. Here is few of them:

use sh::hio; not found - cant find anything about it. Solution remove user sh::hio; and use core::fmt::Write. Add

extern crate cortex_m_semihosting;
use cortex_m_semihosting::hio;
use core::fmt::Write;

It's simple update for cortex_m_semihosting as i understand.

Now after that we have compilation errors about using undeclared types or modules. Something like:

error[E0433]: failed to resolve: use of undeclared type or module `Can`
  --> src\main.rs:43:19
   |
43 |     let mut can = Can::can1(
   |                   ^^^ use of undeclared type or module `Can`

It looks like all of these structures not properly "namespaced". I am not an expert, but other modules wrap content in pub mod ... Is it right way to fix this? Or maybe other ideas about how it should be organized?

@arrowcircle the output seems to be right:
the firs two line tells that successfully transmitted "0" "1" 2" and "3" "4" "5" payloads
the rest tells, that the ascii codes 49, 51, 52, 53 received with payload length == 1
trough the configured filter ids: 11, 13, 14, 15

at this point I'm not sure if every one of them are right. but you may simplify the example by commenting out many filters and messages and check if everything arrives well.
the payload length if i remember well is about 8 bytes maximum.

Should we convert this example to some kind of hardware running unit tests?
What cases should be checked first?

I’m working on this to add support for the stm32f105/107 devices.
The CAN interface looks almost complete. Looking at the comment history following work items are outstanding:

Simple example
Documentation (cargo cannot build docs with this branch ATM)
Testing of filters (maybe this can be included in a second example)

I will open a new pull request once I completed them all.

I’m working on this to add support for the stm32f105/107 devices.
The CAN interface looks almost complete. Looking at the comment history following work items are outstanding:

Simple example
Documentation (cargo cannot build docs with this branch ATM)
Testing of filters (maybe this can be included in a second example)

I will open a new pull request once I completed them all.

That will be nice, thanks!
Please note that tis implementation were med only for 103, but if I remember well 107 does support CAN2 besides CAN1. So lets check/add CAN2 implementation if you can!
Also It might be possible that on some devices the USB and CAN usage is not mutually exclusive so on those devices should be left out from the constructor parameters (device type dependent conditions needed).

Indeed for stm32f105/107 CAN does not share memory with the USB peripheral.
But it has other tricky behavior: Filters for CAN2 are clocked by the CAN1 peripheral (ref. https://github.com/timokroeger/stm32f1xx-hal/commit/809327d410c730c34b2d2a8f3ebbd2a169792775)

Indeed for stm32f105/107 CAN does not share memory with the USB peripheral.
But it has other tricky behavior: Filters for CAN2 are clocked by the CAN1 peripheral (ref. timokroeger@809327d)

Nice! What about CAN related interrupts? Do they need some helper functions?

Thank you for reminding.
I’ve not read up on the interrupt mechanism yet. Only saw there are some unimplented!() lines in the PR. That is another work item I’ll put on the list.

Hey! Thanks for the contribution. I was experimenting with this code for 4 days and was struggling to get real communications working. Looks like I got malfunctioning bluepill, but I found this only on day 4 :(.
In general, this implementation does not have prescaler parameter to configure bit timing. And example does not show anything about speed clock and so on. I think we should have few examples:

Simple and quickstart code to easily check if everything compiles and works (tx, rx) in loopback mode without transceiver.
More complex example with clock configuration and custom CAN bus speed with real transceiver (or in loopback mode?).
Interrupts example
Full example (with 2 firmwares for tx and RX), more like a hardware test suite, that will require 2 boards with 2 transceivers. One board will initialize communication, second board will respond. In the end of the test suite if everything is fine - LED will light up if everything is ok on both boards.

Does it look sane?

Hey! Thanks for the contribution. I was experimenting with this code for 4 days and was struggling to get real communications working. Looks like I got malfunctioning bluepill, but I found this only on day 4 :(.

Yes, debugging HW is tricky even if you have a oscilloscope, like me :P.
In the recent days I also tried to establish CAN connection finally on two of mine prototype boards.
After on day I realized that the CAN driver chip on one of the boards was rotated 180 degree.
A day later I realized the TX side of the CAN driver chip on the other just do not work, so I had to replace it. (Not to mention, that when I ordered these SN65HVD230 CAN drivers, and tested them 2 years ago, it turned out that they are likely from a wrong batch so the VREF pin should be connected to the power, otherwise they do not work.)
But finally they do WORK!

In general, this implementation does not have prescaler parameter to configure bit timing. And example does not show anything about speed clock and so on.

This is a low level driver, more comfortable, but less capable abstractions like the one proposed in the embedded-hal crate can be built on the top of this later.
https://github.com/rust-embedded/embedded-hal/issues/21
https://github.com/rust-embedded/embedded-hal/pull/77
Until then, in the config struct lets look for these to configure bit timing:
/// Specifies the number of time quanta in Bit Segment 1: 1TQ..16TQ
/// defines the location of the sample point. It includes the PROP_SEG
/// and PHASE_SEG1 of the CAN standard. Its duration is programmable
/// between 1 and 16 time quanta but may be automatically lengthened
/// to compensate for positive phase drifts due to differences in the
/// frequency of the various nodes of the network.
pub bit_segment_1: u8,

/// Specifies the number of time quanta in Bit Segment 2: 1TQ..8TQ
/// defines the location of the transmit point. It represents the
/// PHASE_SEG2 of the CAN standard. Its duration is programmable
/// between 1 and 8 time quanta but may also be automatically
/// shortened to compensate for negative phase drifts.
pub bit_segment_2: u8,

/// Prescaling for time quantum: 1..1024
/// Length of a time quanta: tq = (BRP[9:0]+1) x tPCLK
pub time_quantum_length: u16,

@tib888 Thanks for the answer. Could you please verify my thought?
From http://www.bittiming.can-wiki.info/
SJW = 1, Clock rate= 8Mhz, Sample Point = 87.5, speed = 500kbit/s

BitRate
accuracy
Pre-scaler
Number oftime quanta
Seg 1(Prop_Seg+Phase_Seg1)
Seg 2
Sample Pointat
RegisterCAN_BTR

500
0.0000
1
16
13
2
87.5
0x001c0000

500
0.0000
2
8
6
1
87.5
0x00050001

First row is preferred. Is it right, that I need to set bit_segment_1= 13, bit_segment_2= 2, time_quantum_length = 16 to have 500kbit/s?
What is the thing with SN65HVD230? Any links?

Almost correct: time_quantum_length is a bit of misnomer as it actually defines the prescaler value.
In your case it should be time_quantum_length = 8MHz / (16 * 500kbit/s) = 1

14/(14+2) = 0.875
8_000_000/((14+12)*500_000) = 1
So I think you should fill the config struct like this:
config.bit_segment_1 =14
config.bit_segment_2 = 2
config.time_quantum_length =1
but the register will contain each value - 1:
    self.can.btr.modify(|_, w| unsafe {
        w.silm()
            .bit(config.silent_mode)
            .lbkm()
            .bit(config.loopback_mode)
            .sjw()
            .bits(config.synchronisation_jump_width)
            .ts1()
            .bits(config.bit_segment_1 - 1)
            .ts2()
            .bits(config.bit_segment_2 - 1)
            .brp()
            .bits(config.time_quantum_length - 1)
    });

What is the thing with SN65HVD230? Any links?

You need a CAN bus driver to connect your blue pill to the can bus.
For example: http://www.ti.com/lit/ds/symlink/sn65hvd230.pdf

@tib888 I am about this part:

it turned out that they are likely from a wrong batch so the VREF pin should be connected to the power, otherwise they do not work

As I understand,
time_quantum_length should equal Prescaler (from the table)?
Also, why values of bit segments are substracted by 1? This looks really confusing, isn't it?

@tib888 I am about this part:

it turned out that they are likely from a wrong batch so the VREF pin should be connected to the power, otherwise they do not work
If you order something cheap from China such things can happen...

As I understand,
time_quantum_length should equal Prescaler (from the table)?
cpu_clock / perscale gives you a clock, from this clock bit_segment_1 + bit_segment_2 pulses used during one bit detection on the can bus.
so the bit rate of can bus will be: cpu_clock / perscale / (bit_segment_1 + bit_segment_2)

Also, why values of bit segments are subtracted by 1? This looks really confusing, isn't it?
The allowed range of values is 1..16 or 1..8, and for the prescale 1..1024 (zero makes no sense).
If you want to store these on 4, 3, 10 bits you need to subtract one - this is the reason.

@tib888
Now I am 100% confused.

14/(14+2) = 0.875
8_000_000/((14+2)*500_000) = 1

Where 14 comes from?
Sorry for stupid questions, but could you please explain how to properly init CAN BUS with values from http://www.bittiming.can-wiki.info/ ?
For example, lets get clock = 8MHz
Here is the table from the site.

Speed
Prescaler
NTQ
TS1
TS2

1000kbit/s
1
8
6
1

500kbit/s
1
16
13
2

125kbit/s
4
16
13
2

for 1000 kbit/s
TQL = CLK / (NTQ * speed) = 8_000_000 / (8 * 1_000_000) = 1

for 500 kbit/s
TQL = CLK / (NTQ * speed) = 8_000_000 / (16 * 500_000) = 1

for 125 kbit/s
TQL = CLK / (NTQ * speed) = 8_000_000 / (16 * 125_000) = 4

Is it right?
If yes, how should CAN BUS initialize?
for 1000 kbit/s
let config = can::Configuration {
        time_triggered_communication_mode: false,
        automatic_bus_off_management: true,
        automatic_wake_up_mode: true,
        no_automatic_retransmission: false,
        receive_fifo_locked_mode: false,
        transmit_fifo_priority: false,
        silent_mode: false,
        loopback_mode: false,
        synchronisation_jump_width: 1,
        bit_segment_1: 7,
        bit_segment_2: 2,
        time_quantum_length: 2,
    };

for 500 kbit/s
let config = can::Configuration {
        time_triggered_communication_mode: false,
        automatic_bus_off_management: true,
        automatic_wake_up_mode: true,
        no_automatic_retransmission: false,
        receive_fifo_locked_mode: false,
        transmit_fifo_priority: false,
        silent_mode: false,
        loopback_mode: false,
        synchronisation_jump_width: 1,
        bit_segment_1: 14,
        bit_segment_2: 3,
        time_quantum_length: 2,
    };

for 125 kbit/s
let config = can::Configuration {
        time_triggered_communication_mode: false,
        automatic_bus_off_management: true,
        automatic_wake_up_mode: true,
        no_automatic_retransmission: false,
        receive_fifo_locked_mode: false,
        transmit_fifo_priority: false,
        silent_mode: false,
        loopback_mode: false,
        synchronisation_jump_width: 1,
        bit_segment_1: 14,
        bit_segment_2: 3,
        time_quantum_length: 5,
    };

After few experiments, I found this configuration valid for 500 kbit/s
let config = can::Configuration {
        time_triggered_communication_mode: false,
        automatic_bus_off_management: true,
        automatic_wake_up_mode: true,
        no_automatic_retransmission: false,
        receive_fifo_locked_mode: false,
        transmit_fifo_priority: false,
        silent_mode: false,
        loopback_mode: false,
        synchronisation_jump_width: 1,
        bit_segment_1: 13,
        bit_segment_2: 2,
        time_quantum_length: 1,
    };

My attempts to continue this work can be found on my fork of the repo. I wasn’t able to get the receiver working.
I figured that I actually need more of a high level driver and started a draft implementation in #215.

My attempts to continue this work can be found on my fork of the repo. I wasn’t able to get the receiver working.
I figured that I actually need more of a high level driver and started a draft implementation in #215.

looking at the code, the documentation dded to be fixed here:
/// Returns true if the identifier is an extended identifier.
pub fn extended(&self) -> u32 {
(self.raw & 0b1111_1111_1111_1111_1111_1111_1111_1000) >> 3
}
And below that there is a comment, which I think valid: remove pub
// TODO: Does it need to be public?

This seems to now be superseded by #215 so I'll go ahead and close, Feel free to re-open if that's the wrong call :)


Fix compilation of language-glsl.

The issue / patch https://github.com/noteed/language-glsl/pull/10 fixes
a compilation problem with language-glsl.
The packages pretty and prettyclass conflicted when compiled with GHC 7.10.

IMHO, applying these kind of patches in Nixpkgs is not the right way to handle build errors. The right way is to fix build errors on Hackage.

@peti yes, but if there is already a PR for the upstream, why not just apply that PRs patch to nixpkgs directly until upstream releases a new version?

@bennofs, upstream hasn't accepted the PR yet. Had it been merged already, then I'd feel differently about this, but as it is I'd rather not distribute a package called "language-glsl-0.1.1" that deviates from version the library author released to the public. It doesn't feel right, IMHO.


Service Unavailable (503)

Hi, I have used this API for a while, made my own fork of it, and sometimes I am getting the error "Service Unavailable (503)", but I cannot say why, because I never got one with an older JS libary for fetching DSB. I already called Heineking Media and asked them about this error, but they said that this error could not be possible. I am thinking that their services are checking the UserAgent, to check if their app is requesting, or something else. Does anyone else also experienced this, and could someone help me? Thanks!

Hey @blockiyt, you're right, that error looks really odd, as the API seems to block the request or has some internal issues. The part of the code that is requesting the data should be pretty much the same between this repo and your fork, but I've never experienced something similar.
Do you know which request fails exactly? On what platform does this error occur (browser/node.js/mobile)? And how frequently do you experience these issues?

https://just-paste.it/AJzJiyhCHy thats the log I get on the server when requesting from an device.
What's also weird, is that when this error happens, the Plans in the official DSBMobile APP also show the 503, but when your reload, they show back up as normal, but that was not everytime, just sometimes.
I think it is the request to get the plans from the api, not auth or something but I'll double check it.
I cannot say how frequently, sometimes it happens, sometimes it works, I don't really know.
What about a Discord or Zoom call, there I could show you these things a little bit easier, and also talk german, because my English is not that good. Afterwards, I would sum up our talk and would post a solution if one is present.

Meeting up on Discord sounds good. Tchibo#4092

It seems that the error just magically fixed itself, I don't know why but I am quite happy!


How could we integrate this with Mackup?

https://github.com/lra/mackup

It's integrated.

Ah. "prezto" not "zprezto". Thanks!

The name of the project is Prezto.


Update dependencies to latest - Fix getIterator error

Fix:
error: TS2339 [ERROR]: Property 'getIterator' does not exist on type 'ReadableStream<R>'.
  return res.readable.getIterator();

Update the std dependencies to the latest std 0.117.0

update other dependencies to latest as well
update lodash to

I tried to run deno install from your latest brunch and failed with std issues.
error: TS2322 [ERROR]: Type '{}' is not assignable to type 'RouteParams<R>'.
  params: RouteParams<R> = {},
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    at https://deno.land/x/oak@v10.0.0/router.ts:223:3

TS2322 [ERROR]: Type '{}' is not assignable to type 'RouteParams<R>'.
  let replace: RouteParams<R> = {};
      ~~~~~~~
    at https://deno.land/x/oak@v10.0.0/router.ts:227:7

TS2322 [ERROR]: Type '{}' is not assignable to type 'RouteParams<R>'.
    existingParams: RouteParams<R> = {},
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    at https://deno.land/x/oak@v10.0.0/router.ts:301:5

TS2322 [ERROR]: Type '{}' is not assignable to type 'RouteParams<R>'.
    params: RouteParams<R> = {},
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    at https://deno.land/x/oak@v10.0.0/router.ts:321:5

Found 4 errors.

Here is the issue for oak: https://github.com/denosaurs/denon/issues/155


Sign_in / Sign_up via token_auth and via session

Hello,
I have setup devise_token_auth for api / json communication and everything works nicely. I can sign_up / sign_in ... and get json responses.
Now I want some features to accessible via a web interface. How do I setup a sign_up / sign_in via this gem? Or is this possbile?
I tried to generate devise views (like it did on other projects, where i only use devise) via rails generate devise:views. Put this doesn't work. Is this even possible with this gem? Or maybe there is an alternative gem?

You can use this library for AngularJS which was created by the creator of this gem.

I think you would need to use normal Devise for your web routes and DeviseTokenAth for your api/json communication. See #120, i believe there's a similar need there?

Hi there @patricks   ,
In an effort to cleanup this project and prioritize a bit, we're marking issues that haven't had any activity in a while with a "close-in-7-days" label. If we don't hear from you in about a week, we'll be closing this issue. Obviously feel free to re-open it at any time if it's the right time or this was done in error!
If you are still having the issue (especially if it's a bug report) please refer to our new Issue Template to provide some more details to help us solve it.
Hope all is well.


Only support ksizes across space, when using tf.image.extract_patches

System info:
Os: MacOs catalina (10.15.5 )
Tensorflow: 2.0.0 installed over anaconda navigator (1.9.12 python 2.7) enviroment
I was trying to split my image through 4 patches when I came through the following error:
UnimplementedError: Only support ksizes across space
iterator = tf.compat.v1.data.make_one_shot_iterator(parsed_dataset)
image,label = iterator.get_next()
image_height = image.shape[0]
image_width = image.shape[1]
# Since the expected type is (batch,height,width,channels), i have tryied to expand my image that have
# dimensions: (800,344,3) to (1,800,344,3) but didn't solved the error.
#image = tf.expand_dims(image ,0)
images = list(image)
extracted_patches = tf.image.extract_patches(images=images,
                                             sizes=[1,int(0.25*image_height),int(0.25*image_width),3],
                                             strides=[1,int(0.25*image_height),int(0.25*image_width),3],
                                             rates=[1,1,1,1],
                                             padding="SAME")

Traceback:
---------------------------------------------------------------------------
UnimplementedError                        Traceback (most recent call last)
<ipython-input-64-23c2aff4c306> in <module>()
     17                                              strides=[1,int(0.25*image_height),int(0.25*image_width),3],
     18                                              rates=[1,1,1,1],
---> 19                                              padding="SAME")
     20
     21

/Users/lucianoaraujo/anaconda2/lib/python2.7/site-packages/tensorflow_core/python/ops/array_ops.pyc in extract_image_patches_v2(images, sizes, strides, rates, padding, name)
   4657   """
   4658   return gen_array_ops.extract_image_patches(images, sizes, strides, rates,
-> 4659                                              padding, name)
   4660
   4661

/Users/lucianoaraujo/anaconda2/lib/python2.7/site-packages/tensorflow_core/python/ops/gen_array_ops.pyc in extract_image_patches(images, ksizes, strides, rates, padding, name)
   2542       else:
   2543         message = e.message
-> 2544       _six.raise_from(_core._status_to_exception(e.code, message), None)
   2545   # Add nodes to the TensorFlow graph.
   2546   if not isinstance(ksizes, (list, tuple)):

/Users/lucianoaraujo/anaconda2/lib/python2.7/site-packages/six.pyc in raise_from(value, from_value)
    735 else:
    736     def raise_from(value, from_value):
--> 737         raise value
    738
    739

UnimplementedError: Only support ksizes across space. [Op:ExtractImagePatches]

Changing:
sizes=[1,int(0.25*image_height),int(0.25*image_width),3]
strides=[1,int(0.25*image_height),int(0.25*image_width),3]

To:
sizes=[1,int(0.25*image_height),int(0.25*image_width),1]
strides=[1,int(0.25*image_height),int(0.25*image_width),1]

and using image = tf.expand_dims(image ,0) to reshape input appears to resolve the problem.


June 1st 2021 - Regulation Innovation SIG Meeting Minutes

Regulation Innovation SIG
Date
Jun 01 2021 - 12pm EST / 5pm GMT
Untracked attendees

Fullname, Affiliation, (optional) GitHub username
...

Meeting notices

FINOS Project leads are responsible for observing the FINOS guidelines for running project meetings. Project maintainers can find additional resources in the FINOS Maintainers Cheatsheet.

All participants in FINOS project meetings are subject to the LF Antitrust Policy, the FINOS Community Code of Conduct and all other FINOS policies.

FINOS meetings involve participation by industry competitors, and it is the intention of FINOS and the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws. Please contact<EMAIL_ADDRESS>with any questions.

FINOS project meetings may be recorded for use solely by the FINOS team for administration purposes. In very limited instances, and with explicit approval, recordings may be made more widely available.

Agenda

[x] Convene & roll call (5mins)
[ ] Display FINOS Antitrust Policy summary slide
[ ] Review Meeting Notices (see above)
[ ] Approve past meeting minutes:

[ ] May 4th Reg SIG meeting
[ ] May 13th "FDC3 for RegTech" deep-dive
[ ] May 18th "Regulatory Taxonomy and Ontology" project proposal deep-dive

[ ] Regulatory Taxonomy and Ontology project proposal update (James Nicholls & Sarah Sinclair)
[ ] AIR Accelerator update (Randy Repka)
[ ] New collaboration use case proposal: AML & Quantum Computing (Ivan Radovanovic)
[ ] Next month: update on FDC3 for RegTech update
[ ] AOB, Q&A & Adjourn (5mins)

Decisions Made

[ ] Decision 1
[ ] Decision 2
[ ] ...

Action Items

[ ] Action 1
[ ] Action 2
[ ] ...

WebEx info

Meeting link: https://finos.webex.com/finos/j.php?MTID=mc39f602c94618d58437eac6707b6b5ab
Meeting number:<PHONE_NUMBER>
Password: d9kKJPdX5C9
More ways to join:

Join by video system: Dial<EMAIL_ADDRESS>You can also dial <IP_ADDRESS> and enter your meeting number.
Join by phone: +1-415-655-0003 US Toll | +44-20319-88141 UK Toll | Access code:<PHONE_NUMBER>

hi
thank you for this opportunity
idea around Fin crime and fraud in general with specialty review some type of activities that's going under radar and hard to win in next step with filing for arbitration with Visa or Mastercard and other special new "soon mast be" reported all crypto activities
Fraud area is to big and banks already have products in place but some new ideas are always good for refresh
and Quantum computing that's near future happening right now (be ready)
thank you for taking time about this topics

Hi all, Richard Wagener - Codethink

Jane here

hi!

Hi all, Gi here, "lurking" on the call to keep up with the conversation. I work at U.S. Bank.

Here! (Tosha Ellison, FINOS)

hello all

Hello

Belated, sorry, was grabbing water o/

hi

hello

Hi - signing in


Teach the http service how to enforce connection limits

The http connection limit is for any HTTP operation and is independent
of the other connection limits. It should be set to a higher value than
the query limit or the write limit. The difference between this and the
other connection limits is it will close out the connection immediately
without any further processing.
A max concurrent write limit has been added. This will prevent writes to
the underlying store if the number of writers exceeds the threshold.
Also removes some unused config options from the cluster config.
Fixes #6559.

Rather than continuing commenting on a specific line, I'll continue here. Just for clarification, is the issue the number of active /write requests being processed, or the underlying TCP connection count? Are we moving forward with considering unclosed connections to be a "bad client" and just limiting the number of actively processing /write requests? If so, it seems like a simple "channel as a semaphore" would be enough to limit that without outright rejecting requests that happen in quick succession or when the server is experiencing high load.
Rejecting the connections puts the burden back on the client to retry, using a semaphore to limit concurrent processing of requests would allow requests to "build up" and then get processed as the server is able to.

I think limiting the connections as you say through a semaphore would make us vulnerable to a DDOS for clients that don't act correctly. The reason to close the connections immediately would be to avoid further damage from a DDOS, but it would also mean that nobody new could connect and existing client connections could freeze the server.
But to be fair, that's how PostgreSQL connections work so we may be in good company.

Latest version with numbers from influx_stress for three different configurations:
# With a connection limit of 5 (intentionally to show a DDOS situation with retries)
$ influx_stress
Total Queries: 250
Average Query Response Time: 11.29319ms

Total Requests: 2127
        Success: 2000
        Fail: 127
Average Response Time: 56.393977ms
Points Per Second: 366954

# With no connection limit
$ influx_stress
Total Requests: 2000
        Success: 2000
        Fail: 0
Average Response Time: 85.688198ms
Points Per Second: 399314

Total Queries: 250
Average Query Response Time: 25.941744ms

# With a connection limit of 5000
$ influx_stress
Total Requests: 2000
        Success: 2000
        Fail: 0
Average Response Time: 86.180241ms
Points Per Second: 400393

Total Queries: 250
Average Query Response Time: 24.379521ms

I wouldn't trust the benchmarking results completely and the average write response time from the 5 connection limit situation looks very wrong. It doesn't look like it takes into account retries and likely counted a write that was closed immediately as a successful connection. Average query time, which I know does retries, seems to show the results better since the connection limit severely slowed down the result because of the need to continuously retry.
Benchmarking:
$ go test -run=LimitListener -bench=LimitListener ./services/httpd/
PASS
BenchmarkLimitListener-8         5000000               349 ns/op
ok      github.com/influxdata/influxdb/services/httpd   2.170s

I used channels since they seemed to be faster than mutexes and using the primitives in sync/atomic directly caused me to think I would make a mistake. The logic of checking and incrementing a counter didn't play out very well. I can try to do it anyway as long as we're all agreed this is the correct direction to go.

LGTM.  @joelegasse should take a look as well.

👍 Clean and simple, LGTM. I'm not too worried about extreme performance in accepting a network connection, since the round-trip latency is several orders of magnitude greater than waiting on a channel operation.

Then I'll update this with a changelog, wait for green again, and then merge it.


Rails 8 Compatibility (PR attached)

🤔 What's the problem you're trying to solve?
Upgrading to Rails 8.0
✨ What's your proposed solution?
Update gemspec
⛏ Have you considered any alternatives or workarounds?
No response
📚 Any additional context?
No response

Will look to get on this in the next few days @tagliala

Any updates on this or when it will be posted? Is it a time issue or are there compatibility issues?


Warn about potential no-op (result of non-mutating function being discarded).

I was refactoring a code and bitten by the fact that join (http://doc.rust-lang.org/std/path/struct.Path.html#method.join) semantics changed from mutating &mut self, to returning new instance.
My code used to do something like:
path.push(".dotfile");

and now I've changed it without much checking:
path.join(".dotfile");

which is a a bug, and a no-op.
This made me think: could rustc warn me about discarding the result of join? When calling a function taking no mutable arguments, discarding the result is almost always a mistake, as it's effectively an no-op.
There are exceptions: some arguments can be of type with some form of interior-mutability, or modifying global data, but maybe this cases are distinct enough to catch most of them, eliminating some false positives. And even if some false positives can still happen, forcing user to explicitly discard a value, might still be worth it. This could be a custom lint or something.

@eddyb : Just as discussed on IRC, I've wrote it down. Thanks!

And therefore we can close the issue.


Freeradius

Hi,
I have found some forum posts from 2015 talking about success with freeradius3, but it does not seem to be in the repo. Any update on this?
If someone could guide me along how to get this installed I'm interrested in doing some work on a new plugin for a web-interface and some extras to build a lightweight tool for administrating it. My goal is to get dot1x working on my switches and using this for securing access to ports. A lightweight "packetfence" for opnsense.
regards
Thomas

Hi Thomas,
The package has been there a long time, no?
# pkg install freeradius3

There is a test plugin coming in 17.1.10 with support for a limited scope for GUI setup:
https://github.com/opnsense/plugins/commit/1391330b671e5b283d6984a03acb2a3c5de0b4b4
Cheers,
Franco

Ahh. Great!
Just confirmed it's there.. 👍
I'll take a look at that plugin to get me going!
Thanks @fichtner 🥇


FIRMessagingModule.java doesn't compile

FIRMessagingModule.java:159: error: method does not override or implement a method from a supertype.
Removing the line (which contains "@Override") seems to fix it.

have you checked #55 ? What RN version are you running?

Yes I tried both protected and public. I'm running 0.29.

latest version only supports 0.30.0 above. Please use version 1.0.15

I upgraded to 0.30.0 instead and it's working fine.

👍


Using the viewport stretch mode and resizing the window (or using "shrink" value other than 1) results in black screen if MSAA is forced on in Nvidia settings

Godot version: Git https://github.com/godotengine/godot/commit/7d6f210ccb5de9ef414f94ad42f9f3dea14c0493
OS/device including version: Fedora 27, NVIDIA 390.48
Issue description: When the window scaling mode is set to 2d or viewport, setting the display/window/stretch/shrink project setting to a value other than 1 will cause the running project's rendering to break (it will appear to be frozen at the splash screen). If the window is resized by the user, it will turn into a black screen. No errors can be seen in the Debugger dock of the editor.
This also occurs when using the viewport stretch mode after resizing the window, even if display/window/stretch/shrink is set to 1.
Steps to reproduce: After making sure the window scaling mode is set to 2d or viewport, set display/window/stretch/shrink to a value other than 1 in the Project Settings then run the project.
Minimal reproduction project: shrink_bug.zip

Update: I can still reproduce this as of https://github.com/godotengine/godot/commit/6110bdee138febf3b04b47bc15b834bda7b99d52 (Fedora 30, NVIDIA 418.74). When the bug occurs, this appears in the console when Godot is started with --verbose:
ERROR: _gl_debug_print: GL ERROR: Source: OpenGL        Type: Error     ID: 1282        Severity: High  Message: GL_INVALID_OPERATION error generated. Source and destination dimensions must be identical with the current filtering modes.
   At: drivers/gles3/rasterizer_gles3.cpp:123.

I am unable to replicate this bug on macOS 10.12.6 with the latest development version of Godot.
I've tried setting the mode to 2d and viewport, and tried a couple of different display/window/stretch/shrink values, but the issues you are describing never popped up for me.

Works fine for me on 3.1.1-stable on Mageia 7 with both my graphic cards, KDE Plasma:
OpenGL ES 3.0 Renderer: Mesa DRI Intel(R) HD Graphics 630 (Kaby Lake GT2)
OpenGL ES 3.0 Renderer: AMD VEGAM (DRM 3.30.0, 5.1.3-desktop-4.mga7, LLVM 8.0.0)

I've also been unable to replicate this behavior, using Windows 10 Pro, version 10.0.17134, neither in Godot 3.1.1-stable nor in 7d42ca8 and the GLES3 renderer:
OpenGL ES 3.0 Renderer: GeForce GTX 980M/PCIe/SSE2
OpenGL ES 3.0 Renderer: Intel(R) HD Graphics 530

I've also been unable to replicate this behavior, using Windows 10 Pro, version 10.0.17134, neither in Godot 3.1.1-stable nor in 7d42ca8 and the GLES3 renderer:
OpenGL ES 3.0 Renderer: GeForce GTX 980M/PCIe/SSE2
OpenGL ES 3.0 Renderer: Intel(R) HD Graphics 530

I just found out why this is occurring (and why nobody else has been able to reproduce it :stuck_out_tongue:).
This is caused by enabling a setting in the NVIDIA driver that tries to force MSAA in all applications:

(It generally doesn't work with newer applications, including Godot. However, it helps when running some old games or niche applications that don't feature MSAA settings.)
The Godot project setting that enables MSAA works fine with the viewport stretch mode otherwise:

I'm not sure if we can fix this issue on our end. Someone with a NVIDIA graphics card on Windows should also try enable the equivalent setting and see if it causes the same bug.

Confirmed! :) Windows 10 NVidia GTX 1050 graphics card. When override MSAA is set it hangs on the splashscreen indefinitely and when resized turns black.

Windows 10 Nvidia GTX 1070 confirmed. Exact same sympthoms as clayjohnl.

Are there any resources on fixing this (from the developer's side)? I'm not sure if reporting this issue to NVIDIA would be useful, as forcing MSAA is generally considered to be a legacy feature as it only impacts old applications.

I just stumbled upon this bug too.
Disabling Antaliasing - Mode inside NVidia inspector "hid" the problem.
So the question is - is this a bug that won't get addressed (too hard to fix), or something that can't be fixed because of NVidia setting.

@softgripper It is an NVidia bug. :) If you want something done about it, you can report it to them. We can't fix NVidia software.
Please do file a bug report with them though, the more people that report it, the more likely they are to fix the problem.

I would, but I'm not clear on what the bug is.
Is it that MSAA is broken for all, or is it that Godot can't use NVidia's MSAA?

@softgripper NVidias MSAA override setting (in the driver menu) breaks window resizing in Windows 10.

Interestingly, I ran into the same issue in Quake3e while testing a suggestion in this issue. So it seems Godot isn't the only software impacted by this bug.

I'm having the same issue for Godot v3.2.2.rc1.official GLES3. Whenever shrink != 1, Godot gets stuck on the splash screen. I changed my preferred graphics processor from "High-performance NVIDIA processor" to "Auto-select", and it doesn't get stuck anymore.

I know this is not ideal, but I just tried setting it to GLES2, and it works great! For my game, this is perfectly fine (we don't explicitly need GLES3), and I'm pretty sure for most devs using shrink != 1 this is probably true. However in the case that someone really does need GLES3 and they are using shrink != 1, this is a huge issue, even just some way to detect on the client that this happens would help, because instructing the user that they need to modify their NVidia settings is virtually impossible (unless you bundle a windows specific executable that runs as a child process to check this ahead of time).

clayjohn likely found the cause of this bug:

When blitting a framebuffer the source and destination need to have the same MSAA setting. As far as I recall, the system_fbo always has an MSAA of 0. Therefore this will break whenever a user uses MSAA on their render target.
—https://github.com/godotengine/godot/pull/35517#discussion_r370711192

@Calinou that comment only applies to the PR I commented on.

that comment only applies to the PR I commented on.

I know, but I have a feeling this omission is the cause of this bug. When forcing MSAA in the graphics driver, it will be forced on the "root" viewport/FBO/whatever instead of forcing it on individual viewports within the application. This is why it often doesn't work in modern engines.

I can't reproduce this issue with amd (7990 + 21.4.1 drivers).
Our internal QA has issues with a black screen + nvidia and I found this topic. There is a way to fix it from gdscript or editor settings?
I already had MSAA disabled in Godot editor.
We noticed with our team that the editor runs fine, but when you press play the game is not rendered. This doesn't make sense because the editor uses the same video driver as a godot game.
Here is a image of the issue happening running a game from editor in a nvidia 1050, drivers 446.27, godot 3.3, GLES 3.0:

Sound and input works, video not. Stay stuck at first frame (the splash screen). If the app is exported, same behavior but with black screen.
Notice the editor is fine at background, so why we can't apply the same editor behavior to games to fix this?.

Official Godot 3.3 build, Windows 10 Nvidia GTX 1080, the same issue with forced MSAA and Stretch mode: viewport. One thing I noticed is that as long as viewport size and window size are the same it renders without issues. Resizing the window triggers black screen.

There's no way to control driver-forced MSAA from the application. Detecting a MSAA override to warn the user about potential issues might be possible, but I'm not sure.

Do you know if this is possible yet?

Do you know if this is possible yet?

Not that I know of. Ideally, we should fix whatever we're doing to be compliant with OpenGL specification, so that forced MSAA behaves correctly (or at the very least, does nothing).

I was experiencing the same problem with the game Endoparacitic. I had the same exact symptoms as Calinou did and I seemed to have found a solution at least for my case. In the Nvidia Control Panel after turning off "Antialiasing - mode" that was previously set to "Override any application settings" It seemed to work for me. Windows 10, Nvidia RTX 3060. Sorry I'm new to this type of stuff

Hey everyone!
I don't have the exact same issue but the solution given by @MagicHead333 solved mine.
2 out of the 5000 players who played my game reported this black screen issue (so it's rare). After some tests, turned out the culprit was the viewport stretch mode. Game ran ok with 2D mode or disabled. I wanted to post a proper issue but for some reason a minimal project with viewport mode worked great on these players computers.
I started looking what parameters in conjunction with the viewport mode could cause the issue. I did not find out, but using @MagicHead333 solution solved the problems for both players.

It seems that this parameter is set right by default, hence why so few players had the problem.
Thank you @MagicHead333 !

@Calinou Is any work being done to investigate this issue? It's nice having the features of GLES3 e.g. GPU particles, OpenGL textureSize() but this issue prevents a subset of users from even getting past the splash screen. It's not ideal to choose between supporting users and a modern dev experience.

Is any work being done to investigate this issue?

We don't know how to resolve this issue, as this is ultimately something triggered by the NVIDIA driver. NVIDIA is unlikely to fix the issue on their end, considering forcing MSAA is a legacy measure nowadays (the new NVIDIA app doesn't even expose this option anymore).
I suggest you keep a troubleshooting page somewhere on your store page so users are aware of this issue.

@Calinou Appreciate the extra info. Sounds like it's not a high priority considering it only affects 3.x.

When blitting a framebuffer the source and destination need to have the same MSAA setting. As far as I recall, the system_fbo always has an MSAA of 0. Therefore this will break whenever a user uses MSAA on their render target.

When forcing MSAA in the graphics driver, it will be forced on the "root" viewport/FBO instead of forcing it on individual viewports within the application.

Perhaps I'm oversimplifying here, but do you think the following could be a viable stopgap solution?

Detect root viewport MSAA setting (possibly forced by Nvidia control center).
Apply the same setting to all child viewports.

This would ensure all viewports use the same MSAA setting thereby the discrepancy in source and destination mentioned by @clayjohn.

I see. So the forced value may not be reflected by get_tree().root.get_viewport().msaa. Can we confirm this? I don't have the hardware to test otherwise I'd be more helpful.

So the forced value may not be reflected by get_tree().root.get_viewport().msaa. Can we confirm this? I don't have the hardware to test otherwise I'd be more helpful.

Indeed, the engine has no idea that the driver is overriding the root viewport's MSAA level (which in fact is not really the root viewport, as Godot always uses an intermediate framebuffer).

Godot is already disabling nVidia's OpenGL "threaded optimization" through nvapi, essentially by reading/writing the application profile in the driver settings. Couldn't we do something similar with driver-level MSAA?

Godot is already disabling nVidia's OpenGL "threaded optimization" through nvapi, essentially by reading/writing the application profile in the driver settings. Couldn't we do something similar with driver-level MSAA?

We could do that as a workaround, but if possible, this should only apply when the viewport size doesn't match the window size.

We could do that as a workaround, but if possible, this should only apply when the viewport size doesn't match the window size (i.e. what happens with the viewport stretch mode or shrink != 1.0).

I don't think changing the application profile after the context is created would have any effect. Best bet is probably to have it as a project setting like with threaded optimization.

That said, for advanced users, this is nothing NVIDIA Profile Inspector can't override anyway 🙂

Correct me if I'm wrong, but isn't that tool just editing the same data that's already exposed by nvapi? And my understanding is that an application-specific profile will always override the global driver profile for any values changed from the defaults.


Item duplication with Sophisticated Storage chests on ships when assembling/disassembling

This issue occurs when only Valkyrien Skies and addons are installed and no other mods

[X] I have tested this issue and it occurs when no other mods are installed

Minecraft Version
1.19
Mod Loader
Forge
Issue description
When assembling or disassembling a ship with a Sophisticated Storage chest on the ship, if there are any items in the sophisticated chest, all of the items will be spit out into the world as if the chest had been broken, and the chest will also retain its contents.
This appears to likely be related to these issues as well: #270 and #251
I will also open a corresponding issue on sophisticated storage's issue tracker to see if they can add compatibility by implementing clear class for their containers as mentioned in #270 comments
Note: this obviously involves interaction with another mod, but I could not file the bug without checking the "no other mods involved" checkbox, and I wasn't sure this is purely a compat issue, but feel free to recategorize it if it should be
Issue reproduction
Build any eureka ship, add a sophisticated storage chest to the ship, put some items in the chest and assemble or disassemble. You should see the items from the chest spit out into the world and the contents of the chest will also be preserved.
Logs
No response

I did some digging and decided it looked not too bad to try and create a compatibility mod to patch the behavior, so for now I have created this: https://github.com/dwayn/ValkyrienSkiesSophisticatedStorageCompat to make sophisticated storage work with VS2. I have posted it to curse, so once it is approved, it will be available to whoever wants it.
Effectively it just sets the packed state (same thing as applying packing tape from the same mod) on sophisticated storage chests/barrels when Clearable is called by VS2.
The effect is that when VS2 calls relocate block, it clones the block and its metadata, calls the Clearable implementation I added to the Sophisticated container which sets itself as packed (only when it is called from VS2), so that when VS2 destroys the container block to relocate it to wherever the blocks are moved for physics simulation (i haven't figured out exactly where this is but it is not in the same place in the world where the ship was built), the container only drops itself and not its contents, allowing VS2 to place the cloned block in the new location.

Confimed on 1.18.2 1.4.0-beta.1


alternative without golang.org/x/maps

- What I did
- How I did it
- How to verify it
- Description for the changelog

- A picture of a cute animal (not mandatory but encouraged)

closing as sliceutils.DeDup is now used https://github.com/moby/moby/pull/48777#discussion_r1818767893


Interface Creation

I've used this toolkit across several projects, but due to complications from a couple of customers, needed to transition instead to a .NET based API, rather than the native LabVIEW one (separate toolkit, not published yet).  Rather than sorting through all projects and replacing each VI, I thought it would be easier to convert the original class into an "interface" class, and encapsulate the original functionality into a concrete sub-class.... my .NET API could then be encapsulated in a similar manner.
So then in projects that use this, I only need to adjust things in one place: the initialization function to call the initialization VI from the new Sub-class.  The changes should be "non-breaking" other than perhaps with the initialize VI.
I don't know whether this would be useful to pull into the main repo, so thought I'd create a pull request and see.
I do not have LV2013 installed, so before I went through the effort to install/back save (currently LV2018 32-bit), I thought I'd reach out and see if you are interested in integrating these changes.
I also fully intend on publishing the .NET API a bit later (which is a much more complete/flexible HTTP Client), however, how the form I publish that in will also depend on whether you're interested in integrating these changes, since the changes are non-destructive (other than the initialize), figured it was worth reaching out :)

Made the original REST Client an interface class
Copied the original REST class to "REST Client_JKI"
Adjusted files to match new architecture
No functionality change should have occurred
likely "Create REST Client.vi" will break because I removed some inputs
SHOULD call "Create JKI Rest Client" to maintain original functionality
Adjusted scope of several VIs to make them more broadly accessible
Currently updated to LV2018 32-bit (Still back compatible w/2013, but don't have that installed)

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hi @jyoung8711. Yes, I think we need to do this since the NI HTTP Client VIs are not always the best once's for users.  Are you still working on this at all?  Would you still be willing to help out with this effort?

@jimkring -- We aren't "actively" working on this right now, but I have been using my modified version of this toolkit since the original post. I'm definitely amenable to dusting this off to collaborate on an update.
The strategy I took was to make the original class an abstract class, and moving all of the "interesting stuff" into a sub class. this kept things from breaking except for the initialization VI.... which was intentional so that it would force users to look at it and add in the new "create" VI for the concrete version they cared about.
I then extended this with a class based on the .NET HTTP Client -- which was needed on ourside for more complex Proxy Server support
I took a look at the post by Chris in your link, and had similar problems as him with some of the useful stuff being encapsulated in privately scoped VIs.
The caveats I have right now are :

Our current version was written in LV 2018, so to match support for the current version, it would need to be back-saved and validated for 2013 (I think)
I don't have any unit tests for the original JKI toolkit, so I can't validate functionality of that library in the new version (I mostly use the .NET concrete class for our use cases right now).

Let me know how you'd like to proceed.

Sounds good.  I'll standby!
On Mon, Oct 10, 2022 at 11:49 AM Jim Kring @.***> wrote:

Hi @jyoung8711 https://github.com/jyoung8711. Great! Thanks for your
willingness to help. I've got some ideas for how to tackle the testing and
LabVIEW versioning/converting. I'll organize my thoughts and be in touch
again shortly...
—
Reply to this email directly, view it on GitHub
https://github.com/vipm-io/HTTP-REST-Client/pull/17#issuecomment-1273583032,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABH523V4S3BJOMBJZ74A7HTWCRCKLANCNFSM4WZVDMDA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi @jyoung8711.
there has been some work on this. See PR #30

Hey @jimkring -- Thanks for the ping.
I've been keeping an eye on the project, and saw that there was work being done.  I had not seen the new issue/proposal, but since that basically just happened over the weekend, not too surprising.
Our .NET API is located (publicly) here: https://github.com/Viviota/LabVIEW-HttpClient-NET
I don't think I have a release/VIPM posted, but the latest push should have a library that directly references this one.
My memory is aside from the interface translation, the only thing I had to change was a adjusting the scope of the a couple of VIs... but it's been 3 years since I did that work, and my memory is a little lacking.
I will pull down the current version of this from #30 and figure out how close the interface is what I needed in this fork, and can do a little testing on my side.
Looking forward to this change, as I'm currently maintaining my own fork of this project to maintain the .NET interface (which I need to handle some proxy server resolution that I really don't want to rewrite myself).  Once the interfaced version is pushed to public, I'll plan on pushing the .NET VIPM package out as well.

@jimkring -- I had a bit to review the new and generally I think that the new interface will do as needed.  I'll respond with additional comments/feedback in those threads, as it'll make more sense in context.
Thanks for pulling me into this conversation!
(If you'd like to close out this pull request as "rejected" I think that will be fine, as the other requests will sufficiently address what was done here)


Log vs Linear for LiveImage

It would be nice to have a toggle between log and linear norm for LiveImage.
Expected Behavior
Press button and plot changes scale
Current Behavior
Scale must be set at instantiation
Context
This kind of functionality is available from other software (eg fit2d)

Doesn't MatPlotLib provide this with a keyboard shortcut?

I have no idea.

Ah, Live Image.  Proof I cannot read and cannot format markdown tables.
I agree.  Initial assignment of log axis is extremely reasonable for intensity axes in diffraction science.  At X-ray synchrotrons, where signals span so many decades of range, it is the best default choice for representing intensity.


Added Random Quote Generator

It is a generator using Javacript API,html5,css.


Develop Resource Page: Governance - Path to Influence

This issue is for coordinating around developing the resource page for Governance - Path to Influence.
The resource page lives in the following google document for easy editing, commenting, and revision:
https://docs.google.com/document/d/1g3zMQpBgieUzkJN8Zw9QBgyStDmjCiw5NQaaMoM7hF0/edit
Once the page is in a decent shape, we will put a copy of it in the repository as a markdown file.
To work on this issue, feel free to leave a comment here and start editing the document. For questions, feedback requests, and other coordination tasks, please leave a comment here on the issue.
Please edit the google document directly and add your ideas to it. We can help with cleaning it up later.

I fixed the URL in the original issue message, which had led to the wrong document. -- My apologies.
@emmairwin good question. I think that the name "path to leadership" is easier to grasp. Influence sounds more broad but I don't think it helps us in any way and we should go for the low hanging fruits (i.e., leadership) first. --- Should we change the title of this or is there another page you are working on about "Path to Leadership"?

The thing is,    we have to be careful here about saying there is any one path to leadership, because that might skew to a certain ability, available time etc.   Maybe we park this one until we have done more work on inclusive leadership attributes first?

I'm okay with postponing this for now.
I agree that we should not champion any one way but rather try to capture whether a project has a "path to leadership".


Add scroll to up button

Added button to scroll to the top on the home page

@yatulearn Please approve my PR.

your pr has conflicts kindly resolve it

make the scroll up button for every pages

make the scroll up button for every pages

can i do this in next PR, please accept this PR

have resolved confllicst please merge my branch
@yatulearn

there is no scroll up button in the website

there is no scroll up button in the website

oh my god how this happend dont know, the code is still there but why scroll is not working
i am looking into the matter


Why symlink instead of using full path

Currently we are symlinking files in files_efs.nim. Could we just assign the fullpath to storageEFS* and remove the symlinking?
when defined(dev):
  storageEFS* = getAppDir() / dict.getSectionValue("Storage", "storagedev")
else:
  storageEFS* = dict.getSectionValue("Storage", "storage")

Sounds good.


Feature: combine maths curricula

Description
Music year: 1992
This is a feature branch for combined maths

update maths on subject listing page to combine legacy and new into one card
update unit listing page for maths to show new and legacy on the same page

How to test

Go to https://deploy-preview-2512--oak-web-application.netlify.thenational.academy/teachers/key-stages/ks3/subjects
Compare counts to production
Go to the unit listing page for maths at each keystage, and other subjects at any keystage

Screenshots

ACs:

[ ] Maths across all keystages should have a single card on the subject listing page
[ ] the counts for units and lessons should be correct
[ ] the subject cards should direct to the 'new' programme listing page (with no core tier)
[ ] Header for units new and legacy on the unit listing page should only appear once each
[ ] Numbering for legacy units should start from 1
[ ] numbering should continue correctly onto subsequent pages (calling out as this was fiddly)
[ ] Curriculum download buttons should go to the correct place for new/legacy
[ ] Thread filters should work as before (only for new content)
[ ] There should be 20 units per page as before

:tada: This PR is included in version 1.468.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Error using _ and markdown format

If you have _ symbol in your username and use default message with format markdown, got error of telegram API: Bad Request: can't parse entities in message text: Can't find end of the entity starting at byte offset
This pull request fix issue:
https://github.com/appleboy/drone-telegram/pull/40
Temporary you can use image koluchiy/drone-telegram

fixed by #40


Add Subscriptions API

Fixed with
commit 8c1becbca72ed5fd37fbecbbf635e73b515251fa
Merge: 99da0a8 24a634f
Author: Ask Bjørn Hansen<EMAIL_ADDRESS>Date:   Sat Nov 26 00:33:42 2011 -0800
Merge remote-tracking branch 'johncmyk/master'

Conflicts:
    README.md


Change links to "Format Property", since it's content has moved

The links for "Format Property" on this page are linking to "dev-itpro/developer/properties/devenv-format-property.md", but the content on that page has been updated and moved to "dev-itpro/developer/devenv-format-property.md" in this commit
So please, point all links for "Format Property" to "dev-itpro/developer/devenv-format-property.md"
You might want to check if links on other pages that points to "dev-itpro/developer/properties/devenv-format-property.md" should be updated as well, since the content is completely changed....
Thanks
Johannes

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

ID: c745c7fa-6517-541f-d18a-36226db7fb64
Version Independent ID: f41b2a8c-8545-a5a2-4550-092786b1fde9
Content: System.Format Method - Business Central
Content Source: dev-itpro/developer/methods-auto/system/system-format-joker-integer-string-method.md
Service: dynamics365-business-central
GitHub Login: @SusanneWindfeldPedersen
Microsoft Alias: solsen

Hi, thanks for pointing this out and thank you for your patience with the response. All relevant links will be fixed with the next refresh.


Liquid XP Support for the XP crystal.

Describe your idea
Given the similarities between XP crystal and the XP obelisk from Ender IO.
I thought it'd be really nice if the XP crystal could be expanded to allow for liquid XP from mods like mob grinding utils and sophisticated backpacks to be piped in/out of the crystal like the XP obelist from Ender IO used to allow.

That’s definitely planned. I just want to wait for the internal rewrite of Forges fluid system. I had to rewrite my stuff if I would add it now. I only have limited time for modding because of other stuff. If I can avoid writing the stuff two times, I prefer to wait to only do it once :D

Yeah that's sensible. hope the forge rewrite is gonna be any good for your sake then though so you don't still have to rewrite stuff :P

Any updates on this? it happened to come up in conversation with a friend today and I thought I'd see if there was any news on this.

Since I have no time for coding at the moment because of exams, I'm not able to work on this. The new system by Forge is still in development, so I guess... I could start this once I have more time. Maybe it's done before porting to 1.19 :)


Make some remix modules public && add getTransactionReceipt to vmprovider

That's PR is needed by https://github.com/ethereum/browser-solidity/pull/612


Magnetic Hysteresis Records should extend from Modelica.Icons.Record

The records in Modelica.Magnetic.FluxTubes.Material.HysteresisEverettParameter should include the line
extends Modelica.Icons.Record;
That gives the records an icon.

Resolved in branches maint/3.2.2 and master.


Fix field layout algorithm for thread statics

This is not exercised yet because we lie about thread statics not being
thread static, but we will hit it at some point (I hit it when testing
GC maps for them).

LGTM


Export component as 'Namespaced Component'

Is your feature request related to a problem? Please describe.
In Radix-ui, they are using namespaced component to export all child component (including root component) as a component.
(eg: DialogRoot.vue -> Dialog.Root).
Describe the solution you'd like
We can do the same for Radix-vue too. Can check out https://github.com/xiaoluoboding/vue-command-palette/blob/main/packages/index.ts to learn how it was achievable.
(This is just a nice to have, so we don't need to import all the child component manually when building a custom component)

hi @zernonia , glad to have you here! yes we have considered this and think that a non-namespaced naming convention is more 'vue-like', however I think its also possible to implement both. This is still very early decision though so anything can change. We would really like to have you contribute on this, if you want, I would like to invite you to our discord server so I can get you setup

After testing out using Namespaced component (while developing Primitive), it seems unintuitive for Vue user, as it is not the convention.
So will close out this ticket ya 😁

@zernonia would it also be possible to add types to the export?


fix matrix link for -pools

Co-authored-by: Vyquos

based on https://github.com/monero-project/monero-site/pull/1957


Push bolt server to artifactory

This is the marketplace action i want to use for docker login https://github.com/Azure/docker-login


pick a profile image but it can't be showed

VS Code debug ：

"FlutterError : Unable to load asset  ...."
VS Code flutter run :

It's strange that I can't find where is the "/data/user/0/com.example.chart_app/cache/file_picker/".
I give up hope but try to do something as belowed:
1、add  these folders:

2、add the path in pubspec.yaml

After that:

Also , I found  that the image can't showed agian ,and the same errors as before show agian. Just try to remove the path ("/data/user/0/com.example.chart_app/cache/file_picker/") you just add in the pubspec.yaml and save  the changed file.
After that , add the path to the pubspec.yaml  again.


update supported versions docs

Pretty straightforward, this PR just updates the requirements section of the getting started docs to match what's tested against in the test.yaml workflow.
These versions are added to the docs...

python 3.11
django 4.1
DRF 3.14

This PR closes #706

@2ykwang let me know if you need anything else

good enough. thank you for your contribution 👍  @dpgraham4401


⚠ Bofrost.de has degraded performance

In 44019ae, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 6834 ms

Resolved: Bofrost.de performance has improved in 4945fec after 7 minutes.


Code duplication in the expanded macro?

First off, amazing crate. I tried multiple other crates before finding this one, and I kept running into an incredibly complex and horrible looking API, while doing retries on my own with just a loop and sleep was so much easier, it was like these other libraries are the opposite of zero cost abstractions. So that made me wonder if there's a macro based solution and found your awesome crate.
As for my "issue": In decorate_fn (inside retry-if-macro/lib.rs crate) you are referencing #block twice. Once before the loop, and once inside the loop.
Looking at the cargo expand output, you can see the wrapped function's entire code being produced twice. And I assume the compiler can optimize it away but it would be cleaner to change the structure of the loop so that the evaluations happen inside the loop, and thus #block would be reference only once.
WDYT?

Hey! Thanks for filing an issue, and I'm glad you like the semantics. I was very much going after a Python-like decorator after also surveying what was out there and not finding one I liked.
The initial justification for the double-expansion is that there needs to be a guaranteed value to return from the function, since the loop could execute zero times if the backoff is misconfigured.
It looks like an option (and expect/panic if mis-configured) is the best path forward? I've made those changes in https://github.com/Brendan-Blanchard/retry-if/pull/2 which shows an example of the expansion without duplication. Can you pull it and see if it introduces anything unexpected for your use-case? I'll also be testing it with my own usages a little more before feeling confident in the change.

Code looks great. Btw what do you think of the following as a way to remove the Option<_> and also ensure there's at least one run, thus keeping the name max_retries, by switching to a loop {..}:
fn decorate_fn(impl_fn: ItemFn, config: &Ident, retry_if: &Ident) -> proc_macro::TokenStream {
    let attrs = &impl_fn.attrs;
    let vis = &impl_fn.vis;
    let sig = &impl_fn.sig;
    let block = &impl_fn.block;

    (quote! {
        #(#attrs)*
        #vis #sig {
            let start = tokio::time::Instant::now();
            let backoff_max = #config.backoff_max.unwrap_or(std::time::Duration::MAX);
            let mut attempt = 0;

            loop {
                let result = #block;

                // Return result if retry isn't required, or if we ran out of attempts
                if !#retry_if(&result) || attempt >= #config.max_retries {
                    println!("retry_if returned false, or {attempt} >= {}", #config.max_retries);
                    return result;
                }
                attempt += 1;

                let retry_wait = #config.t_wait
                    .mul_f64(#config.backoff.powi(attempt))
                    .min(backoff_max);

                if let Some(max_wait) = #config.t_wait_max {
                    let now = tokio::time::Instant::now();
                    let since_start = now - start;

                    // Return if our overall duration is going to exceed `max_wait`
                    if since_start + retry_wait > max_wait {
                        return result;
                    }
                }

                if cfg!(feature = "tracing") {
                    tracing::info!("Sleeping {retry_wait:?} on attempt {attempt}");
                }
                tokio::time::sleep(retry_wait).await;
            }
        }
    })
        .into()
}

This is nicer than the Option.take route, I'm happy to include this as part whatever we decide for the larger issue with early returns and the try operator.


Run tasks from root directory

Describe the feature you'd like to request
As a user, I want to be able to cache tasks defined in the root package.json and cache them.
{
   "pipeline": {
      "_root#build": {
          "inputs": ["list/of/inputs/to/hash/**"],
          "outputs": ["some/output/dir/**"],
          "dependsOn":["prepare"]
      },
      "_root#prepare": {
          "inputs": ["foo/**"],
          "outputs": ["another/output/dir/**"],
      },
      ....
}

Describe the solution you'd like

https://github.com/vercel/turborepo/issues/523

Consider migrating env vars to inputs and out of dependsOn? idk?

Update task graph construction to include root task edges in scheduler https://github.com/vercel/turborepo/blob/main/cli/internal/core/scheduler.go#L183

We may also need to adjust resolving root deps, perhaps we can simply add the root to PackageInfos and clean up specialized lockfile resolution https://github.com/vercel/turborepo/blob/main/cli/internal/context/context.go#L164

Describe alternatives you've considered
None

That would be very nice!  I have dozens of manual scripts to do that for me
"turbo:npm-check-updates:validate:all": "npx turbo run turbo:npm-check-updates:validate && npm run turbo:npm-check-updates:validate",

👍 We would also like this because I think it would give us an easy way to run tasks in parallel at the root. For example we have a CI task which basically runs eslint and jest both from the root of the monorepo. Ideally we'd run these in parallel. At the moment we'd use something like concurrently for this, but it's always nice to rationalise our tooling 😄.

@gsoltis I noticed this PR this got merged into the main repo.  This might be the answer to my prayers :).
When you say

That is, turbo.json must have an entry for _root#<task

What is _root in this context?  I have tried using the root package.json name but that does not work.

@dagda1 Apologies, I still need to put up the corresponding docs PR for this feature. _root was the initial token we used to denote tasks run from the root package, but after implementing, elected to switch to //. So, you need //#<task> in turbo.json

@gsoltis no need to apologise, than you for your work!

@gsoltis is it //task or //#task, i.e. you need the #

//#task. // is the token meaning "root package", # is the separator between "package" and "task". So just like building the ui package would be ui#build, running build in the root package is //#build

@gsoltis at last, I have full turbo.  Thank you sir

Awesome! Sounds like you don't need it at this point, but the docs PR is #1260

@gsoltis why would I not need it?

Oh, I just meant that it seemed like you had gotten it working
On Wed, May 18, 2022, 11:10 AM Paul @.***> wrote:

@gsoltis https://github.com/gsoltis why would I not need it?
—
Reply to this email directly, view it on GitHub
https://github.com/vercel/turborepo/issues/845#issuecomment-1130344367,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADGD7K5FLS35WQOVZCJC23VKUXB3ANCNFSM5QHL2PFA
.
You are receiving this because you were mentioned.Message ID:
@.***>


windows 10 driver

[Enter feedback here]

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

ID: 9a7021c5-410c-608f-d5d3-7a9c0e7e25a4
Version Independent ID: 4b520306-646f-6047-fe7a-1b42a20e1054
Content: Overview of INF Files - Windows drivers
Content Source: windows-driver-docs-pr/install/overview-of-inf-files.md
Product: windows-hardware
Technology: windows-devices
GitHub Login: @tedhudek
Microsoft Alias: tedhudek

Please reopen with feedback if still needed.  Thanks!


Add SHT41

Adds SHT41
https://www.adafruit.com/product/5776
Depends on https://github.com/adafruit/Wippersnapper_Components/pull/144

@tyeth  https://github.com/adafruit/Wippersnapper_Components/pull/144 has been merged and is online. When you have time, please test and add a screenshot to this PR.

@brentru

@tyeth  Try merging https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/pull/474 into this branch to pass CI

@brentru CI Passed and ready for review/merge, passed first time after 8266 fix (Was third of 3 rapid rebases)


GSD Request

--- GSD JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from  to before v4.14.260",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=88dedecc24763c2e0bc1e8eeb35f9f2cd785a7e5"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "88dedecc24763c2e0bc1e8eeb35f9f2cd785a7e5",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "f2fs: fix to do sanity check on last xattr entry in __f2fs_setxattr()\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v4.14.260 by commit 88dedecc24763c2e0bc1e8eeb35f9f2cd785a7e5. For more details please see the references link."
}
--- GSD JSON ---

This issue has been assigned GSD-2021-1002781


[Feature] Support for FlexDelegate

Hi,
Thanks for the useful plugin. If my custom model graph has tensorflow Ops which are not standard built in Ops in TensorFlow lite, then we can use FlexDelegate to include them. But I don't see this is currently supported in this plugin. Do you have any plan to add them?

To use flex delegate with this plugin:
Download the flex binaries from here.

Replace libtensorflowlite_c.so in android/app/src/main/jniLibs/arm64-v8a with libtensorflowlite_c_arm64_flex.so.
Now rename libtensorflowlite_c_arm64_flex.so to libtensorflowlite_c.so
Same steps for libtensorflowlite_c_arm_flex.so. and android/app/src/main/jniLibs/armeabi-v7a

Any advance to use flex delegate on emulator ?
Thanks in advance

@am15h your solution doesn't seem to work.  I am still getting the following error:
elect TensorFlow op(s), included in the given model, is(are) not supported by this interpreter. Make sure you apply/link the Flex delegate before inference. For the Android, it can be resolved by adding "org.tensorflow:tensorflow-lite-select-tf-ops" dependency. See instructions: https://www.tensorflow.org/lite/guide/ops_select
E/tflite  (10923): Node number 2 (FlexMutableHashTableV2) failed to prepare.
Any idea?

@MarcelloPiSchool +1 I am experiencing the same error. Are you able to figure this out yet?

@MarcelloPiSchool +1 I am experiencing the same error. Are you able to figure this out yet?

No I have not :/

I currently have this issue, I'm also running on a physical device but the issue still persist


Unable to connect client to appsync api.

Hello,
I was easily able to spin up an appsync graphql api using the app-backend/appsync/dynamo configuration.  Thank you!
However, its not clear that a service role is created.  Is that supposed to happen?
Also, I was able to spin up a client from app-client/appsync-client, but after user pool authentication,  I am left with the following error when attempting to retrieve information from graphql:
GraphQL error: Unable to assume role

Please advise.

@cbaron did you find a solution? I'm struggling with this currently.

I did!
The README does not include how to create the data sources and roles.   Check app-backend/appsync/dynamo/package.json's scripts attribute to find the deploy-prod command.

I also solved this. What I did was:

Realize that serverless deploy-appsync doesn't actually create roles / policies
Run serverless deploy to have the roles / policie created
Realize that there were some policy strings hardcoded to the us-east region while I'm using eu-west so manualla fixed them as well


Use --locked for install command

Installation should use the Cargo.lock from the repo for reproducibility and theoretically to reduce the possibility of a supply-chain attack.

Makes sense.