Use luarocks native build on rockspec

This should make luv more compatible with luarocks echosystem:

Doesn't depend on cmake(which may not be available). luv is very simple to
compile, and cmake is used more to setup dependencies, but this is already
taken care of by luarocks.
Allows the user to specify custom libuv prefixes with LIBUV_DIR(which is the
idiomatic way of specifying dependencies location in luarocks)
Respects CC

Close #223

I actually like this, just a couple issues I foresee.

I'd love to support windows properly.  Currently luvi supports windows, linux, freebsd, and darwin.
I like it that a shared libuv can be used, but a statically linked libuv is my primary use case and needs to work well.  I don't think distribution libuv binaries are to the point they are usable much yet.  I tend to release a new luv the same day or day after a libuv release.

I like it that a shared libuv can be used, but a statically linked libuv is my primary use case and needs to work well. I don't think distribution libuv binaries are to the point they are usable much yet. I tend to release a new luv the same day or day after a libuv release.

I don't think I can make luarocks build libuv automatically without invoking cmake and reintroducing the problems in #223, but I think the luarocks community is ok with installing their external dependencies manually.
Projects that use luv and would like to install libuv automatically can do so with a separate script, and by setting LIBUV_DIR appropriately(this is what neovim does).

@equalsraf I have copied the windows-specific bits from https://github.com/neovim/lua-client/pull/23, do you know how to fix this error? (I think it fails in visual C 2013, but not 2015)

Fixed by replacing /md with /mt in windows CFLAGS, as explained in the CMakeLists.txt.

Fixed by replacing /md with /mt in windows CFLAGS, as explained in the CMakeLists.txt.

@creationix note that while the luarocks builtin builder doesn't allow to compile libuv automatically, the user can still build libuv using cmake and then invoke luarocks make LIBUV_DIR=..., as it was done in the travis/appveyor builds

I understand that libuv can be built manually, but this is a regression for people wanting a static libuv inside luv.  Before they could simply install cmake and a compiler and do luarocks install luv, but now they have to also download and build libuv from source and install it somewhere and manually pass in the install path to luarocks.
I may be over-thinking the luarocks use case, but this is the area causing me pause and the reason in required cmake in the first place.

@creationix I understand the inconvenience of manually installing dependencies(which is why neovim build system automatically), but hiding cmake under luarocks has some disadvantages:

It is not possible to specify the compiler to do the build
It is not possible to pass arbitrary cmake flags

These limitations are introduced by luarocks not providing a way to customize the options passed to cmake beyond what is hardcoded in the rockspec. I may have missed something, but found no way to pass through arbitrary cmake options(such as -DBUILD_SHARED_LIBS) from the luarocks command line to cmake. Also asked a question but got no conclusive answer.
In the end it is a tradeoff between small gain in convenience for simple scenarios(like writing a script that uses luv) and making it more difficult/impossible to use in more complex scenarios(such as part of build system in a another project, that needs to customize cmake options beyond what luarocks allows).
The reason I wrote this rockspec is because I couldn't find another way of doing what neovim build system needs for travis, but this PR not being merged does not block me because I can simply maintain this rockspec in neovim source tree, so it is up to your discretion. But before making a decision, ask yourself these questions:

Does most luvit/luvi/luv community use luarocks? AFAIK luvit has its own package manager/module system, so I believe most users don't really care about luarocks
Does the luarocks community care about automatically installed libraries?  Since luarocks provides no native way to automatically install libraries, I believe they are used and even prefer to take care of installing their own system dependencies.

I agree that not providing a way to customize the options passed to CMake is a serious luarocks limitation, but maybe we should fix luarocks instead? This PR's regression would make life harder for applications that use luv and are currently installed automatically using luarocks/cmake (admittedly I'm the author of one such application). On Linux the fix would be an easy apt-get install, but on Windows the amount of extra work to install my application would be immense. Fixing luarocks seems the nobler thing to do here, especially since big projects such as neovim already depend on CMake anyways.

I agree that not providing a way to customize the options passed to CMake is a serious luarocks limitation, but maybe we should fix luarocks instead? This PR's regression would make life harder for applications that use luv and are currently installed automatically using luarocks/cmake (admittedly I'm the author of one such application). On Linux the fix would be an easy apt-get install, but on Windows the amount of extra work to install my application would be immense. Fixing luarocks seems the nobler thing to do here, especially since big projects such as neovim already depend on CMake anyways.

Agreed, but getting familiar with luarocks internals in order to submit a PR would take considerably longer, and unfortunately I don't have time to spare.
OTOH I already had a working rockspec from the previous version of neovim lua client, even the windows-specific were already implemented by @equalsraf, so it cost me only a few minutes to adapt the rockspec for luv.

For now can we simply point people to @tarruda's rockspec if they want a more minimal spec?  I'm not familiar with rocks and how namespaces work.  Is it under a different name or a different repository?

For now can we simply point people to @tarruda's rockspec if they want a more minimal spec? I'm not familiar with rocks and how namespaces work. Is it under a different name or a different repository?

To install luv with the "built" rockspec one can simply invoke luarocks build https://raw.githubusercontent.com/tarruda/luv/18bc34aa72492fddc558641b86ca6fdad5fd7589/luv-1.8.0-4.rockspec LIBUV_DIR..., but it won't install as a separate package(the rock will still be registered as "luv"). It is possible to change the name in the rockspec, but AFAIK other modules that depend on luv won't be able to use it without breaking dependency on luv.
How about this: I rename the file to luv-1.8.0-4-nodeps.rockspec and both are maintained in luv tree(only changing the version number will be necessary, but this can be automated with a bump script). Publishing to luarocks is not necessary, projects that require this minimal version can install by pointing to the github raw content.
Take neovim lua client for example, it depends on plain luv, and luarocks will install it using the default cmake rockspec. But if someone using neovim-client(eg: neovim) requires luv to be built using the "nodeps" rockspec, they can simply manually install luv prior to the client with: luarocks build https://raw.githubusercontent.com/luv/luv/master/luv-1.8.0-4-nodeps.rockspec LIBUV_DIR...
If this solution is acceptable I will fix this PR.

@creationix I have modified this PR: Now the modified rockspec is under the rockspecs directory and won't affect how luv is installed via luarocks. Projects that need to use the new rockspec can invoke luarocks passing the github raw url, eg: luarocks build https://raw.githubusercontent.com/luv/luv/1.8.0-4/rockspecs/luv-1.8.0-4-nodeps.rockspec.
The new rockspec also has to be updated when the version changes, but I have added a bump script to simplify the task.

Awesome work!


Fix GitHub Actions workflow

Currently, the CI workflow to deploy the gh-pages fails. See e. g. https://github.com/ferrilab/bitvec/actions/runs/3500371119/jobs/5862965920 for an example. It fails with the error message:
mdbook: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.29' not found (required by mdbook)
mdbook: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by mdbook)
Error: Process completed with exit code 1.

The current version of the action peaceiris/actions-mdbook only supports Ubuntu 22.04 or 20.04, but not Ubuntu 18.04 anymore. So an update of the runner from Ubuntu 18.04 to Ubuntu 22.04 is probably the best way to fix this.
Furthermore, the action actions/checkout is updated to get rid of a deprecation warning related to an old Node.js version.

Hi! I apologize for the long delay; I have had a very stressful winter and have not had the time or energy to check this repository in a timely manner. I'm trying to catch up now.
I don't know anything about GHA and rely entirely on copy-paste or the goodwill of others.
Thank you for catching this.

I apologize for the long delay; I have had a very stressful winter and have not had the time or energy to check this repository in a timely manner. I'm trying to catch up now.

Glad to see you are back. :+1:
The PR finally got merged and the CI jobs seem to be passing again, so I see this as a positive outcome, despite the delay.

I don't know anything about GHA and rely entirely on copy-paste or the goodwill of others.

Actually, you can get away with copy and paste for the simpler things of GHA most of the time. :)


Update eslint

Currently after TS 4.2.2 bump:
WARNING: You are currently running a version of TypeScript which is not officially supported by @typescript-eslint/typescript-estree.

You may find that it works just fine, or you may not.

SUPPORTED TYPESCRIPT VERSIONS: >=3.3.1 <4.2.0

YOUR TYPESCRIPT VERSION: 4.2.2

Please only submit bug reports when using the officially supported version.

Done in https://github.com/rapidsai/node-rapids/pull/114


RUMM-2779 Resolve view snapshot background from theme color

Resolve view snapshot background from theme color
What does this PR do?
In this PR we are making sure that whenever a screen snapshot is performed for SR records, if the root wireframe does not have a ShapeStyle (meaning that we could not resolve the background from a potential drawable attached to the View) we will resolve the ShapeStyle from the Theme#windowBackground. This way we will make sure that we will not have transparent backgrounds in our snapshots and we simulate the system behaviour.
Motivation
What inspired you to submit this pull request?
Additional Notes
Anything else we should know when reviewing?
Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[ ] Make sure you discussed the feature or bugfix with the maintaining team in an Issue
[ ] Make sure each commit and the PR mention the Issue number (cf the CONTRIBUTING doc)

Codecov Report

Merging #1230 (1f53698) into feature/sdkv2 (8747487) will increase coverage by 0.00%.
The diff coverage is 93.88%.

@@              Coverage Diff               @@
##           feature/sdkv2    #1230   +/-   ##
==============================================
  Coverage          82.79%   82.79%
==============================================
  Files                354      358    +4
  Lines              12590    12616   +26
  Branches            2088     2095    +7
==============================================
+ Hits               10423    10445   +22
- Misses              1526     1527    +1
- Partials             641      644    +3

Impacted Files
Coverage Δ

...nreplay/recorder/listener/WindowsOnDrawListener.kt
93.94% <0.00%> (ø)

.../datadog/android/sessionreplay/utils/ThemeUtils.kt
66.67% <66.67%> (ø)

.../android/sessionreplay/processor/WireframeUtils.kt
100.00% <100.00%> (ø)

...android/sessionreplay/recorder/SnapshotProducer.kt
88.89% <100.00%> (+6.28%)
:arrow_up:

...ssionreplay/recorder/mapper/BaseWireframeMapper.kt
100.00% <100.00%> (ø)

...ssionreplay/recorder/mapper/TextWireframeMapper.kt
90.16% <100.00%> (ø)

...ssionreplay/recorder/mapper/ViewWireframeMapper.kt
88.46% <100.00%> (ø)

...tadog/android/sessionreplay/utils/ShapeStyleExt.kt
100.00% <100.00%> (ø)

...datadog/android/sessionreplay/utils/StringUtils.kt
100.00% <100.00%> (ø)

...atadog/android/sessionreplay/utils/WireframeExt.kt
100.00% <100.00%> (ø)

... and 12 more


chirp: 20170714 -> 20180325

