Haskell Web3 library

Grant Application Checklist

[x] The application-template.md has been copied, renamed ( "project_name.md") and updated.
[x] A BTC 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 30k at the time of submission.

Sure, thank you @Noc2!
Please let me known decision when ready.

Hi @akru. So the other team just informed me that they currently don’t have the time for it and they would be happy if you work on it. I think your proposal looks good. The only thing that seems rather high to me is your day rate based on the current BTC price. Could you reduce the price a little bit more?

Hi @Noc2, yep, no problem,
recently BTC is really a bit expensive.

Thanks for the application. Also fine from a financial point of view.

Hey @akru, are you still planning to submit the fourth milestone? Was there anything technical keeping you from finishing it? We usually terminate projects that are delayed by more than a few months.

Hello @semuelle, thank you for notice me.
I’m on final step of this milestone: signing extrinsics, hope to finish it in few weeks. I’ll be happy if you could hold termination process a bit. Sorry for delay.

Glad to hear you are still working on it. :+1: I'll check back in four weeks time if I don't hear from you.

Hello @semuelle, just want to let you known that I continue to work on it, auctions were a hurry day, yeah. Currently, I'm working on MetadataV13 support, hope to finish it next week. It's out of this grant but required for show demo on latest Polkadot. Hope to make not only a grant but provide fully functional Haskell support for Polkadot.

Hello @semuelle couple of updates from my side:

metadata v13 support added but still have some issues of scale decoding, I’m investigating what could be a problem;
extrinsic signing is almost finish, currently supported ECDSA and ed25519 crypto pairs;

Not implemented yet:

method call serialization, this is a part of extrinsic payload and should be finished before successful extrinsic sends.

The estimated delivery time moved, sorry for that, currently it is 15th of august. Feel free for any questions.

Thanks for the update, @akru. There is no rush currently. It's good to hear you are still working on it, which is our main concern. Keep us in the loop.

Hello @semuelle, hope this message finds you well.
I glad to say that Milestone 4 (last) of this project finished and ready for review. PR with results created.
Thank you very much for your support and patience!


Void Google.Apis.Util.Store.FileDataStore..ctor(System.String)

What steps will reproduce the problem?
1. Install NuGet Google APIs Client Library 1.8.2
2. Work with .NET 4.5 or 4.5.1
3. Call GoogleWebAuthorizationBroker.AuthorizeAsync with any arguments

What is the expected output? What do you see instead?
Expected... I gues... No exception?

What I get:
Ugly exception:
    Void Google.Apis.Util.Store.FileDataStore..ctor(System.String)

What version of the product are you using?
1.8.2

What is your operating system?
Windows 8.1 Enterprise (All updates)

What is your IDE?
Microsoft Visual Sutdio 2012 Professional with all updates

What is the .NET framework version?
4.5 and 4.5.1

Please provide any additional information below.
I heard about solution using .NET 4.0, but I need to have access to features of
4.5

In attachment you will find my example code.

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 24 Sep 2014 at 10:32
Attachments:

Program.cs

Closing as stale. Please open a new issue if follow-up is required.


NuttX DMA buffer section attribute

create new upstream NuttX mechanism for DMA buffer placement
DMA buffers should be placed explicitly in the linker script
STM32F7 use SRAM2 for DMA buffers

Resolved PX4 side with https://github.com/PX4/Firmware/pull/12078.


Test //tensorflow/core/framework:model_test fails on AARCH64

Please make sure that this is a bug. As per our
GitHub Policy,
we only address code/doc bugs, performance issues, feature requests and
build/installation issues on GitHub. tag:bug_template
System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): no
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): CentOS 7
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device: n/a
TensorFlow installed from (source or binary): source
TensorFlow version (use command below): git HEAD
Python version: 3.8.12
Bazel version (if compiling from source): 5.0.0
GCC/Compiler version (if compiling from source): 10.2.1
CUDA/cuDNN version: n/a
GPU model and memory: n/a

You can collect some of this information using our environment capture
script
You can also obtain the TensorFlow version with:

TF 1.0: python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)"
TF 2.0: python -c "import tensorflow as tf; print(tf.version.GIT_VERSION, tf.version.VERSION)"

Describe the current behavior
Test fails with
[ RUN      ] Test/AsyncUnknownRatioTest.Model/0
tensorflow/core/framework/model_test.cc:462: Failure
Expected equality of these values:
async_unknown_many->TotalProcessingTime( nullptr)
Which is: 109.333
ratio * (50 + 50) + 128 / 3.0
Which is: 109.333
[  FAILED  ] Test/AsyncUnknownRatioTest.Model/0, where GetParam() = (1, 0) (1 ms)
Describe the expected behavior
Test passes
Contributing

Do you want to contribute a PR? (yes/no): yes
Briefly describe your candidate solution(if contributing):

Add some tolerance to test for equality. Debugging the test shows that there is a difference of 1.42109e-14 in the two values on AARCH64.
Standalone code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate
the problem. If possible, please share a link to Colab/Jupyter/any notebook.
bazel test --test_timeout=300,500,-1,-1 --flaky_test_attempts=3 --test_output=all --cache_test_results=no --config=nonccl --verbose_failures --build_tag_filters=-no_oss,-oss_serial,-gpu,-tpu,-benchmark-test,-v1only,-no_aarch64,-requires-gpu --test_tag_filters=-no_oss,-oss_serial,-gpu,-tpu,-benchmark-test,-v1only,-no_aarch64,-requires-gpu --jobs=75 --build_tests_only -- //tensorflow/core/framework:model_test
Other info / logs Include any logs or source code that would be helpful to
diagnose the problem. If including tracebacks, please include the full
traceback. Large logs and files should be attached.
Introduced with https://github.com/tensorflow/tensorflow/commit/8d46773e6aa6b2eb44b62e422b3c7ccc4adb79b6

@cfRod @nSircombe

@elfringham Could you please let us know if we can close this issue as the PR is merged?
Thanks!

Yes, all good, can close.


Get rid usless pages

gatsby-plugin-intl is an overkill for dynamic posts.
It generates pages for different locales by default, which means even if I don't have a translation, it creates a page for the article language and all other  supported.
If I have written 10 articles, 20 pages will be created, 10 for pt-br and 10 for en, even tho I don't have write any en page yet.
It also creates for all other pages like /pages/, 404, etc.
What I want is having an object with locales and allow the user switch between pt and en. When user click in a post, a information saying "there's a translation for this post" will be displayed within its link.

Still missing:

[ ] when it has 2 versions (pt and en), it shows twice on Index and Search;
[ ] first language is set to be en and does not consider user language

Still missing:
* [ ]  when it has 2 versions (pt and en), it shows twice on Index and Search;

* [x]  first language is set to be `en` and does not consider user language

First comment will be solved via #151

Log
Before
After
Result

success run queries
19.944s - 87/87 4.36/s
21.477s - 29/29 1.35/s
-58 pages/queries

success Building static HTML for pages
4.020s - 87/87 21.64/s
3.380s - 29/29 8.58/s
-58 pages built

success onPostBuild
5.277s
0.032s
-5.245s

info Done building in
140.5552074 sec
136.3574058 sec
-4.1978s total (3% faster)

Results aren't that great but avoid creating useless pages and removing code to render or not page content (to avoid errors for pages without translation) its the goal.


Exception in thread "main" java.net.UnknownHostException: http://mirrors.opencas.cn

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
flutter build apk
Actual results
My all flutter's project can't build apk
 Building with sound null safety
Exception in thread "main" java.net.UnknownHostException: http://mirrors.opencas.cn
        at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:229)
        at java.base/java.net.Socket.connect(Socket.java:608)
        at java.base/java.net.Socket.connect(Socket.java:557)
        at java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:182)
        at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:474)
        at java.base/sun.net.www.http.HttpClient$1.run(HttpClient.java:526)
        at java.base/sun.net.www.http.HttpClient$1.run(HttpClient.java:524)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.base/sun.net.www.http.HttpClient.privilegedOpenServer(HttpClient.java:523)
        at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:564)
        at java.base/sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:265)
        at java.base/sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:372)
        at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:212)
        at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1208)
        at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1081)
        at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:189)
        at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1592)
        at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1520)
        at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:250)
        at org.gradle.wrapper.Download.downloadInternal(Download.java:58)
        at org.gradle.wrapper.Download.download(Download.java:44)
        at org.gradle.wrapper.Install$1.call(Install.java:61)
        at org.gradle.wrapper.Install$1.call(Install.java:48)
        at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65)
        at org.gradle.wrapper.Install.createDist(Install.java:48)
        at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:128)
        at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
Running Gradle task 'assembleRelease'...                         1,476ms
Gradle task assembleRelease failed with exit code 1

Logs
logs
Flutter Doctor output

Doctor output
Flutter assets will be downloaded from https://mirrors.tuna.tsinghua.edu.cn/flutter. Make sure you trust this source!
[!] Flutter (Channel stable, 3.7.11, on Microsoft Windows [版本 10.0.17763.4131], locale zh-CN)
    • Flutter version 3.7.11 on channel stable at D:\Program Files\flutter
    ! Warning: `dart` on your path resolves to D:\Program Files\Dart\dart-sdk\bin\dart.exe, which is not inside your current Flutter SDK checkout at D:\Program Files\flutter.
      Consider adding D:\Program Files\flutter\bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision f72efea43c (5 days ago), 2023-04-11 11:57:21 -0700
    • Engine revision 1a65d409c7
    • Dart version 2.19.6
    • DevTools version 2.20.1
    • Pub download mirror https://mirrors.tuna.tsinghua.edu.cn/dart-pub
    • Flutter download mirror https://mirrors.tuna.tsinghua.edu.cn/flutter
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[X] Windows Version (Unable to confirm if installed Windows version is 10 or greater)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at D:\android-sdk
    • Platform android-33-ext4, build-tools 30.0.3
    • Java binary at: C:\Program Files\Java\jdk-11.0.15\bin\java
    • Java version Java(TM) SE Runtime Environment 18.9 (build 11.0.15+8-LTS-149)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • CHROME_EXECUTABLE = C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe

