Reduce how much code is generated

An attempt to replicate the wins in #687 without using unsafe or losing any performance. To achieve this, all commonly duplicated methods have been extracted to less generic methods (only generic on R)  which parse up to the visit method and returns an enum to indicate how to proceed. Specifically these enums hold the Error themselves instead of being wrapped in a `Result´ since that helps codegen slightly.
I unfortunately only have access to a laptop prone to throttling during benchmarking atm, so I don't have reliable measurements but this does seem to give no difference in performance or a couple of percent slowdown so I'd appreciate if someone could attempt to run this independently. (To get some more precise measurements in json-benchmark I hacked in criterion which can run with this command  cargo run --release --features lib-serde,all-files,parse-struct,parse -dom,serde_json,criterion --no-default-features -- --bench)
cargo llvm-lines  --bin json-benchmark --no-default-features --features lib-serde,file-twitter,performance  | head -30

Before
  Lines          Copies       Function name
  -----          ------       -------------
  111368 (100%)  1640 (100%)  (TOTAL)
   13186 (11.8%)   43 (2.6%)  <serde_json::de::SeqAccess<R> as serde::de::SeqAccess>::next_element_seed
    9397 (8.4%)    15 (0.9%)  <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_struct
    5430 (4.9%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::User>::deserialize::__Visitor as serde::de::Visitor>::visit_map
    4267 (3.8%)    15 (0.9%)  <serde_json::de::MapAccess<R> as serde::de::MapAccess>::next_key_seed
    3939 (3.5%)    39 (2.4%)  <serde_json::ser::Compound<W,F> as serde::ser::SerializeMap>::serialize_value
    3262 (2.9%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::Status>::deserialize::__Visitor as serde::de::Visitor>::visit_map
    3151 (2.8%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::User>::deserialize::__Visitor as serde::de::Visitor>::visit_seq
    2722 (2.4%)     7 (0.4%)  <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_seq
    2353 (2.1%)    38 (2.3%)  <serde_json::de::MapAccess<R> as serde::de::MapAccess>::next_value_seed
    2162 (1.9%)   119 (7.3%)  core::ptr::drop_in_place
    1947 (1.7%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::Status>::deserialize::__Visitor as serde::de::Visitor>::visit_seq
    1888 (1.7%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::Media>::deserialize::__Visitor as serde::de::Visitor>::visit_map
    1864 (1.7%)    15 (0.9%)  <serde_json::de::MapKey<R> as serde::de::Deserializer>::deserialize_any
    1789 (1.6%)     7 (0.4%)  <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_str
    1626 (1.5%)     6 (0.4%)  serde_json::de::Deserializer<R>::deserialize_number
    1557 (1.4%)    39 (2.4%)  serde::ser::SerializeMap::serialize_entry
    1422 (1.3%)     6 (0.4%)  serde::ser::Serializer::collect_seq
    1330 (1.2%)    25 (1.5%)  core::result::Result<T,E>::map
    1321 (1.2%)    10 (0.6%)  <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_option
    1291 (1.2%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::SearchMetadata>::deserialize::__Visitor as serde::de::Visitor>::visit_map
    1013 (0.9%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::Media>::deserialize::__Visitor as serde::de::Visitor>::visit_seq
     988 (0.9%)    28 (1.7%)  <serde::private::de::missing_field::MissingFieldDeserializer<E> as serde::de::Deserializer>::deserialize_any
     946 (0.8%)    38 (2.3%)  serde::private::de::missing_field
     910 (0.8%)     5 (0.3%)  alloc::raw_vec::RawVec<T,A>::grow_amortized
     867 (0.8%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::StatusEntities>::deserialize::__Visitor as serde::de::Visitor>::visit_map
     854 (0.8%)     1 (0.1%)  json_benchmark::copy::twitter::_::<impl serde::ser::Serialize for json_benchmark::copy::twitter::User>::serialize
     817 (0.7%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::UserMention>::deserialize::__Visitor as serde::de::Visitor>::visit_map

After
  Lines         Copies       Function name
  -----         ------       -------------
  90777 (100%)  1617 (100%)  (TOTAL)
   5430 (6.0%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::User>::deserialize::__Visitor as serde::de::Visitor>::visit_map
   5118 (5.6%)    43 (2.7%)  <serde_json::de::SeqAccess<R> as serde::de::SeqAccess>::next_element_seed
   4885 (5.4%)    15 (0.9%)  <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_struct
   3262 (3.6%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::Status>::deserialize::__Visitor as serde::de::Visitor>::visit_map
   3151 (3.5%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::User>::deserialize::__Visitor as serde::de::Visitor>::visit_seq
   2353 (2.6%)    38 (2.4%)  <serde_json::de::MapAccess<R> as serde::de::MapAccess>::next_value_seed
   2301 (2.5%)    39 (2.4%)  <serde_json::ser::Compound<W,F> as serde::ser::SerializeMap>::serialize_value
   2183 (2.4%)     7 (0.4%)  <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_seq
   2162 (2.4%)   119 (7.4%)  core::ptr::drop_in_place
   1947 (2.1%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::Status>::deserialize::__Visitor as serde::de::Visitor>::visit_seq
   1888 (2.1%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::Media>::deserialize::__Visitor as serde::de::Visitor>::visit_map
   1785 (2.0%)    15 (0.9%)  <serde_json::de::MapAccess<R> as serde::de::MapAccess>::next_key_seed
   1744 (1.9%)    15 (0.9%)  <serde_json::de::MapKey<R> as serde::de::Deserializer>::deserialize_any
   1557 (1.7%)    39 (2.4%)  serde::ser::SerializeMap::serialize_entry
   1422 (1.6%)     6 (0.4%)  serde::ser::Serializer::collect_seq
   1299 (1.4%)     7 (0.4%)  <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_str
   1291 (1.4%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::SearchMetadata>::deserialize::__Visitor as serde::de::Visitor>::visit_map
   1013 (1.1%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::Media>::deserialize::__Visitor as serde::de::Visitor>::visit_seq
    988 (1.1%)    28 (1.7%)  <serde::private::de::missing_field::MissingFieldDeserializer<E> as serde::de::Deserializer>::deserialize_any
    946 (1.0%)    38 (2.4%)  serde::private::de::missing_field
    910 (1.0%)     5 (0.3%)  alloc::raw_vec::RawVec<T,A>::grow_amortized
    894 (1.0%)     6 (0.4%)  serde_json::de::Deserializer<R>::deserialize_number
    867 (1.0%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::StatusEntities>::deserialize::__Visitor as serde::de::Visitor>::visit_map
    854 (0.9%)     1 (0.1%)  json_benchmark::copy::twitter::_::<impl serde::ser::Serialize for json_benchmark::copy::twitter::User>::serialize
    817 (0.9%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::UserMention>::deserialize::__Visitor as serde::de::Visitor>::visit_map
    769 (0.8%)     1 (0.1%)  <json_benchmark::copy::twitter::_::<impl serde::de::Deserialize for json_benchmark::copy::twitter::Url>::deserialize::__Visitor as serde::de::Visitor>::visit_map
    741 (0.8%)    10 (0.6%)  <&mut serde_json::de::Deserializer<R> as serde::de::Deserializer>::deserialize_option

@dtolnay are you able to take a look at this?

👍 this would be great to have, especially in crates that depend on crates with with lots and lots of Deserialize types.

This reduces the overall compile time of the gltf crate by about ~50-55% in my testing. (and the compilation of the extremely heavy gltf-json part where all the serde stuff lives by ~2/3)
Timings with this PR
Timings with the current release version of serde_json

I did 5 runs of json benchmark for both the current master branch and this PR on my home Linux server with everything I have running on it disabled (0.00 average load, 3950x CPU, stayed sub 60C the entire time so no thermal throttling, rust 1.63, sccache disabled, rm -rf ./target/release/ && RUSTFLAGS='-C codegen-units=1' cargo run --release --no-default-features --features parse-struct,lib-serde,all-files --timings instead of cargo clean to preserve the cargo-timings).
For this PR, canada.json was ~8% faster, citm_catalog.json was ~6% slower, and twitter.json was basically the same. Build times were slightly faster as well, though it's dominated by the jemalloc-sys build script. The final json-benchmark bin compile time was reduced by about 1s (from ~8s to ~7s).
Averages
Current 44d9c53e2507636c0c2afee0c9c132095dddb7df
data/canada.json:       538 MB/s
data/citm_catalog.json: 1036 MB/s
data/twitter.json:      754 MB/s
build times:            24.264s

This PR 60e4ac239f3e8d6c570af093780e2282319ec6a4
data/canada.json:       580 MB/s
data/citm_catalog.json: 974 MB/s
data/twitter.json:      748 MB/s
build times:            23.11s

Differences (PR / Current)
data/canada.json:       107.8067%
data/citm_catalog.json: 94.0154%
data/twitter.json:      99.2042%
build times:            95.2440%

Kindest little bump - what is the status of this PR?
Is there anything where help would be needed?

The PR has some conflicts now, but nothing that would be difficult to fix. This is still something I'd like to see merged but in the end it is up to the time and interest of the owner(s).


Missing name in your license file

https://github.com/jgaskins/redis/blob/master/LICENSE#L3
You need to put your name in.
I wrote auto-instrumentation for your library for otel, and to test it, I just used your specs. I noticed the missing name when I was adding your license to the corresponding spec in my repo:  https://github.com/wyhaines/opentelemetry-instrumentation.cr/blob/main/spec/instrumentation/jgaskins_redis_spec.cr
I went ahead and dropped your name into my copy, but you probably want to get it inserted into your original, too.  :)

Oops! Fixed in https://github.com/jgaskins/redis/commit/10138fd6ad98d5751c882632b3fd15f5010fa189


Install and run ADOP locally

Good afternoon Team,
I would like to setup ADOP on my local env running iOS.
Can you share in more details a set of instructions with specific steps in order to spin up ADOP?
Current Specs:
Docker Desktop Community

Version <IP_ADDRESS> (31259)
Engine: 18.09.2
Compose: 1.23.2
Machine: 0.16.1
Kubernetes: v1.10.11

My sincere apologies. Thanks for your guidance and support,
garzon

Hi @onegarzon,
You can either spin up ADOP/C on AWS using the following instructions.
Or if you have a local VM with Docker engine installed you can use the quickstart script from this repository in local mode to provision ADOP locally. You will need at least 6GB of memory allocated to the VM.
./quickstart.sh  	    -t local  	    [-m <MACHINE_NAME>]  	    [-u <INITIAL_ADMIN_USER>]  	    [-p <INITIAL_ADMIN_PASSWORD>]
Please let me know if you have any questions.

Closing issue as no response.


PLEASE REWRITE THE UI

Maybe make this app in kotlin, it would be so much better, curremtly the ui is extremely buggy and impossible to use, threre is also no way to resume transfer and change download location

No.
You have my blessing to write a replacement app in kotlin. Have fun.


[Snyk] Security upgrade @angular/cli from 1.0.0 to 1.6.4

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to fix one or more vulnerable packages in the `npm` dependencies of this project.
Changes included in this PR

Changes to the following files to upgrade the vulnerable dependencies to a fixed version:

infrastructure/oss/testdata/package.json
infrastructure/oss/testdata/package-lock.json

Vulnerabilities that will be fixed
With an upgrade:

Severity
Priority Score (*)
Issue
Breaking Change
Exploit Maturity

713/1000  Why? Proof of Concept exploit, Recently disclosed, Has a fix available, CVSS 6.4
Prototype Pollution SNYK-JS-JSON5-3182856
No
Proof of Concept

(*) Note that the real score may have changed since the PR was raised.
Check the changes in this PR to ensure they won't cause issues with your project.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings
📚 Read more about Snyk's upgrade and patch logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Prototype Pollution

 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.


Adds reference to DarshanDeshpande/jax-models

h/t for @DarshanDeshpande for creating this, and to @cgarciae for reporting it.

Codecov Report

Merging #2118 (09802df) into main (a9af215) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #2118   +/-   ##
=======================================
  Coverage   74.95%   74.95%
=======================================
  Files          59       59
  Lines        5059     5059
=======================================
  Hits         3792     3792
  Misses       1267     1267

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 a9af215...09802df. Read the comment docs.


Interact with existing session?

Hi there, I've been looking for a way to download the results of tests from a moon session pod so they can be made available to the CI/CD pipeline. I found the documentation here: https://aerokube.com/moon/latest/#_accessing_files_downloaded_with_browser
But I have a question.
During the process of running the test, the local terminal sends off the request to moon, and moon then runs the test, saving the files locally to the pod, and accessible via the URLs specified in the documentation. My question is this.: In order to access those files, I need to end the current python session which triggered the moon pod, go and download the results from the URLs, then reconnect to the session and terminate it cleanly. Yes, I can wait for the timeout, but I'd rather have testers cleanup tests as they go as a matter of habit.
Assuming I can note the session ID, how do I reconnect with the session so I can terminate it properly?

@huang-jy Moon is fully W3C Webdriver protocol compatible. So every action like opening a new session, opening URL in browser, downloading a file and terminating a session is a separate HTTP request. To delete a session you can send an HTTP request like this:
DELETE /wd/hub/session/<id> # /wd/hub is actually just a constant prefix

Usually your Selenium client does this when you do driver.quit().

Usually your Selenium client does this when you do driver.quit().

Yes, and I am particular about making sure both the session and the driver call .quit() before ending, but in order to download the files from the session, I need it to stay up after I close out (without closing the session)
Thanks for the details about the delete call -- I couldn't find mention of it on the documentation and didn't think of checking the actual webdriver documentation.


syncing master

Thank you for contributing to openstack/openstack-ansible-os_neutron!
openstack/openstack-ansible-os_neutron uses Gerrit for code review.
If you have never contributed to OpenStack before make sure you have read the
getting started documentation:
http://docs.openstack.org/infra/manual/developers.html#getting-started
Otherwise please visit
http://docs.openstack.org/infra/manual/developers.html#development-workflow
and follow the instructions there to upload your change to Gerrit.


[1264] Fix end date hint text

Context
The programme end date hint text displays a string because it doesn't exist in the translation file. This is the fix.
Changes proposed in this pull request

Add end date hint text to translation file
Change start date hint text to match prototype

Guidance to review

Navigate to the programme end date section
Check that the hint text is correct for both start date and end date

 hint text on programme end date is weird

Code looks fine but I get this when I try to review the app?

Code looks fine but I get this when I try to review the app?

@darokel https://trello.com/c/C0pAx2II/924-review-app-sometimes-doesnt-work


Precision to number of characters?

I need 10 characters but it goes between 9 and 11 when I fiddle with the precision?

try echo \Lvht\GeoHash::encode(117.031689,36.65396, 0.00002);


fix(Modbus): reduce modbus timeout from 2000 to 250ms for 115200 baud

Description
It turns out that a significant portion of modbus requests fails returning in 2000ms stalls of the ESP since the default timeout in the ModbusMaster library is hardcoded to 2000ms.
In fact I think that the timeouts are busy response messages which the ModbusMaster can't handle.
Since the ModbusMaster library has not been updated for 8 years with many PRs for adding a timeout setting change to a fork which basically is the original library plus the support for setting a timeout.
Since 115200 baud is more than 10x faster than 9600 baud its resonable to reduce the timeout from 2000ms to 250ms. In my tests the failure rate was not changed by this reduction.
How Has This Been Tested?

[ ] Not applicable

Inverter type

[ ] Simulated inverter
[X] Growatt 3000 TL-X
[X] Growatt MID 15 TKL3-XH

Stick type

[X] Shine X
[ ] Shine S
[ ] Lolin32
[ ] Nodemcu32

Since the ModbusMaster library has not been updated for 8 years with many PRs for adding a timeout setting change to a fork which basically is the original library plus the support for setting a timeout.
May be it is a good idea to drop the current modbus lib alltogether and replace it by something like this https://github.com/eModbus/eModbus


Need help with running semifrozen_finetuning.py

Hi,
I want to try your models and when I run the semifrozen_finetuning.py script using the data provided by you. I got the following error messages.
Maybe you can help solve it? Thanks a lot in advance.

Have a nice day!
Best,
Lihua

Hi,
I would like to report I am having the same issue, but by running the 'flexible_model_eval.py' script using provided data and suggested terminal arguments. I am wondering I am missing something?
Best,
Paul
Cursor_and_TITAN-main_—-bash—_188×45.pdf

HI @paulrbuckley and @Lihua1990
Thanks for your interest in our work and sorry for the late reply.
Did you verify that the path used at L140 (model_dir/protein_feature_language.pkl) actually exists? If yes, my second guess is that it might be related to the python version you use 3.8 and 3.9 respectively and I think we developed the code on 3.7).
We will look more into this and come back soon

To update, running in 3.7 appears to have resolved the issue. Still running the code but it hasn't immediately failed.

Thanks for the reply. I have checked that the .pkl file is there. I will check later if this is the problem with the python version.

after downgrading python to 3.7, new error occurred 'No file exists' for 'best_ROC-AUC_bimodal_mca.pt', checked the directory inside the trained_model/weights/ one .pt file exists and I just renamed it. Now it is running, no error so far...
Thank you!

Hi,
I have slightly updated the workflow of the semifrozen_finetuning.py script to fix all your issues. Only minor changes were needed in the TITAN codebase itself
Original issue:

[x] I released a new pytoda version which is the data handling package of TITAN. See release details for v1.0.1 here and v1.0.2 here. The reason why you observed the TypeError when trying to restore the language object with dill is because we originally used python 3.7 to dump those objects. This is a known issue in dill and unrelated to the native pytoda code. There is currently an open PR in dill on this: https://github.com/uqfoundation/dill/pull/406

Followup issue:

[x] I renamed the weights file from done_training_bimodal_bimca.pt to best_ROC-AUC_bimodal_mca.pt to avoid the last error @Lihua1990. Glad you fixed it yourself, but if you were to re-download the data from Box, it should work out of the  Box (pun intended!) now

Housekeeping:

[x] While doing this, I also fixed the argument name ordering/layout in the TITAN README
[x] python version compatibility: I verified that the environment setup and the execution of the semifrozen_finetuning.py now runs smoothly with python 3.6, 3.7, 3.8 and 3.9


Changes to allow the use of new Firebase Cloud Messaging systems

Changes that allows Pushraven to keep working as usual, but add a new functionality: it is no longer limited to use the old authentication system for FCM (although it is still used by default, if not selected another one). The user can now configure parameters such as the URL of the FCM service or the authentication system. Pushraven can also generate the JSON for the notification inside the field 'message', as required by the new FCM system.
It also has been added a new function that allows the user to generate a 'body' field inside the 'notification' field directly, instead of automatically assigning the 'text'.

I will look into this on the weekend.
Does your commit fully implement the new API?

Well, it allows the user to enter all parameters that were immutable before. In case the users don't, it simply uses the "default configuration", that was your original one. The new API uses another authentication system (the token must be referred to as "Bearer " instead of "key="), and also needs the application to send the messages to a non-predefined url (it depends on the final app), so I decided to make everything customizable, just in case tomorrow Google says "ok, now we change everything again", so anyone can adapt it to the specifications of almost any API.


[MNOE-474] Add endpoints to admin api

@ouranos Added endpoints so that I was able to group reviews/comments and questions/answers together.

@ouranos Updated Specs 👍

Closing in Favor of #366

Reopening to get it in the 3.3 version


fix(cmp): wrong cmp setup instruction

As you can see in https://github.com/onsails/lspkind.nvim#option-2-nvim-cmp

Oh, thanks!


➕(layout) add 'dj-pagination' dependency and use it on blogposts and persons

Purpose
Previously page listings objects lacked of any pagination. This prooved to be a flaw with some lists which have largely too many objects. However since these pages are CMS pages, we don't have possibility to implement pagination in their views.
Proposal
This commit uses dj-pagination which provides template tags to make pagination in place directly in templates without manipulating anything from any view.
This adds a new dependency, a new template, a new setting, a new sass object source and involves blogpost and person list templates changes.

[ ] Reproduce search pagination CSS from ".paginate-course-search" into the new ".pagination" object which will be shared through every lists;
[ ] Update dj-pagination templates to fit to this CSS;
[ ] Update search components to use the ".pagination" object;

@sampaccoud ok so now, there is only a single '.pagination' CSS object shared through every pages and components with the same behavior and display.

@sampaccoud also note this add new translatable string for pagination (last page, currently reading page, etc..) to collect in PO files.

Also this might just be my opinion but I think this version of the pagination shows way too many pages by default

The one I did in react uses 1, n-2, n-1, n, n+1, n+2, last which seems more reasonable to me

@mbenadda i have added some settings to control the window and margin between showed pages and here is what i've ended to:

Nice job on the pagination size 👍


[BUG] Interval for histogram in event analytics is inconsistent

What is the bug?
Clicking in the patterns table seems to reset the selected interval, but the selected interval in the dropdown is not changed - this should be consistent, either reset to default and have dropdown change with it or keep the same interval and update the chart accordingly
How can one reproduce the bug?
Steps to reproduce the behavior:

Go to event analytics and run a query
histogram interval says minute but is actually year
change minute to hour
change hour back to minute
the histogram interval is now minute
update state (update the query, or click a pattern in the patterns table to add a filter)
the histogram interval is back to year

What is the expected behavior?
The interval should persist
What is your host/environment?

OS: [e.g. iOS]
Version [e.g. 22]
Plugins

Do you have any screenshots?
If applicable, add screenshots to help explain your problem.
Do you have any additional context?
Add any other context about the problem.

I updated the issue title and added reproduction steps, this is not specifically to patterns but more of an issue in event explorer

Thanks! Will try to work on a fix next week to get more familiar with the code base

Fixed with PR: #1266


Pyro compatibility

For context, see: https://github.com/mackelab/sbi/pull/288, https://github.com/mackelab/sbi/issues/286
While the bug was fixed in Pyro, no new Pyro version has been released yet. This PR explicitly passes transforms={} to Pyro, which allows using 1.4.0.

Codecov Report

Merging #339 into main will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #339   +/-   ##
=======================================
  Coverage   73.62%   73.62%
=======================================
  Files          48       48
  Lines        2684     2684
=======================================
  Hits         1976     1976
  Misses        708      708

Flag
Coverage Δ

#unittests
73.62% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

sbi/inference/posteriors/base_posterior.py
66.83% <ø> (ø)

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 a4c1f2a...8cacba6. Read the comment docs.


Fabric

Are you interested in a fabric port of Buycraft? (Assuming I PR one)

I was really hoping for there to be verison of this for fabric but I get I was wrong


mybank application

Grant Application Checklist

[x] The application-template.md has been copied, renamed ( "project_name.md") and updated.
[x] A BTC or Ethereum (DAI) address for the payment of the milestones is provided inside the application.
[x] The software of the project will be released under the Apache license version 2.0 as specified in the terms and conditions.
[x] The total funding amount of the project is below USD $30k for initial grant applications and $100k for follow-up grants.
[x] The initial PR contains only one commit (squash if needed before submitting your PR).
[x] The grant will only be announced once we've successfully delivered the first milestone.

 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 @Noc2 , We have updated the milestone chapter to highlight our core functions.
The pallet of oracle and reward are developed base on open-runtime-module-library-oracle and open-runtime-module-library-reward. We have deleted these two parts in the Deliverable column.

Hi, Noc2
As you said, most of the "basic functions" we listed are already in the ecosystem or someone is preparing to do. Although we provide function like "leverage trading", it's just a part of our "basic function". The function such as depositing and withdrawing money is every bank has.
We named ourselves MYBANK so that everyone can set up their bank through their social network. Some people have many friends, and some people are more trusted by others in society. This is based on his "Proof of Work" in real life. We want to transform this part of "trust" into its counterpart in the digital world. The personal bank’s ability to attract deposit and lend money comes from its level of trust in social networks.
On the other hand, there is a phenomenon that building a centralized application on a decentralized platform, which is what we refuse to do. We want to build a collective social-network-bank on a decentralized platform. This should be another important point we want to state. For both the borrower, the lender, and the network maintainer, we want to design a reasonable way to efficiently and cost-effectively complete the game between the interests of the participants.
The core problem we want to solve is: when a person has funds to turn around, such a ledger is transparently recorded in everyone’s social circles, we all know the debt situation of our friends on this network, we can follow Such a piece of data can intuitively see to what extent a person can carry out financial activities at what level.
In the "Basic Features" version, we provide over-collateralization, which is a regular feature. Since we only came into contact with the substrate at the beginning of the year, in the first stage, we want to become more familiar with the substrate by implementing the development of basic functions. What we want to show more is the multi-layer guarantor mortgage, which gives higher system rewards to this part. In this part, anyone can crowdfund funds based on the trust of others in him through his social network. This is a demonstration of the ability to absorb reserves. Similarly, he can choose the degree of trust in another person to lending. Each social network has its deposit and loan interest rate, and everyone can provide bank-like functions through social networks.
This is essentially a transmission of trust.

Thanks for the quick reply. The updated deliveries look much better to me and generally we would be quite interested in a decentralized reputation/credit score system. To be honest, your second milestone isn’t so interesting to me, since we already have a few teams working on dex implementations, which you might want to reuse. (feel free to remove it for now). I therefore suggest to focus more on milestone 1: For example how to your prevent the following “attacks” with your credit score system: sybil, re-entry/whitewashing or collusion attack? And regarding the UI: Do you have some mock-ups which you could share?

Hi @Noc2 , we updated the Milestone chapter and deleted the DeX part. DeX is not our core function. We found that the existing DeX does not provide leveraged trading. If users need to short or add leverage to make long, they need to switch between multiple platforms. We hope to simplify this step and further improve the credit scoring system through transaction records. According to your suggestion, our energy will focus on the development of the Milestone1 part.  We are still in the development stage. Our main focus is on designing products, developing Substrate and React. For the time being, we do not have a complete UI interface.
Regarding sybil attacks or collusion attacks. First of all, transactions that occur in MyBank will charge a certain percentage of handling fees. A minimum balance is set for each account, and accounts below this balance will be destroyed. To prevent users from using the same high-credit-score account, frequently adding friends with new accounts to increase the credit score of new accounts, causing the same user to control multiple high-credit-score sub-accounts. When adding friends, we will ask users to mark a correlation to their friends to indicate the correlation between the user and the friend. The higher the correlation of the friend, the more important the user is to this social relationship.
A user has up to m friends, and users can update friend correlation at any time, but the sum of the correlation that a user can assign is equal to 1. For example, if a user assigns 0.2 to a friend, the others can only get 0.8 at most. When the social network factor is included in the credit score calculation, the system will only take the user profile of the top n friends (ranked according to the friend correlation), or the weight of the friends ranked behind will be lower. It is not that the more friends a person has, the more friends with high credit scores, the higher his credit score will be.
On the other hand, we will judge the value of the user's deposit according to the time factor. The weight of the deposit in the account for one year and one day is completely different when calculating the credit score.
Our ultimate goal is not only to use the data generated inside the MyBank platform to generate the corresponding score (User Profile), we hope that the data generated by users in the Social Network Bank and Private Pool will also be connected to the credit system by a certain weight. Digital assets on the chain are only a part of personal assets, and in the future we hope to be able to cooperate with third-party institutions to introduce users' off-chain assets and transaction records on other platforms into MyBank by generating corresponding vouchers, as a reference factor for credit system scoring, the more data accessed, the more perfect the credit subsystem will be and more referential.
However, when the first phase of the project was just started, the credit score generated due to too little data did not have much reference value. In the early stage, we wanted to attract more users to participate by developing related DeFi modules, and actively cooperate with third-party organizations under the chain to support users to introduce off-chain assets to MyBank. When the user scale reaches a certain level and the governance organization is gradually improved, the entire ecology will enter a stage of rapid development.

Hi @Noc2
I'm sorry that I didn't reply to you for so long. I really need some time to think about the feasibility of the credit system and how to implement it specifically.
Frankly,  I'm a back-end programmer and we didn't have UI, so it took me a few days to build the basic website and now my colleagues and I have finished the development of SWAP and Liquidity. To some extent, we are already familiar with the use of Substrate and PolkadotJS.
Back to the reputation System, it built on three premises:

First, the particularity of social networks is different from other networks
Second, we refer to the previous design in this area, such as EigenTrust etc.
Third, MyBank itself wants to be similar to Grameen Bank on the blockchain. We believe that the blockchain technology should serve more people's credit sub-system or the whole of MyBank, and we position it to use the blockchain technology to achieve inclusive finance.
It's based on a vote of friendship, I've abstracted social relationships into a Graph. When calculating the voting score, it will randomly select acyclic networks to participate in the calculation. This should soften the effect of the Sybil Attack. ( Paillier and VRF will solve my problem？)
Another is the Burn mechanism of Coindays, I use it as another credit rating factor.
What's left is how many friends do you have, how many assets do your friends have, are they willing to vouch for you, etc. Of course, there are certain conditions for each valid friend. This is also associated with the Burn mechanism of Coindays.
We intend to correlate voting behavior with incentives to ensure continued voting.
Maybe you can give us some suggestions from a more professional perspective.

UI: homepage

UI: social networks

Different colors represent different relationships, Friends or not, vouch or not, one-way vote, obligatory relationships etc...

Hi @Noc2, I am so sorry for the ref problem. We have updated the grant application and added the Acala reference link in the substrate repo code. BTW they did a great job, we learned a lot from them.
Now we have a little problem, I don’t know if it's possible to route event messages only to the specified account's address on the substrate instead of flooding. In our scenarios, such as my friend has been voted, I want to know this event, but if it’s someone else, I don’t need to receive this event.

Hi @mmagician, we plan to use Paillier to realize anonymous voting. Using paillier to realize anonymous voting has been applied in many scenarios. Here we should not encounter technical problems that cannot be solved (rust-paillier), but more is how to design a reasonable system. In the last few days, we have invited some friends to discuss some possible problems. We hope to achieve anonymity in more fields in the future , but this year is our first year in the substrate/polkadot community. As beginners, we are still looking for better solutions, therefore some contents have not been put on milestones for the time being. We hope to wait for the completion of the first milestone before considering more general solutions.
Anonymity is also related to the friend-correlation(trust score) we commented on before. The degree of relationship between users is very important to the system. The use of social network weights when calculating credit scores will refer to this part of the data. The total correlation of a certain user is limited. For some social purposes, users don't want their reviews of their friends to be seen by the parties concerned. At the same time, the system also needs to get real correlation data. Everyone has their own social networks. Even if A and B are friends, the social networks of A and B cannot be completely intersected. If A wants to guarantee B, A needs more information about B's social networks. If B has more powerful(high score) friends, A will be more confident for guarantee loans. In the future, with the development of blockchain, when the assets and certificates under the chain begin to enter the blockchain, these real social network data will bring a broader application scenario.
Regarding the issue of increasing credit scores through repeated borrowing & repaying, here we have introduced other evaluation factors in addition to handling fees. Too frequent borrowing is abnormal behavior. First, a maximum number of lending times will be set on the system. Too frequent borrowing will reduce the user's credit score instead. In social network bank, collective governance and social constraints are also a kind of suppression of this behavior.  The social network itself can be used as a governance tool. (Similar to Grameen Bank-community development bank) On the other hand, we will judge the value of the user's deposit according to the time factor. The weight of the deposit in the account for one year and one day is completely different when calculating the credit score.

@4his2 @armatrix care to share a quick status update, along with an ETA if possible? Your repositories look inactive and we were hoping to receive your first delivery a bit over a month ago now.
As long as you're actively working on the project, delays aren't a big problem, but we'd appreciate it if you could keep us in the loop. Note that if we don't hear from you soon, we will assume you're no longer interested and terminate the agreement.

This grant is being terminated due to inactivity. Feel free to apply again if you're still interested.


Unknown SteamID input format

Error: Unknown SteamID input format " https://steamcommunity.com/tradeoffer/new/?partner=183172126&token=K9_o2T9x Create a new url"
    at new SteamID (/home/bot/node_modules/steamid/index.js:101:9)
    at new TradeOffer (/home/bot/node_modules/steam-tradeoffer-manager/lib/classes/TradeOffer.js:189:18)
    at TradeOfferManager.createOffer (/home/bot/node_modules/steam-tradeoffer-manager/lib/classes/TradeOffer.js:25:14)
    at Trade.validateOffer (/home/bot/index.js:187:45)
    at self.getInventory (/home/bot/lib/index.js:152:36)
    at Request.request [as _callback] (/home/bot/lib/inv.js:49:20)
    at Request.self.callback (/home/bot/node_modules/request/request.js:186:22)
    at emitTwo (events.js:106:13)
    at Request.emit (events.js:191:7)
    at Request.<anonymous> (/home/bot/node_modules/request/request.js:1081:10)

when u get this error automatical site crash and restart

It's because that's an invalid trade link.


bato does not work?

Steps to reproduce
i mostly used the batoto extension before it got removed. will it not be available in mihon too? i can see it in my extensions and i can see the series but i can't read the chapters. it shows the same error in tachi.
Expected behavior
i should read it just fine
Actual behavior
i can't read the chapters
Crash logs
No response
Mihon version
0.16.0
Android version
Android 14
Device
Samsung Galaxy S23
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is an issue with an official extension, I should be opening an issue in the extensions repository.
[X] I have gone through the FAQ and troubleshooting guide.
[X] I have updated the app to version 0.16.0.
[X] I have updated all installed extensions.
[X] I will fill out all of the requested information in this form.

No 2st part extension support


Action space changes

Motivation and Context
Changing action space names to say what they actually do, adding the look up and look down actions
How Has This Been Tested
Tested before ICCV experiment push, not positive that Look Up and Look Down still work. You will need a new build of habitat-sim to support the look action changes.
Types of changes

Docs change / refactoring / dependency upgrade
Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have completed my CLA (see CONTRIBUTING)
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

This PR will get modified significantly once #46 is merged. @danielgordon10 we should wait for that to be merged.

I support that it's better land after the challenge. @danielgordon10, let's add WIP (Work In Progress) to the PR's title till challenge will be finished.

@danielgordon10 we have green light for this change.

For some reason this PR isn't updating. I will close it and open a new one.


Unnecessary lower the PX in css

Describe the bug
.rule {
  margin: 0.75rem calc(100% - 14PX);
  height: calc(100% - 1.25rem);
  font-size: 12Px;
  line-height: 1rem;
}

We use this Uppercase px trick to disallow postcss-px2rem transform px to rem, but swc-css will lowercase px anyway, this would cause unexpected behavior when trying to use postcss-px2rem with swc-css. Also this transform is
a little redundant because browser will treat PX and px as same unit.
Code snippet
<!DOCTYPE html>

  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>

px

PX

Input code
.rule {
  margin: 0.75rem calc(100% - 14PX);
  height: calc(100% - 1.25rem);
  font-size: 12Px;
  line-height: 1rem;
}

Config
No

Playground link
No response
Expected behavior
.rule {
  margin: 0.75rem calc(100% - 14PX);
  height: calc(100% - 1.25rem);
  font-size: 12Px;
  line-height: 1rem;
}

Actual behavior
.rule {
  margin: 0.75rem calc(100% - 14px);
  height: calc(100% - 1.25rem);
  font-size: 12px;
  line-height: 1rem;
}

Version
swc_core 0.53.1
Additional context
No response

This is intentional @alexander-akait

We use this Uppercase px trick to disallow postcss-px2rem transform px to rem, but swc-css will lowercase px anyway, this would cause unexpected behavior when trying to use postcss-px2rem with swc-css. Also this transform is
a little redundant because browser will treat PX and px as same unit.

I think it's a bug of postcss-px2rem.
Px is same as px, so it should transform even if it's Px

Yes, px and Px and PX are the same, it is safe to lowercase/camelcase them, so I think too, it is a bug in postcss-px2rem
@IWANABETHATGUY Can you run postcss-px2rem before swc plugins? It should help

Yes, px and Px and PX are the same, it is safe to lowercase/camelcase them, so I think too, it is a bug in postcss-px2rem
@IWANABETHATGUY Can you run postcss-px2rem before swc plugins? It should help

yeah, I think you are right.


Patch activate script to set VIRTUAL_ENV correctly.

Patch a virtualenv's activate script to not resolve symlinks when setting the environment variable VIRTUAL_ENV.
Fixes #1190.

Automated message from Dropbox CLA bot
@sharmaeklavya2, it looks like you've already signed the Dropbox CLA. Thanks!

One thing we should test -- does this do something really weird if someone runs pip install with a virtualenv other than the current one activated?  I.e. does
source /srv/zulip-venv-cache/<hash>/zulip-venv/bin/activate # pick a hash other than what /srv/zulip-venv points to
pip install <package>

Install the new package into /srv/zulip-venv or source /srv/zulip-venv-cache/<hash>/zulip-venv/ ?

It's not possible to activate a virtualenv other than the one /srv/zulip-venv points to, without unpatching the bin/activate script.

OK, cool.  How will this interact with how we do things in production?  I worry a bit that this new behavior might not be correct in a production venv, since in that case we can end up having multiple deployments symlinking to the same venv version...

Yeah it does seem to me that this will cause problems in production. So I think we should only do this in development.

Well actually we don't source virtualenvs in production. We use the activate_this.py script to automatically enable virtualenvs in python code. So I think it's safe to use this in production.

OK.  Probably still worth making the new code only run in development, though, since it's not useful in production and carries some confusion risk, right?

Yeah agreed.

Updated code to patch activate script only in development.

Can you rebase this to merge with #1340?

Done.

Merged, thanks @sharmaeklavya2!  I hope this will save a lot of time for folks new to virtualenvs debugging why re-provisioning didn't work.


Replace stream.take_until(...) with tokio::select! {...}

Description
Replace the convoluted stream.take_until(...) with the more standard tokio::select! {...}.
How was this PR tested?
make test-all

Why is this an improvement?

Back when we implemented the Kafka source, we had some concerns about the correctness of using take_until with a stream. More recently, as we were discussing the implementation of the Kinesis source, which uses tokio::select!, I suggested that we use the same pattern in the Kafka source so we no longer have that doubt. You seemed to agree.
I'm happy to revert to take_until but I'd still like to add the call ctx.record_progress(); in the loop. WDYT?

@guilload I cannot recall the conversation unfortunately. One problem that I can think of is the possibility that by stopping and reopening a stream could end up skipping some messages or reemitting some messages.
The problem is the same whether we use take_until or select, and depend on the implementation of the Kafka consumer.

The take until stuff looks ok.
https://docs.rs/futures-util/latest/src/futures_util/stream/stream/take_until.rs.html#119-138
"In poll_next, on the code path where we call poll_next on the stream, if an item is available we always return it."

Same for rdkafka... If poll is called, we return the item straight away. There is no buffering happening for instance.


upgrade the go libraries to latest version

Ref: https://github.com/stolostron/backlog/issues/23893
Signed-off-by: haoqing0110<EMAIL_ADDRESS>

/assign @elgnay

/lgtm


bug: SonarCloud not reporting anymore

SonarCloud appears to have stopped updating quite a while ago.
https://github.com/bcgov/nr-spar/security/code-scanning/tools/SonarCloud/status/configurations/api/f10a68f7b7b9f6560e655004769ba03937bd97048af7f70bea9eba17c4df0cb9

Fixed by Derek alone, closed and updated the sp to 0.


Some version or configuration of MySQL on OSX throws integrity errors when loading contributions

Traceback (most recent call last):
  File "example/manage.py", line 15, in <module>
    execute_from_command_line(sys.argv)
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line
    utility.execute()
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/django/core/management/__init__.py", line 377, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/django/core/management/base.py", line 288, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/django/core/management/base.py", line 338, in execute
    output = self.handle(*args, **options)
  File "calaccess_campaign_browser/management/commands/buildcalaccesscampaignbrowser.py", line 13, in handle
    call_command("loadcalaccesscampaigncontributions")
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/django/core/management/__init__.py", line 115, in call_command
    return klass.execute(*args, **defaults)
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/django/core/management/base.py", line 338, in execute
    output = self.handle(*args, **options)
  File "calaccess_campaign_browser/management/commands/loadcalaccesscampaigncontributions.py", line 25, in handle
    self.load_quarterly_contributions()
  File "calaccess_campaign_browser/management/commands/loadcalaccesscampaigncontributions.py", line 790, in load_quarterly_contributions
    self.cursor.execute(sql)
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/django/db/backends/utils.py", line 63, in execute
    return self.cursor.execute(sql)
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 133, in execute
    six.reraise(utils.IntegrityError, utils.IntegrityError(*tuple(e.args)), sys.exc_info()[2])
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 128, in execute
    return self.cursor.execute(query, args)
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/MySQLdb/cursors.py", line 205, in execute
    self.errorhandler(self, exc, value)
  File "/Users/juan/Developer/calaccess/django-calaccess-campaign-browser/lib/python2.7/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
    raise errorclass, errorvalue
django.db.utils.IntegrityError: (1048, "Column 'contributor_address_1' cannot be null")

My read of the traceback suggests this error is somewhere in python manage.py loadcalaccesscampaigncontributions. I suspect that some version or configuration of MySQL requires that more of the fields on the Contribution model need to be set to nul=True than are now.

Loading contributions
 Quarterly filings
  Marking duplicates
   Dumping CSV sorted by unique identifier
   Marking duplicates in a new CSV
  Loading CSV
  Merging CSV data with other tables
  ...

django.db.utils.IntegrityError: (1048, "Column 'contributor_address_1' cannot be null")
https://github.com/california-civic-data-coalition/django-calaccess-campaign-browser/blob/master/calaccess_campaign_browser/models.py#L636
another relevant line:
https://github.com/california-civic-data-coalition/django-calaccess-campaign-browser/blob/master/calaccess_campaign_browser/management/commands/loadcalaccesscampaigncontributions.py#L706

How do you have the repo installed currently?

pip 1.4 ~/.virtualenvs/django-calaccess-campaign-browser/lib/python2.7/site-packages (python 2.7)

mysql  Ver 14.14 Distrib 5.6.21, for osx10.10 (x86_64) using  EditLine wrapper

Running it from the example folder

Very interesting. I've never encountered this MySQL bug I'm using an earlier version.
mysql> SHOW VARIABLES LIKE "%version%";
+-------------------------+-------------------------+
| Variable_name           | Value                   |
+-------------------------+-------------------------+
| innodb_version          | 5.5.41                  |
| protocol_version        | 10                      |
| slave_type_conversions  |                         |
| version                 | 5.5.41-0ubuntu<IP_ADDRESS> |
| version_comment         | (Ubuntu)                |
| version_compile_machine | x86_64                  |
| version_compile_os      | debian-linux-gnu        |
+-------------------------+-------------------------+

If I'm reading the traceback at the top properly, the error appears to be in the SQL command that comes at the end of the script here. I wonder if we could put in some SQL sanitation techniques like COALESCE that would replace null values with empty strings. That might do it.

Alright. I've pushed a blind patch that I hope is roughly what we need. If you want to try it out, you'll need to install the repo from the source rather than pip as documented here.

I'm now getting django.db.utils.IntegrityError: (1048, "Column 'party' cannot be null") when loadcalaccesscampaignfilers is called.
full traceback here
mysql> SHOW VARIABLES LIKE "%version%"; +-------------------------+----------+ | Variable_name           | Value    | +-------------------------+----------+ | innodb_version          | 5.6.20   | | protocol_version        | 10       | | slave_type_conversions  |          | | version                 | 5.6.20   | | version_comment         | Homebrew | | version_compile_machine | x86_64   | | version_compile_os      | osx10.9  | +-------------------------+----------+

Thanks. I'll take a look when I have a minute.

I think your hunch is right. I think that some version of MySQL or OSX or some combination or the two needs our null configuration options to be more explicit than they currently are.

Does this change move the error on to another field?

@palewire I pulled, ran build and got same error at same spot

@palewire I pulled, ran build and got same error in same place.
Wondering if the change was recognized... choices updates don't require a migrations, right?

Adding COALESCE(tmp_max_filer_metadata.party, '') here moved my IntegrityError a little later.
Now I'm getting django.db.utils.IntegrityError: (1452, 'Cannot add or update a child row: a foreign key constraint fails (calaccess.calaccess_campaign_browser_filing, CONSTRAINT period_id_refs_period_id_e60da2ed FOREIGN KEY (period_id) REFERENCES calaccess_campaign_browser_filingperiod (period_id))') (full traceback here)

Ah. Duh. I think we've encountered this before and I just forgot that solution. We might need a null, or an field setting to allow a null, on that foreign key field.

A similar patch is at work here. I'll try to apply something similar to the command that's giving you trouble. Though there is some deeper thing going on with different MySQL versions and configurations I can't say I understand.

As far as the integrity error, I suspect that might be our raw data table is providing a period id that does not exist in our attempt at making a clean lookup table. Hmm. Maybe we need to back things up a step and exclude those period ids from our loader entirely until we understand them better.

I've parked our FilingPeriod table and attempt to clean the data over in a new filing_period branch. I'm rerunning the loaders myself right now. @danhillreports, if you find time later would you mind rebuilding your database from scratch and trying a fresh load. Thanks very much for helping debugging this boring database stuff.

@palewire shavin mad yak, but I got beyond the foreign key error with this inmy settings:
"init_command": "SET foreign_key_checks = 0; SET storage_engine=MyISAM;
after reading some 2010 stack overflows...

Interesting. I'm not surprised it's some lower level configuration like that. Though, to be honest, I'm kind of glad to have strict rules throwing up errors if it helps us uncover imperfections in the data we need to know about.

After working through csv and integrity errors I hit a new error:
django.db.utils.OperationalError: (1364 "'backreference_transaction_id' doesn't have a default value")
during load_quarterly_contributions() of loadcalaccesscampaigncontributions even though that field has a db_index=True.
I'm not sure if the autogenerated db_index values are a savepoint, but maybe this is because I switched to MyISAM?
I'm dropping and rebuilding with the current master code and settings, let's see if I hit the same bumps.

I wonder if a few more COALESCE methods on those fields might help. I just added them if you want them give them a try.

Update:

dropped and rebuilt with default settings
coalesced is_duplicate and amount in loadcalaccesscampaigncontributions
still get 'backreference_transaction_id' doesn't have a default value (full traceback), even with 34ce61c

After dropping and rebuilding I did not encounter the foreign key restraint error even though all my tables are INNODB.

I made a few more changes to the configuration of the field to allow blank values and set the default to an empty string. If you destroy the table and resync it against the models does that help?

@palewire I still get the error. Surprisingly I don't get the error with this test, which creates a Contribution with no backreference id. I haven't touched the settings so I assume the created test db is similar to my real db.

Have you resynced the database with the default set as a blank string?

I've been doing
mysqladmin -h localhost -u root -p drop calaccess
mysqladmin -h localhost -u root -p create calaccess
python example/manage.py migrate
python example/manage.py downloadcalaccessrawdata --skip-download --skip-unzip --skip-prep --skip-clear --skip-clean
python example/manage.py buildcalaccesscampaignbrowser

Thanks for the great details. If I wanted to recreate your env as much as possible in my Linux rig I should try upgrading to MySQL 5.6 you think?

Alrighty. I used apt-get to upgrade and here's what I'm not running. I'll try again from scratch and hope I get your error.
mysql> SHOW VARIABLES LIKE "%version%";
+-------------------------+-------------------------+
| Variable_name           | Value                   |
+-------------------------+-------------------------+
| innodb_version          | 5.6.19                  |
| protocol_version        | 10                      |
| slave_type_conversions  |                         |
| version                 | 5.6.19-0ubuntu<IP_ADDRESS> |
| version_comment         | (Ubuntu)                |
| version_compile_machine | x86_64                  |
| version_compile_os      | debian-linux-gnu        |
+-------------------------+-------------------------+

somehow it worked for me with MySQL 5.4.19. Weird. Ideas?

Are there other mysql tests or settings or diagnostics I could inspect? I checked brew doctor but didn't find any fires there.

I might have to try to replicate your machines. What kind of computer are you on and what version of OSX?

@palewire Macbook Pro late 2011, OSX 10.9.5

Thank you.


flow error "unexpected token <" ?

Hi, I have flow 0.63.1 and while checking, I encountered this error
Error: node_modules/immer/dist/immer.js.flow:15
 15: declare export default function<S>(
                                    ^ Unexpected token <

Do you know what might be the cause? Thanks!

Fix has been released in 1.0.0
Op di 30 jan. 2018 om 00:14 schreef Marcin Szczepanski <
<EMAIL_ADDRESS>
Just got this error as well, changing the declarations in immer.js.flow
to have a function name "fixed" the problem, but I'm not sure of the root
cause. That is, I just changed all the exports to:
declare export default function produce( // ...
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mweststrate/immer/issues/80#issuecomment-361419842,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABvGhP_XL1ihahdRMCqp97ughmFo_OXrks5tPlDAgaJpZM4Rr79z
.


feat: mp_ds2inserts macro

A new macro for creating SQL inserts.  Usage:
      %mp_ds2inserts(sashelp.class,outref=myref,outds=class)
      data class;
        set sashelp.class;
        stop;
      proc sql;
      %inc myref;

Generates (first 3 observations shown):
 /* class (19 rows, 5 columns) */
 insert into class set
   Name='Alfred'
   ,Sex='M'
   ,Age=14
   ,Height=69
   ,Weight=112.5
 ;
 insert into class set
   Name='Alice'
   ,Sex='F'
   ,Age=13
   ,Height=56.5
   ,Weight=84
 ;
 insert into class set
   Name='Barbara'
   ,Sex='F'
   ,Age=13
   ,Height=65.3
   ,Weight=98
 ;

A corresponding test was provided in mp_ds2inserts.test.sas

All tests passing

:tada: This PR is included in version 2.36.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Fix event listener issue (#4126)

What have you changed? (mandatory)
Check status of CompactionJobInfo.
What are the type of the changes? (mandatory)

Bug fix (non-breaking change which fixes an issue)

Does this PR affect documentation (docs) update? (mandatory)
No
Does this PR affect tidb-ansible update? (mandatory)
No
Refer to a related PR or issue link (optional)
Cc #4126

so this is a cherry-pick?

Duplicate with https://github.com/tikv/tikv/pull/4132?

Isn't it the same as #4132

Duplicate with #4132


fix: dependencies

This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.


Add verification step for the "Creating a Conda environment for CodeRefinery workshops"

https://coderefinery.github.io/installation/conda-environment/
Few commands to check whether this worked.

Following what we do here: https://github.com/coderefinery/software/blob/main/test.sh


Design a better UI for the M5Stack Core2

Preface: I have no idea if this belongs in this project, or if I should just 'steal' the camera communication parts and make my own
I now have a M5Stack Core2 (ok, two: I like to have a spare to loan out to people). With the touch interface and the addition of two extra buttons (three below the screen and two on the side of the case) there's definitely a lot more options for a UI than on the M5Stick, plus the bigger screen means that the current UI could definitely stand to be improved

I'd really like to keep the UI code all together for all the devices if possible, the differences in driving the camera should be "easy" to isolate and configure.
M5Core users can have a "nice" experience, whilst the M5StickC users should retain the "minimalist" experience.
My suggestion is:

keep the UI code in this project

put in a new UI library under lib

use the existing M5ez code to bootstrap
iterate and replace the M5ez pieces
if the UI library becomes advanced enough, split it out to separate repository

I can see a potential to fill the gap left by M5ez being unsupported

My 2c.

@matthudsonau If you're interested, happy to support, UIs aren't really my 'thing'.
I think an easy start could be to trial replacing the M5ez::msgBox for the shutter control.
All the M5ez code uses the underlying M5Unified library, so you could fairly easily call something entirely different to draw a new message box. Once you return, M5ez will redraw the canvas so it should just go back to 'normal'.
Part of the problem (and ease) with M5ez is abstracting all the UI code away so the non-UI people (like me) can just draw some text and buttons without thinking too much.
If you choose to not abstract it, you can just draw the widgets exactly and how/where you want them.
The challenge will be supporting both StickC and Core without duplicating code all over the place.

@matthudsonau If you're interested, happy to support, UIs aren't really my 'thing'. I think an easy start could be to trial replacing the M5ez::msgBox for the shutter control. All the M5ez code uses the underlying M5Unified library, so you could fairly easily call something entirely different to draw a new message box. Once you return, M5ez will redraw the canvas so it should just go back to 'normal'.

Grateful for the support. UIs aren't my thing either, but to be honest neither was any of this a week or two ago. I'm sure I can butcher something together that'll at least be a reasonable starting point

The challenge will be supporting both StickC and Core without duplicating code all over the place.

I'm sure I can just ignore this and it'll never cause any problems ever 😛 Hopefully everything below the UI can be abstracted away and used for both. I don't see much UI reuse, simply because the interfaces available on the Core are significantly better than the StickC

I'm going to throw it here (because it should be handled by the UI changes): Connect should not be an option if the saved connection list is empty

I'm going to throw it here (because it should be handled by the UI changes): Connect should not be an option if the saved connection list is empty

Good point. Neither should ‘Delete saved’.
This is straightforward to implement in the current system.
With more buttons, ie not M5StickC, there could be only a ‘Connections’ entry that supported both ‘Connect’ and ‘Delete’.

I'm trialling alternative UIs now and have ordered a M5Stack Core2 to facilitate testing.
I'm hoping I can still retain a single UI for all devices.

I think the single UI for all devices isn't the best idea; the Core2 has a touch screen, and it seems a bit wasteful not to utilise that
The learning curve was a lot more like a learning cliff though, which is why my progress died

I think the single UI for all devices isn't the best idea; the Core2 has a touch screen, and it seems a bit wasteful not to utilise that

The library I'm testing (lvgl) separates the input devices from the widgets.
This should allow us to use hardware buttons to navigate, but also define touch response.
Either way, with a more advanced framework, we will able to support both buttons and touch, even if they're totally different UIs.

The learning curve was a lot more like a learning cliff though, which is why my progress died

100% understand this sentiment. I've been poking at different libraries for months before I found one that seems to be suitable.

Progress update:
Five complete rewrites later I have a 95% solution in an offline branch, and I'm still not happy with it.
The UI code size has tripled along with the complexity.
On the other hand, it looks much nicer and is more flexible.
I will try to publish a release candidate once I get to feature/crash parity with the existing UI.


Yazi hang when enter a very large directory

What system are you running Yazi on?
Linux Wayland
What terminal are you running Yazi in?
wezterm
Yazi version
yazi 0.2.2 (68ffd82 2024-01-29)
Did you try the latest main branch to see if the problem has already been fixed?
Tried, but the problem is still present
Describe the bug
When entering a very large directory (contains 838684 .mp3 files) yazi hang and I can't do anything with it.
Expected Behavior
Working normally (for that large directory I really don't care much about detail of every file and just want to peek some of it since I can't read all of it)
To Reproduce
using ya:

Enter it directly by: ya <very large dir> - It will fully loaded (list files) after about 30s (not measured exactly). From this I can leave and re-enter the dir smoothly
Enter it indirectly by: ya <it's parent> and then enter it by arrow keys, sometime it can list the files, sometime it freeze like the below image - about 13 minutes with 100% CPU

Configuration
No response
Anything else?
The bigger problem is that it's very difficult to navigate to other files or directories when they are located beneath such a large directory.

Well, it was able to enter that directory after 14 minutes (approximated by CPU time since I'm not using it and it is almost 0% CPU now)

I noticed that you are using the old version v0.2.1, please try if it exists in the latest version of v0.2.2, https://github.com/sxyazi/yazi/releases/tag/v0.2.2

Hi, I made a PR to fix this, let me know if it works for you, https://github.com/sxyazi/yazi/pull/599.

It's still, yazi 0.2.2 (6735516 2024-01-29)

Weird, it works fine on my side...
Could you record a GIF so I can see what was happening?

Please see this video: https://1drv.ms/u/s!AjwpLQ8KafRujq4jOWTLlAJE-wSkdw?e=CRSFVM
At 10s from start, I entered the clips dir (the large one) by right arrow

What happens if you enter the clips directory directly through yazi clips? Please record a GIF.
Also, do a 'time ls -l clips > /dev/null' and paste the output here.

Let's merge that PR first.

time ls -l clips > /dev/null output:
ls --color=tty -l clips > /dev/null  12.65s user 3.74s system 99% cpu 16.396 total

Gif about enter the clips directly:

Try this PR https://github.com/sxyazi/yazi/pull/607


Export queried data in some various formats

The data queried from the service could be made available to be downloaded as csv or some other format.

Hey, I would like to give this a try. This seems like a new feature addition. @aquibbaig @Harkishen-Singh What would be the appropriate place for providing the option to download this data? Do you think this is going to require the addition of a new page to the frontend or provide it somewhere in the existing UI?
I think we can use this https://golang.org/pkg/encoding/csv/ for converting the data into csv format.

@vinayaksh42 Thank you for your interest in this issue. Currently, we are working on the enhancement of dashboard v1.1 and the issues with the tag awaiting-dashboard-v2 are some of the ideas to be implemented in dashboard v2 which is in the GSoC Idea list. For now, I will encourage you to work on issues except with the tags awaiting-dashboard-v2 and not-ready.

@muskankhedia okay, thanks for the information


System.Text.Json in SignalR

System.Text.Json is now the default Hub Protocol used by SignalR clients and servers starting in ASP.NET Core 3.0-preview5.
This is my configuration in preview4:
services.AddSignalR().AddNewtonsoftJsonProtocol(options =>
            {
                options.PayloadSerializerSettings.NullValueHandling = NullValueHandling.Ignore;
                options.PayloadSerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
            });

How to migrate this in order to ignore NullValueHandling and ReferenceLoopHandling for SignalR JSON Protocol in preview5?

I believe System.Text.Json does not currently suppport an equivalent to ReferenceLoopHandling and likely won't support it in 3.0. @joshfree / @ahsonkhan do you know if there's an issue discussing adding this functionality in the future?
This is a good case where you probably want to continue using Newtonsoft.Json for now. We know that System.Text.Json will not cover all the same cases as Newtonsoft.Json (at least in the initial 3.0 release), so the Newtonsoft.Json package is going to remain in place and fully supported.
For NullValueHandling you can do something similar with this code:
services.AddSignalR()
    .AddJsonProtocol(options => {
        options.PayloadSerializerOptions.IgnoreNullValues = true;
    });

I am using https://github.com/dotnet/corefx/issues/36510 to track cyclic references.

From: Andrew Stanton-Nurse<EMAIL_ADDRESS>Sent: Tuesday, May 7, 2019 7:12:46 AM
To: aspnet/AspNetCore
Cc: Subscribed
Subject: Re: [aspnet/AspNetCore] System.Text.Json in SignalR (#10041)
I believe System.Text.Json does not currently suppport an equivalent to ReferenceLoopHandling and likely won't support it in 3.0. @joshfreehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fjoshfree&data=01|01|brecon%40microsoft.com|a78df754717f4e28197408d6d2f6147f|72f988bf86f141af91ab2d7cd011db47|1&sdata=4NFi0PBs7cLZOY5E%2B%2BtegWknJj1OCRDQ5FiMYtoZTQY%3D&reserved=0 / @ahsonkhanhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fahsonkhan&data=01|01|brecon%40microsoft.com|a78df754717f4e28197408d6d2f6147f|72f988bf86f141af91ab2d7cd011db47|1&sdata=9Q3gMbsm9th4M3vMNL1%2BPxkmQ3WtcXgmlEI%2BKd2FPIA%3D&reserved=0 do you know if there's an issue discussing adding this functionality in the future?
This is a good case where you probably want to continue using Newtonsoft.Json for now. We know that System.Text.Json will not cover all the same cases as Newtonsoft.Json (at least in the initial 3.0 release), so the Newtonsoft.Json package is going to remain in place and fully supported.
For NullValueHandling you can do something similar with this code:
services.AddSignalR()
.AddJsonProtocol(options => {
options.PayloadSerializerOptions.IgnoreNullValues = true;
});
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Faspnet%2FAspNetCore%2Fissues%2F10041%23issuecomment-490096950&data=01|01|brecon%40microsoft.com|a78df754717f4e28197408d6d2f6147f|72f988bf86f141af91ab2d7cd011db47|1&sdata=g2NwYn%2BrYCEj%2BQ0eQAQTt5nzmhygMmsP1%2FSdvZa80z8%3D&reserved=0, or mute the threadhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FABZZKEOZS2GOQM7YCF42I7TPUGE55ANCNFSM4HLIXS4A&data=01|01|brecon%40microsoft.com|a78df754717f4e28197408d6d2f6147f|72f988bf86f141af91ab2d7cd011db47|1&sdata=MSHgI6GBLDCPE9%2F36XHp1HgffYbfj5idZCtpdE1qaF4%3D&reserved=0.

FYI @steveharter

I added services.AddNewtonsoftJsonProtocol on my server-side setup. After adding Newtonsoft, both JsonHubProtocol and NewtonsoftJsonHubProtocol are in the available protocols found in DefaultHubProtocolResolver.
How do I configure the Javascript client to use the Newtonsoft Protocol rather than System.Text.Json? Running into an issue with cyclic references with the new default System.Text.Json.
Installed packages:

Microsoft.AspNetCore.SignalR.Core: 3.0.0-preview4-19123-01
Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson: 3.0.0-preview9.19417.1
Microsoft.Azure.SignalR: 1.1.0-preview1-10442
@microsoft/signalr: 3.0.0-preview8.19405.7

Try not to mix preview versions. There were a lot of changes between preview4 and preview9. If you update to preview9 you probably wont see issues anymore.

Oops, that was my bad there. I removed that package as we are not using it. However, still seeing SignalR preferring JsonHubProtocol over NewtonsoftJsonHubProtocol.
Here is my relevant code for adding SignalR to my application:
ISignalRServerBuilder builder = services.AddSignalR(options => options.EnableDetailedErrors = enableDetailedLogging);

if (environment.IsProduction())
{
	builder.AddAzureSignalR(options => options.Endpoints = new ServiceEndpoint[]
	{
		new ServiceEndpoint(connectionStringConfig["AzureSignalR"], EndpointType.Primary, "Primary"),
		new ServiceEndpoint(connectionStringConfig["AzureSignalRSecondary"], EndpointType.Secondary, "Secondary"),
	});
}
else
{
	builder.AddAzureSignalR(connectionStringConfig["AzureSignalR"]);
}

builder.AddNewtonsoftJsonProtocol(options =>
{
	options.PayloadSerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver {NamingStrategy = {OverrideSpecifiedNames = false}};
	options.PayloadSerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;

});

While debugging, I found this method from Microsoft.Azure.SignalR.ServiceLifetimeManagerBase in the call stack which seems to be how I am ending up in System.Text.Json.
Both JsonHubProtocol and NewtonsoftJsonHubProtocol are in _allProtocols. I have a hacky workaround to remove JsonHubProtocol from the protocol resolver but probably do not want to keep that long-term 😄
protected IDictionary<string, ReadOnlyMemory<byte>> SerializeAllProtocols(string method, object[] args)
{
	var payloads = new Dictionary<string, ReadOnlyMemory<byte>>();
	var message = new InvocationMessage(method, args);
	foreach (var hubProtocol in _allProtocols)
	{
		payloads.Add(hubProtocol.Name, hubProtocol.GetMessageBytes(message));
	}
	return payloads;
}

https://github.com/Azure/azure-signalr/blob/dev/src/Microsoft.Azure.SignalR/HubHost/ServiceLifetimeManagerBase.cs#L221

I removed that package as we are not using it.

Does that mean you're getting a reference to "Microsoft.AspNetCore.SignalR.Core" from "Microsoft.Azure.SignalR"?
Try referencing "Microsoft.AspNetCore.SignalR.Core" version 3.0.0-preview9.19417.1 explicitly.

We do not have that package installed and not referencing it in code. I must have added it accidentally while troubleshooting at one point.
csproj
<PropertyGroup>
    <TargetFrameworks>netcoreapp3.0</TargetFrameworks>
    <Version Condition="'$(CEAVERSION)' == ''">1.0.0-dev</Version>
    <Version Condition="'$(CEAVERSION)' != ''">$(CEAVERSION)</Version>
    <DebugType>Full</DebugType>
</PropertyGroup>

<ItemGroup>
	<PackageReference Include="Adyen.EcommLibrary" Version="2.1.0" />
	<PackageReference Include="Lamar" Version="3.0.5" />
	<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="3.0.0-preview9.19417.2" />
	<PackageReference Include="Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson" Version="3.0.0-preview9.19417.2" />
	<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="3.0.0-preview9.19417.2" />
	<PackageReference Include="Microsoft.Azure.SignalR" Version="1.1.0-preview1-10442" />
	<PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.8.0-beta1" />
	<PackageReference Include="Microsoft.ApplicationInsights" Version="2.11.0-beta1" />
	<PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="2.9.4">
	  <PrivateAssets>all</PrivateAssets>
	  <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
	</PackageReference>
	<PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.0.0-preview9.19417.1" />
	<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.0.0-preview9.19417.1" />
	<PackageReference Include="Microsoft.IdentityModel.Clients.ActiveDirectory" Version="5.2.0" />
	<PackageReference Include="Moq.AutoMock" Version="<IP_ADDRESS>-pre" />
	<PackageReference Include="Newtonsoft.Json" Version="12.0.2" />
</ItemGroup>

dotnet --info
Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.18362
 OS Platform: Windows
 RID:         win10-x86
 Base Path:   C:\Program Files (x86)\dotnet\sdk\3.0.100-preview8-013656\

Host (useful for support):
  Version: 3.0.0-preview8-28405-07
  Commit:  d01b2fb7bc

.NET Core SDKs installed:
  2.2.300 [C:\Program Files (x86)\dotnet\sdk]
  3.0.100-preview8-013656 [C:\Program Files (x86)\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.2.5 [C:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.2.5 [C:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.0.0-preview8.19405.7 [C:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.2.5 [C:\Program Files (x86)\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.0.0-preview8-28405-07 [C:\Program Files (x86)\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.0.0-preview8-28405-07 [C:\Program Files (x86)\dotnet\shared\Microsoft.WindowsDesktop.App]

Looked into this. Thanks for pointing out https://github.com/Azure/azure-signalr/blob/dev/src/Microsoft.Azure.SignalR/HubHost/ServiceLifetimeManagerBase.cs#L221!
This will be fixed in preview9 via https://github.com/aspnet/AspNetCore/pull/13261

Great, thanks for the quick fix!

Could someone please clarify if we should do anything else but adding AddNewtonsoftJsonProtocol to make things working "same way" as it was on 2.2?
After we have migrated to the 3.1 we observe few weird behaviours so wondering if we did something wrong.
Here is the startup.cs
            /*
             * TODO: Move to the System.Text.Json serialization
             */
            var signalRServiceBuilder = services.AddSignalR().AddNewtonsoftJsonProtocol(o =>
            {
                o.PayloadSerializerSettings.DateTimeZoneHandling = DateTimeZoneHandling.Utc;
                o.PayloadSerializerSettings.DateFormatHandling = DateFormatHandling.IsoDateFormat;
                o.PayloadSerializerSettings.Converters.Add(new Newtonsoft.Json.Converters.StringEnumConverter());
            });

            if (IsScaleOutEnabled)
            {
                signalRServiceBuilder
                    .AddAzureSignalR();
            }

@yahorsi Please file a new issue. This sounds like a different question.


Update documentation with InfluxDB metrics

Add documentation for InfluxDB as a metric source, and share environment variables previously only used for Datadog.
This PR splits the documentation for source metrics into its own README since I felt like the root README was getting too long and complex with the new Influx documentations. Hopefully this is more understandable, but if not I can merge it back into the root README. :)

I'll update this diff again once the config changes are in / finalized. https://github.com/google/ts-bridge/pull/26

LGTM, but this time I will actually wait for @myktaylor before merging.

ah, because if they have modified the value in app.yaml, it will generate a
merge conflict and require manual attention?
On Wed, Feb 12, 2020 at 12:18 PM Yan Ke<EMAIL_ADDRESS>wrote:

@yanske1 commented on this pull request.
In app/app.yaml
https://github.com/google/ts-bridge/pull/27#discussion_r378490008:

@@ -15,13 +15,13 @@ env_variables:
SD_PROJECT_FOR_INTERNAL_METRICS: ""

Number of metrics to update in parallel. Must be between 1 and 100 (chosen arbitrarily).
UPDATE_PARALLELISM: 1

Points received from Datadog that are too fresh will be discarded to allow data to be fully processed and aggregated

on Datadog side. This variable defines the threshold for "too fresh".

DATADOG_MIN_POINT_AGE: "2m"

As long as those users are not overriding or maintaining the environment
variables using something that is not the app YAML, this should sync over
fine.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/google/ts-bridge/pull/27?email_source=notifications&email_token=AKEV2PIUCCEBMTEADPCY3ITRCRKQJA5CNFSM4KTODX32YY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCVJPKWY#discussion_r378490008,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKEV2POUF5WN6QIET434UTDRCRKQJANCNFSM4KTODX3Q
.

yeah (and even if it doesn't, it is only a name change in this case and won't affect any metric importing)

name changes can be problematic. they can subtly break user code. in this
case, though, the git merge logic should highlight the change so there
won't be any invisible breakage.
On Wed, Feb 12, 2020 at 12:40 PM Yan Ke<EMAIL_ADDRESS>wrote:

yeah (and even if it doesn't, it is only a name change in this case and
won't affect any metric importing)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/google/ts-bridge/pull/27?email_source=notifications&email_token=AKEV2PK76MYXZMETU5FUX3DRCRNFNA5CNFSM4KTODX32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELSJYBA#issuecomment-585407492,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKEV2POMJAZHXMB5DU2V4MTRCRNFNANCNFSM4KTODX3Q
.


(JS-0050) Avoid use of == and !=

Description
It is considered good practice to use the type-safe equality operators === and !== instead of their regular counterparts == and !=. If one of those occurs in an innocent-looking statement such as a == b the actual problem is very difficult to spot. <!--more--> The strict equality operators (=== …
Occurrences
There are 74 occurrences of this issue in the repository.
See all occurrences on DeepSource → deepsource.io/gh/CIDARLAB/3DuF/issue/JS-0050/occurrences/

I'm working on this


Adds Mongoid support.

Mongoid's syntax is a little different than ActiveRecord's. This adds explicit support for it.

Fantastic :tada:. Thanks for the patch!


Validation only mode

We have techs build our Macs instead of users for security concerns.  At the end of the build if any issues came up they need to resolve it via self service.  After issues are resolved, they run another test to ensure everything is installed before deploying to the user.
Since Setup Your Mac has a validation metholody it would be nice to have an option to run the build but instead of installing anything, it just validates that everything is installed.  That way the tech can run that and validate that everything was installed correctly after fixing some issues.

Greetings, @SirDrSpiderpig!

Which version of SYM are you running? (Please feel free to DM me on the Mac Admins Slack: @dan-snelson.)

Was testing 1.7.  Didn't test the previously installed feature.  Guess I could create a policy without the welcome screen and test that.  Thanks.

Just downloaded 1.9.0 and ran it and welcome dialog isn't coming up and in the logs I see:
"execution error: Error: SyntaxError: JSON Parse error: Unexpected identifier "JSON" (-27000)
Do you see the same when you run yours?  trying to customize the welcome window but never pops up.

@SirDrSpiderpig Feel free to join us in the MacAdmins slack in #setup-your-mac if possible.
Sounds like you have malformed JSON.


Ctrl + Click navigating to files outside of the project folder does not work

I am using VSCode to open and work with a single folder within a much larger, and older project.
I use script tags to reference js files which are much higher up the folder structure. I use relative paths for this.
When I ctrl + click on the src of one of these script tags, VSCode removes any relative path "../../" information and then appends the remaining path onto the end of my current working folder path.
the result is that the file is not found.
Using files outside of the project folder works fine in every other way, including intellisense and code completion, so I would expect the Ctrl + Click behaviour to work.
Relative path example
Working folder: C:\development\trunk\myproject\newstuff
<script src="../../modules/test.js">
This file is at: C:\development\trunk\modules\test.js
VSCode tries to find it at: C:\development\trunk\myproject\newstuff\modules\test.js
Absolute Path Example
Working folder: C:\development\trunk\myproject\newstuff
<script src="C:\development\trunk\modules\test.js">
VSCode tries to find it at: C:\development\trunk\myproject\newstuff\C:\development\trunk\modules\test.js

Additional info: This maybe a wider issue with TypeScript, and the use of the SystemJs module loader config... since my tsc output reports error TS2307: Cannot find module '../../modules/test.js'.  although in fact, the app works.

There is an additional issue with modules loaded using SystemJs, where I get the red squiggle, and incorrect path when Ctrl-Click. However, I suspect this is a TypeScript issue, as tsc reports error TS2307: Cannot find module

There is an additional issue with modules loaded using SystemJs, where I get the red squiggle,

For this issue can you please try to reproduce it using salsa the new JS infrastructure:
https://code.visualstudio.com/Updates#_javascript-salsa-preview

I have Salsa mode enabled... although despite having installed TypeScript 1.90, I still get the "(Salsa !)" status.
My html file - which uses script tags with relative paths, still fails to open when I Ctrl-Click the src. It is still ignoring the "../../.." part of the path, and concatenating the rest of the path onto the end of the current project folder location. The is definitely (as far as I can tell) as VSCode problem.
The additional issue, where a ts file is using SystemJs to load modules -also has the red squiggle underlining the paths, but I think this is an issue with TypeScript or my config. I am using 'map' in my config to point to script files. My app works.. it finds the files at runtime, by tsc still complains with error TS2307.

We now ship Salsa as default and things should be good now

Generally, when a bug is reported, it is reproduced, fixed, then tested. It appears that none of these steps have occurred here. It is easy enough to reproduce, and if you can't, I can work with you to help you.
Still a defect as of 0.10.11
See original post for details of this bug in action


Update NuGet package versioning to support wildcards.

Set build number to 0
Use git commit height and build revision as a suffix to the prerelease tag
New version will be something like: 15.1.0-preview-000333-01
Related to #557 as it address the NuGet versions.
Closes #1156

@dotnet-bot test OSX Build for CoreCLR please


"Show countries at low zoom levels but states at higher zoom levels" manual example does not work

The "Show countries at low zoom levels but states at higher zoom levels" entry in the manual does not work since you can't join tiles with mismatched zoom layers. The example will give the following warning:
"Warning: mismatched maxzooms: 5 in states-Z4.mbtiles vs previous 3"

Thanks. This will be fixed in https://github.com/felt/tippecanoe/pull/131


Fixes bd crash after update

Task/Issue URL: https://app.asana.com/0/488551667048375/1205746390734021/f
Description
This PR fixes a bad DB migration that crashes on update
Steps to test this PR
Feature 1

[ ]
[ ]

UI changes

Before
After

!(Upload before screenshot)
(Upload after screenshot)

Current dependencies on/for this PR:

develop

PR #3728   👈

This comment was auto-generated by Graphite.


Check raw openai response

Is it possible to check what the raw openai response is? It contains useful information, such as token usage:
"usage": {
    "completion_tokens": 17,
    "prompt_tokens": 57,
    "total_tokens": 74
  }

The token counts are already saved as objects in the messages themselves. I don't think there is anything else useful in the raw response, unless you had something in mind.

When custom output_schema is specified, response message won't include token counts. In this case, where do we see the token usage?


receive: Add liveness and readiness probe

This PR,

Adds /-/healthy endpoint for liveness checks.
Adds /-/ready endpoint for readiness checks.

Changes

Adds /-/healthy endpoint for liveness checks.
Adds /-/ready endpoint for readiness checks.
Uses prober.Prober for readiness and liveness endpoints.

Verification

make test

Started thanos receive and made a request to related endpoints.

➜ curl http://<IP_ADDRESS>:10902/-/healthy
thanos receive is healthy%

➜ curl http://<IP_ADDRESS>:10902/-/ready
thanos receive is not ready. Reason: thanos receive is initializing

➜ curl http://<IP_ADDRESS>:10902/-/ready
thanos receive is ready%

cc @FUSAKLA

@FUSAKLA @bwplotka I've updated the logic to set receive ready. Please have another look at it.


Create a Level0 explainability pipeline

What is level0 explainability pipeline?
Level0 is the explainability pipeline with the most assumptions than the levels will follow. That means that we will train a model in the training data of the client, we will save it locally (or in cloud), and we will explain this model just for give some indications to client about the contribution of each feature in his/her predictions.


Redux & NuclearJS

Both of these projects seems to have a lot of similarities both in philosophy/implementation and mutual respect for one another (one could even see these projects merging one day?). Since I'm "in the market" for a functional, reactive Flux implementation, what would be the things to consider between the two? What would you say are the advantages of Redux over NuclearJS?

Here's why I chose to write Redux instead of using NuclearJS:

I don't want a hard dependency on ImmutableJS
I want as little API as possible
I want to make it easy to jump off Redux when something better comes around

With Redux, I can use plain objects, arrays and whatnot for the state.
I tried hard to avoid APIs like createStore because they bind you to a particular implementation. Instead, for each entity (Reducer, Action Creator) I tried to find the minimal way to expose it without having any dependency on Redux whatsoever. The only code importing Redux and actually depending hard on it will be in your root component and the components that subscribe to it.
NuclearJS has a really nice concept of getters but I also felt that it tries to be “too smart” around performance and I didn't want to make this mandatory. Instead, with Redux, you can achieve similar results by using a library like reselect:
import React from 'react';
import { createSelector } from 'reselect';
import { connect } from 'redux/react';

const subtotalSelector = createSelector(
  [state => state.shop.items],
  items => items.reduce((acc, item) => acc + item.value, 0)
);

const taxSelector = createSelector(
  [subtotalSelector, state => state.shop.taxPercent],
  (subtotal, taxPercent) => subtotal * (taxPercent / 100)
);

const totalSelector = createSelector(
  [subtotalSelector, taxSelector],
  (subtotal, tax) => { return {total: subtotal + tax}}
);

@connect(totalSelector)
class Total extends React.Component {
  render() {
    return <div>{this.props.total}</div>
  }
}

export default Total;

That said, NuclearJS definitely was a big inspiration to me.

Oh, and of course I had these two other goals in mind that NuclearJS did not satisfy:

Everything must be hot reloadable
It should be possible to build time travel tools with reevaluation on reload, like in my talk

Thanks for the thorough answer. I've been studying Nuclear's React mixin to understand how I can integrate it into a not-React view layer (in my case, Aurelia). I've also started to take a look at the Collector and CollectorDecorator, but I'm having a time distilling out what's essential.

Basically Redux's top-level API is just { subscribe(listener), dispatch(action), getState() }.
Provider makes it available down the React component tree via context. Connector uses subscribe(listener) to listen to changes and read from getState() when a change occurs.
These are the only essential parts.

Okay, good. That's what I was able to deduce from studying Provider and Connector.

I'm closing as it's not really an issue.

Thank you @gaearon for the feedback you provided here, was most informative.


Snowflake Data Connector

Proposed Changes

add Snowflake Data Connector

@vu-socprime, Please fix provided PR review comments.


Remove dnf cronjob

Which issue this PR addresses:

Fixes ARO-10293
What this PR does / why we need it:
This pull request addresses unresolved feedback in PR #3741.
It also removes the dnf update cron job. This is no longer necessary, given that Automatic OS updates are enabled now.

Test plan for issue:
Deploy to full service dev rp environment.

Is there any documentation that needs to be updated for this PR?
No

How do you know this will function as expected in production?
I have successfully deployed this in my full service dev environment.

/azp run ci

/azp run e2e


label font size limited to 40px in 1.92

in the 1.92 version, the default font size for label is limited at 40px maximum, it would be great to set the upper limit of the font size instead of the fixed font size because in my case the font is 1 character of icon.
The 2.0 version is currently in alpha , which is not ideal

@SCaoAT please share a jsfiddle showing the problem you are having.


Fixed setting version when using tag as source of the version string

This PR answers to an issue I had earlier https://github.com/relekang/python-semantic-release/issues/97
It keeps overriding the version variable in the code even if it's not commited. This allow the building process to find it and upload the correct version on PYPI.
I just run the relevent test for this:
$ pytest tests/test_cli.py -k test_version_by_tag_should_call_correct_functions
tests/test_cli.py .                                                          [100%]
===================== 1 passed, 16 deselected in 0.49 seconds ======================

In addition I confirm the fix works in gitlab CI environment:
Current version: 0.2.1
Creating new version..
Current version: 0.2.1
Bumping with a minor version to 0.3.0.
...
Uploading distributions to https://upload.pypi.org/legacy/
Uploading plup_hello-0.3.0-py3-none-any.whl
New release published
Job succeeded

Hi! Sorry I completly forgot about this pending MR.
I don't think the failing tests come from my code. I already have those failure with the master branch:
# docker run --rm -it python:3.6 bash
# git clone https://github.com/relekang/python-semantic-release /code
# cd !$
# pip install tox
# tox -e py3-tests
=== 6 failed, 111 passed, 6 warnings in 1.29 seconds ===
ERROR: InvocationError for command '/code/.tox/py3-tests/bin/coverage run -p --source=semantic_release -m py.test -v tests' (exited with code 1)

I may be mistaken but I took the test commands from the Circle config.

Hmmm, ok I might not be fluent enough with Circle to reproduce locally. But it definitely seems the failing test comes from my code. I'm looking ot it.

My bad. Not being able to run tests locally confused me. I didn't see why this test was failing.