Semi-automatic update generated by https://github.com/ryantm/nix-update tools.
This update was made based on information from https://repology.org/metapackage/chirp-daily/versions.
These checks were done:

built on NixOS
Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
found 20180325 with grep in /nix/store/xlgh06iiayz3f6svbqhdvnmhklvi4w3i-chirp-daily-20180325
directory tree listing: https://gist.github.com/fe1b7b075a9c5f16ef47891d6730b7bb

cc @the-kenny for review

No attempt on x86_64-darwin (full log)
The following builds were skipped because they don't evaluate on x86_64-darwin: chirp
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowBroken = true; }
to ~/.config/nixpkgs/config.nix.

Success on x86_64-linux (full log)
Attempted: chirp
Partial log (click to expand)
glibPreFixupPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/xlgh06iiayz3f6svbqhdvnmhklvi4w3i-chirp-daily-20180325
strip is /nix/store/fzcs0fn6bb04m82frhlb78nc03ny3w55-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/xlgh06iiayz3f6svbqhdvnmhklvi4w3i-chirp-daily-20180325/bin
patching script interpreter paths in /nix/store/xlgh06iiayz3f6svbqhdvnmhklvi4w3i-chirp-daily-20180325
/nix/store/xlgh06iiayz3f6svbqhdvnmhklvi4w3i-chirp-daily-20180325/share/chirp/rpttool: interpreter directive changed from "/usr/bin/env python" to "/nix/store/sz9x7gpmlpk05q952b9vq87hbgn26hkc-python-2.7.14/bin/python"
/nix/store/xlgh06iiayz3f6svbqhdvnmhklvi4w3i-chirp-daily-20180325/share/chirp/chirpw: interpreter directive changed from "/usr/bin/env python" to "/nix/store/sz9x7gpmlpk05q952b9vq87hbgn26hkc-python-2.7.14/bin/python"
checking for references to /build in /nix/store/xlgh06iiayz3f6svbqhdvnmhklvi4w3i-chirp-daily-20180325...
/nix/store/xlgh06iiayz3f6svbqhdvnmhklvi4w3i-chirp-daily-20180325

Success on aarch64-linux (full log)
Attempted: chirp
Partial log (click to expand)
glibPreFixupPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/z3vgp5x3pipyd1aw0j8klcnyrq352njv-chirp-daily-20180325
strip is /nix/store/3zq400fri5dv7d30lpxlqm2v9y1iis6j-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/z3vgp5x3pipyd1aw0j8klcnyrq352njv-chirp-daily-20180325/bin
patching script interpreter paths in /nix/store/z3vgp5x3pipyd1aw0j8klcnyrq352njv-chirp-daily-20180325
/nix/store/z3vgp5x3pipyd1aw0j8klcnyrq352njv-chirp-daily-20180325/share/chirp/chirpw: interpreter directive changed from "/usr/bin/env python" to "/nix/store/14z9xiiwdnks1pivrv2hml9cflwq2iw3-python-2.7.14/bin/python"
/nix/store/z3vgp5x3pipyd1aw0j8klcnyrq352njv-chirp-daily-20180325/share/chirp/rpttool: interpreter directive changed from "/usr/bin/env python" to "/nix/store/14z9xiiwdnks1pivrv2hml9cflwq2iw3-python-2.7.14/bin/python"
checking for references to /build in /nix/store/z3vgp5x3pipyd1aw0j8klcnyrq352njv-chirp-daily-20180325...
/nix/store/z3vgp5x3pipyd1aw0j8klcnyrq352njv-chirp-daily-20180325


The "monospaced" Typography variant is not monospaced.

Describe the bug
Looking at the EDS React Typography component, there is an example of "text_monospace", but this text is in now way monospaced. We found out that EDS has a monospaced font (equinor-mono), but for some reason, this is not in use.
This should be shown in the documentation, and be available through the EDS React <Typography> component, or be removed from the docs.
Images:

@vnys Can you check if this is something we can solve?


Fix connection pool tests and drop global users from spec_helper

Fixes the connection pool tests by using its own users. They were broken when tests in make spec 2 started using spec_helper which creates/destroys the global users this test used.
Delete $user_* users as they were not being used and were recreated for each spec using spec_helper. Saves about 20 minutes of testing in master (much less in parallel).

CR @gfiorav

:package: it!


Add node selector in node level chaos (remove cordon prerequisite)

As of now, we have cordoned the application node before the injection of chaos so that chaos-pod won't schedule on the application node in case of node-level chaos.
This pre-requisite can be avoided by providing node selectors inside chaosengine so that it will schedule on some specific node other than the application node.

Experiments support node-selector from 1.10 release:

https://docs.litmuschaos.io/docs/chaosengine/#component-specification
https://docs.litmuschaos.io/docs/chaosengine/#experiment-specification


Patch to get apostrophe working on a german keyboard

To make it possible to enter the character '  (apostrophe, 0x26) on a German keyboard I had to patch pmhid.h:
diff --git a/common/pmhid.h b/common/pmhid.h
index 4646ba1..9b050e5 100644
--- a/common/pmhid.h
+++ b/common/pmhid.h
@@ -340,7 +340,7 @@
      { 0    , 0     ,0 }, /* 0x2f */ \
      {'+'   , '*'   ,'~' }, /* 0x30 */ \
      {'#'   , '\''   ,0 }, /* 0x31 */ \
-     {'#'   , '~'   ,0 }, /* 0x32 */ \
+     {'#'   , '\''   ,0 }, /* 0x32 */ \
      { 0    , 0     ,0 }, /* 0x33 */ \
      { 0    , 0     ,0 }, /* 0x34 */ \
      {'`'   , '~'   ,0 }, /* 0x35 */ \

Integrated into development version.
Will be pushed online soon ><IP_ADDRESS> (DE keyboard definition will raise to revision 2).
Thank for your submit.
Dominique


Dyanmic QR default, Dynamic QR History created

Hi please check this pull request, Default QR, QR History and profile page updated with tabs and about me

Hello, you want to contribute to the project with your changes


igluctl: make lintOptionalNull report about all invalid properties

Having this JSON schema:
{
  "properties": {
    "a": {  "type": "string" },
    "b": {  "type": "string" },
    "c": {  "type": "string" }
  },
  "required": ["a"]
}

igluctl lint will print warning only once. This is maybe a good thing having how annoying these warning without additional info, but message is misleading. It should state something like Properties [b,c] are not required and don't allow null type.
Also, this check doesn't work at all if there's no required schema property.

Migrated to https://github.com/snowplow-incubator/igluctl/issues/26


Patch to fix backward incompatible issue on table metadata

Summary of Changes
Constant DESCRIPTION_NODE_LABEL previously available changed location by PR This PR is to make it available again.
Tests
Integration tested
Documentation
N/A
CheckList
Make sure you have checked all steps below to ensure a timely review.

[x] PR title addresses the issue accurately and concisely. Example: "Updates the version of Flask to v1.0.2"

In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

[x] PR includes a summary of changes.
[x] PR adds unit tests, updates existing unit tests, OR documents why no test additions or modifications are needed.
[x] In case of new functionality, my PR adds documentation that describes how to use it.

All the public functions and the classes in the PR contain docstrings that explain what it does

[x] PR passes make test

Codecov Report

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

@@            Coverage Diff             @@
##           master     #195      +/-   ##
==========================================
+ Coverage   82.25%   82.27%   +0.01%
==========================================
  Files          69       69
  Lines        3354     3356       +2
  Branches      367      367
==========================================
+ Hits         2759     2761       +2
  Misses        490      490
  Partials      105      105

Impacted Files
Coverage Δ

databuilder/models/table_metadata.py
91.62% <100%> (+0.08%)
: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 5035756...78ce059. Read the comment docs.


WebView onNavigationStateChange Unable to monitor Jump page events of react-router

Is this a bug report?

Yes

Have you read the Contributing Guidelines?

Yes

Environment

OS:  macOS Sierra 10.12.6
Node:  v7.10.0
Yarn:  0.27.5
npm:  4.2.0
Watchman:  4.7.0
Xcode:  Xcode Version 9.2 beta (9C32c)
Android Studio:  2.3
react-native: all
react: 16.0.0
Target Platform: iOS (8-11.2) android(4.4.4-8.0)

Steps to Reproduce
1.react => router.js
export default () => (
    <div>
        <Switch>
            <Route exact path="/" component={createComponent(Home)}/>
            <Route path="/page1" component={createComponent(Page1)}/>
            <Route path="/counter" component={createComponent(Counter)}/>
            <Route path="/userinfo" component={createComponent(UserInfo)}/>
            <Route component={createComponent(NotFound)}/>
        </Switch>
    </div>
);

2. react native => WebView.js
onNavigationStateChange = (navState) => {
   console.log(navState)
}

The first load will be executed, and then the similar jump will not listen

What's more regrettable is that，This problem has so far failed to discuss his solution, which is very distressing to me

yes ,I also have this problem

I have faced this problem. It it likely caused by the implementation of onNavigationChange event trigger.  onNavigationChange will only be called when the url actually change, and however, will not be called if the page your webview is trying to open is a SPA,  which is navigating without actually change url directly and use window.history api to modify the url dynamically or just use hash url directly. So to make your webview compatible with this kind of web page, you may need some event listener to monitor such behavior. For example, try injecting the following code in your webview:
(function(history){
var pushState = history.pushState;
var back = history.back;
function updateNavState(currTitle) {
setTimeout(function () {
window.postMessage(JSON.stringify({
type: 'navStateChange',
navState: {
url: location.protocol + '//' + location.host + location.pathname,
title: currTitle ? currTitle : document.title
}
}));
}, 100);
};
history.pushState = function(state) {
updateNavState();
return pushState.apply(history, arguments);
};
history.back = function() {
updateNavState();
return back.apply(history);
};
window.onload = function() {
updateNavState();
};
window.onpopstate = function() {
updateNavState();
};
window.onhashchange = function() {
updateNavState();
};
new MutationObserver(function(mutations) {
updateNavState(mutations[0].target.text);
}).observe(
document.querySelector('title'),
{ attributes: true, childList: true }
);
new WebKitMutationObserver(function(mutations) {
updateNavState(mutations[0].target.text);
}).observe(
document.querySelector('title'),
{ attributes: true, childList: true }
);
})(window.history);
P.S. MutationObserver is used to monitor the title change event of the web page.
The code above may work fine in android but however in ios it may trigger useless onLoad event in webview which may affect the performance. I'm still seeking a solution to it.
Hope it might help u.


Add support EOSIO

Unlike other blockchains, EOSIO doesn't derive address from public key.
It uses human-readable account name like alice1wonder rather than using Base58 encoded address.

Add EOSIO public-private key pairs (but intentionally set address column empty)
Add test spec for checking first public key for EOSIO (instead of first address)

Looks good. The test check is a good reminder to me to upgrade the network tests to check address, pubkey and privkey rather than just address. Thanks for the PR.