[X] Visual Studio - develop for Windows
    X Visual Studio not installed; this is necessary for Windows development.
      Download at https://visualstudio.microsoft.com/downloads/.
      Please install the "Desktop development with C++" workload, including all of its default components

[√] Android Studio (version 2022.2)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-b2043.56-9586694)

[√] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [版本 10.0.17763.4131]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 110.0.5481.178
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 112.0.1722.46

[√] HTTP Host Availability
    • All required HTTP hosts are available

This issue seems related to your network, please ensure you have a working internet connection.
There is a checklist you can use for this:

[ ]  Is the network stable and fast?
[ ]  Do you use any proxy server?
[ ]  Are you using https://flutter.dev/community/china#configuring-flutter-to-use-a-mirror-site?
[ ]  It may be useful for troubleshooting the issue: https://dart.dev/tools/pub/troubleshoot#pub-get-fails-from-behind-a-corporate-firewall


How to identify if a user is delegated admin from code

How to identify if a user is delegated admin from code?

Sorry, I don't know and this is not the right place for questions like that.
You could try other forums, where other people are replying.


Add SessionList in RightSideBar

Added compareTo methods to Session based on startDate, Client based on name and Schedule based on session's startDate.
Replace rightsidebar content with sorted SessionList

If i read it correctly, changes to existing classes is to enable comparing sorting clients (compared by name) and sessions (compared by interval start time) right?

If i read it correctly, changes to existing classes is to enable comparing sorting clients (compared by name) and sessions (compared by interval start time) right?

Yep. For schedules, I'm comparing its session's interval start time as well.

Looks good for the most part, but is it possible to combine ViewAllCommand and ViewWeekCommand into say session.ViewCommand with command sview.
It will default to viewing all sessions in the upcoming week, but if you pass a flag such as sview p/ all then it will show all sessions ever created. The default is sview p/+1 week

Okay with moving it to session and changing the keyword to sview. Not sure if there's a need to use p/ tags since there's only 2 variations in mind now. But if so, sview p/week and sview p/all? Think we can discuss it later


[firebase_auth] [firebase_dynamic_links] Handling Firebase Auth generated dynamic links in app

I'm developing an email link login flow and there's a thing that I don't understand about Dynamic Links.
Docs say I should add Dynamic Links in-app handling via AppLinks on Android and Universal Links on iOS. But here's the thing:
When I send a login-by-link email, it has a link that is

https://go.MYDOMAIN.com/?link=https://APPNAME.firebaseapp.com/__/auth/action?apiKey%3DKEY%26mode%3DsignIn%26oobCode<ODE%26continueUrl%3Dhttps://MYDOMAIN.com/auth/finishLink%26lang%3Duk&apn=PACKAGENAME&amv

Then in browser, it redirects to

https://APPNAME.firebaseapp.com/__/auth/action?apiKey=KEY&mode=signIn&oobCode=CODE&continueUrl=https://MYDOMAIN.com/auth/finishLink&lang=uk

And then this page finally redirects to

https://MYDOMAIN.com/auth/finishLink?apiKey=KEY&oobCode=CODE&mode=signIn&lang=uk

The last domain is the link I can perfectly handle: it opens in app, goes to /auth/finishLink page, then the app reads oobCode parameter and signs the user in.
But if I add go.MYDOMAIN.com (Dynamic Link) to the links handled by the app, it breaks everything because it simply does not know how to handle this. And it makes sense because in browser it does a double redirect to the continue url I set, but the app itself doesn't have any logic to do such redirects. Moreover, if we just look at the link itself, " https://go.MYDOMAIN.com**/?link=**https://AP....." we see that it's just a plain root page ("/") with a "link" parameter which I never wrote a code to handle.
My assumption is that I don't actually need to handle such Dynamic Links in app, I need to allow all the redirects to work on all redirects in browser and only jump to the app after the last redirect. But then, if I need to handle other user-generated links in app, that means I can't just avoid adding Dynamic Links in-app handling at all. Then how do I separate Firebase Auth dynamic links from other types of links to make other links open in app while allowing links from Auth to be processed in browser? Make a special dynamic link prefix for auth and a separate one for everything else?

Hi folks, we'd like to inform you that the Firebase Dynamic Links service will be shutdown on August 25, 2025. In the meantime, only critical or security issues will be fixed in the SDK.
More at firebase.google.com/support/dynamic-links-faq


Support disabling optimization (-O none) during code generation

Hi,
I created this PR to support the feature -O none that disables code optimization during code generation.
This is discussed in the issue: https://github.com/hyperledger-labs/solang/issues/551
Here is an example of how it works:

Input file: count_input1.sol:
pragma solidity ^0.4.19;

contract CountInput {
    uint private count = 1;

    function run(uint256 input) public {
        count += input;
    }
}

Compile without -O none:
$ solang count_input1.sol --emit cfg --target ewasm

count_input1.sol:4:5-27: warning: storage variable 'count' has been assigned, but never read
Line 4:
    uint private count = 1;
    ^^^^^^^^^^^^^^^^^^^^^^
#
# Contract: CountInput
#