React-native 5.1 installation error

Hello, I add the React-native-Webview-bridge.a file according to the installation method on the document, but I made the following mistakes, I don't know how to ISO.

but The Android platform can run normally

I've done it, and there's a react-native-webview-bridge-update folder under the node_modules folder, which can be added to the React-native-Webview-bridge.a file in this folder.


Update PowerShell module load

🚀 Feature Proposal
PowerShell modules on Windows 10 do not load properly the first run and PowerShell needs to be run as administrator for those modules to install properly.
Motivation
Cleaner way to get this going and run the script direct from the raw Github content for security.
Example
Install-Module CloudConnect -AllowClobber
Install-Module AzureAD -AllowClobber
Install-Module MSOnline -AllowClobber
Import-Module CloudConnect -Global
Import-Module AzureAD -Global
Import-Module MSOnline -Global
Set-Location $env:USERPROFILE\desktop
$SparrowGitHub = Invoke-WebRequest "https://raw.githubusercontent.com/cisagov/Sparrow/develop/Sparrow.ps1"
Invoke-Expression $($SparrowGitHub.Content)
Pitch
Why does this feature belong in this project?

Upon further discussion, this is not a change we will implement.

Upon further discussion, this is not a change we will implement.


feat: faster reading of circom types when dangerous feature

When dangerous feature is enabled, the parser will not check wether points are on curve or in the correct subgroup
closes #139

We can't decide on how to solve this at the moment. As it is not high on our checklist we close it and maybe re-open it later


Loading a file with ensemble tables takes a long time

I tried to load this file which contains an ensemble table, but it never loaded. Not sure if it's trying to represent each column as a variable but we should prevent it from doing so.

Fixed in https://github.com/LinkedEarth/pylipd/commit/8c185076f3ebe7ff96c4019c41301f077fe71f63

Tried it in a notebook and it sent my computer into a panicked loop of warnings

It is the if __name__=="__main__": that sends the notebook into an infinite loop of warnings.

Actually all files are sending the notebook in an infinite loop of warnings:

But the loading works within Spyder.


New feature: Add support for customized builders in class for @SuperBuilder

The error is pretty explanatory :
@SuperBuilder does not support customized builders. Use @Builder instead.

For instance, I'd like to have the following
@SuperBuilder
public class User extends BaseModel {
    private String username;
    private String password;

    public static class UserBuilder {
        public User.UserBuilder password(PasswordService passwordService, String password) {
            this.password = passwordService.verifyAndEncode(password);
            return this;
        }
    }
}

I decided explicitly against this feature, at least for the start. The reason is that the generated code is quite complex, and checking for existing implementation for all of the different elements is extensive and tedious.
So it's doable, but I'll focus on bugs and smaller features first.

PR #1871 adds limited customization possibilities. However, you cannot replace the setter methods in the builder. But instead you could replace the build() method and do this.password = passwordService.verifyAndEncode(password); in there.
So this PR should at least fix this concrete issue.

Why we closed this issue


feat: command to simulate Merge/Pull Request

Adds git merge(M|P)R <source_branch> <target_branch> [--delete-after-merge] command to simulate a Merge/Pull Request being merged into the target branch
The optional flag --delete-after-merge will remove the merged branch on the origin tree

The local remote branch remains as it is Git default behavior, even after git fetch (it would require git fetch --prune support to automatically prune remote tracking branches)

You can push a branch with a deleted remote tracking branch on origin, the ref will just update.

Resolves #1057
Examples
Merging a feature branch feat into main on origin
git clone;
git switch -c feat;
git commit;
git push;
git fakeTeamwork;
git mergeMR feat main;

Merging a feature branch feat into main on origin when deleting it after merging
git clone;
git switch -c feat;
git commit;
git push;
git fakeTeamwork;
git mergeMR feat main --delete-after-merge;

If you git fetch after using git mergeMR, the ref o/feat will still exist because git fetch does not prune it by default:
git fetch;

You can re-push the local branch, re-creating a remote branch, and updating the ref o/feat:
git commit;
git push;

Wow @Magador I really appreciate the contribution! You wrote tests and explained the small change in the git engine and thought about everything 🙌🏻
I'm not super familiar with these alternate workflows for merging features (at Instagram we all just merge into one main trunk branch) but sounds like you've thought about these a lot. I'll merge and push the site now with the updates 😎

Yeah :)
thanks @Magador

that's good ! Where can i do this experiment ? I do not find this one in https://learngitbranching.js.org/?locale=zh_CN

that's good ! Where can i do this experiment ? I do not find this one in https://learngitbranching.js.org/?locale=zh_CN

You can simulate a merge using the sandbox and creating a remote repo :
git clone;
git switch -c feat;
git commit;
git push;
git fakeTeamwork;
git mergeMR feat main;

yes, it works


https://pub.flutter-io.cn,https://storage.flutter-io.cn blocked by organization due to  contains of the Phishing and Malicious activity.

Steps to reproduce

flutter doctor

Actual results
X An HTTP error occurred while checking "https://pub.flutter-io.cn": Proxy failed to establish tunnel (407 Proxy Authentication Required)
X An HTTP error occurred while checking "https://storage.flutter-io.cn": Proxy failed to establish tunnel (407 Proxy Authentication Required)
Upon contacting the organizational network team received the following replay:
"Requested URLs are not allowed due to contains of the Phishing and Malicious activity. "

Logs

Logs

<!-- Paste your logs here -->

Flutter Doctor output
(base) PS I:\FlutterWorks\app1_26_10_24> flutter doctor
Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 3.19.1, on Microsoft Windows [Version 10.0.22631.4391], locale en-IN)
[√] Windows Version (Installed version of Windows is version 10 or higher)
[√] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[√] Chrome - develop for the web
[√] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.11.5)
[√] Android Studio (version 2024.2)
[√] IntelliJ IDEA Community Edition (version 2024.2)
[√] VS Code, 64-bit edition (version 1.44.2)
[√] Proxy Configuration
[√] Connected device (3 available)
[!] Network resources
X An HTTP error occurred while checking "https://pub.flutter-io.cn": Proxy failed to establish tunnel (407 Proxy Authentication Required)
X An HTTP error occurred while checking "https://storage.flutter-io.cn": Proxy failed to establish tunnel (407 Proxy Authentication Required)

I too had a similar situation, my organisation uses Falcon CrowdStrike and Netskope. Solution was that: One of the network guy, opened the NetSkope configuration and updated the definitions.
But yea, the question still remains why is it being marked malicious.

For flutter doctor error, can you confirm you followed Configuring Flutter to use a mirror site?
About the error when accessing the site, please report issue to maintainers of the website.

Yes, I tried configuring a mirror site, but no luck it did not worked.
Only thing I want to point out is that it's is probably due to Enterprise based Security Apps that does not behave well be it Netskope or Zscaler.
And as I mentioned, simply updating the Netskope definitions made it work.

For flutter doctor error, can you confirm you followed Configuring Flutter to use a mirror site?
About the error when accessing the site, please report issue to maintainers of the website.

Yes, I tried configuring a mirror site, but no luck it did not worked.
Only thing I want to point out is that it's is probably due to Enterprise based Security Apps that does not behave well be it Netskope or Zscaler.
And as I mentioned, simply updating the Netskope definitions made it work.

For flutter doctor error, can you confirm you followed Configuring Flutter to use a mirror site?
About the error when accessing the site, please report issue to maintainers of the website.

Not working with mirror site configuration.
Can you please provide the contact to report this issue to maintainers of the website.

Can you please provide the contact to report this issue to maintainers of the website.

You can scroll down to the end of the site and should see the bug report icon there, it will go to https://github.com/dart-lang/pub-dev. I'm not sure if there is another site for cn but maintainers on pub-dev repo may know that.

Yes, I tried configuring a mirror site, but no luck it did not worked.

Not working with mirror site configuration.

Per https://docs.flutter.dev/community/china#china-flutter-user-group, I would suggest filing an issue on https://github.com/cfug for better support. Kindly cc @chenglu to help direct the appropriate repository there.
I will go ahead and close this issue. If you disagree, please write in the comments and I will reopen it.

Let me take care of this issue, and try to reach out the phishing & malicious scanning sites.
Thanks to @huycozy


Backtracking | Permutations of a string (Java)

congratulations on your hactoberfest contribution. if you like this repo then give it a star. Happy hacking..


Major updates

Stuff that still needs work on - but will come as a different PR eventually

Banner
Header
Nav
Accordions
Links
Link Button
Footer


Add SRCX to Osmosis assetlist

Add IBC SRCX from Source Chain.

Again some detail are wrong (like the path in traces), but you shouldn't need to worry about updating this assetlist since it's won't affect what Osmosis shows. We will be doing regular semi-automated updates that will bring all listed assets back to this assetlist.

Ok sounds good. We can close this PR.


[1.19.2-1.0.32] config file were not generated on Forge Server

I was looking to configure chicken breeding through "serverconfig" directory.
Is it possible to just raw dog the chickens.cfg file from client config to serverconfig?

apparently i was dumb. i found out the way to configure the chickens for the server side, its not from serverconfig but instead from config/chicken/chickens.cfg


Compatiblity browser

Euhm, very beautiful animation with animate.css but i haven't see any solution for IE browser <= 9, it's annoying ...
Have you a solution or a solution to come ? Just if browser doesn't support CSS3 animation, simply use hide or show jquery function rather than something that doesn't work ...
(sorry for my bad english, i'm french :S )

Have that problem too... Just delivered a solution, but have not tested in IE compatibility mode.
Big fail on my part. Any suggestions? ... The top right noty seems to show on your site in compatibility mode  http://ned.im/noty/  .

Related with #227

Euhm, other plugin add css property display:none juste after at the end of the css3 animation (to hide()) and display:block (to show()) at the same moment.
Or, check if the browser support CSS3 animation (with Modernizr for example) and change animation option acoording to this ...
When i set IE9 with emulator of IE browser, IE crash completely... and in local, noty appear but it's all... we can't hide noty :(.


lexicon: 3.3.17 -> 3.3.22

Semi-automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/AnalogJ/lexicon/releases.
meta.description for lexicon is: "Manipulate DNS records on various DNS providers in a standardized way."
meta.homepage for lexicon is: "https://github.com/AnalogJ/lexicon"
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 3.3.22 with grep in /nix/store/xhi25llayk1flz41a4vnq0yxjkw75y44-lexicon-3.3.22

directory tree listing: https://gist.github.com/d6e9b44f35d752ba0b367e88319d7056

du listing: https://gist.github.com/75e814102db4d4dd3150fa55924b649f

Rebuild report (if merged into master) (click to expand)

8 total rebuild path(s)

2 package rebuild(s)

2 x86_64-linux rebuild(s)
2 i686-linux rebuild(s)
2 x86_64-darwin rebuild(s)
2 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
ape
lexicon

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/xhi25llayk1flz41a4vnq0yxjkw75y44-lexicon-3.3.22 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A lexicon https://github.com/r-ryantm/nixpkgs/archive/ad5f2d248341259406183845bac18c9324931a63.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/xhi25llayk1flz41a4vnq0yxjkw75y44-lexicon-3.3.22
ls -la /nix/store/xhi25llayk1flz41a4vnq0yxjkw75y44-lexicon-3.3.22/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review 1

1 package failed to build:
- ape

1 package built:
- lexicon

Maintainer pings
cc @flyfloh for testing.

looks good :+1:


How to get auto assigned id

Using gcloud datastore save leave no indication about the generated ID for the cell.
Nothing in the call back or the key or the data.

The key will be automatically populated with the id in its path after the save call. See the docs here for more information.
Excerpt:

If a key is incomplete, its associated object is inserted and the original Key object is updated to contain the generated ID.

What version of gcloud-node are you using, and can you paste what your call to .save looks like and the returned values to the callback supplied?

Thanks for the replies !
Based on the examples of Todo (source, best doc ever)  i've used the pop() method on the path to get the ID and now it's working.
Coming for Angular and others JS api i'm quite disturbed with this API paradigm.
I was expecting something like promise or a success and error callback method that send the new ID.
Something like save ( ..., onSuccess(id), onFail()) and not save (..., cb(err)) if (!err) path.pop().
Have to said this API is quite powerful but sparse on docs. I got my main API running on a java GAE and using GCloud to control it from a nodejs front, it's really cool but it leaves me with a lot of questions on how to use it correctly !
Thanks for the job done :)

The idea is that you create a key object and then you use it to save an object, and later you can use that exact same key object to reference that specific object.
Perhaps we should add some helper methods to the Key object such as getId() ? Would that help?

From an old discussion: https://github.com/GoogleCloudPlatform/gcloud-node/pull/175#discussion_r17145279

Is this resolved? I believe its relatively straightforward to get the auto-assigned id from the key but let me know if that's not the case.

Is this a bug in the demo ? ... looking at the Todo app sample code the response doesn't return a key. It returns a mutation_result so key.path.pop(); doesn't work. The key should be initialised outside the save function and then the id can be retrieved.
ds.save({
key: ds.key(['TodoList', LIST_NAME, 'Todo']),
data: data
}, function(err, key) {
if (err) {
callback(err);
return;
}
data.id = key.path.pop();
callback(null, data);
});

I ran the example and key.path was correct: [ 'TodoList', 'default-list', 'Todo',<PHONE_NUMBER>237696 ]
We do need a better way to get the key and various other helpers. We'll use #574 to track that.


Add serialization of mod data

Related Issues
Close #691. Close #521.
Summary

Add serpent.lua and lua::serial_manager to save mod store data and object identifiers.
Refactor item::number to be a private member, and only permit modification through setters set_number and modify_number. This is so Lua callbacks can be run on creation/deletion (which is the item number becoming zero/non-zero).
Refactor item_remove to item::remove.
Remove item_num and removeitem. (same functionality contained by modify_number)
Refactor ctrl_file_operation_t and ctrl_file_operation2_t to have identifiable names.
Refactor chara_killed to set the status of killed characters.
Add routines in ctrl_file to save/load mod data alongside character/item data. (mod_cdata.s1, mod_inv.s1, mod_cdata_xx.s2, mod_inv_xx.s2).
Add code to save/load mod store data alongside map/global data. (mod.s1, mod_xx.s2)
Remove AllModsLoaded and ScriptLoaded callbacks. Add GameSaved and GameLoaded callbacks.

TODO

[ ] Playtest extensively. (reinitializing maps, periodic refresh of maps, using shops, using four dimensional pocket, upgrading home...)
[ ] Test storing various kinds of data in mod Store.global/Store.map_local tables and verifying they are loaded/unloaded correctly.
[ ] Remove output of testing mod kiroku.
[ ] Remove added debug output.
[ ] Add tests of character lifecycle.
[ ] Refactor chara_killed further to use an enum class value.
[ ] Add information of serpent.lua to README.md.

Closing since serialization was merged.


Revert breaking API change made in 1.1.1.RELEASE

This commit has made a breaking change to the constructor of Tweet; it's added a new String parameter. As things stand, the tests for Spring Integration's Twitter support fail when run as part of the Spring IO Platform build which runs the tests against Spring Social Twitter 1.1.1.RELEASE.
Can you please reinstate the old constructor so that backwards compatibility isn't broken?
/cc @garyrussell @artembilan

Actually we have upgraded already to the ST-1.1.1: https://jira.spring.io/browse/INT-3836
And our nightly build is green again: https://build.spring.io/browse/INT-MJATS41.
Maybe IO build should rely on the SI-4.2.1-B-S?..

Unfortunately this is for IO 1.1 which uses Spring Integration 4.1.x. That's currently building successfully against Spring Social Twitter 1.1.0.RELEASE but fails with 1.1.1.RELEASE.

I can reinstate the previous constructor (alongside the new one), marked as deprecated. But be aware that the recommended way of dealing with Twitter IDs is to use the String field instead of a long. Going forward, the old constructor should go away.

We can do the same for 4.1.x as well. Just because we have API incompatibility only in the tests.
We are forced to release 4.1.7 soon, so don't see reason to worry Spring Social, because it can simply be addressed in the SI.
@garyrussell , WDYT ?

@artembilan We have no way of know who else may be using that constructor and shouldn't be making breaking API changes in maintenance releases. By all means make a change in SI 4.1.x, but, IMO, it doesn't affect the need to fix Spring Social Twitter.
@habuma I have no problem with the old constructor going away, but it needs to be deprecated first and then removed in something other than a maintenance release.

That's fine. The change has been made and a build is forthcoming. Will let you know when it's ready.

Hi there!
I have just upgraded to the Spring Social Twitter 1.1.2.
My compiler barks on me that we use a new Tweet ctor which is accidentally marked as
*
* @deprecated Use other constructor with String ID instead.
*/
public Tweet(long id, String idStr, String text, Date createdAt, String fromUser, String profileImageUrl, Long toUserId, long fromUserId, String languageCode, String source) {

The @deprecated JavaDoc must be removed.
Thanks.


[Bug]: Streaming not working (root cause found), reopen issue 12031

Bug Description
Reopening this for issue 12031
The streaming generator from StreamingResponse class will be pre-consumed by dispatcher.event(SynthesizeEndEvent(query=query, response=str(response))) in Synthesizer. Hence, nothing output in the generator.
Version has issue llama-index-core==0.10.20.post2
Revert to 0.10.19 and things will resume.
Version
llama-index-core==0.10.20.post2
Steps to Reproduce

install the latest core lib: pip install llama-index-core==0.10.20.post2
Run any streaming code, e.g.,:

import os
import logging

from llama_index.core import Document, VectorStoreIndex, get_response_synthesizer
from llama_index.core.query_engine import RetrieverQueryEngine

logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
_logger = logging.getLogger(__name__)

## config OpenAI
_OPENAI_KEY_FILE = "~/.openai-secret"
with open(os.path.expanduser(_OPENAI_KEY_FILE), 'r') as file:
    api_key = file.read().strip()

os.environ["OPENAI_API_KEY"] = api_key

index = VectorStoreIndex.from_documents([Document.example()])

query_engine = RetrieverQueryEngine.from_args(
    index.as_retriever(),
    response_synthesizer=get_response_synthesizer(response_mode="compact", streaming=True),
)

resp = query_engine.query("Tell me about LLMs")
for text in resp.response_gen:
    print(text, end="", flush=True)

If you uninstall it and install llama-index-core==0.10.19, things will resume
If you comment out llama_index/core/response_thesizers/base.py line 243, it would also be a workaround.

Relevant Logs/Tracbacks
No response

I have the same issue. Rolling back did the trick.
llama-index==0.10.19
llama-index-core==0.10.19

Yeah, sorry this BUG was introduced in attempt to address another one. Working on the fix now that won't have the generators be consumed from the construction of the SynthesizeEndEvent.

Great. Thanks!


Mojave, 10.2, Update for Bazel 0.24.1

This PR updates XCHammer for the latest rules_apple changes and building
on Xcode 10.2

shim support for new rules and several dependencies to the latest versions.
updates the SPM build system to work with Mojave and new dependencies.
bump URLGet Sample to 0.24.1, new RulesPods for 0.24.1

Remaining work:

Add Bazel support for build system

@jerrymarino - Heads up that you'll need some of the changes from my other PR for building chamber with Bazel in third_party/repositories.bzl since building mixed C / Swift libraries changed a little bit which affects Yams
https://github.com/pinterest/xchammer/pull/158/files#diff-6cdc4fee3eced46f36335ce70a984ef7R38

@rahul-malik - going to land this one, I've got another PR coming for bazel support and ripping out the old build system


parsing stopps at first empty logfiles

I am using goaccess version 1.2 which I knowis not the latest version. Still I have seen no issue about this, not even a closed one. I was wondering if I do something wrong.
I use goaccess to generate a summary of all current logs of all my webhosts like this.
goaccess -f /home/webhost1/log/*access*.log /home/webhost2/log/*access*.log -o /path/to/report.html --date-spec=hr --hour-spec=min

I noticed after log rotate was triggered (and some logs stay empty for a while) that the processing stopped at the first empty log file processed. The output shows the empty logfile name - nothing more, no error.
When I use find with the -not -emty parameter to filter out the empt files, it works as expected. If there are no empty log files passed via the -f arhgument, it works as expected.
I know version 1.2 is not the latest. I was wondering if this still exists in version 1.3.

Interesting, I can't tell you if this is an issue on v1.3 until I can run some sort of test. Are you able to reproduce this without the auto  rotation? Thanks

Short Answer, I can trigger that behaviour.
Long one, ... My Setup looks like that. I have a very simple shell script to generate the goaccess html reports. The procedure looks like that:
1.) I go through all the webhosts and define the path to the log files like that:
"/path/to/$WEBHOST/logs/.access.log-"
That pattern with "log-" at the end only matches already rotated logs.
2.) I use that pattern to start goaccess with "-o /.../hist.html", --db-path, --keep-db-files and --load-from-disk
From my understanding, this will read the db into goaccess, load the log files, and keeps the db files. At this point I figured out that you have done a GREAT job identifying already loaded files. That reduces the complexity in my simple shell script.
3.) I get the file path to the current log files (the not jet rotated ones like that:
"/path/to/$WEBHOST/logs/*.access.*log"
This matches only the current unrotated log. As this log files is changing on every request, I cannot load it into the same database as data would be loaded multiple times.
4.) So I generate a separate report for them using the "-o /.../index.html", --date-spec=hr and --hour-spec=min
I do not keep or load the db as it would only show garbage. I use --date-spec=hr and --hour-spec=min to see more details for the current logfile report.
The Problem was noticed when I created the report for the current logfile using
goaccess -f /../*access.*.log /../*access.*.log -o /../index.html --log-format=COMBINED --date-spec=hr --hour-spec=min

One of the files referenced in the -f parameter was an empty file (filesize 0 byte). goaccess starts,  prints the log file name to the console and ends without a real error message. But what I noticed was that the report file (/../index.html) was not even created. I investigated and found that the empty file triggered the termination of the processing.
Current workaround:
When I use find to interpret the path/file pattern and remove empty files, the report file is created and works as expected.
find /../*access*.log -not -empty

I could test this quiet extensive as it happened on every run (have a webhost with nearly no access at all (reason does not matter I guess).
I guess with that details it should be easy to reproduce if the issue still exists in version 1.3, right?

Reproducable with following test procedure using goaccess 1.2:

placed two log files into a directory. both contain some apache access log lines.
Run goaccess to verify correct behaviour -> OKgoaccess -f *.log -o working.html  --log-format=COMBINED --date-spec=hr --hour-spec=min

create an empty file matching the input file patterntouch some.webserver.log

Run the goaccess command again with different out filename.goaccess -f *.log -o failed.html  --log-format=COMBINED --date-spec=hr --hour-spec=min

The result is one generated file called "working.html" but no file named "failed.html" is created.
This was the test using version 1.2. As Centos 7 still uses 1.2, I am still using veersion 1.2 of GoAccess.

Thanks for sharing those details, let me look into this and I'll post back.

Looks like this is still an issue.  Very simple to confirm (see below).  Would love to get this fixed so it simply skips empty files.  Otherwise I have to pre-parse the file list to find non-empty files, which is a pain when you're using "goaccess *.log" (for instance).
# goaccess --version
GoAccess - 1.9.
For more details visit: https://goaccess.io/
Copyright (C) 2009-2023 by Gerardo Orellana

Build configure arguments:
  --enable-utf8
  --enable-geoip=mmdb
  --with-getline
  --with-openssl
# touch empty.log
# goaccess empty.log
Cleaning up resources...
==815424==
==815424== Format Errors - Verify your log/date/time format
#
# goaccess valid_log_file.log empty.log
Cleaning up resources...16} @ {0/s}                                                                                \
==815445==
==815445== Format Errors - Verify your log/date/time format

Thanks for letting me know; I find it intriguing that I overlooked addressing this issue. I'll take a look at it today and tomorrow, and I'll get back to you with an update.

I've committed changes to address this issue. It appears to be a regression, as testing in v1.8.1 showed it worked as expected. I'm not sure why I didn't close this issue earlier. In any event, please build from development and confirm if the problem is resolved on your end. Thanks!

Since I'm deploying from Debian repos, it will be a bit before I can go build a development branch exe.  Will see how my work schedule goes today.

Since I'm deploying from Debian repos, it will be a bit before I can go build a development branch exe. Will see how my work schedule goes today.

After finally finding a box that had the right docker config, I created a new executable from the dev image and ran it against an empty log with no problem.   Seems like it was working in 1.8.1, so yeah, this looks good.

Thanks again for the update! Don't hesitate to reopen if necessary.


web player migration from thorvg

https://github.com/thorvg/thorvg/issues/2297

@hermet
In thorvg.web, we may plan to have multiple projects in single repo here. It'd be better to separate each projects on different dir.
root
- thorvg(submodule)/
- perf-test/
- lottie-player/
- thorvg-js/

Currently, perf-test is on separated dir and lottie-player is on just root. Now it doesn't seem to be issue because perf-test will be moved soon. I believe we can have good directory structures later likely mono repo! :)

Good idea. please do it.


feat: z-book-card added search variant

z-book-card : search variant

Motivation and Context
aggiunta la variante search delle z-book-card

Priority

[ ] 1 - Highest
[ ] 2 - High
[ ] 3 - Medium
[x] 4 - Low
[ ] 5 - Lowest
[ ] 6 - Not a Priority

Types of changes

[ ] Bugfix (non-breaking change which fixes an issue)
[x] Feature (non-breaking change which adds functionality)
[ ] Component (add a Component as approved by Design System)
[ ] Docs (add documentation)
[ ] Chore (changes that adds small enhancement)
[ ] Breaking (fix or feature that would cause existing functionality to not work as expected)

Design

Screenshots

Note

Credo manchi la parte di Storybook, se non sbaglio.


Tracking filter usage

To provide fortnightly summary insights and snapshots from the Kibana search relevance implicit dashboard (archive focus) in Slack #wc-experience channel tracking ongoing success of usage in searches following until 3 months after deployment, excluding Segment collection dropout ending 22/11/20 (end Feb 2021)

worktype filters deployed 12/10/20 (index=search relevance implicit, event=search, workType not default a, b, j, i, k, l, q)
location (index=search relevance implicit, event=search, location selected)

linked to:
https://github.com/wellcomecollection/wellcomecollection.org/issues/5833
monitoring effects of changes in sorting of filters just after deployment, then tracking for 3 months after.
linked to:
https://github.com/wellcomecollection/wellcomecollection.org/issues/6057

This ticket has been surpassed by developments with More filter work. Ticket https://github.com/wellcomecollection/wellcomecollection.org/issues/6130 includes this monitoring work.


Implemented squel.cls.Insert.onDupUpdateFields() in mysql flavour

For mysql flavour, you can now update multiple fields on duplicate key using key-value pair object.
const fields = { id: 1, field1: 'field1' }
const query = squel.insert()
    .into('table')
    .setFields(fields)
    .onDupUpdateFields(fields)

/**
* INSERT INTO table (id, field1)
* VALUES (1, 'field1')
* ON DUPLICATE KEY UPDATE id = 1, field1 = 'field1';
*/

this is wrong because you modified files inside dist/ instead of lib/ or src/

@hiddentao
Sorry it took so long for me to update this. Please take a look.
PS: Got an error from CI
ReferenceError: internalBinding is not defined

I'm not sure if it is due to my changes or we need to update the pipeline to
rm -r node_modules
npm i
npm run build

Closing this one. Sad to see this library falling out.


Create Global turbo

Hi @sammyfilly, this project has no relation to Turborepo (other than I happen to work on Turborepo, and we use it in Turborepo's CI). I'm closing this issue as not relevant.


Add "Kentios Thinks About Tech" blog

Newline at end of file added automatically by GitHub editor.
In alphabetical order. ✅

Thank you!


30commit

finished docker.yml files and updated docker readme section
onward towards testing

dang now we moving onto testing code????? Engineer status coming soon bb


Feature: add foldCause to HttpError

Codecov Report

Merging #1066 (600645a) into main (b57aa88) will decrease coverage by 0.05%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main    #1066      +/-   ##
==========================================
- Coverage   56.83%   56.78%   -0.06%
==========================================
  Files          73       73
  Lines        2259     2261       +2
  Branches       57       65       +8
==========================================
  Hits         1284     1284
- Misses        975      977       +2

Impacted Files
Coverage Δ

zio-http/src/main/scala/zhttp/http/HttpError.scala
16.66% <0.00%> (-8.34%)
:arrow_down:

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 b57aa88...600645a. Read the comment docs.


[WIP]: clean integration test.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: guptasu
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

mixer/OWNERS [guptasu]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@guptasu: PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@guptasu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
d62e797693ba842df6632e8bf0ec523c0392b3a3
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@guptasu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
d62e797693ba842df6632e8bf0ec523c0392b3a3
link
/test istio-unit-tests

prow/istio-presubmit.sh
d62e797693ba842df6632e8bf0ec523c0392b3a3
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@guptasu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-e2e.sh
1327ed618bc36ad651c759862d09807c4303db09
link
/test istio-pilot-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Question About IList And Append

Hi There,
Been finding Dartz invaluable in my Dart/Flutter project. I've been able to muddle through some of the more esoteric corners, but every once in a while I run into something I can't quite understand. For example, I'm trying to figure out how to append a single element to an IList.
I took a naive stab at it:
   final IList<Asset> assetListWithOneElement = IListMi.append(assetList, asset);

...then realized you need to append IList to IList (?), so tried:
  final IList<Asset> assetListWithOneElement = IListMi.append(assetList, IList.from([asset]));

... which seemed closer, but the compiler fails with a type mismatch. append here is returning IList<dynamic>. So I thought maybe if I gave Dart a few hints as to the type:
    final IList<Asset> assetList = IList<Asset>.from(<Asset>[]);
    final IList<Asset> assetListPlusOne = IListMi.append<Asset>(
        assetList, IList<Asset>.from(<Asset>[asset])
    );

Still getting the error message A value of type 'IList<dynamic>' can't be assigned to a variable of type 'IList<Asset>'
Surely I'm doing something obviously wrong here. I pored over the tests for IList but couldn't see an obvious alternative.
Thoughts?
Thanks!
--Ian

Hi @ibcoleman!
IList#appendElement is probably the simplest way to achieve what you want. Please be aware that since IList is implemented as a singly linked cons list , appending is O(n) and can become a performance problem on very large collections. Prepending to the beginning of an IList, using IList#prependElement or cons is however super efficient (O(1)). If you need to do a lot of appending on large collections, consider using IVector instead (O(log n) append and prepend).
The constant IListMi is a remnant from the Dart 1 days and, as you have already noticed, will lose type information :( You can use ilistMi<A>() instead to construct type safe IList monoid instances.
Here are some examples:
  ilist([1, 2, 3]).appendElement(4);                   // => ilist([1, 2, 3, 4])
  ilist([1, 2, 3]).prependElement(0);                  // => ilist([0, 1, 2, 3])
  cons(0, ilist([1, 2, 3]));                           // => ilist([0, 1, 2, 3]) (same as prependElement)
  ilist([1, 2]).plus(ilist([3, 4]));                   // => ilist([1, 2, 3, 4])
  ilistMi<int>().append(ilist([1, 2]), ilist([3, 4])); // => ilist([1, 2, 3, 4]) (same as plus)

Hope that helps!

Thanks @spebbe! And thanks for the incredibly useful library, too!


add-symbol-name-for-ios

Hi @mouselangelo! Can you check this PR please?

Hi @mouselangelo! Can you check this PR please?

Hi @mouselangelo! Is it possible to review and merge this PR please? Thx!!

Hi @mouselangelo! Can you check this PR please?

Hi @mouselangelo! Is it possible to review and merge this PR please? Thx!!

@mouselangelo :)

Apologies for not seeing your messages earlier @nicolasdevienne

Apologies for not seeing your messages earlier @nicolasdevienne

No problem, thx! Can you merge PR and publish new release?

Apologies for not seeing your messages earlier @nicolasdevienne

No problem, thx! Can you merge PR and publish new release?

@mouselangelo :)


Added support for coercion to Set or Set[Other]

I like Virtus's support for coercion to Sets as seen here:
https://github.com/solnic/virtus#collection-member-coercions
They can be treated the same as Arrays in the case of nil, and changing line 42 from @option[0] to @option.first behaves the same for either.

Closed via https://github.com/intridea/grape/pull/995.


Fix for RasterGridPlot with normalization disabled

Small fix for RasterGridPlot when normalization across the grid and HoloMap is disabled.

Ready to merge.

Just a one line change but it is always worth making a PR to run the tests. :-)


Change contribution options to refer to "Host managed deployments"

The term "self-managed" is a misnomer for the kind of organizations we're hoping to solicit partnerships with. A better phrase is "host managed". This change removes references to "self-managed" in favor of "host managed" throughout the contribute page.

This change is

LGTM


Gem appears to be missing from rubygems

Hey there,
I tried installing the gem this morning in my Rails application, but the gem seems to be missing from the rubygems repository...
Every other gem installs perfectly. Any idea ? Or am I missing something obvious ?

Started working again after a few hours. Maybe some random issue. Sorry about this !


microsoft page is detecting credentials immediately when the credentials has been input

DO NOT ASK FOR PHISHLETS.
DO NOT ASK FOR HELP CREATING PHISHLETS.
DO NOT ASK TO FIX PHISHLETS.
DO NOT ADVERTISE OR TRY TO SELL PHISHLETS.
EXPECT A BAN OTHERWISE. THANK YOU!
REPORT ONLY BUGS OR FEATURE SUGGESTIONS.

Not true.....


Ignore NULL values

Hey 👋
It would be cool if it would be possible to set a configuration to even when using faker's config file, to set that any field that is NULL in the DB it should remain NULL instead of generating a fake name for example.
Let me know where I can help!
Cheers!

Hello,
I would be happy about this addition as well. And it would be great if it would be possible to keep empty fields as empty and not replace them with random data.
Unfortunately, I don't know TS well enough to add this myself.
Cheers!

Hopefully this gets merged: https://github.com/rap2hpoutre/pg-anonymizer/pull/40/files


Cannot use backslash as comment shortcut

Cannot use Backslash as a shortcut, eg: Ctrl+Backslash (\) to comment out lines (meta/windows + \ also does not work).
Framework: spyder 2.3.4, python 3.4.3, windows (x64).~
Possibly due to the fact that '' is a special symbol with programming needs special attention (\ -> \\ ?).
Best regards

We use Ctrl+1 to comment lines. I don't know if Ctrl+\ is allowed by Qt or not, but someone else would need to check that and (if possible) implement the necessary changes in our source code :-)
I see this as very low priority right now.

This was previously reported in #478. Basically, you can manually specify Ctrl+/ in spyder.ini, which breaks the settings menu but Spyder functions, or try using the patch I proveded back at google code. I may eventually file a proper pull request with my patch.

Thanks, I'll take a look at your patch for beta1.

Sorry for not mentioning it but I'm closing this one as duplicate of issue #478


Drop PHP-7.2 and PHP-7.3 version supports

Changed log

According to the official PHP website, it's time to drop the PHP 7.2 and PHP 7.3 versions.
Letting the PHP package require PHP 7.4 and PHP 8.0+ versions.

I think we can drop PHP 7 support and move to PHP 8 now.

@odan. I completely drop PHP 7.4 version support and using the PHP 8.0 version requirement at least.
I also run the vendor/bin/php-cs-fixer fix --format=txt --verbose --diff --config=.cs.php to fix the coding style issues.

The latest version of PhpCsFixer has a new default value for global_namespace_import = true.  We should set it to false in .cs.php. 'global_namespace_import' => false,

I will merge it and fix the CS afterwards.


No application encryption key has been specified. Error on key generation

Laravel Version: 5.5.*
PHP Version: 7.1.17
Database Driver & Version: mysql 5.6

Description:
I installed fresh laravel and ran command below
php artisan key:generate

Then got error...
In EncryptionServiceProvider.php line 42:

  No application encryption key has been specified.

Steps To Reproduce:
I'm currently using AsgardCMS https://github.com/AsgardCms/Platform
I was attempting to install it by php artisan asgard:install command.
(Laravel fresh install)

Seems like a problem with the package to me. Remove it and just setup Laravel first - then add the package.

I wondered if php artisan key:generate command can be affected by another package
This core and basic implement should not be affected by any attempt. I thought :)