# function CountInput::CountInput::function::run__uint256 public:true selector:a444f5e9 nonpayable:true
# params: uint256
# returns:
block0: # entry
    ty:uint256 %input = (arg #0)
    return

# function CountInput:storage_initializer public:false selector:00000000 nonpayable:false
# params:
# returns:
block0: # entry
    store storage slot(uint256 0) ty:uint256 = uint256 1
    return

# constructor CountInput::CountInput::constructor::861731d5 public:true selector:861731d5 nonpayable:true
# params:
# returns:
block0: # entry
    return

Compile with  -O none:
$ solang count_input1.sol --emit cfg --target ewasm -O none

count_input1.sol:4:5-27: warning: storage variable 'count' has been assigned, but never read
Line 4:
    uint private count = 1;
    ^^^^^^^^^^^^^^^^^^^^^^
#
# Contract: CountInput
#

# function CountInput::CountInput::function::run__uint256 public:true selector:a444f5e9 nonpayable:true
# params: uint256
# returns:
block0: # entry
    ty:uint256 %input = (arg #0)
    %temp.2 = load storage slot(uint256 0) ty:uint256
    ty:uint256 storage %temp.1 = (%temp.2 + (arg #0))
    store storage slot(uint256 0) ty:uint256 = %temp.1
    return

# function CountInput:storage_initializer public:false selector:00000000 nonpayable:false
# params:
# returns:
block0: # entry
    store storage slot(uint256 0) ty:uint256 = uint256 1
    return

# constructor CountInput::CountInput::constructor::861731d5 public:true selector:861731d5 nonpayable:true
# params:
# returns:
block0: # entry
    return

In this run, the original code of function::run__uint256 is generated: no optimization is enabled to remove the unused variable count.

Could you help to review this PR?
Thank you!

Thanks for the pull request @taquangtrung
I think you are right - if you run solang -O none then you don't want any optimization passes enabled. So, I think your idea is right. However, I think there might be a simpler approach possible.
If you look at https://github.com/hyperledger-labs/solang/blob/main/src/bin/solang.rs#L311-L319 then whether the dead_storage pass enabled only depends on whether --no-dead-storage has been specified. This could be: only enable for level 2 and higher, if --no-dead-storage has not been specified.
Does that achieve what your PR does? Also does that make sense?
Lastly also a review note -- please ensure all commits and signed, and fold your work into one commit. That why git history of the project is nice and clean.
Thanks!

If you look at https://github.com/hyperledger-labs/solang/blob/main/src/bin/solang.rs#L311-L319 then whether the dead_storage pass enabled only depends on whether --no-dead-storage has been specified. This could be: only enable for level 2 and higher, if --no-dead-storage has not been specified.
Does that achieve what your PR does? Also does that make sense?

@seanyoung: thank you for the comments!
I previously run Solang with all the options to disable optimization (--no-constant-folding --no-strength-reduce --no-dead-storage --no-vector-to-slice -O none) but somehow the variable count in the previous example is still removed.
Here is the result that I run the newest binary release of Solang (v0.1.9), you can see that the output function CountInput::CountInput::function::run__uint256 is still optimized:
~/bin/solang count_input1.sol --emit cfg --target ewasm --no-constant-folding --no-strength-reduce --no-dead-storage --no-vector-to-slice -O none

count_input1.sol:4:5-27: warning: storage variable 'count' has been assigned, but never read
Line 4:
	uint private count = 1;
	^^^^^^^^^^^^^^^^^^^^^^
#
# Contract: CountInput
#

# function CountInput::CountInput::function::run__uint256 public:true selector:a444f5e9 nonpayable:true
# params: uint256
# returns:
block0: # entry
	ty:uint256 %input = (arg #0)
	return

# function CountInput:storage_initializer public:false selector:00000000 nonpayable:false
# params:
# returns:
block0: # entry
	store storage slot(uint256 0) ty:uint256 = uint256 1
	return

# constructor CountInput::CountInput::constructor::861731d5 public:true selector:861731d5 nonpayable:true
# params:
# returns:
block0: # entry
	return

So I guessed that this optimization is done at the Solang source code level, not LLVM, as explained by @LucasSte in this comment: https://github.com/hyperledger-labs/solang/issues/551#issuecomment-966508622?
Currently, I pass the optimization information as a parameter of many functions that handle the AST.
Can you advise if there is a simpler solution?
Thank you!

@taquangtrung sorry about that, I had misunderstood that.
So on second thought, your change is very good. However, due to other changes in src/codege/expression.rs there now a merge conflict, and the CI tests need to pass, and merged into one commit.
If you could please fix up those changes then I will merge it. Sorry about the misunderstanding and merge conflict.

You are maintaining all assignments of unused variables when we pass -O none for Solang. Please, also make sure that you also modify these lines:
https://github.com/hyperledger-labs/solang/blob/ad205741338776e4a7026d6878c317c7b709a4d3/src/codegen/statements.rs#L46
and
https://github.com/hyperledger-labs/solang/blob/ad205741338776e4a7026d6878c317c7b709a4d3/src/codegen/statements.rs#L46
because they remove the declaration of variables that have not been used.


Mark interpolation properties as readonly

Mentioned in #7597.

Thanks for the pull request @vrana!

:heavy_check_mark: Signed CLA found.
:grey_question: CHANGES.md was not updated.

If this change updates the public API in any way, please add a bullet point to CHANGES.md.

:grey_question: Unit tests were not updated.

Make sure you've updated tests to reflect your changes, added tests for any new code, and ran the code coverage tool.

Reviewers, don't forget to make sure that:

[ ] Cesium Viewer works.
[ ] Works in 2D/CV.
[ ] Works (or fails gracefully) in IE11.

Looks good, thanks @vrana!


Fix 2D and CV path visualization for inertial data

Apparently broken since 1.3, 421f666236083a0afc8ae9cd970291d04ea84340, inertial paths like simple.czml were drawn incorrectly in 2D and CV modes, obvious when you see it because nothing lines up. I added a test case that fails in master and passes with this fix.
My kingdom for static typing.

Looks good.


Crash when in 32 bit mode

The following example generates a function to compute sqrt(2).  It works correctly when compiled in 64 bit mode, but crashes when compiled in 32 bit mode.
void test() {
    JitRuntime runtime;
    X86Compiler c(&runtime);
    c.addFunc(kFuncConvHost, FuncBuilder0<double>());
    X86XmmVar argVar = c.newXmmVar(kX86VarTypeXmmSd);
    X86XmmVar resultVar = c.newXmmVar(kX86VarTypeXmmSd);
    X86GpVar argPointer(c);
    double two = 2.0;
    c.mov(argPointer, imm_ptr(&two));
    c.movsd(argVar, x86::ptr(argPointer, 0, 0));
    X86GpVar fn(c, kVarTypeIntPtr);
    double (*function)(double) = sqrt;
    c.mov(fn, imm_ptr((void*) function));
    X86CallNode* call = c.call(fn, kFuncConvHost, FuncBuilder1<double, double>());
    call->setArg(0, argVar);
    call->setRet(0, resultVar);
    c.ret(resultVar);
    c.endFunc();
    void* jitCode = c.make();
    printf("%g\n", ((double (*)()) jitCode)());
}

Ok, I found the problem, fixing..

The code generated by the unit test I created is still not perfect, but this will be fixed later on, thanks!

Thanks!  My real code is still failing, so I'll post another bug report with the latest problem.


DRAFT/update eas portal

What does this PR do?
This PR is a different implementation of the EASPortal. In this implementation, we maintain use the AbstractPortal contract instead of creating a new EASAbstractPortal. This will allow us to register the EASPortal to the PortalRegistry and avoids custom code for EAS
Related ticket
Fixes #
Type of change

[ ] Chore
[ ] Bug fix
[x] New feature
[ ] Documentation update

Check list

[x] Unit tests for any smart contract change
[ ] Contracts and functions are documented

Codecov Report

Merging #106 (67fbceb) into dev (7284f97) will decrease coverage by 0.83%.
The diff coverage is 92.85%.

@@            Coverage Diff             @@
##              dev     #106      +/-   ##
==========================================
- Coverage   98.21%   97.39%   -0.83%
==========================================
  Files           8        9       +1
  Lines         112      115       +3
  Branches       29       31       +2
==========================================
+ Hits          110      112       +2
  Misses          2        2
- Partials        0        1       +1

Files Changed
Coverage Δ

src/portal/DefaultPortal.sol
100.00% <ø> (ø)

src/interface/AbstractPortal.sol
90.90% <90.90%> (ø)

src/AttestationRegistry.sol
96.29% <100.00%> (+0.14%)
:arrow_up:

src/portal/EASPortal.sol
100.00% <100.00%> (ø)

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


Update distributed-working.md

Added a reference to our new Strava group and a link to wundershare remote working section.

Looks good to me.


Design core models & framework interface

I've been toying with this in a Playground for a bit, and I'd love some feedback. While I was looking it as a functional-programming style first, I'm liking it better as an OO solution. Here's what I have for an object design:
// MARK - Object Model
struct Certificate {
    let title : String
    let subtitle : String?
    let description: String
    let image : Data
    let language : String

    let issuer : Issuer
    let recipient : Recipient
    let assertion : Assertion

    // Not a fan of this, since "verify" is a verb.
    let verify : Verify
}

struct Issuer {
    let name : String
    let email : String
    let image : Data
    let id : URL
    let url : URL

    let publicKey : String
    let publicKeyAddress : URL
    let requestUrl : URL
}

struct Recipient {
    let givenName : String
    let familyName : String

    let identity : String       // Usually, an email address
    let identityType : String   // "email" by default
    let isHashed : Bool         // false by default
    let publicKey : String      // bitcoin address of recipient
}

struct Assertion {
    let issuedOn : Date
    let signatureImage : Data
    let evidence : String
    let uid : String
    let id : URL
}

struct Verify {
    let signer : URL
    let signedAttribute : String    // default is "uid"
    let type : String               // "ECDSA(secp256k1)" is default -- what else is valid?
}

This is pretty much a destructuring of the cert format and is likely to evolve as we add and modify fields. Also, as I get more clarity about the various values some of these fields support, we'll probably settle on a few enums in place of strings in the JSON.
The more interesting bit is how methods off of these objects could look at the point of use:

// Certificates
// Here are the main means of interacting with certificates. All of the major verbs are methods on the core Certificate object.
let cert = Certicifate(fromFile: Data())    // Import

cert.verify()                               // Verify

try cert.revoke()                           // Revoke

let file = cert.toFile()                    // Export

// Key Management
// Here's how you seed the "wallet" with key management.
let seedPhrase = Keychain.generateSeedPhrase()
let keychain = Keychain(seedPhrase: seedPhrase)

// Issuer Introduction
// Here's how you make the call to send a new public key to the Issuer with some identity information.
let keyForMIT = keychain.nextPublicKey()
let alumnus = Recipient(givenName: "Chris",
                        familyName: "Downie",
                        identity<EMAIL_ADDRESS>                        identityType: "email",
                        isHashed: false,
                        publicKey: keyForMIT)
let mitMediaLab = Isseur()

mitMediaLab.introduce(recipient: alumnus)

// Key Management, pt 2
// Here's how you check if you have the public key in certificate.
keychain.has(publicKey: alumnus.publicKey)

Open questions:

What is the Verify object mean? Can we change that to a noun, or does it mean something specific to the Cert format (or for OBI compliance?) Is there another word that would make sense in this OO model, even if the format maintained the verify attribute?
Are there other key uses that should be considered? Something I'm missing here?

You may have looked at this already, but I think Juliana tried to document a lot of the background thinking in the schema repository. https://github.com/digital-certificates/cert-schema/tree/master/docs (I hope it can help with some of the legacy naming conventions - I agree they don't always make sense, but I think it's worth sticking to the OBI conventions).

We will also be able to rely on the v1.1 OBI JSON LD schema for type information (https://openbadgespec.org/v1/context.json).
I'm working on migrating our v1 schema to fit OBI v1.1, and reworking digital-certs customizations as JSON LD extensions. There are minor structural changes and a few renames that will result from this.
That said, most of the names and types in your object model above will remain unchanged with that migration. The only missing part is the Certificate 'proof' data which will be used in verification. I owe you details on this. (ETA for baked versions of this and OBI v1.1 changes is EOW) Otherwise, the objects and interactions look good.
Re open questions:

Verify has retained its name in v1.1, and we should keep it for OBI compliance.
For the MVP, those are all the key uses we should need. Later we will want something like the ability to sign a message with a specific private key to prove ownership of a public address.

Thanks, you two.
@1l2p Yup! I was using the info on readthedocs, but I think it's the same content. It was super useful for making sure my model had all the valid fields, but it doesn't have a lot of info on why something is a certain way.
@kimdhamilton great! I'll move forward with the model outlined above, and I can iterate on it as you evolve the schema.


DEX-387 ordering of entries by the guid in the DB to ensure that is the order used in the UI

Pull Request Overview

replacing all backrefs with back_populates : it makes knowing what's in the class easier and allows the order_by to be set
For non DB lists, use sorted to get them ordered by guid

~Draft as I want some feedback on this idea first~

Edit: 2021-08-03 by Karen

Change backref to back_populates in db.relationship
Using back_populates instead of backref means we have to define the
relationship in both classes instead of auto generating it in the other
class.  It might be easier to understand to the reader when looking at
the code and it will allow us to specify "order_by" when it is a
one-to-many relationship.
Import all the models first in app.modules.init_app before doing other
stuff to avoid model lookup error.  Do something similar in
tests/conftest.py so importing DetailedUserSchema works (
pytest tests/test_transaction.py)

Move AssetGroupSighting.assets to AssetGroupSighting.get_assets
Make it more obvious that we are using a function get_assets instead
of like other relationship fields.
This doesn't change how AssetGroupSighting is returned in json.

DEX-387 ordering of entries by the guid in the DB to ensure that is the order used in the UI

I'm wondering if we need to move all the db.relationship like:
class AssetGroupSighting(...):
    asset_group = db.relationship('AssetGroup', back_populates='asset_group_sightings')

to
class AssetGroup(...):
    asset_group_sightings = db.relationship('AssetGroupSighting', order_by='AssetGroupSighting.guid', back_populates='asset_group')

in order to add "order_by"?

I'm certainly thinking this is a good chance to remove the backrefs that magically create entries in other models. That's confused me a few times when debugging.  I'm thinking back_populates is definitely the way forward.
I think that having the order_by in the db.relationship that defines the many side it's clearer.
So in assets/models
asset_group = db.relationship('AssetGroup', back_populates='assets')
and in asset_groups/models
assets = db.relationship('Asset', order_by='Asset.guid')
Is that what you're suggesting?

I'm wondering if we need to move all the db.relationship like:
class AssetGroupSighting(...):
    asset_group = db.relationship('AssetGroup', back_populates='asset_group_sightings')

to
class AssetGroup(...):
    asset_group_sightings = db.relationship('AssetGroupSighting', order_by='AssetGroupSighting.guid', back_populates='asset_group')

in order to add "order_by"?

I'm certainly thinking this is a good chance to remove the backrefs that magically create entries in other models. That's confused me a few times when debugging. I'm thinking back_populates is definitely the way forward.
I think that having the order_by in the db.relationship that defines the many side it's clearer.
So in assets/models
asset_group = db.relationship('AssetGroup', back_populates='assets')
and in asset_groups/models
assets = db.relationship('Asset', order_by='Asset.guid')
Is that what you're suggesting?

I just meant in a one-to-many relationship (one = asset group, many = asset group sighting), we need the db.relationship to be defined in the "one" model (i.e. asset group) so that it's possible to add order_by='AssetGroupSighting.guid'

I'm wondering if we need to move all the db.relationship like:
class AssetGroupSighting(...):
    asset_group = db.relationship('AssetGroup', back_populates='asset_group_sightings')

to
class AssetGroup(...):
    asset_group_sightings = db.relationship('AssetGroupSighting', order_by='AssetGroupSighting.guid', back_populates='asset_group')

in order to add "order_by"?

I'm certainly thinking this is a good chance to remove the backrefs that magically create entries in other models. That's confused me a few times when debugging. I'm thinking back_populates is definitely the way forward.
I think that having the order_by in the db.relationship that defines the many side it's clearer.
So in assets/models
asset_group = db.relationship('AssetGroup', back_populates='assets')
and in asset_groups/models
assets = db.relationship('Asset', order_by='Asset.guid')
Is that what you're suggesting?

I just meant in a one-to-many relationship (one = asset group, many = asset group sighting), we need the db.relationship to be defined in the "one" model (i.e. asset group) so that it's possible to add order_by='AssetGroupSighting.guid'

I think we're saying the same thing but in different ways.
Yes, I think both sides of the one to many relationship should have a db.relationship entry in the models.py in exactly the way you say and I've done here.

@hwindsor I checked the diff between the new commits and your original commits and I believe everything important is included.  The main difference is I added code to load all the models in app/modules/__init__.py and tests/conftest.py and removed all the random imports in models.py to make the db.relationship model lookup stuff works.  I changed more backref to back_populates.  The intermittent test failure fix is now in #263 so I didn't include it.  I can't add you as a reviewer but could you have a look and let me know if the changes look ok?

The tests that are failing should be fixed in #263

/rebase

/rebase


event.PartitionKey is nil

Expected Behavior
For the partition key to be included in the event
Actual Behavior
The partition key is null, is there something else i need to do to get it filled in?
Environment

OS: win 10
Go version: 1.9
Version of Library: latest from go get

There is nothing you should have filled in. The partition key was not set when the event is received from the broker. This is a bug and I'll supply a fix shortly.

@GoEddie the fix has been applied. Please let me know if it solves your problem.

Thanks, it still isn’t working but I can’t see the partition header on the ampq packet - I’ll dig a bit deeper and try and get a network trace :)

The tests are passing for sending and receiving the partition key. Are you not seeing that behavior?
Perhaps, add a breaking test to a PR and I’ll see what’s broken.

I’m not seeing the partition key header on the annotations, I’ll get some more details and probably find out what I’m doing wrong :)

@GoEddie any updates? Anything I can do to help?

no don't worry please close it :)

It's quite a shame you didn't post what worked for you...
Could really help me right now, i'n having the same problem

This fixed it, I just wasn’t testing it correctly “add partition key to the received event #43“


json_object_array_get_idx: Assertion `json_object_get_type(jso) == json_type_array' failed.

Hi, I am having "json_object_array_get_idx: Assertion `json_object_get_type(jso) == json_type_array' failed." problem while using CHATAFL for live555. " problem, what is the cause of this and what is the solution? Looking forward to your answer thanks!

Hello, I also encountered this problem. How did you solve it? Thank you.

Hi,did you solve that json problem?Could you tell me the solution?Thank you very much.


Support Ruby apps that require NodeJS to run

I have a ruby application that requires nodejs to run. When I provide both buildpacks, they appear to apply correctly, but then the application fails to run. It appears that nodejs isn't actually in the image.
This is the build command:
pack build app --buildpack gcr.io/paketo-buildpacks/ruby --buildpack gcr.io/paketo-buildpacks/node-engine

(Note: I also tried switching the order of the buildpacks and had the same issue.)
This is the error when running the image:
/layers/paketo-buildpacks_bundle-install/gems/gems/execjs-2.7.0/lib/execjs/runtimes.rb:58:in `autodetect': Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)
	from /layers/paketo-buildpacks_bundle-install/gems/gems/execjs-2.7.0/lib/execjs.rb:5:in `<module:ExecJS>'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/execjs-2.7.0/lib/execjs.rb:4:in `<top (required)>'
	from /layers/paketo-buildpacks_bundler/bundler/gems/bundler-1.17.3/lib/bundler/runtime.rb:81:in `require'
	from /layers/paketo-buildpacks_bundler/bundler/gems/bundler-1.17.3/lib/bundler/runtime.rb:81:in `block (2 levels) in require'
	from /layers/paketo-buildpacks_bundler/bundler/gems/bundler-1.17.3/lib/bundler/runtime.rb:76:in `each'
	from /layers/paketo-buildpacks_bundler/bundler/gems/bundler-1.17.3/lib/bundler/runtime.rb:76:in `block in require'
	from /layers/paketo-buildpacks_bundler/bundler/gems/bundler-1.17.3/lib/bundler/runtime.rb:65:in `each'
	from /layers/paketo-buildpacks_bundler/bundler/gems/bundler-1.17.3/lib/bundler/runtime.rb:65:in `require'
	from /layers/paketo-buildpacks_bundler/bundler/gems/bundler-1.17.3/lib/bundler.rb:114:in `require'
	from /workspace/config/application.rb:24:in `<top (required)>'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies.rb:324:in `require'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies.rb:324:in `block in require'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies.rb:291:in `load_dependency'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies.rb:324:in `require'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/railties-<IP_ADDRESS>/lib/rails/commands/server/server_command.rb:141:in `block in perform'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/railties-<IP_ADDRESS>/lib/rails/commands/server/server_command.rb:138:in `tap'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/railties-<IP_ADDRESS>/lib/rails/commands/server/server_command.rb:138:in `perform'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/thor-1.0.1/lib/thor/command.rb:27:in `run'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/thor-1.0.1/lib/thor/invocation.rb:127:in `invoke_command'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/thor-1.0.1/lib/thor.rb:392:in `dispatch'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/railties-<IP_ADDRESS>/lib/rails/command/base.rb:69:in `perform'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/railties-<IP_ADDRESS>/lib/rails/command.rb:46:in `invoke'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/railties-<IP_ADDRESS>/lib/rails/commands.rb:18:in `<top (required)>'
	from /workspace/bin/rails:11:in `require'
	from /workspace/bin/rails:11:in `<top (required)>'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/spring-2.1.0/lib/spring/client/rails.rb:28:in `load'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/spring-2.1.0/lib/spring/client/rails.rb:28:in `call'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/spring-2.1.0/lib/spring/client/command.rb:7:in `call'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/spring-2.1.0/lib/spring/client.rb:30:in `run'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/spring-2.1.0/bin/spring:49:in `<top (required)>'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/spring-2.1.0/lib/spring/binstub.rb:11:in `load'
	from /layers/paketo-buildpacks_bundle-install/gems/gems/spring-2.1.0/lib/spring/binstub.rb:11:in `<top (required)>'
	from /workspace/bin/spring:16:in `require'
	from /workspace/bin/spring:16:in `<top (required)>'
	from bin/rails:5:in `load'
	from bin/rails:5:in `<main>'

With some guidance from @ryanmoran, I was able to build an image that works with this command:
pack build app --buildpack gcr.io/paketo-buildpacks/ruby --buildpack gcr.io/paketo-buildpacks/node-engine --buildpack https://github.com/paketo-community/build-plan/releases/download/v0.0.8/build-plan-v0.0.8.tgz

And a plan.toml that contains:
[[requires]]
  name = "node"
  version = "~10"
[requires.metadata]
  launch = true

Any luck on how to deploy a Rails app?

Have there been any updates on supporting ruby apps that require nodejs to run?

Have there been any updates on supporting ruby apps that require nodejs to run?

In practice, most Ruby (specifically Rails) applications should not need node to run in production. Instead, they should allow the rails-assets buildpack to precompile their Javascript assets during the build phase. The result of that buildpack will be a collection of static Javascript files that can simply be served by the Rails process without any node backend process involvement.
Additionally, the buildpacks make a preference for generating images that are more secure and more performant. In this case, producing an image that does not include node is more secure because the vulnerability surface area is reduced. It means that even if node has a vulnerability you won't need to rebuild your running applications because they don't contain a node installation that would be vulnerable. Its also a more performant image because its faster to fetch an smaller image from a registry.

I have an app that loads sprockets-es6 on boot for the asset pipeline. While ideally this isn't the case and we only use node during build, I'm in the process of migrating an app with a ton of changes already made to support buildpacks, and it would be great to just have node available rather than me fighting with the buildpack.


New dag decorator

Pull Request Checklist

[x] Fixes #1043
[x] Tests added
[ ] Documentation/examples added
[x] Good commit messages and/or PR title

Description of PR
Adds the new dag decorator from HEP0001.

Within the decorator function call we perform a static inspection of
inputs and outputs, add a DAG object to the Workflow, and finally
do a "run" of the DAG function code using a templated input to collect the tasks
Tasks that pass arguments simply take the templated input strings by using pydantic's construct method to skip validation, and then pass the strings around
The dependencies between tasks are inferred automatically via getattr calls
on the Task object
Add varname as a dependency to be able to get the python variable name to use
as the task name (in the YAML)
Make the _add_type_hints function work for any pydantic class
Unify RunnerIO classes using mixin
Rename RunnerInput/RunnerOutput to Input/Output as they are intended for use by non-script templates now

I want to add an inner-dag example with associated code fix in def dag_call_wrapper and then PR will be ready for review. The current code shouldn't change though if you want to take a look @samj1912 @flaviuvadan


Allow clients to connect at high rates

Currently, we can only configure the connection interval in the scenarios.
It's often more convenient to choose a connection rate.  Also, since the minimum value for the interval is 1 ms, we can't tell clients to connect faster than ~ 1 k connections / s, hence multiple emqttb processes would be needed to go faster than this.

Fixed by #20


Allow IFormFile parameters annotated with [FromForm] to be correctly …

…bound in ApiControllers
Fixes #8311

🆙 📅

After another offline conversation, @pranavkm has agreed to file a couple of bugs to track separately. In addition, neither of us believe CancellationToken or IFormCollection will hit problems similar to this one -- the relevant binders ignore BinderModelName.

@dougbu would you mind filing the issue with the BinderModelType? You'd be able to explain better.

@dougbu would you mind filing the issue with the BinderModelType? You'd be able to explain better.

@pranavkm after experimenting a bit, I don't think [ModelBinder] or [BindProperty] are likely to cause problems. Those are main ways BindingInfo.BinderType can be set. ApiBehaviorApplicationModelProvider will not override BinderModelName (or BindingSource) because those attributes implement IBindingSourceMetadata (through IBinderTypeProviderMetadata). The chosen BindingSource is BindingSource.Custom and BindingSource.Custom is greedy.
It's possible to subclass either attribute or implement IBinderTypeProviderMetadata directly and set BindingSource to something greedy. But, we're now in a dim corner of a corner case.


helm chart options for specifying webhook configuration do not apply settings to the configMap

Description
helm chart options to specify webhook configuration do not seem to update the -runtime-config configmap properly. This behavior affects using a values.yaml and using the --set communications.default-group.webhook.enabled=true method.
Expected behavior
Running a kubectl get cm botkube-runtime-config -o yaml -n botkube should have a webhook block in the communications.default-group section.
Actual behavior
The defailt-group does not contain any webhook configuration.
    communications:
      default-group:
        discord:
          channels:
            default:
              bindings:
                sources:
                - k8s-err-events
                - k8s-recommendation-events
        mattermost:
          channels:
            default:
              bindings:
                sources:
                - k8s-err-events
                - k8s-recommendation-events
        slack:
          channels:
            default:
              bindings:
                sources:
                - k8s-err-events
                - k8s-recommendation-events
        socketSlack:
          channels:
            default:
              bindings:
                sources:
                - k8s-err-events
                - k8s-recommendation-events
        teams:
          bindings:
            sources:
              - k8s-err-events
              - k8s-recommendation-events

Steps to reproduce

Create a values.yaml with the following:

communications:
  'default-group':
    webhook:
      enabled: true
      url: http://echoserver-echo-server
      bindings:
        sources:
          - k8s-all-events

apply this value using helm:
helm install --version v1.3.0 botkube --namespace botkube --create-namespace values.yaml botkube/botkube

Hey @messedupryan,
The botkube-runtime-config and botkube-startup-config ConfigMaps store just the data which can be configured with Botkube commands. This is the way how Botkube stores internal state, which is merged from both helm upgrade and @Botkube commands (like @Botkube edit sourcebindings or @Botkube disable/enable notifications).
In case of botkube-runtime-config, we store the source bindings configuration, which can be changed in runtime with @Botkube edit sourcebindings. Webhook integration doesn't have any interactivity, so that's why it is not included in the runtime-config. So, in other words, what you wrote is an expected behavior:

helm chart options to specify webhook configuration do not seem to update the -runtime-config configmap properly.

Do you have any particular issue with webhook config?

Hi @messedupryan, please ping me when you'll have time to describe the issue you encounter. Cheers!

Hey @messedupryan, I'm closing this issue because of inactivity, but please feel free to reopen it with some additional context. I'd like to learn more what doesn't work for you or what we can improve. Thanks!


Discuss adding --check-text CLI option

References: #298, #294.
nhonx: "It makes sense, but I think sometimes users want to output it to CLI for pipe it with awk or something. If so, only adding new field to json will not help so much, correct?"
My question: But I'd like to understand a bit more what would be the use case and the expected usage. Can you provide a concrete example on how you chain magika with awk? The other thought: if it's supposed to be used in an automated way, then the output should likely be something easily parsable (like json, e.g., with jq), and not a modification of the human description (as in your PR)?
/cc @nhonx

Still can't of any use case / or any way in which having "is text" as human output is better than json output. Since there is no new input, closing for now. @nhonx feel free to reopen if you have more ideas, thanks!

Hi @reyammer , sorry for late response.
Of course, I agree that json output could be solution for almost all cases. However, when working with CLI, many people will be familiar with pipe and awk and feel more convenient with them.
Let check this case: I want to count how many Binary and Text file in a folder
magika -r ../tests_data/ --check-text | awk '{print $NF}' | sort | uniq -c
Output:
  41 (binary)
  21 (text)

I think it will faster than we return JSON and process the JSON with jq or sth.


[Transactions] Funky broadcasting logic

This is an issue with the stacks-transaction library, reporting here due to ongoing mono refactor work
Code in question
https://github.com/blockstack/stacks-transactions-js/blob/ad6ac4fb605c38af6f8d001385e82e0a6c466bfd/src/builders.ts#L188-L201
Issue
There's some unusual logic in the broadcast transaction function, added by yours truly, which results in a legitimate network request being made, but not shown in dev tools HTTP panel.
This is likely owing to use of the Request.clone() method.
Resolve
Avoiding use of .clone() with likely result in a more transparent mode of operation

Would this resolve the issue you're seeing?
  const clonedRes = response.clone();
  try {
    return (await response.json()) as TxBroadcastResult;
  } catch (e) {
    return await clonedRes.text();
  }

I don't believe so.
I think we can just use 👇 . If I recall correctly, I added this so that we never return JSON as a string.
  const text = await response.text();
  try {
    return JSON.parse(text) as TxBroadcastResult;
  } catch (e) {
    return text;
  }


Travis: Change branches setting.

Enable branches except the working in progress branch or
current pull-request feature/ci-podman and feature/ci-centos.
It makes users easier to run Travis on their forked repository.

https://travis-ci.org/junaruga/rpm-py-installer/builds/636022903
Following tests are failed.

trusty
tumbleweed

Merge this PR for now. The failures will be fixed later.


losslesscut

Also https://jliljebl.github.io/flowblade/

I experimented with these but ended up using command line tools.


[0.10.x] Backport of cache related changes to 0.10.x

This PR against 0.10.0 backports the cache related changes since 0.10.1 onto the maintenance branch. It will probably solve the problem reported in #5857.
In particular this PR includes 0.10.x version of #5719, #5701 (#5699), (#5832) and the cache statistics changes (#5758) which were brought along for the ride because it was easier to take them than to leave them.
I don't really care whether this is accepted into 0.10.x or not. I happen to need these changes myself, so the work isn't wasted. If others can benefit from the changes then they are available to anyone who is capable of creating their own build.

[ ] CHANGELOG.md updated
[x] Rebased/mergable
[ ] Tests pass
[x] Sign CLA (if not already signed)

CI failures due to issues fixed in #5855

Thanks @jonseymour.  Could you remove the changes related to #5758 since they introduce a new feature that is slated for 0.11?

@jwilder  There you go. I have also included the v0.10.0 variant of #5855 (716cdd7) because the CI build tests won't pass unless I include that. Assuming the tests pass, I'll add a CHANGELOG update.

BTW: if there is any doubt about whether you need a 0.10.2, I don't think BACKUP can safely be used on an active instance without the fix in (8d09d4d)

I think the last CI failure was the spurious transient one that happens in the ShardWrite test. Have added the CHANGELOG in the expectation that this CI-run will pass.

Thanks @jonseymour!


Integration Test - Release - 2019/05/14 18:46:06

Auto create for integration test. DocfxAuthorMetadataFlow

@PRMergerTest3 : Thanks for your contribution! The author, @bharney, has been notified to review your proposed change.


line 118 in ft_main.py

Line 118 of ft_main.py:
loss_mask = target_ids ! = tok.unk_token_id

The handling of tok.unk_token_id as None seems to be omitted here. If tok.unk_token_id is None, then on line 201 loss = -(torch.gather(probs, 1, target_ids) * loss_mask).sum(1) / loss_mask.sum(1) will report an error of .sum()

I'm not quite sure if it would be better to modify it like the following.😊
  if tok.unk_token_id is None:
      tok.unk_token_id = tok.pad_token_id
  loss_mask = target_ids != tok.unk_token_id

Thank you very much for your advice; we have updated the code. Wishing you a pleasant life!


Get teams a bot belongs to

We having some complications in our application because we didn't cache all the team ids for the accounts that were created with our bot. We think it would be a really good idea to add an endpoint for getting the teams inside a tenant that a user belongs to.
Is this in the pipeline ? If not, could it be possible to add ?
I'm also aware of other people having similar issues with this as well.

@billbliss

Yes, we agree - this is a problem that others have reported. We are currently investigating an overhaul of how bots are registered including this.

@billbliss Thanks for the reply!
Any ETA for this change on bot registration ?

@billbliss @BillZengMSFT I found this in the Microsoft Graph documentation (https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/api/user_list_joinedteams)
I'm wondering if this could be used in the context of a bot so that we can solve our issue.
Thanks before hand!

I'm afraid not. Azure Active Directory doesn't know about bot "users" currently, so they don't appear in the membership list for a group/team.

@billbliss mmm, sad :(
Any progress with having this feature for bots ?

@billbliss Another option that might works for us is if we could privately send the list of tenants that we need that data. Could that be possible at least ? We need to fix some old accounts data.


Facebook Bridge failed with error 500

Error message: No results for this query.
Query string: action=display&bridge=Facebook&u=CyberSaiyanIT&media_type=all&skip_reviews=on&format=Atom
Version: git.master.cb488d9
Facebook Page: https://www.facebook.com/CyberSaiyanIT

Your query works fine on my machine, using commit cb488d9
Did it fixed itself? Do you have issues with other bridges as well?

Sorry for delay, everything is fine with new commits.


matrix_solver: Determine prodded amount using crafts per second inste…

…ad of per timescale
In case a machine's speed would have it operate faster than one craft
per game-tick (1/60 second), the game would reduce this to one craft per
tick, with a different productivity value to error-correct. This
error-correction is taken into account by
calculation.util.determine_prodded_amount, which expects the amount of
crafts per second as its argument.
When we pass the total amount of crafts per timescale
(second/minute/hour), we can easily exceed 60 and kick the
error-correction code into effect. This would give wrong results for
minute/hour timescale, since the game is not going to error-correct in
the case of, say, 61 crafts per minute.
To address this, pass the amount of crafts per second, without
considering the timescale.

Thanks for finding this! I never really tested with high speeds or longer timescales so I never uncovered this. I guess my variable names were also incorrect/misleading.
With the fix and after some testing, I'm still seeing some disagreement between the two solvers if there's more than 60 crafts per second. I'll have to look into this more.


Creating GitHub for Cardano Indonesia Community

Creating organization GitHub account for Cardano Indonesia, with sub-tasks as follow:

[x] Create GitHub account with username: @cardano-indonesia
[x] Create first repository for Cardano Indonesia organization

Successfully created GitHub organization: https://github.com/cardano-indonesia
And the first repository for operation: https://github.com/cardano-indonesia/cardano-indonesia-operations


Webpack - No matching version found for<EMAIL_ADDRESS>

Cloned the project, went to the webpack folder, ran npm i
PS C:\ESRI-JS-API_4-18\jsapi-resources\esm-samples\webpack> npm i
npm WARN deprecated<EMAIL_ADDRESS>Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated<EMAIL_ADDRESS>fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
npm WARN deprecated<EMAIL_ADDRESS>Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated<EMAIL_ADDRESS>https://github.com/lydell/resolve-url#deprecated
npm ERR! code ETARGET
npm ERR! notarget No matching version found for<EMAIL_ADDRESS>npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.

I am reporting an issue with

[ ] TypeScript definitions
[ ] another resource in this repository

Fixed, that was an oversight. Thanks!

Fixed, that was an oversight. Thanks!


Install Failure in PE Environment

Describe the bug
Today I attempted to install the Managed AppExchange Package into a PE sandbox, and received multiple failure messages related to Apex Classes:
Missing feature
Installing this package requires the following feature and its associated permissions: Apex Classes
To Reproduce
Steps to reproduce the behavior:

Navigate to Setup--> Home
Search for AppExchange
Click on AppExchange Marketplace in left sidebar
Search for "Action Plans"
Click on Action Plans V4
Click on Get it Now
Follow prompts to authenticate and choose environment
Eventually land on Installing Package status page
Wait for email notification that package has installed
Receive Install Failed message instead

Expected behavior
I expected the managed package to send me a nice "successfully installed" message.
Screenshots
See attached PDF
ActionPlans V4 Install Failure - Prfessional Edition.pdf
Environment (please complete the following information):
Professional Edition Dev Sandbox
Additional context
nope.

Thanks @forceDotMom - this may be due to a security review flag that needs to be flipped. We will check with the AppExchange team to see why this isn't registering as able to be installed into the PE org.

This also happens exactly the same with the same missing feature error message on the Essentials edition (which the AppExchange page lists as a version supported for this app).

I successfully installed this in the same Professional Edition sandbox this week. Yay!! However, there seems to be another bug preventing a template from being instantiated against any record. I’ll check the list of issues and see if it’s already logged and if not add it.

Thanks David.
On Wed, Apr 20, 2022 at 1:56 PM David Schach @.***>
wrote:

Thanks @forceDotMom https://github.com/forceDotMom - this may be due to
a security review flag that needs to be flipped. We will check with the
AppExchange team to see why this isn't registering as able to be installed
into the PE org.
—
Reply to this email directly, view it on GitHub
https://github.com/SalesforceLabs/ActionPlansV4/issues/28#issuecomment-1104448799,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAHK2GW7GO43DRQ6ASSAGR3VGBVRNANCNFSM5T5FQDOA
.
You are receiving this because you were mentioned.Message ID:
@.***>


Different Day Text Color

Can I set different text colors for current day, selected day & other days?

+1 for this feature enhancement.

I would also welcome this feature.

I would like to have it too

I've released a new version which makes the colors for current and selected day configurable. Check the readme for the latest version.

Thank You.. Working with charm


Added option to select Filters and Methods of Keplerian determination for determining the orbit.

Added option to select Filters and Methods of Keplerian determination for determining the orbit.
User can now select from the following filters-

Savintzky Golay.
Triple moving average.
Both(Savintzky Golay and Triple moving average).
None (no filter).

User can now select the method of keplerian determination from the following-

Ellipse Fit.
Cubic Spline Interpolation.
Lamberts Kalman.

Working is shown below in GIF.

Looks good!

Good work.


Thank you for submitting a pull request to this project!
Once all check jobs have passed and the pull request has received a
sufficient number of reviews, the repository's gate jobs can be triggered by
adding a comment of :shipit: to this pull request.
When the gate jobs have completed successfully, this pull request will get
merged automatically.

@cloudnull said you are not limited to that.  sooo....

Handled in https://github.com/rcbops/rpc-openstack/pull/3492


glibc cannot be added in buildroot

For some reason, arm-buildroot-linux-gnueabihf-gcc does not exist for compiling.

Problem solve, build glibc from the first run would solve the problem. See https://buildroot.org/downloads/manual/manual.html#full-rebuild


Can't select token in case change Nominate to Pool when specific account mode

Describe the bug
To reproduce the bug
Steps:

Go to add the staking screen on the specific account mode
Change type staking Nominate to Pool
Observe the displayed screen

Actual: Disable button select token
https://github.com/Koniverse/SubWallet-Mobile/assets/117999489/b0b6b2cf-7d8b-4b3e-b851-783c82633292

Version test: v1.0.5(179)
Devices test: IP11
Validation passed.


Use a custom agent that keeps the catalogue API connection alive

We're seeing a steady trickle of reset connections between the front-end and the catalogue API; since we know we're always going to be talking to the API, let's try holding the connection open rather than recreating it on every request. Fingers crossed this makes it more reliable!

Urk.

I want to wait for https://github.com/wellcomecollection/wellcomecollection.org/pull/7765 to merge this, to offset the bundle size gains.

I want to see if I can get away without bringing in quite such a bundle size increase before merging 😬


Support for other transform properties (like rotation)

Problem:
Because Sortable.js uses transform: translate(0, 0) to position the hovering item, you can't use any other transform like rotation. I wanted to use rotation to slightly rotate the hovering item, to show the user they picked up an item. Similar to how Trello does it.
JSBin/JSFiddle demonstrating the problem:
https://jsbin.com/bakakaroyu/edit?html,css,js,output
In the JSBin I added the rotation transform and you'll see it doesn't do anything. I'm not sure what's the best way to support this. But maybe adding a callback to add extra transforms to your transform or something?

@kevinvanmierlo Thanks for bringing this up, this would be a great feature. I will get back to you once I have fixed this.

Done in commit 1c7847b12b52cb35a31d95b2e370c24a8a5a0712. You can build from the master branch or wait for new release which will be soon.

Hi, I'm having a similar issue with transform: skewX(-15deg); I think I´m already updated to 1.10.1. On my project I'm using vuedraggable 2.23.2.

About the issue, I have a new question!
As Sortable uses transform: translate(0, 0) to position the hovering item, if the item has a transform: scale(1.5),  when the _onDragStart is executed, transform: scale(1.5) will be lost. And  when the _onDrop is executed, transform: scale(1.5) also be lost.
I think the transform: scale(1.5) should always be there in all the life cycles of Drag And Drop.


Rename FenceBlock.isFence

This method is used for determining whether a fence can connect to another fence, and can return false even if the argument is a fence.
Please also backport this change to at least 1.16.4.

You can click the apply changes button under the suggestion if you agree with it.


specify version #

Without this, I'm receiving an error: ERROR appcfg.py:2396 An error occurred processing file '': HTTP Error 400: Bad Request Unexpected HTTP status 400. Aborting.

We're recommending that you specify this on the command line:
appcfg.py update -A appid -V version .
Or use gcloud.
On Wed, Mar 9, 2016, 6:01 PM Matt Auerbach<EMAIL_ADDRESS>wrote:

Without this, I'm receiving an error: ERROR appcfg.py:2396 An error
occurred processing file '': HTTP Error 400: Bad Request Unexpected HTTP
status 400. Aborting.
You can view, comment on, or merge this pull request online at:
https://github.com/GoogleCloudPlatform/appengine-flask-skeleton/pull/23
Commit Summary

specify version #

File Changes

M app.yaml
https://github.com/GoogleCloudPlatform/appengine-flask-skeleton/pull/23/files#diff-0
(2)

Patch Links:

https://github.com/GoogleCloudPlatform/appengine-flask-skeleton/pull/23.patch
https://github.com/GoogleCloudPlatform/appengine-flask-skeleton/pull/23.diff
—
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/appengine-flask-skeleton/pull/23.

@jonparrott that command works, but just curious -- why not include version in the yaml ? Without it, I received an error and couldn't deploy.

Because gcloud doesn't support those attributes in app.yaml and we would
like the files to be compatible with both tools. FWIW, the docs around
appcfg should include the -A and -V flags, if they do not, feel free to
report a content issue.
On Wed, Mar 9, 2016, 8:17 PM Matt Auerbach<EMAIL_ADDRESS>wrote:

@jonparrott https://github.com/jonparrott that command works, but just
curious -- why not include version in the yaml ? Without it, I received an
error and couldn't deploy.
—
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/appengine-flask-skeleton/pull/23#issuecomment-194655527
.

Got it. I see the confusion -- the instructions in https://console.cloud.google.com/start/appengine for Python with Flask has an error under step 4. It doesn't specify the version (with a -V flag) in the suggested command. I reported a content error under feedback in that page.


Parse staticWorkers from Terraform json input

What feature would you like to be added?
In order to be able to deploy and update a cluster with Terraform managed worker (static) nodes, it would be great to have these also parsed from the Terraform json input. E.g. when called as:
kubeone apply -t tf.json

with tf.json including:
staticWorkers:
  hosts:
   - publicAddress: 'X.Y.Z.W'
     hostname: 'worker0'
     sshUsername: ubuntu
     sshPrivateKeyFile: ssh-key
     sshPort: 22

What are use cases of the feature?
As above.
Many thanks for considering.

:+1:  also some others ask for this

Same as #1021 :D


Fix: Posix utils timespec overflow

Fixed potential UTILS_TimespecSubtract overflow
Updated UTILS_AbsoluteTimespecToTicks to get rid of call to posix function
Added unit tests

Description

Checklist:

[x] I have tested my changes. No regression in existing tests.
[x] My code is Linted.

/bot run checks

/bot run checks

/bot run checks


Fixes #1275

Description
Fixes #1275
Set proper width to navigation drawer. which is lowerBound of 70% of the screen size in portrait mode and lowerBound of 50% of the screen size in landscape mode.
Screen-shots:
Changed
Portrait

Landscape

Codecov Report

Merging #1279 into master will increase coverage by 0.01%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master   #1279      +/-   ##
=========================================
+ Coverage    3.77%   3.79%   +0.01%
=========================================
  Files         125     125
  Lines        5876    5877       +1
  Branches      579     579
=========================================
+ Hits          222     223       +1
  Misses       5639    5639
  Partials       15      15

Impacted Files
Coverage Δ

...free/nrw/commons/theme/NavigationBaseActivity.java
23.59% <100%> (+0.86%)
:arrow_up:

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 bdd7a86...4861c4d. Read the comment docs.

Can be merged after one round of testing.

Thanks @knight-shade :)


would people be interested in Typescript ?

Migration to typescript would make it future proof !

here it is !
https://github.com/myliang/xspreadsheet


Create endpoint using id to return info for single fire

Tasks

[x] create view
[x] create serializer
[x] add test for the endpoint

Getting all this completed and merged into main took about 3 hours

Overall this story was pretty fun to complete as I am much more comfortable with backend work than front end work.  There were hurdles along the way that just came down to lack of familiarity with Django, thankfully the code came out very straight forward and easy to read.


Default memory footprint is too large

With default values for kHAPIPSessionStorage_DefaultNumElements (17), kHAPIPSession_DefaultInboundBufferSize (32K) and kHAPIPSession_DefaultOutboundBufferSize (32K) the RAM footprint of a basic app ends up being over 1M.
Pre-allocating all the buffers is safe in terms of peak memory footprint but is unacceptable for smaller platforms - e.g. on ESP8266 we only have 40K or so to work with, ESP32 has 200K or so, STM32 MCUs typically used in IoT applications have 128K to 1M of RAM total.
For the library to be usable on those platforms, this needs to be addressed.
Immediate question: why are buffers 32K in size when the HAP protocol defines maximum payload size for an HTTP request at 1K? (HomeKit Accessory Protocol Specification non-Commercial Version R2, section 6.5.2)

I'm also looking for guidance on the size of the scratch buffer - 32K is obviously a no go, but how much is really needed?

ESP32 has 200K or so

That's weird, Espressif distributes the MFi version of the HomeKit ADK for the ESP32... Surely there is some info we are missing here.

they may have reduced buffer size and/or number of sessions.
this is why i'm looking for clarity on the required size. 32K seems excessive when the spec says max payload size is 1K.
@aajain-com ?

A port for ESP32/ESP32S2 has been made available here: https://github.com/espressif/esp-apple-homekit-adk

FWIW, i found 1.5k i/o buffer size to be adequate. it has to be greater than 1k + some crypto padding to be able to contain 1k encrypted frames.
further, in my mongoose-os port of the library.   i've successfully made all the buffers dynamic, so that at present the largest statically allocated structure is the sessions array, followed by the scratch buffer.
esp8266 build of the shelly-homekit firmware is able to support 9 concurrent connections with about 20k to spare.
the key changes are:

readContexts - https://github.com/mongoose-os-libs/homekit-adk/commit/ace7e0f915bfb04090b4d2f012c69afb39fbf0b4
writeContexts - https://github.com/mongoose-os-libs/homekit-adk/commit/5a97a69b3d4ef23f24cd9b82ab3d38a35f0f0496
eventNotifications - https://github.com/mongoose-os-libs/homekit-adk/commit/2ddb18858d0041e72d1817c1078169ec47c4296a
inboundBuffer - https://github.com/mongoose-os-libs/homekit-adk/commit/c2aaf26b1e71beb56946d238a692c49a9f0b030a
outboundBuffer - https://github.com/mongoose-os-libs/homekit-adk/commit/d70ad2c8003176221ba2c9c149f3730f0e2350a4

if there is interest, i can try to upstream the changes, as a compile-time option.


[Slider] Provide current slider's value through the onDragStart/onDragEnd callback

As was discussed in https://github.com/mui-org/material-ui/issues/13132 this PR adds the current sliders value on the onDragStart/onDragEnd callback to work around some issues with the order of the callbacks.

[x] I have followed (at least) the PR section of the contributing guide.

Is there something I can do to get this reviewed or merged @mbrookes ?

Will see what I can do. Should I rebase my PR then onto the latest next-branch?

@rejas Yes, please.

Thx for the approval and the explanation @eps1lon was already looking at the code and wondered why the test werde always sending a NaN along the DragEvent as a value, know I know why :-)

@rejas Thank you for working on this. Could you take a look at #14674 and tell me if this would solve the same problem?


Possible error in example for function createNode in testing documentation

The function createMount in the testing docs is followed by an example that I don't quite understand and I'm not sure whether there is an error in the example or it's me.
Focusing on my doubt, the relevant part of the current example is
...
describe('<MyComponent />', () => {
  let mount;

  function MySuccessButton({ children }) {
    return (
      <ThemeProvider theme={{ success: { main: '#fff' } }}>
        {children}
      </ThemeProvider>
    );
  }
...
  it('should work', () => {
    const wrapper = mount(<MockedTheme><MySuccessButton /></MockedTheme>);
  });
});

whereas as far as I understand it should be
...
describe('<MyComponent />', () => {
  let mount;

  function MyComponent({ children }) {
    return (
      <ThemeProvider theme={{ success: { main: '#fff' } }}>
        {children}
      </ThemeProvider>
    );
  }
...
  it('should work', () => {
    const wrapper = mount(<MyComponent />);
  });
});

Am I wrong or right? Where is MockedTheme coming from?

@kepler16bv We need to revamp the testing guide (#17070). I don't think that developers should use any of the modules we expose.

Ouch, ok thanks! As of today, what should we use then? The native enzyme functions?

https://github.com/testing-library/react-testing-library


Dealing with duplicity cache lock (.lock file)

@blacklabelops
While I was testing volumerize in a small sized storage, duplicity backup process was interrupt because of storage limitation.
This left .lock file at /volumerize-cache directory, which causes the error below
Another instance is already running with this archive directory
If you are sure that this is the  only instance running you may delete
the following lockfile and run the command again :
/volumerize-cache/3fe07cc0f71075f95f411fb55ec60120/lockfile.lock

How about adding a cache-removing script before start backing up?

I am not really sure how to solve this.
The cache is really important for me. I am using backblaze backend backups. This means if i delete the cache then each time i backup i need to build up another cache.
This mean additional costs for backups because data is transferred from and to my cloud storage.
Maybe we need to make this configurable?

@blacklabelops
I mean removing lockfile.lock instead of removing whole cache
I actually didn't know the functionality of cache folder...
Yep, cache is important but (I guess) lockfile (which is orphaned) is not needed on next backup :)

Im still trying to figure out, how to decide, if a lockfile is really orphaned.

Added new cleanup script cleanCacheLocks.


Provincies & gemeenten

Since we can show both provinces, municipalities and other orgs, we should change some labels, filter on something different index (not ori_*) and perhaps add some new filter features.

Not a perfect fix, because you can't search for the word "gemeente" or "provinie"


Prettify the regroup code

Types of changes

[x] Enhancement (project structure, spelling, grammar, formatting)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

A description of the changes proposed in the Pull Request

@manushak we decided to leave that for now, since it requires a lot of changes. This one is just refactored version of initial code.

@narekhovhannisyan these changes do not solve the problem. When executing the regroup manifest, it still regroups again

Hi @Eakinter99, thanks for the feedback. You can check my message in the thread above.


fix: Fix bug with 'argo delete --older'

Fixes #3695

I'd like to understand why TestWorkflowDeleteOlder.

I'd like to understand why TestWorkflowDeleteOlder did not catch this.

https://github.com/argoproj/argo/issues/3695#issuecomment-671080226

Available in v2.10.0-rc7.


large image constantly fails uploading

I keep getting an "HTTP Error." when trying to upload the image below the screenshot. It is a large image: 3MB and 5250x5400

All my tests on local WP installations were successful. I'm going to debug this on staging.

Just tested that large image on SMF staging. Uploading took 2 minutes.

Not sure what exactly I should do to make it appear for me...

I've set time limit to unlimited. Let's test...


change/fix semantics of option initiation and termination

Is option_to_trajectory in utils.py a special case of your new method? If so, can we unify them?

LGTM :) thanks for fixing this!


Bring back a high-level, curated CHANGELOG.md

Description
It would be helpful to synthesize features end users would find important in a central CHANGELOG.md file.
Right now there is a monorepo where the user must go into the packages, open the change log, then view PRs that are merged - which don't provide high level insights
Proposed solution
Add back CHANGELOG.md and note new features, future and current deprecations, longstanding bug fixes in the project in a central place.
Examples:

https://github.com/facebook/react/blob/d483463/CHANGELOG.md
https://github.com/ReactiveX/rxjs/blob/bca49bd/CHANGELOG.md
https://github.com/angular/angular/blob/b184f0a/CHANGELOG.md

I lean more toward the releaser hand-making the changelog than it being machine-made. The reason why is when a release is published it's more fresh on a mind what changes the maintainer feels is significant
Alternatives considered
Any type of root-level change log file is tracker agnostic and goes wherever the project goes.
Do you want to create a pull request?
No

Also, I would hold this to be good for https://github.com/ngneat/elfas well
I think it would greatly increase the clarity of the projects
An example of a project that does this very well is django:

https://docs.djangoproject.com/en/4.0/releases/4.0/
https://docs.djangoproject.com/en/4.0/releases/3.2/

They even have a specific page to keeping deprecation info: https://docs.djangoproject.com/en/3.2/internals/deprecation/
For projects like these, hand-made details on important changes would be invaluable.


No ?raw types in react.d.ts

Describe the bug
declare module '~icons/*' {
  import type React from 'react';
  import type { SVGProps } from 'react';
  const component: (props: SVGProps<SVGSVGElement>) => React.ReactElement;
  export default component;
}

if use types just from the library, i can't use ?raw query, because ts, based on provided d.ts think this is component,
MB I'm missing sampling, but now i need to write custom types instead of Plug'N'Play.
Should i make PR about fix this stuff?
Reproduction
https://codesandbox.io/s/proud-river-hcuf9o?file=/src/App.tsx
System Info
System:
    OS: Windows 10 10.0.22000
    CPU: (24) x64 AMD Ryzen 9 5900X 12-Core Processor
    Memory: 21.70 GB / 31.92 GB
  Binaries:
    Node: 16.17.0 - C:\Program Files\nodejs\node.EXE
    npm: 8.17.0 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Spartan (44.22000.120.0), Chromium (105.0.1343.42)
    Internet Explorer: 11.0.22000.120

Used Package Manager
pnpm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead.
[X] The provided reproduction is a minimal reproducible of the bug.

Seems like this is likely limited by https://github.com/microsoft/TypeScript/issues/38638
*?raw could be added but it would not match anything past the ?raw


Feature/add conflator config

Codecov Report
Attention: Patch coverage is 81.45161% with 23 lines in your changes are missing coverage. Please review.

Project coverage is 88.47%. Comparing base (2c8787d) to head (056fdf7).

Files
Patch %
Lines

polytope/datacube/backends/fdb.py
0.00%
9 Missing :warning:

...ansformations/datacube_mappers/datacube_mappers.py
80.00%
1 Missing :warning:

tests/test_cyclic_nearest.py
50.00%
1 Missing :warning:

tests/test_ecmwf_oper_data_fdb.py
50.00%
1 Missing :warning:

tests/test_fdb_datacube.py
50.00%
1 Missing :warning:

tests/test_incomplete_tree_fdb.py
50.00%
1 Missing :warning:

tests/test_local_grid_cyclic.py
50.00%
1 Missing :warning:

tests/test_local_regular_grid.py
50.00%
1 Missing :warning:

tests/test_multiple_param_fdb.py
50.00%
1 Missing :warning:

tests/test_point_nearest.py
50.00%
1 Missing :warning:

... and 5 more

Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #113      +/-   ##
===========================================
+ Coverage    88.45%   88.47%   +0.01%
===========================================
  Files           83       83
  Lines         7131     7201      +70
===========================================
+ Hits          6308     6371      +63
- Misses         823      830       +7

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


CurrentHeatingCoolingState:OFF  not updating

Hello,
I think I found a bug in this code. When the heating or cooling stops, the value of "converted" is 0 (this.platform.Characteristic.CurrentHeatingCoolingState.OFF), and thus it does not go into the if statement to update the status.
    private handleCurrentHeatingCoolingStateUpdate(status: Traits.HvacStatusType) {
        this.log.debug('Update CurrentHeatingCoolingState:' + status, this.accessory.displayName);
        let converted = this.convertHvacStatusType(status);
        if (converted)
            this.service.updateCharacteristic(this.platform.Characteristic.CurrentHeatingCoolingState, converted);
    }

   if (converted !== null)

should fix it.

Hmmm... you could be right.  However my thermostat always reports on/off correctly, I'll take a look.

Hi @rpersche, try the new version 1.1.6

@potmat it's working great now. Thanks.

You're very welcome.


Feature/list display

in this milestone using useSelector() displayed lists of Rockets and Missions.

Hi team🙋♀,
Good job implementing all the project requirements for this milestone/project.
STATUS APPROVED ✔
Your project is complete! There is nothing else to say other than... it's time to merge it 🔗 🚢
Congratulations! 🎉
Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers 🥂 and Happy coding!👏👏👏


tweaking map markers to color-blind friendly palette

https://colorbrewer2.org/#type=qualitative&scheme=Set2&n=3

Thank you! This week has gotten the best of me, so sorry I'm slow in reviewing and merging this (among other things), but I'm really trying to get to all these PRs this week. But in the meantime, just wanted to say thank you!

@workinontherailroad: Apologies for taking so long to review this, but I really appreciate this contribution, since dealing with the color blindness issues was definitely something I wanted to address. While your change would have solved the issues, I was afraid it might be a little less intuitive, since the blue-ish hue to "unknown" locations perhaps wasn't as obvious (without color blindness, obviously).
I've addressed this with different shapes and slightly different colors in #104, so let me know if you have any feedback on that approach there. But thank you for brining up this possible solution!


I would like to start a discussion if no changeset is found, and a note if changeset is present

Hi,
I would like to propose a feature about comment type.
With GITLAB_COMMENT_TYPE we can set it to discussion or note.
When a changeset is missing I would like to have a discussion to block merge request without resolution of the discussion.
If one is set a simple note is ok
I propose to add an optional configuration GITLAB_COMMENT_TYPE_IF_MISSING to allow this behaviour.
If it is ok I will create a PR with this modification

We were discussing very similar topic in our company. We wanted to add the necessity to resolve the discussion if changeset is missing, but if the changeset was available, no resolution should be needed.
I think, that maybe a nicer approach about this could be resolving the discussion if changeset file is part of the MR and unresolving it if it is not. There is an exposed API to manipulate the resolution state of a discussion thread.
For more context... we configured our gitlab projects to make unresolved discussions in MR block the merge button. This helped us not to forget about missing changeset files, but became a bit of an annoyance for those who are not forgetting, but still have to resolve the discussion all the time before merge.


edit/register settings should pull id from user session

I've removed the reference to unique_id for editing a profile and for registering a new profile. Doesn't make sense unless we have an 'admin' section where someone can edit someone else's settings but I assume this is not in the plans for now :)

Make your commit history pretty and with no merge commits... and heck, rebase master into here while you're at it.

@ednapiranha: Not sure how much git expertise you have, but if you want a hand rebasing this stuff ping me on Tuesday.


chore: release main

:robot: I have created a release beep boop
pob-test-package-in-monorepo: 2.0.0
2.0.0 (2022-04-30)
⚠ BREAKING CHANGES

name changed

Features

try a breaking change (fd80c53)

pob-test-typescript-package-in-monorepo: 2.0.0
2.0.0 (2022-04-30)
⚠ BREAKING CHANGES

name changed

Features

try a breaking change (fd80c53)

Dependencies

The following workspace dependencies were updated

dependencies

pob-test-package-in-monorepo bumped from ^1.2.0 to ^2.0.0

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/christophehurpeau/pob-monorepo-test-repository/releases/tag/pob-test-typescript-package-in-monorepo-v2.0.0 :sunflower:

:robot: Release is at https://github.com/christophehurpeau/pob-monorepo-test-repository/releases/tag/pob-test-package-in-monorepo-v2.0.0 :sunflower:


Accessing Data with MySQL Not Working

I've imported the project directly into Eclipse and  have not modified a thing. When I run the project I get the error:

APPLICATION FAILED TO START

Description:
Field userRepository in hello.MainController required a bean of type 'hello.UserRepository' that could not be found.
Action:
Consider defining a bean of type 'hello.UserRepository' in your configuration.

Sorry. I'll move this to the issues for that specific guide.


Append to collection entry fields

I am creating an application where users have the ability to add themselves to an event. I can update an entry just fine, but it overrides the field. How can I append/add to the field? Any ideas? Example below.
Example:
events:{
    cart_attendants: [ //account-link field type - multiple: true
        0: "user-id"
    ]
 }

Put Function:
signup(eventId){
                //add current user id to cart attendants field
                axios.put(base + '/collections/save/locations?token=' + this.token, {
                    data:{
                        _id: eventId,
                        cart_attendants: [this.user._id],
                    },
                })
                    .then(res => {
                        console.log(res);
                        this.createCal();
                    })
                    .catch(e=>console.log(e))
            }

You could use a second collection with one entry per user or you could add a check to config/bootstrap.php
$app->on("collections.save.before.locations", function($name, &$entry, $isUpdate) {
    // do your checks, load the old entry, etc.
    $entry['cart_attendants'] = $checked_value;
});


Crash on non-Facebook-uploaded image

The program crashes due to one of my profile images being uploaded through the app, rather than being pulled from Facebook.
panic: json: invalid use of ,string struct tag, trying to unmarshal "directupload" into int64

goroutine 1 [running]:
panic(0x62faa0, 0xc4203762c0)
        /usr/lib/go-1.7/src/runtime/panic.go:500 +0x1a1
main.checkError(0x7829a0, 0xc4203762c0)
        /home/sebbe/src/github.com/disiqueira/tinderonline/tinderonline.go:137 +0x5c
main.main()
        /home/sebbe/src/github.com/disiqueira/tinderonline/tinderonline.go:28 +0x175

In particular, one of my pictures has "fbId":"directupload".

I removed fbid field until i can figure out how to handle this unstandardized field.
Updating the packages should fix the issue:
go get -u github.com/disiqueira/tindergo
go get -u github.com/disiqueira/tinderonline

That did indeed resolve the issue.

Thank you for the feedback!!


command line: add seed command

start seeding a file like this:
webtorrent seed /path/to/file.txt

This would be great! Is there another way of seeding at the moment with cli?

Currently there's no way to seed with the webtorrent command line program. That's what this issue is for :)
You can always use the client.seed API directly from a node.js script. Docs for it are here: https://github.com/feross/webtorrent#clientseedinput-opts-function-onseed-torrent-

Okay, this is done now. Still only seeds to bittorrent nodes. I'll add seeding to web peers soon.
Released as 0.25.0.


trigger content sooner

"The “appearing” content is a bit disorienting. Subconsciously, when I don’t see content lower on the page, I think there is no more content. I’d recommend either getting rid of it, or at least moving the triggers higher so that there is less white space before the items appear."
I agree with this. @jiwalker-usgs  or @mwernimont can we address this easily? Honestly, I think there's a time and a place for having things magically appear, but this might not be one. On the other-hand, if it's a really tricky thing to undo at this stage, we can live with it.

Yeah we can just get rid of the fade. Want it gone?

yeah

Asked JWalks to look it over, but the PR for no fades is right here, #187