Thanks for your kind answer :)
I'll take a look at the package


fix: provide resend next-auth provider

The AuthJS team has introduced a new Resend provider, enabling direct configuration of emails.
Changes:
This pull request introduces several updates to improve our authentication and email workflows:

Added the Resend provider to our Next-Auth configuration, enabling seamless email integration
Updated dependencies for Next-Auth and React-Email, to their latest versions
The sendVerificationRequest function has been updated to utilize React-Email with Resend's magic link feature
A new EMAIL_FROM environment variable has been added to enhance email customization

@Security2431 Thank for your PR! Sorry for the delay, I'm a little busy at the moment. I'll check it this weekend and merge it. At first glance it looks very clean/work. :ok_hand:


Enhance doc for du check

when I go to /#monitoring/hosts/19/services/create, I am currently required to state a result-filename.
I would suggest the following:

we "hardcore" a specific directory for result files following debian defaults (as we only package for deb based distros anyway), like /var/cache/bloonix/du_my_identifyer.json. This way the user doesnt "has to decide" - better imho in this case, the plugins should be easy and fast to use.
in the WebUI when creating a check, I specify a unique name for the particular du check
When creating the cronjob web could pass this as an argument * */1 * * * /path/to/du-check-cronjob my_identifyer /path/to/du/directory

I also couldnt find the cron-du script after installing the bloonix-plugins-satellitesharing-du package. There should also be a bit more doc in the webui when creating a check, sth like:
This check requires a cronjob to regularily check the size of a particular directory. The bloonix check will then read a results file created by that cronjob. To create such a cronjob, use * */1 * * * /path/to/cron-du my_identifyer /path/to/dir and specify my_identifyer in the options below.

https://github.com/satellitesharing/bloonix-plugins-satellitesharing/commit/8bc208146bfd69fb3f0e2d12392b49d975393032
Done. Updated documentation and cron and agent code.
Result filenames are: /var/cache/bloonix/du_.txt
The extension is 'txt' and not 'json' because though the data looks like JSON, it isn't JSON.


Chef Automate 2022-01 failing chef-server-ctl test

When we bootstrap a fresh Chef Automate server and run chef-server-ctl test, we get the following error -
Testing Status API with config
  Status API
    GET /_status should respond with valid health data (FAILED - 1)

Failures:

  1) Testing Status API with config Status API GET /_status should respond with valid health data
     Failure/Error: let (:config) { JSON.parse(IO.read("/etc/opscode/chef-server-running.json"))['private_chef'] }

     Errno::ENOENT:
       No such file or directory @ rb_sysopen - /etc/opscode/chef-server-running.json
     # /hab/pkgs/chef/chef-server-ctl/14.11.36/20211227114241/oc-chef-pedant/spec/api/status_spec.rb:3:in `read'
     # /hab/pkgs/chef/chef-server-ctl/14.11.36/20211227114241/oc-chef-pedant/spec/api/status_spec.rb:3:in `block (2 levels) in <top (required)>'
     # /hab/pkgs/chef/chef-server-ctl/14.11.36/20211227114241/oc-chef-pedant/spec/api/status_spec.rb:9:in `block (3 levels) in <top (required)>'

Finished in 1 minute 54.69 seconds (files took 5.59 seconds to load)
170 examples, 1 failure, 2 pending

Failed examples:

rspec /hab/pkgs/chef/chef-server-ctl/14.11.36/20211227114241/oc-chef-pedant/spec/api/status_spec.rb:5 # Testing Status API with config Status API GET /_status should respond with valid health data

Could you please help us with this issue?
To Reproduce
Install Chef-infra with Automate on a single instance
Run the command chef-server-ctl test
Expected behavior
The test should complete successfully
Actual behavior
It is being failed with the automate version Automate v2<PHONE_NUMBER>2354

Fixed with 14.13.43 of Infra Server


Reference Doesn't Load For Certain Reference Intervals

Issue is related to parquet filtering. Not providing a parquet predicate works fine

Issue is with incorrect Parquet FilterPredicate. NucleotideContigFragment has no length or end field, which does not allow the predicate to be specified correctly.
Will be fixed by https://github.com/bigdatagenomics/bdg-formats/pull/61 and corresponding changes to ADAM.
Temporary fix is to use : val pred: FilterPredicate = ((LongColumn("fragmentStartPosition") >= viewRegion.start) || (LongColumn("fragmentStartPosition") <= viewRegion.end))

Will be resolved by bigdatagenomics/bdg-formats/#71 and corresponding changes to adam


Fixed #3971: "SAP SQL Anywhere 17.0.11: Liquibase incorrectly reports that TIMESTAMP requested precision is longer than TIMESTAMP supported precision"

Fixes #3971
Impact

[x] Bug fix (non-breaking change which fixes expected existing functionality)
[x] Enhancement/New feature (adds functionality without impacting existing logic)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description
This PR tells Liquibase that SQL Anywhere is actually able to deal with the WITH TIMEZONE feature of the TIMESTAMP data type, and adds a test case to the existing integration test suite which proofs the functionality.
Things to be aware of
N/A
Things to worry about
N/A
Additional Context
Developed using latest SQL Anywhere 17.0.11-7254 on Windows 10 Pro (German) as a standalone engine (hence not using Testcontainers), using latest official product documation from https://help.sap.com/docs/SAP_SQL_Anywhere/93079d4ba8e44920ae63ffb4def91f5b/81fe344c6ce21014a4f29d9e0af358b9.html?locale=en-US&q=TIMESTAMP WITH TIMEZONE.

Status: Unfortunately the current changes are not good enough. Today's custom build (including all merged and open SQL Anywhere related PRs) still fails with the following message: Unexpected error running Liquibase: liquibase.exception.DatabaseIncapableOfOperation: Using a TIMESTAMP data type with a fractional precision of 33 is not supported on asany: A timestamp datatype with 33 fractional digits was requested, but SQL Anywhere only supports 6 digits..

@filipelautert Kindly requesting your review. I confirm this code correctly worked on SQL Anywhere 17.0.11, i. e. was able to generateChangeLog containing a TIMESTAMPT WITH TIMEZONE columne, while without this PR an error message is shown claiming that the RDBMS does not support 33 digits.

@filipelautert Why not merging this PR?


AL Code Analyzer: PerTenantExtensionCop. Error on 50K range for field in 50K range table

Hi, I have created a new table in the 50K range.
Then I've added new fields with Id's 1,2...
If I activate PerTenentExtensionCop, then I have an error that my fields should have 50K range.
Why? Is it a bug, or feature?

Hi @dkatson,
It is a feature, when you are developing a Per Tenant Extensions then all your objects and table fields need to be withing the range.

WHAT???? Have that been communicated earlier? That's completely against any former best practices for development.

This was a bug that has been fixed. The fix has already been applied to the per tenant extension upload process (so it won't block uploads) and will be part of the next developer preview release. The ID range restriction should only be applied to fields added in table extensions, not tables.

I almost got a heart attack there! :)

Uff... don’t joke like that


Link to a list of char codes

[It would be nice to have a link to the list of char codes.]

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

ID: b8cf272b-3e28-160e-7e32-cf824766f87a
Version Independent ID: cb16a55b-c7c3-8e5a-7b1e-9fb8d16cedc2
Content: CHAR (Transact-SQL) - SQL Server
Content Source: docs/t-sql/functions/char-transact-sql.md
Product: sql
Technology: t-sql
GitHub Login: @markingmyname
Microsoft Alias: maghan

@scottsealanddesign -- thank you for your suggestion.  Please see here for the complete list:

https://en.wikipedia.org/wiki/ASCII

cc @markingmyname for awareness
I am closing this issue now.  You are welcome to @ mention me for any followup.
We hope to hear from you again.


CocoaPods Version

Why are leftViewPresentationStyle and right one now readonly (v. 1.1.0 from cocoa pods), and how to set them from vc?

i investigated more, and found that cocoa pods version (1.1.0) doesn't contain LGSideMenuSegue and many more files

Yes, because they were added in later releases. Try to use 2.0.9.

ok thx


fix: saveSync method was not working correctly

Since I switched to Isar 2.4.0, I noticed some some part of my code (sill using the sync method), were not loading links anymore. When I looked at Isar's code, I noticed a different implementation between the async and sync method. Here is an attempt to fix the sync behavior.

Thanks for this PR but it should not be necessary. The sync code does not have the overhead of accessing a background thread and can therefore directly link and unlink to avoid allocating the ids list. I'll investigate the issue 🙂

@leisim I also thought there was some good reasons for this different implementation, but I can assure you the save method is working for me while the saveSync doesn't. I believe it's easy to reproduce but if you have any difficulties I can provide you the sample app I used.

I'm sure you're right. Probably there is an issue with one of the native methods used in saveSync

I fixed it :+1:


Standardize multi-line help commands

Travis tests have failed
Hey Jeremy Piemonte,
Please read the following log in order to understand the failure reason.
It'll be awesome if you fix what's wrong and commit the changes.
Node.js: 7.7

npm test

><EMAIL_ADDRESS>test /home/travis/build/Zarel/Pokemon-Showdown
> eslint --rulesdir=dev-tools/eslint --cache . && tsc && mocha

/home/travis/build/Zarel/Pokemon-Showdown/chat-commands.js
  3503:90  error  Missing trailing comma  comma-dangle

/home/travis/build/Zarel/Pokemon-Showdown/chat-plugins/helptickets.js
  725:46  error  Unnecessary escape character: \'  no-useless-escape

✖ 2 problems (2 errors, 0 warnings)
  1 error, 0 warnings potentially fixable with the `--fix` option.

npm ERR! Test failed.  See above for more details.

These should really all be ` strings anyway

Want me to do that apart of this?

Sure. Also I assume you see the test failure.

Yep, updating this in just a minute

Updated


getValue.ino compile error

Describe the bug
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/Speaker.cpp: In member function 'void SPEAKER::begin()':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/Speaker.cpp:10:5: error: 'ledcSetup' was not declared in this scope
10 |     ledcSetup(TONE_PIN_CHANNEL, 0, 13);
|     ^~~~~~~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/Speaker.cpp:11:5: error: 'ledcAttachPin' was not declared in this scope; did you mean 'ledcAttach'?
11 |     ledcAttachPin(SPEAKER_PIN, TONE_PIN_CHANNEL);
|     ^~~~~~~~~~~~~
|     ledcAttach
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/Speaker.cpp: In member function 'void SPEAKER::end()':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/Speaker.cpp:17:5: error: 'ledcDetachPin' was not declared in this scope; did you mean 'ledcDetach'?
17 |     ledcDetachPin(SPEAKER_PIN);
|     ^~~~~~~~~~~~~
|     ledcDetach
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/Speaker.cpp: In member function 'void SPEAKER::playMusic(const uint8_t*, uint16_t)':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/Speaker.cpp:79:5: error: 'ledcAttachPin' was not declared in this scope; did you mean 'ledcAttach'?
79 |     ledcAttachPin(SPEAKER_PIN, TONE_PIN_CHANNEL);
|     ^~~~~~~~~~~~~
|     ledcAttach
In file included from /home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:16:
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'void TFT_eSPI::spi_begin()':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:231:5: error: 'GPIO' was not declared in this scope
231 |     GPIO.out_w1tc = (1 << TFT_CS);
|     ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:58:9: note: in expansion of macro 'CS_L'
58 |         CS_L;
|         ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'void TFT_eSPI::spi_end()':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:233:14: error: 'GPIO' was not declared in this scope
233 | #define CS_H GPIO.out_w1ts = (1 << TFT_CS)  //;GPIO.out_w1ts = (1 << TFT_CS)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:74:13: note: in expansion of macro 'CS_H'
74 |             CS_H;
|             ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'void TFT_eSPI::spi_begin_read()':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:231:5: error: 'GPIO' was not declared in this scope
231 |     GPIO.out_w1tc = (1 << TFT_CS);
|     ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:93:9: note: in expansion of macro 'CS_L'
93 |         CS_L;
|         ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'void TFT_eSPI::spi_end_read()':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:233:14: error: 'GPIO' was not declared in this scope
233 | #define CS_H GPIO.out_w1ts = (1 << TFT_CS)  //;GPIO.out_w1ts = (1 << TFT_CS)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:112:13: note: in expansion of macro 'CS_H'
112 |             CS_H;
|             ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'void TFT_eSPI::writecommand(uint8_t)':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:166:14: error: 'GPIO' was not declared in this scope
166 | #define DC_C GPIO.out_w1tc = (1 << TFT_DC)  //;GPIO.out_w1tc = (1 << TFT_DC)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:569:5: note: in expansion of macro 'DC_C'
569 |     DC_C;
|     ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'void TFT_eSPI::writedata(uint8_t)':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:167:14: error: 'GPIO' was not declared in this scope
167 | #define DC_D GPIO.out_w1ts = (1 << TFT_DC)  //;GPIO.out_w1ts = (1 << TFT_DC)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:585:5: note: in expansion of macro 'DC_D'
585 |     DC_D;  // Play safe, but should already be in data mode
|     ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'uint8_t TFT_eSPI::readcommand8(uint8_t, uint8_t)':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:166:14: error: 'GPIO' was not declared in this scope
166 | #define DC_C GPIO.out_w1tc = (1 << TFT_DC)  //;GPIO.out_w1tc = (1 << TFT_DC)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:622:5: note: in expansion of macro 'DC_C'
622 |     DC_C;
|     ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'uint16_t TFT_eSPI::readPixel(int32_t, int32_t)':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:233:14: error: 'GPIO' was not declared in this scope
233 | #define CS_H GPIO.out_w1ts = (1 << TFT_CS)  //;GPIO.out_w1ts = (1 << TFT_CS)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:748:5: note: in expansion of macro 'CS_H'
748 |     CS_H;
|     ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'void TFT_eSPI::readRect(int32_t, int32_t, int32_t, int32_t, uint16_t*)':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:233:14: error: 'GPIO' was not declared in this scope
233 | #define CS_H GPIO.out_w1ts = (1 << TFT_CS)  //;GPIO.out_w1ts = (1 << TFT_CS)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:907:5: note: in expansion of macro 'CS_H'
907 |     CS_H;
|     ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'void TFT_eSPI::readRectRGB(int32_t, int32_t, int32_t, int32_t, uint8_t*)':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:233:14: error: 'GPIO' was not declared in this scope
233 | #define CS_H GPIO.out_w1ts = (1 << TFT_CS)  //;GPIO.out_w1ts = (1 << TFT_CS)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:1589:5: note: in expansion of macro 'CS_H'
1589 |     CS_H;
|     ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'void TFT_eSPI::setWindow(int32_t, int32_t, int32_t, int32_t)':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:166:14: error: 'GPIO' was not declared in this scope
166 | #define DC_C GPIO.out_w1tc = (1 << TFT_DC)  //;GPIO.out_w1tc = (1 << TFT_DC)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:2949:5: note: in expansion of macro 'DC_C'
2949 |     DC_C;
|     ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'void TFT_eSPI::readAddrWindow(int32_t, int32_t, int32_t, int32_t)':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:166:14: error: 'GPIO' was not declared in this scope
166 | #define DC_C GPIO.out_w1tc = (1 << TFT_DC)  //;GPIO.out_w1tc = (1 << TFT_DC)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:3083:5: note: in expansion of macro 'DC_C'
3083 |     DC_C;
|     ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp: In member function 'virtual void TFT_eSPI::drawPixel(int32_t, int32_t, uint32_t)':
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.h:166:14: error: 'GPIO' was not declared in this scope
166 | #define DC_C GPIO.out_w1tc = (1 << TFT_DC)  //;GPIO.out_w1tc = (1 << TFT_DC)
|              ^~~~
/home/qiao/Arduino/libraries/M5StickC-Plus/src/utility/In_eSPI.cpp:3318:5: note: in expansion of macro 'DC_C'
3318 |     DC_C;
|     ^~~~
To reproduce
import M5Unit-MiniEncoderC library,and compile getvalue.ino ,compile error.
Expected behavior
compile success
Screenshots
No response
Environment

OS: Linux Deepin20.9
IDE &IDE Version: ArduinoIDE-2.3.2
Repository Version:M5Unit-MiniEncoderC

Additional context
No response
Issue checklist

[X] I searched for previous reports in the issue tracker
[X] My report contains all necessary details

Cannot be reproduced, please try to update the latest M5StickCPlus repository.


--sdk-auth deprecated warning

In repo README you state
az ad sp create-for-rbac --name "myApp" --role contributor \
                            --scopes /subscriptions/{subscription-id}/resourceGroups/{resource-group} \
                            --sdk-auth

Running this command now gives a deprecated warning.

October 21, 2021
Role
az ad sp create-for-rbac: Deprecate --sdk-auth

https://docs.microsoft.com/en-us/cli/azure/release-notes-azure-cli#role
What do you recommend one use instead?

Hi @devlead, we are trying to get more clarity on this from azure team, will update you once we have all the information.

Hi @devlead, we are trying to get more clarity on this from azure team, will update you once we have all the information.

Ok thanks 👍

has there been any update on this?

hI @devlead @glloydcorecard 👋 the above mentioned command is used to generate credentials which are needed by azure/login for proper authentication. As azure/login doesnt support the new format without --sdk-auth, we cannot move forward with read me changes. There is an issue opened with azure/login for the same https://github.com/Azure/login/issues/190

Closing this issue now. Please track the status of --sdk-auth deprecation for azure/login here

Hello, I'm getting a 404 with the link provided and will be affected by this once it takes effect.


Remove unnecessary callback; add notice if plugin is already setup

Changes

Add a notice on the Setup Wizard and remove the link from the menu if the plugin has already been configured
Remove wp-login.php from callbacks (not used anymore)

@joshcanhelp you should modify your codecov to allow a little leeway. Take a look at https://github.com/auth0/Auth0.swift/blob/master/codecov.yml

@cocojoe - Well, I am adding a fair bit of untested code. This isn't really the type that would benefit from a test but still, I see CodeCov's point :)

@joshcanhelp  Yeah that's why you need a little tolerance in the patch/project % values, sometimes it's just not possible and I don't want to end up having to force merge everytime 😄

@cocojoe - I can rebase and merge here without the check, just need an approval.


How to get transaction hash?

How to get transaction hash after I create it with:
const transfer = walletContract.createTransfer({
                seqno: seqno,
                secretKey: keypair.secretKey,
                messages: [internalMessage],
            });

and sent with:
await this.client.sendExternalMessage(walletContract, transfer);
When I call transfer.hash().toString("hex"), it gives me hash which is different from what I see on tonviewer.

+1

Any updates on that? Having the same issue

Any updates on that? Having the same issue

Nothing :(

transfer.hash().toString("base64") gives you what shows tonviewer

transfer.hash().toString("base64") gives you what shows tonviewer

No. There is my hashes from transfer.hash()
base64: 5/VSswqg7BTCcdfBYXYKdosyU6U5SHZD9DZ575m01kI=
hex: e7f552b30aa0ec14c271d7c161760a768b3253a539487643f43679ef99b4d642
When I enter base64 to TonViewer, I have hex hash in domain string.

transfer.hash().toString("base64") gives you what shows tonviewer

No. There is my hashes from transfer.hash(): base64: 5/VSswqg7BTCcdfBYXYKdosyU6U5SHZD9DZ575m01kI= hex: e7f552b30aa0ec14c271d7c161760a768b3253a539487643f43679ef99b4d642
When I enter base64 to TonViewer, I have hex hash in domain string and 404 message on the page.

is it on testnet?
P.S. Can't see the image

transfer.hash().toString("base64") gives you what shows tonviewer

No. There is my hashes from transfer.hash(): base64: 5/VSswqg7BTCcdfBYXYKdosyU6U5SHZD9DZ575m01kI= hex: e7f552b30aa0ec14c271d7c161760a768b3253a539487643f43679ef99b4d642
When I enter base64 to TonViewer, I have hex hash in domain string and 404 message on the page.

Can you provide the wallet of that transaction? P.S. Can't see the image

This is mainnet, wallet: UQDSFFpQzCNjL3uOhwpGoEkLa67Tsjlq346VuMvtCM3bGFcu
There is the image

transfer.hash().toString("base64") gives you what shows tonviewer

No. There is my hashes from transfer.hash(): base64: 5/VSswqg7BTCcdfBYXYKdosyU6U5SHZD9DZ575m01kI= hex: e7f552b30aa0ec14c271d7c161760a768b3253a539487643f43679ef99b4d642
When I enter base64 to TonViewer, I have hex hash in domain string and 404 message on the page.

Can you provide the wallet of that transaction? P.S. Can't see the image

This is mainnet, wallet: UQDSFFpQzCNjL3uOhwpGoEkLa67Tsjlq346VuMvtCM3bGFcu There is the image

Send the transaction too please, or it can be any?

transfer.hash().toString("base64") gives you what shows tonviewer

No. There is my hashes from transfer.hash(): base64: 5/VSswqg7BTCcdfBYXYKdosyU6U5SHZD9DZ575m01kI= hex: e7f552b30aa0ec14c271d7c161760a768b3253a539487643f43679ef99b4d642
When I enter base64 to TonViewer, I have hex hash in domain string and 404 message on the page.

Can you provide the wallet of that transaction? P.S. Can't see the image

This is mainnet, wallet: UQDSFFpQzCNjL3uOhwpGoEkLa67Tsjlq346VuMvtCM3bGFcu There is the image

Send the transaction too please, or it can be any?

There it is: https://tonviewer.com/transaction/72468f5599057f3cc36a75bbddbddba5d3317abc449c117db3b698ed94ba3982

I have found a solution
The problem is that the final BoC is formed immediately before sending the transaction, and there is there is no built-in way to get its hash
So, it can be retrieved and returned in the function external of the file @ton/ton/dist/client/TonClient.js (line 358)
I rewrote the end of the function as follows
let final_cell = (0, core_1.beginCell)().store((0, core_1.storeMessage)(ext)).endCell()
let boc = final_cell.toBoc()
await client.sendFile(boc)
return final_cell.hash().toString('hex')

Next, you need to track calls to this function up the tree and pass the hash value
For example
File @ton/ton/dist/wallets/WalletContractV3R2.js (line 60)
async send(provider, message) {
    let hash = await provider.external(message)
    return hash
}

File @ton/ton/dist/client/TonClient.js (line 407)
let hash = await via.send({ to: address, value, bounce, sendMode: message.sendMode, init: neededInit, body})
return hash

If you're using DeDust SDK
File @dedust/sdk/dist/contracts/jettons/JettonWallet.js (line 24)
return await provider.internal(via, {...
File @dedust/sdk/dist/contracts/dex/vault/VaultNative.js (line 62)
let hash = await provider.internal(via, {sendMode: core_1.SendMode.PAY_GAS_SEPARATELY, body: cell, value: amount + (gasAmount ?? (0, core_1.toNano)('0.2'))})
return hash

const client = new TonClient({
		endpoint: 'https://testnet.toncenter.com/api/v2/jsonRPC',
		apiKey: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
	});

async transfer(req) {
    let mnemonics = req.body.mnemonics.split(" ")
    let keyPair = await mnemonicToPrivateKey(mnemonics);
    let wallet = WalletContractV4.create({ workchain: 0, publicKey: keyPair.publicKey });
    let contract = client.open(wallet);
    let seqno  = await contract.getSeqno();
    let tx = await contract.createTransfer({
        seqno,
        secretKey: keyPair.secretKey,
        messages: [internal({
            value: fromNano(req.body.amount),
            to: req.body.toAddress,
            body: req.body.tag,
            bounce: false,
        })],
    })

    let hash = await this.send(tx, wallet.address)

}
async send(message, address) {
let neededInit = null;
// if (init && !await client.isContractDeployed(address)) {
//     neededInit = init;
// }
const ext = (0, external)({
    to: address,
    init: neededInit,
    body: message
});
let boc = (0, beginCell)()
    .store((0, storeMessage)(ext))
    .endCell();
await client.sendFile(boc.toBoc());
return boc.hash().toString('hex')

}

I have found a solution The problem is that the final BoC is formed immediately before sending the transaction, and there is there is no built-in way to get its hash So, it can be retrieved and returned in the functions external or sendMessage of the file @ton/ton/dist/client/TonClient.js I rewrote the end of the function external (line 358) as follows
let final_cell = (0, core_1.beginCell)().store((0, core_1.storeMessage)(ext)).endCell()
let boc = final_cell.toBoc()
await client.sendFile(boc)
return final_cell.hash().toString('hex')

And function sendMessage (line 168) that way
async sendMessage(src) {
        let final_cell = (0, core_1.beginCell)().store((0, core_1.storeMessage)(src)).endCell()
        const boc = final_cell.toBoc();
        await __classPrivateFieldGet(this, _TonClient_api, "f").sendBoc(boc);
        return final_cell.hash().toString('hex')
}

Next, you need to track calls to this function up the tree and pass the hash value
For example
File @ton/ton/dist/client/TonClient.js (line 195)
 async sendExternalMessage(contract, src) {
        if (await this.isContractDeployed(contract.address) || !contract.init) {
            const message = (0, core_1.external)({
                to: contract.address,
                body: src
            });
            return await this.sendMessage(message);
        }
        else {
            const message = (0, core_1.external)({
                to: contract.address,
                init: { code: contract.init.code, data: contract.init.data },
                body: src
            });
            return await this.sendMessage(message);
        }
    }

File @ton/ton/dist/wallets/WalletContractV3R2.js (line 60)
async send(provider, message) {
    let hash = await provider.external(message)
    return hash
}

File @ton/ton/dist/client/TonClient.js (line 407)
let hash = await via.send({ to: address, value, bounce, sendMode: message.sendMode, init: neededInit, body})
return hash

If you're using DeDust SDK File @dedust/sdk/dist/contracts/jettons/JettonWallet.js (line 24) return await provider.internal(via, {...
File @dedust/sdk/dist/contracts/dex/vault/VaultNative.js (line 62)
let hash = await provider.internal(via, {sendMode: core_1.SendMode.PAY_GAS_SEPARATELY, body: cell, value: amount + (gasAmount ?? (0, core_1.toNano)('0.2'))})
return hash

I followed your method and i got something back, but one issue the transaction hash differs from the one on the explorer.
previously without your code i do not get a reply at all
const hash = await contract.sendTransfer({ 			secretKey: KEYPAIR.secretKey, 			seqno, 			messages: [ 				internal({ 					value: amount, 					to: toAddress, 				}), 			], 			sendMode: 3, });
in creating my wallet instance i use
WalletContractV4.create({ endpoint })
Do you think there would be a better update in the future, because the lib encounters an error it stops my code from running even when i have a try..catch block

+1

const client = new TonClient({
		endpoint: 'https://testnet.toncenter.com/api/v2/jsonRPC',
		apiKey: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
	});

async transfer(req) {
    let mnemonics = req.body.mnemonics.split(" ")
    let keyPair = await mnemonicToPrivateKey(mnemonics);
    let wallet = WalletContractV4.create({ workchain: 0, publicKey: keyPair.publicKey });
    let contract = client.open(wallet);
    let seqno  = await contract.getSeqno();
    let tx = await contract.createTransfer({
        seqno,
        secretKey: keyPair.secretKey,
        messages: [internal({
            value: fromNano(req.body.amount),
            to: req.body.toAddress,
            body: req.body.tag,
            bounce: false,
        })],
    })

    let hash = await this.send(tx, wallet.address)

}
async send(message, address) {
let neededInit = null;
// if (init && !await client.isContractDeployed(address)) {
//     neededInit = init;
// }
const ext = (0, external)({
    to: address,
    init: neededInit,
    body: message
});
let boc = (0, beginCell)()
    .store((0, storeMessage)(ext))
    .endCell();
await client.sendFile(boc.toBoc());
return boc.hash().toString('hex')

}

Bro your solution works, thanks man