FEATURE :  add support for variadic parameters in blocks and method

Description
The new variadic parameter feature will allow creating a dynamic block or method which will accept unlimited number of argument. In simple-lang the blocks and methods are referenced by their name which means a block or method cannot be created more than one even with different length of parameter. With the variadic parameters the behavior can be achieved for overloading. Example below is for a class with a dynamic constructor
class Classic

    block Classic(arg...)
         ...

The above class constructor can be invoked with unlimited number of parameters e.g
new Classic("string")
new Classic(12345)
new Classic(["str",5])
new Classic(12345,["str",5],"string")

Type Of Change

Please delete options that are not relevant and mark the ones that are relevant.

[ ] Bug Fix: Non breaking change which fixes an issue.
[x] New feature: Non breaking change which adds a new functionality ( module, enviroment etc).
[ ] Breaking change - Fixes a feature that would cause existing functionality to not work as expected.
[ ] Documentation - Module or general documentation.

Briefly Explain Why This PR Should Be Merged.
This PR should be merged in order to introduce the variadic feature into the lang. This will serves as a replacement to method overloading i.e a function can accept unlimited number of argument which are to be treated accordingly.
How Has This Been Tested ?
This has been extensively tested using various arguments. All the examples in the examples folder were all tested to ensure no part is broken. A new test file blockoverloading_params.sim has been created in the examples/basic folder to test the new feature
Checklist:

[ ] I have created a supporting issue for this PR.
[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests passed locally with my changes
[x] Any dependent changes have been merged and published in downstream modules

Yes all the modules and programs has been reviewed

Ok then. I'll test and merge
On Nov 13, 2018 09:08, "A Toy Soldier"<EMAIL_ADDRESS>wrote:
Yes all the modules and programs has been reviewed
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/simple-lang/simple/pull/49#issuecomment-438173663, or mute
the thread
https://github.com/notifications/unsubscribe-auth/Adkrj_vBChuP3ul10w9su-E8J70y6wpLks5uun4OgaJpZM4YavnA
.


Reqwless 1.3.0 compile error due to different embedded-nal-async version in embassy-net

Hi.
I update reqwless to version 1.3.0 in my esp32-c3 project and start to receive several compilation erros:
Compiling reqwless v0.13.0
error[E0277]: the trait bound TcpClient<'_, WifiDevice<'static, WifiStaDevice>, 1, 4096, 4096>: embedded_nal_async::stack::tcp::TcpConnect is not satisfied
--> src/http.rs:103:51
|
103 |         let mut client = HttpClient::new_with_tls(&tcp_client, &dns_socket, tls_config);
|                          ------------------------ ^^^^^^^^^^^ the trait embedded_nal_async::stack::tcp::TcpConnect is not implemented for TcpClient<'_, WifiDevice<'static, WifiStaDevice>, 1, 4096, 4096>
|                          |
|                          required by a bound introduced by this call
|
help: trait impl with same name found
--> /home/gustavo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/embassy-net-0.4.0/src/tcp.rs:634:5
|
634 | /     impl<'d, D: Driver, const N: usize, const TX_SZ: usize, const RX_SZ: usize> embedded_nal_async::TcpConnect
635 | |         for TcpClient<'d, D, N, TX_SZ, RX_SZ>
| |_____________________________________________^
= note: perhaps two different versions of crate embedded_nal_async are being used?
= help: the trait embedded_nal_async::stack::tcp::TcpConnect is implemented for &T
note: required by a bound in HttpClient::<'a, T, D>::new_with_tls
--> /home/gustavo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/reqwless-0.13.0/src/client.rs:99:8
|
99  |     T: TcpConnect + 'a,
|        ^^^^^^^^^^ required by this bound in HttpClient::<'a, T, D>::new_with_tls
...
114 |     pub fn new_with_tls(client: &'a T, dns: &'a D, tls: TlsConfig<'a>) -> Self {
|            ------------ required by a bound in this associated function
error[E0277]: the trait bound TcpClient<'_, WifiDevice<'static, WifiStaDevice>, 1, 4096, 4096>: embedded_nal_async::stack::tcp::TcpConnect is not satisfied
--> src/http.rs:103:26
|
103 |         let mut client = HttpClient::new_with_tls(&tcp_client, &dns_socket, tls_config);
|                          ^^^^^^^^^^ the trait embedded_nal_async::stack::tcp::TcpConnect is not implemented for TcpClient<'_, WifiDevice<'static, WifiStaDevice>, 1, 4096, 4096>
|
help: trait impl with same name found
--> /home/gustavo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/embassy-net-0.4.0/src/tcp.rs:634:5
|
634 | /     impl<'d, D: Driver, const N: usize, const TX_SZ: usize, const RX_SZ: usize> embedded_nal_async::TcpConnect
635 | |         for TcpClient<'d, D, N, TX_SZ, RX_SZ>
| |_____________________________________________^
= note: perhaps two different versions of crate embedded_nal_async are being used?
= help: the trait embedded_nal_async::stack::tcp::TcpConnect is implemented for &T
note: required by a bound in HttpClient
--> /home/gustavo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/reqwless-0.13.0/src/client.rs:20:8
|
18  | pub struct HttpClient<'a, T, D>
|            ---------- required by a bound in this struct
19  | where
20  |     T: TcpConnect + 'a,
|        ^^^^^^^^^^ required by this bound in HttpClient
error[E0277]: the trait bound DnsSocket<'_, WifiDevice<'static, WifiStaDevice>>: embedded_nal_async::dns::Dns is not satisfied
--> src/http.rs:103:64
|
103 |         let mut client = HttpClient::new_with_tls(&tcp_client, &dns_socket, tls_config);
|                          ------------------------              ^^^^^^^^^^^ the trait embedded_nal_async::dns::Dns is not implemented for DnsSocket<'_, WifiDevice<'static, WifiStaDevice>>
|                          |
|                          required by a bound introduced by this call
|
help: trait impl with same name found
Seems to be something related with embedded-nal-async:
" note: perhaps two different versions of crate embedded_nal_async are being used?"
Any thoughts on this issue?

If you use embassy-net from crates.io, you should probably stick to reqwless 0.12.1. If you use patched git dependencies for embassy-net, if you use the latest rev, you should be able to use 0.13.0

Thanks @lulf . I'm using a local copy of crates.io embassy-net. I update the embedded_nal_async crate in this local copy and now is everything working like a charm.


aarch64 platform added to artifacts

Pull Request Test Coverage Report for Build<PHONE_NUMBER>6
Details

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.3%) to 54.383%

Totals

Change from base Build<PHONE_NUMBER>7:
-0.3%

Covered Lines:
701

Relevant Lines:
1289

💛  - Coveralls


Selected tags should appear at the front of the list

Is your feature request related to a problem? Please describe.
It's better to highlight the selected tags
Describe the solution you'd like
Selected Tags (with green background) should appear at the front of the list in article detail page

We're reshaping the Tag usage. Close it and will create a newer and proper issue for this.


[Landcover Toolkit] npm run fix

Closes #62.
Changes generated entirely by npm run fix.

GitHub wan't another stamp after merging :/


Use simple cross versioning for the scala-kernel-api module (WIP)

This may require downstream users to depend on ("com.lihaoyi" % "ammonite-repl" % Versions.ammonite).cross(CrossVersion.full) themselves (as "provided" if they want to).
May put that an hold until I propose some classloader isolation developments to Ammonite.

Superseded by https://github.com/almond-sh/almond/pull/335. Users can depend on sh.almond::jupyter-api, that has simple / standard cross versioning (jupyter-api_2.12, instead of scala-kernel-api_2.12.8 for example).


[Bug]: Symlink error message when starting a new terminal window

Current Behavior (bug)
Getting the following error message when starting a new terminal window. Devbox shellenv is sourced.
Error: symlink /home/rodrigo/.local/share/devbox/global/default/.devbox/nix/profile/default/include /home/rodrigo/.local/share/devbox/global/default/.devbox/virtenv/.wrappers/include: file exists

Expected Behavior (fix)
No error message
Additional context
https://raw.githubusercontent.com/rbelem/devbox-global/main/devbox.json

i don't get this error when running from main, though.

@mikeland86, looks like an error with Devbox global sourcing

to reproduce it, do something that modifies your global devbox, which will trigger this error handling path.

@rbelem I'm having trouble repro-ing this. My best guess is a race condition. Is there any package in your global that may might run on every command? When I delete the include symlink it reappears right away which makes me thing there's something under the hood calling devbox global shellenv. This can happen because the binaries are wrapped with devbox global shellenv.

There certainly is in mine... most of them.  direnv, starship, atuin, etc.

but maybe i'm mis-understanding the code. I'm not sure why running those apps would trigger a new shellenv call.

I can't reproduce the error when building from main.

@rbelem it's a race condition so may not always repro. Here's the fix https://github.com/jetpack-io/devbox/pull/1082
We may do a quick release to get this in.

@mikeland86 #1082 resolved the issue. Another issue I noticed was that ensurePackagesAreInstalled was being called three times every new prompt. Is it related to #1082?


Add Indonesian translation

Greetings from Indonesia!
Added translation for my fellow Indonesian. Hope this helps :)

Greetings from Indonesia!
Added translation for my fellow Indonesian. Hope this helps :)

Well done! Don't forget to import your translation to index.ts file located at src/locales


[examples.sat.hillclimb] Fix required failure probability per round

fixes #52

As far as I can tell steep works if the quantum factor is set to 1, see attached image.

(See Slack)


Improves seq2seq example

This PR does a couple of things (see individual commit messages for details)

Removes deprecated @jax.mask transformation.
Makes seq2seq use Optax.
Adds CLU metric logging.
Adds Colab.

Note that some - but not all - of the issues in #571 are resolved with this PR.
Also resolves example for #1053

Codecov Report

Merging #1396 (2fa188a) into master (006a9f3) will increase coverage by 2.22%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1396      +/-   ##
==========================================
+ Coverage   80.05%   82.28%   +2.22%
==========================================
  Files          55       65      +10
  Lines        4002     5324    +1322
==========================================
+ Hits         3204     4381    +1177
- Misses        798      943     +145

Impacted Files
Coverage Δ

flax/__init__.py
100.00% <ø> (ø)

flax/core/__init__.py
100.00% <ø> (ø)

flax/core/axes_scan.py
76.56% <ø> (ø)

flax/core/frozen_dict.py
97.87% <ø> (+7.87%)
:arrow_up:

flax/core/lift.py
96.40% <ø> (+0.16%)
:arrow_up:

flax/core/nn/__init__.py
100.00% <ø> (ø)

flax/core/nn/attention.py
13.47% <ø> (ø)

flax/core/nn/linear.py
42.34% <ø> (ø)

flax/core/nn/normalization.py
46.66% <ø> (ø)

flax/core/nn/stochastic.py
85.71% <ø> (ø)

... and 103 more

Continue to review full report at Codecov.

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


Implement logical types conversion for serializer/deserializer

Issue #, if available:
Description of changes:
I noticed that the glue serializer / deserializer was not handling logical types conversions.
This PR aims to add support for those conversions. I added a boolean in the configuration class to let the user define if he wants to enable conversions.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Any chance to see that PR merged one day?

Up we need this feature, what's the status?


dynamic generate shlp dialog

a first take on dynamic generate shlp dialog

thank you! added some abaplint fixes.

@choper725 updated the naming of custom controls and functions to separate them from the standard ui5 functionality and controls

i sent another PR fixing demo 102 and adding ircontroller to zcc_generate_ddic_shlp in order to get the sending class object..
ill try to think on a way integrating the select data inside this custom control also... and not seperating it to two classes..


Sticky header, but only on one viewport

Hi!
On my XS viewport I have a sticky header, but on SM+ I do not.  I'm unable to update the config after it's already run.  If a user resizes their browser, they'll be stuck with the configuration from their original viewport.
Here's some (cut up/pseudo) JS I've got.  At this point I've already initialized it and I've detected a viewport change on my end.

if (... viewport != xs ...)
	config.fixedNavbar = '.navbar-fixed-top'; // default, doesn't exist

$('.table-responsive').responsiveTable(config);

$('.sticky-table-header').remove();
$('.table-responsive').responsiveTable('createStickyTableHeader');
$('.table-responsive').responsiveTable('update');

I've tried this, and things like it, but no luck.  Is there a way to "start fresh" on the same screen?  I don't see a destroy function :(
I'd be willing to custom alter the original JS to get what I need (within the resize function), but if there's an official way to do this that'd be great.
Thanks!

Have you tried just hiding it with css?

But I like it :p

Hehe, alright! Good luck! :)


Upgrade to Robolectric 4

Description (required)
Upgrade to Roboelectric 4. This is so we can upgrade Gradle and various other components so the app is more stable and we can get instrumentation tests working again (#2868).
What changes did you make and why?

Upgrade to Robolectric 4
Added missing androidx test dependency
Removed deprecated code (e.g. some imports, the @Config constants field)
Added android.enableUnitTestBinaryResources as per the migration guide. This causes a compile time warning but does not cause any actual problems. Upgrading the Android Gradle plugin will remove this warning (see known issues under https://github.com/robolectric/robolectric/releases/tag/robolectric-4.0.2), however I think this is best done when updating Gradle (#2824) or as a separate PR.

Tests performed (required)
Tested betaDebug on API level 28
All unit tests pass

Codecov Report

Merging #2982 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master   #2982   +/-   ##
======================================
  Coverage    3.69%   3.69%
======================================
  Files         247     247
  Lines       12213   12213
  Branches     1081    1081
======================================
  Hits          451     451
  Misses      11728   11728
  Partials       34      34

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 12883e3...156f584. Read the comment docs.


Convert BHR to functional component, translations of remaining texts, error messages

After coming in after skip backup, if we click on set password and backup on cloud of level 1, then nothing is happening.


WIP: build: add oathkeeper for local dev proxy

Codecov Report

Merging #337 into master will decrease coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #337      +/-   ##
==========================================
- Coverage   63.48%   63.44%   -0.04%
==========================================
  Files          57       57
  Lines        5822     5822
==========================================
- Hits         3696     3694       -2
- Misses       1434     1435       +1
- Partials      692      693       +1

Impacted Files
Coverage Δ

internal/database/mysql.go
58.66% <0%> (-2.67%)
:arrow_down:

internal/secrets/secrets.go
75.94% <0%> (-2.54%)
:arrow_down:

internal/accounts.go
78.2% <0%> (+2.56%)
: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 79e2a17...5350ba0. Read the comment docs.


Confusion about NOT_FOUND_EXTERNAL and NOT_FOUND_INTERNAL IP types

In the topology view, I found IP node tags with two types: NOT_FOUND_EXTERNAL and NOT_FOUND_INTERNAL.  What do those types stand for and why Kindling provide two different IP types.

These two values are composed of two parts.
NOT_FOUND
NOT_FOUND means the IP is neither a Pod's one nor a Service's one in the Kubernetes cluster. The IP could belong to a host or an external service.
INTERNAL and EXTERNAL
INTERNAL means the IP belongs to a Node in the cluster or a host on which the kindling agent is running. EXTERNAL is set for other cases if the IP is NOT_FOUND.
I will add these descriptions to the metric documentation.


Initial Shell style guide

I have more to add, but I thought I'd get the discussion started while I put
this down for a bit and come back later.

I'm going to give this a review, but I have very few opinions on how sh should be written. I'll likely be happy to accept any form of standardization.
It would be good to note that we use https://www.shellcheck.net/ currently.

Even with an open thread, there are a lot of green checkmarks so I'm going to merge now rather than let this go stale. Happy to follow up with more changes and additions in subsequent PRs.


Cannot remove telescope-tags package

Using "meteor remove telescope-tags" to remove telescope-tags package, telescope-tags is removed in /.meteor/packages.
However<EMAIL_ADDRESS>is still in /.meteor/versions, even remove it manually.
Is it due to no version # in /packages/telescope-tags/package.js?

That's strange… In any case if the package is not in /packages I don't think it can be loaded.

Is it due to no version number in /packages/telescope-tags/package.js?
The default version number is 0.0.0

Maybe, but I don't think so. It might just be a bug in Meteor? Are you sure the package is really loaded? Do categories still appear in the app?

Yes, it might be a bug in Meteor.
You can run "meteor remove telescope-tags" and "git status"
Get "modified:   .meteor/packages"
But no "modified:   .meteor/versions"
The package is loaded and categories still appears.

Hmm… So the package really is removed from .meteor/packages but still
gets loaded? That's definitely a bug.
On Sun, Apr 12, 2015 at 1:03 PM, xuanus<EMAIL_ADDRESS>wrote:

Yes, it might be a bug in Meteor.
You can run "meteor remove telescope-tags" and "git status"
Get "modified: .meteor/packages"
But no "modified: .meteor/versions"
The package is loaded and categories still appears.
—
Reply to this email directly or view it on GitHub
https://github.com/TelescopeJS/Telescope/issues/901#issuecomment-91983433
.


release strategy

What needs to happen?
Either used tagged version releases or have a dev branch where completed PRs can be merged.
Why should we do this?
We want to be able to merge PRs into main branch without worrying that it's going to break anyone's code.  Some changes need this codebase to be in sync with app front and back ends.
When does this need to get done?
Next milestone?

Releases:
viewer - merge PR (Done), increment version (release), update viewer version on website (autodeploy to staging), manually push to prod (public release)
website - merge PR (Done), increment version (autodeploy to staging), manually push to prod (public release)
simulariumio - merge PR (Done), increment version (public release)
Milestone 7
part 1 - when done, increment version simulariumio, push staging to prod
part 2 - when done, increment version simulariumio, push staging to prod
part 3 - run models again -> Done, upload files to AWS s3


Add update-time note

So, I just checked, and for me it just turned April 6 and I though: "when will the data from yesterday be available?" So, I checked CSSEGISandData/COVID-19 and was happy, but then I thought what if someone else has the same question....
Anyway, I added a small note (to the footnote) to roughly indicate when new data should be available, based on the CSSEGISandData/COVID-19 & nytimes/covid-19-data repos and their commits..

The "12pm EST" should probably use the same format as "00:00 UTC". Also, as a global project, it would be nice to include the UTC equivalent of the EST time as well.

something like this? ^^

@all-contributors add @thisIsTheFoxe for content

@all-contributors add @waldyrious for review

Thanks @thisIsTheFoxe @waldyrious!


Buffer reordering

It would be very useful to be able to reorder buffers, so that you can keep the buffers you are actively working on close together and in some logical order, and quickly switch between them with go_next/previous.
Looking at possible implementation, since every information comes from filtered_buffers() (great job keeping your code organized!), then sticking a sort() at the end of it should work fine. For the ordering function, we can keep a dict with vim buffer ids and priority, which also defaults go buffer id if not given:
function get_buffer_priority(buffer)
    if !has_key(s:priorities)
        let s:priorities[a:buffer] = a:buffer
    endif
    return s:priorities[a:buffer]
endfunction

Then, if you want to move a buffer, you simply swap its priority with another one. Example:

Open files A, B, C
They get assigned priorities equal to buffer ids: { A: 1, B: 2, C: 3 }
Sorting by priority results in same order ABC
Swap priority of A and B: { A: 2, B: 1, C: 3 }
Sorting by priority now results in BAC

If worried about cost of sorting a large number of buffers, we can skip sorting if user has never called any reordering function, as tracked by a flag. This flag can also be reset if the order is returned to default (each priority is equal to buffer id).

I have a draft at https://github.com/dkaszews/lightline-bufferline/pull/1 , as it uses #117 as a base (no real dependencies, just some helper functions already implemented there). I will open a MR here after #117 is either merged or rejected.
I opened 100 buffers and measured time elapsed in lightline#bufferline#buffers(), on my Raspberry Pi 4B it went from 109ms to 123ms, so optimization I mentioned is not necessary. With more realistic 10 buffers, both take 20ms. Since the sort is at the very end, only the number of buffers actually shown in tabline matters, so ones that are hidden or from different category (#117) don't affect performance.

Screen recording 2022-12-11 18.33.53.webm

@dkaszews Thanks for implementing this feature! Been wanting this for some time since I frequently re-order my Tmux windows, and wanted to do it with Vim buffers as well. Surprised and glad that it's now in lightline-bufferline. Cheers

@ranelpadon Really happy to have helped! It was a natural feature to expect, same as you might reorder tabs in a browser. The tricky part was how to implement it in a stable way, fortunately the idea of swapping the buffer ids via map worked so elegantly. Plus I could flex my maths skills by calling it a symmetric group 😁


Valve planning and control with impedance controller

Well, a lot of stuff.

Let's still discuss the few comments above before merging.

Yes many were changes required for quick testing but should be properlt addressed. I am on the paper now. I'll go over them in the afternoon.


Initial GH actions activation

GH actions will be used to get the latest successfull symbiflow install package.
The GH workflow works only if the yml configuration file is added to the master branch, where it will get to be effective on any status change for commits within the master branch.
Moreover, currently the GCS upload of the generated link is not present at the moment.

@umarcor - Can you check this over for for GitHub action smells?

I have added also the GCP upload step, we need to set the following GH secrets to have the file with the link uploaded to GCS:

GCP_SERVICE_ACCOUNT_KEY_FILE: this enables the authentication to GCP
GCP_STORAGE_BUCKET: This is needed to identify the bucket we want to upload to.

https://github.com/marketplace/actions/gcp-storage-sync

Hi! I'm not sure I understand what's going on here. @acomodi, would you mind explaining what are we trying to achieve from a higher level perspective? Is the purpose to "retrieve the latest artifact from somwhere and push it to Google Cloud Platform (GCP)?

Step "Check status" feels weird to me. It seems that you are using the API for checking the status of the same commit the workflow is run for.
You should not need to define if: ${{ success() }} for each step after the first one. That should be the default (implicit behaviour). Moreover, I'd say it should be if: success or if: success().
What dows "STPM" stand for? Is it "Symbiflow Tools Package Manager"?
What latest artifact do you want to get? Where is symbiflow_get_latest_artifact_url defined? Does it come from STPM and that's why you installed it?

Hi @umarcor, yes, the main purpose is to retrieve the latest package and push it on GCP:

Step "Check status" feels weird to me. It seems that you are using the API for checking the status of the same commit the workflow is run for.

That's true, but we don't check just one status, but combined status of all checks, that is set to success only if every check passed.

You should not need to define if: ${{ success() }} for each step after the first one. That should be the default (implicit) behaviour. Moreover, I'd say it should be if: success or if: success().

Fixed.

What does "STPM" stand for? Is it "Symbiflow Tools Package Manager"?

Indeed, this is a script used to get packages generated from SymbiFlow CIs.

What latest artifact do you want to get? Where is symbiflow_get_latest_artifact_url defined? Does it come from STPM and that's why you installed it?

We want to get one the artifact of one of the CI, namely Xilinx Series 7 - Install. And the symbiflow_get_latest_artifact_url comes indeed from STPM.

@acomodi thanks for clarifying. This is a new use case for me, and it's always enriching to learn.

That's true, but we don't check just one status, but combined status of all checks, that is set to success only if every check passed.

I understand. You want to wait for Travis and Kokoro to run and have this workflow executed when and only when all of them are done.
Regarding constraining to master, there should be a more idiomatic way of doing it. As you see in https://docs.github.com/en/free-pro-team@latest/actions/reference/events-that-trigger-workflows#example-using-multiple-events-with-activity-types-or-configuration, for push and pull_request events, you can filter the branches. My guess is that the same approach should work for status events.
But, according to the note in https://docs.github.com/en/free-pro-team@latest/actions/reference/events-that-trigger-workflows#status, either your current implementation or filtering the event are NOT necessary. Events of type status do work with the default branch only. Hence, any further filtering is redundant.
Apart from that, ${{ }} is not required in if fields. Not to be applied here, but for future uses.

You should not need to define if: ${{ success() }} for each step after the first one. That should be the default (implicit) behaviour. Moreover, I'd say it should be if: success or if: success().

Fixed.

I think you can remove the first one too. If "Check status" exits with non-zero, the workflow is finished there, by default.

What does "STPM" stand for? Is it "Symbiflow Tools Package Manager"?

Indeed, this is a script used to get packages generated from SymbiFlow CIs.

Just to be sure, with "SymbiFlow CIs" you mean the ones named "kokoro"? That is, neither Travis nor GitHub Actions?

We want to get one the artifact of one of the CI, namely Xilinx Series 7 - Install. And the symbiflow_get_latest_artifact_url comes indeed from STPM.

I would say that symbiflow_get_latest_artifact_url is not the best naming if the target is to download Xilinx Series 7 - Install only. Anyway, this comment is absolutely out of the scope of this PR.

I have not tried this, but tool hub is available in GitHub Actions by default. According to https://hub.github.com, hub ci-status --verbose might be equivalent to the API check.

Events of type status do work with the default branch only. Hence, any further filtering is redundant.

@umarcor Ok, I have removed the filering on the branch (as well as the if: success)

Just to be sure, with "SymbiFlow CIs" you mean the ones named "kokoro"? That is, neither Travis nor GitHub Actions?

Probably I chose wrong words. I mean all CIs that run on master (the ones named Kokoro and also Travis)

I would say that symbiflow_get_latest_artifact_url is not the best naming if the target is to download Xilinx Series 7 - Install only. Anyway, this comment is absolutely out of the scope of this PR.

Actually this tool will be more of a general purpose script to get latest artifacts of different CI builds. For the time being it defaults to fetch the Xilinx Series 7 - Install artifact.


Add ability to describe exchange and routing key for AMQP consumer and producer

related to #67

I only had time to skim through, but this looks great. I will go over the finer details tomorrow and will probably have some comments, but again this looks great 🙂

Thank you for the comments, I'll update the PR either later today or tomorrow.


When allowing an item that already exists to be imported with importOnDuplicate rollbacks will try to delete

Describe the bug
When utilizing importOnDuplicate to import items that already exist.. if the import is successful and something else in the stack fails and the stack rolls back it will try to delete the imported resource. This will inevitably lead to a lot of other errors.
To Reproduce
Steps to reproduce the behavior:

Create an OU manually
Add it to the stack with import on duplicate
Create another OU manually
Add it to the stack after the first OU and dont allow imports on duplicate
Deploy the stack. The first OU will import, the second will fail as expected, and the first one will be deleted.

Expected behavior
If importOnDuplicate is used and the stack is rolling back then delete should retain the item. Perhaps the python code could check the stack state before a delete.
Screenshots
Logs
Additional context

Low priority for now. If an OU is deleted its not a big deal. Accounts cant be deleted. The primary annoyance is broken rollback states.

bump


WCT with Mask

Hi Xueting Li, many thanks for sharing your great implementation. I am wondering whether you have provided the Pytorch code of testing WCT with mask similar as this code in the original repository.

Sorry, I didn't include that part. It should be straight forward to implement. I don't have time to organize and push that code to this repo. But I can provide the core code for your reference. The main idea is to modify the transform function to the feature_wct function below such that it only takes features within a mask.
def large_dff(a,b):
    if(a / b >= 100):
        return True
    if(b / a >= 100):
        return True
    return False

def scale_dialate(seg,W,H):
    # TODO: dialate
    seg = seg.view(1, 1, seg.shape[0], seg.shape[1])
    seg = F.interpolate(seg, size = (H, W), mode = 'nearest')
    return seg.squeeze()

def feature_wct(self, cF, sF, cmasks, smasks, alpha):
        color_code_number = 1

        C, W, H = cF.size(0),cF.size(1),cF.size(2)
        _, W1, H1 = sF.size(0),sF.size(1),sF.size(2)
        targetFeature = cF.view(C,-1).clone()
        for i in range(color_code_number):
            cmask = cmasks[i].clone().squeeze(0)
            smask = smasks[i].clone().squeeze(0)
            if(torch.sum(cmask) >= 10 and torch.sum(smask) >= 10 and not large_dff(torch.sum(cmask),torch.sum(smask))):
                cmaskResized = scale_dialate(cmask,W,H)
                if(torch.max(cmaskResized) <= 0):
                    print('cmaskResized has no 1, ignore')
                    continue
                cmaskView = cmaskResized.view(-1)
                fgcmask = (cmaskView == 1).nonzero().squeeze(1)
                fgcmask = fgcmask.cuda()
                cFView = cF.view(C,-1)
                cFFG = torch.index_select(cFView,1,fgcmask.long())

                smaskResized = scale_dialate(smask,W1,H1)
                if(torch.max(smaskResized) <= 0):
                    print('smaskResized has no 1, ignore')
                    continue
                smaskView = smaskResized.view(-1)
                fgsmask = (smaskView == 1).nonzero().squeeze(1)
                fgsmask = fgsmask.cuda()
                sFView = sF.view(C,-1)
                sFFG = torch.index_select(sFView,1,fgsmask.long())

                targetFeatureFG = wct2(cFFG,sFFG)
                targetFeature.index_copy_(1,fgcmask,targetFeatureFG)
                del fgcmask
                del fgsmask
        targetFeature = targetFeature.view_as(cF)
        ccsF = alpha * targetFeature + (1.0 - alpha) * cF
        ccsF = ccsF.float().unsqueeze(0)
        return ccsF

Many thanks for sharing these functions, it was very helpful. I just have one question on it.
What is wct2 in this line: targetFeatureFG = wct2(cFFG,sFFG)? since it was not defined in util.py. Thanks!

Many thanks for sharing these functions, it was very helpful. I just have one question on it.
What is wct2 in this line: targetFeatureFG = wct2(cFFG,sFFG)? since it was not defined in util.py. Thanks!

Here it is, it's the feature transform function:
def wct2(cF,sF):
    cFSize = cF.size()
    c_mean = torch.mean(cF,1) # c x (h x w)
    c_mean = c_mean.unsqueeze(1).expand_as(cF)
    cF = cF - c_mean

    iden = torch.eye(cFSize[0]).cuda().double()
    contentConv = torch.mm(cF,cF.t()).div(cFSize[1]-1) + iden
    c_u,c_e,c_v = torch.svd(contentConv,some=False)

    k_c = cFSize[0]
    for i in range(cFSize[0]):
        if c_e[i] < 0.00001:
            k_c = i
            break

    sFSize = sF.size()
    s_mean = torch.mean(sF,1)
    sF = sF - s_mean.unsqueeze(1).expand_as(sF)
    #iden = torch.eye(sFSize[0]).cuda().double()
    try:
        styleConv = torch.mm(sF,sF.t()).div(max(1, sFSize[1]-1)) + iden
    except:
        import pdb; pdb.set_trace()
    s_u,s_e,s_v = torch.svd(styleConv,some=False)

    k_s = sFSize[0]
    for i in range(sFSize[0]):
        if s_e[i] < 0.00001:
            k_s = i
            break

    #c_d = (c_e[0:k_c]).pow(-0.5)
    c_d = (c_e).pow(-0.5)
    step1 = torch.mm(c_v[:,0:k_c],torch.diag(c_d))
    step2 = torch.mm(step1,(c_v[:,0:k_c].t()))
    whiten_cF = torch.mm(step2,cF)

    s_d = (s_e[0:k_s]).pow(0.5)
    diag_matrix = torch.diag(s_d)
    targetFeature = torch.mm(torch.mm(torch.mm(s_v[:,0:k_s],diag_matrix),(s_v[:,0:k_s].t())),whiten_cF)
    targetFeature = targetFeature + s_mean.unsqueeze(1).expand_as(targetFeature)
    return targetFeature

Thanks a lot for sharing the useful code. I have updated the code in this forked repository by adding WCT_mask.py, loader_mask.py and util_mask.py.
I made two binary masks for content and style and tried to run the code by this command: python WCT_mask.py --cuda --contentPath /content/img --stylePath /style/img --content_mask_Path /content/mask --style_mask_Path /style/mask, but I got the following error at line 171 of util_mask.py:
RuntimeError: Dimension out of range (expected to be in range of [-1, 0], but got 1)
The problem is because the output of (cmaskView == 1).nonzero().shape is: torch.Size([0]). I'm wondering if there is a problem in styleTransfer implementation or in transform_mask.
The full error command is as below:
Traceback (most recent call last):
  File "WCT_mask.py", line 154, in <module>
    styleTransfer(cImg,sImg,cMImg,sMImg,imname,csF)
  File "WCT_mask.py", line 64, in styleTransfer
    csF5 = wct.transform_mask(cF5,sF5,cmF5,smF5,args.alpha)   #(cF5,sF5,csF,args.alpha)
  File "/projects/WCT_Pytorch/util_mask.py", line 171, in transform_mask
    fgcmask = (cmaskView == 1).nonzero().squeeze(1)
RuntimeError: Dimension out of range (expected to be in range of [-1, 0], but got 1)

I appreciate a lot all your provided help. Thanks!

I could solve the previous issue by changing this line:
fgcmask = (cmaskView == 1).nonzero().squeeze(1)
to:
fgcmask = (cmaskView > 0 ).nonzero().squeeze(1)
and by some other small changes I could get this image as the result:

I used this image as the content:

This is the mask for the content:

This is for the style:

And this is for the mask of the style:

It works well for capturing a part of the style image to transfer to the whole of the content image, but I am still wondering how can I use it to transfer the style to the part of the content image and maintain the rest of the content images as it is.
I updated the code in the forked repository .
Thanks a lot for all your great help.

I could solve the last problem and everything works fine. I got the image below with the content mask and style mask.

I updated the code in the forked repository.
Thanks again for your useful help.


Idea: A memory similar to ConversationBufferWindowMemory but utilizing token length

In the current ConversationBufferWindowMemory, only the last k interactions are kept while the conversation history prior to that is deleted.
A memory similar to this, which keeps all conversation history below max_token_limit and deletes conversation history from the beginning when it exceeds the limit, could be useful.
This is similar to ConversationSummaryBufferMemory, but instead of summarizing the conversation history when it exceeds max_token_limit, it simply discards it.
It is a very simple memory, but I think it could be useful in some situations.

this is a great, hope to get it implemented soon! given the similarity with ConversationSummaryBufferMemory, shouldn't be that bad


Device request > Task Comment > The error msg isn't suitable

Pre-condition

User logins successfully and is in the W2 homepage
There's at least 1 device request created before

Steps to reproduce the problem

Click on "Device Request" option at the sidebar
Click on a specific task to view its details
Scroll to the bottom of the the detail page to the Comment section
Not input anything at comment textbox
Click on Send button
Observe the error msg

Expected Result
The error msg should be changed to "Please enter the content to comment"
Actual Result
The error msg isn't suitable
Screenshots

Done


Please update documentation to explain use of force-show property

Thank you so much for such a great integration of popperjs into vuejs!  I've been scratching my head for a few days about how to show/hide a popover from parent components.  I may just be a little slow, but it didn't register with me that the force-show property could also be used to HIDE the popover, and therefore by passing in a variable that is stored in a parent component or vuex store, it's a breeze to show/hide a popover whenever and however you want.
It would be awesome if the documentation could explain this in a bit more detail.  Again, thank you for all you do!

+1 on this one, @RobinCK

@cicsolutions : I guess it's too lat but it's a prop, you can set it like any other prop, programmatically.
// assume this is MyPopover.vue
<template>
  <popper
    :options="{ placement }"
    :visible-arrow="arrow"
    :trigger="trigger"
    :force-show="force"
    @show="onShow"
    @hide="onHide"
  >
    <div :class="['popper', `popper--${theme}`]" data-test="global-phone-value">
      <slot name="body" />
    </div>
    <template slot="reference">
      <slot name="activator" />
    </template>
  </popper>
</template>

// a parent component
<template>
  <MyPopover force="true" placement="placement" trigger="clickToOpen" .. />
  // the value of force can also be changed programmatically of course via an event, a lifecycle hook or anything
</template>


607_merge_experiment: Implement merge functions

Hi @kabis-ops , @yangc71 , thanks for your review and all your comments. I hope I have addressed all of them.


Updated readme

@all-contributors please add @SHIVASHAMBHAVI for design. please add @sambrama-M for design.

https://github.com/all-contributors please add @Pallavihira190 for design.

@all-contributors please add @Pallavihira190 for design.


Update for device mapper configuration

- What I did
Fixes #21701
- How I did it
- How to verify it
make docs
@mbentley @thaJeztah for review

@mbentley Your comments are in.

LGTM from a technical accuracy standpoint :+1:

Thanks @moxiegirl left some nits/suggestions (but haven't tested the procedure)

@thaJeztah the nits are in

LGTM, thanks!

@moxiegirl gave me her "LGTM" on Slack

Thanks Gents. @tiborvass I know you are busy, if you can't do this pick, let me know I'll do it post cut off.

@moxiegirl cherry-pick PR is already up https://github.com/docker/docker/issues/22001 (not merged yet)

@thaJeztah will do.  I'll wait until docs is branched.


[Question] How to never open quick fix window?

I prefer to only have inline errors and no quick fix window. Is this possible? Is there a setting to change the default behavior? Thanks!

Sure:
let g:syntastic_auto_loc_list = 0

That was easy, thanks @lcd047!


Update plugin versions

Bump tycho-p2-repository-plugin version to 1.3.0 (from 1.1.0 and 1.1.0-SNAPSHOT)
Bump jetty-maven-plugin version to 8.1.16.v20140903 (from 8.1.5.v20120716-SNAPSHOT)

Reduce dependence on SNAPSHOT repositories which are out-of-date and unstable, due to the nature of SNAPSHOTs themselves.

Thanks,
However localRepository is not used in DBeaver build directly. It prepares p2 dependencies (converts from maven format into p2 repository) so it doesn't really matter what Tycho or Jetty version is used there.
But root Tycho version matters.


Migrate tests to Truth-based API and deprecate non-Truth one

We need to migrate our tests to Truth-based API of BlackBoxBoundedContext, and then deprecate the “other” side of its API.

@dmdashenkov please check if this has been done already.

This is done now. The only thing left is to delete the old API. We have to check with our colleagues if they still use it.


Incorrect Kudu predicate pushdowm

1.create table kudu.test.test1
CREATE TABLE kudu.test.test2test1 (
   finishedtime timestamp WITH ( primary_key = true ),
   uid bigint WITH ( primary_key = true ),
   order_no varchar WITH ( primary_key = true ),
   id bigint WITH ( nullable = true ),
   total_fee decimal(10,2) WITH ( nullable = true ),
   verifytime timestamp WITH ( nullable = true ),
   reg_time timestamp WITH ( nullable = true )
)
WITH (
   number_of_replicas = 1,
   partition_by_hash_buckets = 3,
   partition_by_hash_columns = ARRAY['uid'],
   partition_by_range_columns = ARRAY['finishedtime'],
   range_partitions = '[{"lower":"2018-01-01T00:00:00.000Z","upper":"2021-01-01T00:00:00.000Z"}]'
)

2.create table kudu.test.test2
CREATE TABLE kudu.test.test2 (
   order_no varchar WITH ( primary_key = true ),
   verifytime timestamp WITH ( primary_key = true )
)
WITH (
   number_of_replicas = 1,
   partition_by_hash_buckets = 3,
   partition_by_hash_columns = ARRAY['order_no'],
   partition_by_range_columns = ARRAY['verifytime'],
   range_partitions = '[{"lower":"2018-01-01T00:00:00.000Z","upper":"2021-01-01T00:00:00.000Z"}]'
)

3.insert data into table
insert into kudu.test.test1 values (timestamp '2020-02-25 08:00:01',1,'a1',1,125.2,timestamp '2020-02-25 08:20:00',timestamp '2020-02-20 08:00:00');
insert into kudu.test.test1 values (timestamp '2020-02-25 08:05:42',2,'a2',2,180.2,timestamp '2020-02-25 08:23:00',timestamp '2020-02-20 09:00:00');
insert into kudu.test.test1 values (timestamp '2020-02-25 08:12:33',3,'a3',3,550.2,timestamp '2020-02-25 08:32:00',timestamp '2020-02-20 10:00:00');
insert into kudu.test.test1 values (timestamp '2020-02-25 08:22:55',4,'b1',4,150.2,timestamp '2020-02-25 08:41:00',timestamp '2020-02-20 11:00:00');
insert into kudu.test.test1 values (timestamp '2020-02-25 08:31:12',5,'b2',5,120.2,timestamp '2020-02-25 08:49:00',timestamp '2020-02-20 12:00:00');

insert into kudu.test.test2 values ('a1',timestamp '2020-02-25 08:01:12');
insert into kudu.test.test2 values ('a2',timestamp '2020-02-25 08:21:22');
insert into kudu.test.test2 values ('b6',timestamp '2020-02-25 08:32:32');
insert into kudu.test.test2 values ('b7',timestamp '2020-02-25 08:33:12');
insert into kudu.test.test2 values ('c8',timestamp '2020-02-25 08:34:11');

4.use test sql in different version of presto
select uid,order_no,total_fee as total_fee1,total_fee as total_fee2,finishedtime as finishedtime1,finishedtime as finishedtime2,date_diff('day',reg_time,finishedtime)+1 as day_dif,reg_time
from kudu.test.test1
where finishedtime > timestamp '2020-02-25 08:00:00' and finishedtime <= timestamp '2020-02-25 08:20:00'
and order_no not in
(select order_no
from kudu.test.test2
where verifytime > timestamp '2020-02-25 08:00:00' and verifytime <= timestamp '2020-02-25 08:20:00')  ;

5.result
   5.1 version of 322   -- only succeed
    uid | order_no | total_fee1 | total_fee2 |      finishedtime1      |      finishedtime2      | day_dif |        reg_time
-----+----------+------------+------------+-------------------------+-------------------------+---------+-------------------------
   2 | a2       |     180.20 |     180.20 | 2020-02-25 08:05:42.000 | 2020-02-25 08:05:42.000 |       5 | 2020-02-20 09:00:00.000
   3 | a3       |     550.20 |     550.20 | 2020-02-25 08:12:33.000 | 2020-02-25 08:12:33.000 |       5 | 2020-02-20 10:00:00.000

   5.2 version of 328   --failed
   Query 20200228_021532_00005_s4zi7 failed: Column (name: id, index: 3) is of type int64 but was requested as a type [Type: decimal]

   5.3 version of 330   --failed
   Query 20200228_021532_00005_s4zi7 failed: Column (name: id, index: 3) is of type int64 but was requested as a type [Type: decimal]
Collapse

Other test:
1.create table
description
--The only differences between test1 and test3 are the type of total_fee. In test1 total_fee is decimal, In test3 total_fee is bigint(The same type with id and its index is just behind id)
CREATE TABLE kudu.test.test1 (
   finishedtime timestamp WITH ( primary_key = true ),
   uid bigint WITH ( primary_key = true ),
   order_no varchar WITH ( primary_key = true ),
   id bigint WITH ( nullable = true ),
   total_fee decimal(10,2) WITH ( nullable = true ),
   verifytime timestamp WITH ( nullable = true ),
   reg_time timestamp WITH ( nullable = true )
)
WITH (
   number_of_replicas = 1,
   partition_by_hash_buckets = 3,
   partition_by_hash_columns = ARRAY['uid'],
   partition_by_range_columns = ARRAY['finishedtime'],
   range_partitions = '[{"lower":"2018-01-01T00:00:00.000Z","upper":"2021-01-01T00:00:00.000Z"}]'
)

CREATE TABLE kudu.test.test2 (
   order_no varchar WITH ( primary_key = true ),
   verifytime timestamp WITH ( primary_key = true )
)
WITH (
   number_of_replicas = 1,
   partition_by_hash_buckets = 3,
   partition_by_hash_columns = ARRAY['order_no'],
   partition_by_range_columns = ARRAY['verifytime'],
   range_partitions = '[{"lower":"2018-01-01T00:00:00.000Z","upper":"2021-01-01T00:00:00.000Z"}]'
)

CREATE TABLE kudu.test.test3(
   finishedtime timestamp WITH ( primary_key = true ),
   uid bigint WITH ( primary_key = true ),
   order_no varchar WITH ( primary_key = true ),
   id bigint WITH ( nullable = true ),
   total_fee bigint WITH ( nullable = true ),
   verifytime timestamp WITH ( nullable = true ),
   reg_time timestamp WITH ( nullable = true )
)
WITH (
   number_of_replicas = 1,
   partition_by_hash_buckets = 3,
   partition_by_hash_columns = ARRAY['uid'],
   partition_by_range_columns = ARRAY['finishedtime'],
   range_partitions = '[{"lower":"2018-01-01T00:00:00.000Z","upper":"2021-01-01T00:00:00.000Z"}]'
)

2.insert test data
description
--The only differences between test1 and test3 are the data of total_fee.
insert into kudu.test.test1 values (timestamp '2020-02-25 08:00:01',1,'a1',1,125.2,timestamp '2020-02-25 08:20:00',timestamp '2020-02-20 08:00:00');
insert into kudu.test.test1 values (timestamp '2020-02-25 08:05:42',2,'a2',2,180.2,timestamp '2020-02-25 08:23:00',timestamp '2020-02-20 09:00:00');
insert into kudu.test.test1 values (timestamp '2020-02-25 08:12:33',3,'a3',3,550.2,timestamp '2020-02-25 08:32:00',timestamp '2020-02-20 10:00:00');
insert into kudu.test.test1 values (timestamp '2020-02-25 08:22:55',4,'b1',4,150.2,timestamp '2020-02-25 08:41:00',timestamp '2020-02-20 11:00:00');
insert into kudu.test.test1 values (timestamp '2020-02-25 08:31:12',5,'b2',5,120.2,timestamp '2020-02-25 08:49:00',timestamp '2020-02-20 12:00:00');

insert into kudu.test.test2 values ('a1',timestamp '2020-02-25 08:01:12');
insert into kudu.test.test2 values ('a2',timestamp '2020-02-25 08:21:22');
insert into kudu.test.test2 values ('b6',timestamp '2020-02-25 08:32:32');
insert into kudu.test.test2 values ('b7',timestamp '2020-02-25 08:33:12');
insert into kudu.test.test2 values ('c8',timestamp '2020-02-25 08:34:11');

insert into kudu.test.test3 values (timestamp '2020-02-25 08:00:01',1,'a1',1,125,timestamp '2020-02-25 08:20:00',timestamp '2020-02-20 08:00:00');
insert into kudu.test.test3 values (timestamp '2020-02-25 08:05:42',2,'a2',2,180,timestamp '2020-02-25 08:23:00',timestamp '2020-02-20 09:00:00');
insert into kudu.test.test3 values (timestamp '2020-02-25 08:12:33',3,'a3',3,550,timestamp '2020-02-25 08:32:00',timestamp '2020-02-20 10:00:00');
insert into kudu.test.test3 values (timestamp '2020-02-25 08:22:55',4,'b1',4,150,timestamp '2020-02-25 08:41:00',timestamp '2020-02-20 11:00:00');
insert into kudu.test.test3 values (timestamp '2020-02-25 08:31:12',5,'b2',5,120,timestamp '2020-02-25 08:49:00',timestamp '2020-02-20 12:00:00');

4.to do test
description
--The only difference between sql_1 and sql_2 is the table.

sql_1    test1 and test2
select uid,order_no,total_fee as total_fee1,total_fee as total_fee2,finishedtime as finishedtime1,finishedtime as finishedtime2,date_diff('day',reg_time,finishedtime)+1 as day_dif,reg_time
from kudu.test.test1
where finishedtime > timestamp '2020-02-25 08:00:00' and finishedtime <= timestamp '2020-02-25 08:20:00'
and order_no not in
(select order_no
from kudu.test.test2
where verifytime > timestamp '2020-02-25 08:00:00' and verifytime <= timestamp '2020-02-25 08:20:00')  ;

sql_2  test3 and test2
select uid,order_no,total_fee as total_fee1,total_fee as total_fee2,finishedtime as finishedtime1,finishedtime as finishedtime2,date_diff('day',reg_time,finishedtime)+1 as day_dif,reg_time
from kudu.test.test3
where finishedtime > timestamp '2020-02-25 08:00:00' and finishedtime <= timestamp '2020-02-25 08:20:00'
and order_no not in
(select order_no
from kudu.test.test2
where verifytime > timestamp '2020-02-25 08:00:00' and verifytime <= timestamp '2020-02-25 08:20:00')  ;

5.result
 sql_1
   5.1.1 version of 322   -- only succeed and right

 uid | order_no | total_fee1 | total_fee2 |      finishedtime1      |      finishedtime2      | day_dif |        reg_time
-----+----------+------------+------------+-------------------------+-------------------------+---------+-------------------------
   2 | a2       |     180.20 |     180.20 | 2020-02-25 08:05:42.000 | 2020-02-25 08:05:42.000 |       5 | 2020-02-20 09:00:00.000
   3 | a3       |     550.20 |     550.20 | 2020-02-25 08:12:33.000 | 2020-02-25 08:12:33.000 |       5 | 2020-02-20 10:00:00.000

   5.1.2 version of 328   --failed
   Query 20200228_021532_00005_s4zi7 failed: Column (name: id, index: 3) is of type int64 but was requested as a type [Type: decimal]

   5.1.3 version of 330   --failed
   Query 20200228_021532_00005_s4zi7 failed: Column (name: id, index: 3) is of type int64 but was requested as a type [Type: decimal]

 sql_2
	All are succeed ---But, i think, The reason comes up

	5.2.1  result    version of 322     -- right result
 uid | order_no | total_fee1 | total_fee2 |      finishedtime1      |      finishedtime2      | day_dif |        reg_time
-----+----------+------------+------------+-------------------------+-------------------------+---------+-------------------------
   2 | a2       |        180 |        180 | 2020-02-25 08:05:42.000 | 2020-02-25 08:05:42.000 |       5 | 2020-02-20 09:00:00.000
   3 | a3       |        550 |        550 | 2020-02-25 08:12:33.000 | 2020-02-25 08:12:33.000 |       5 | 2020-02-20 10:00:00.000

	5.2.2 result    version of 328 and 330     -- wrong results
 uid | order_no | total_fee1 | total_fee2 |      finishedtime1      |      finishedtime2      | day_dif |        reg_time
-----+----------+------------+------------+-------------------------+-------------------------+---------+-------------------------
   2 | a2       |          2 |          2 | 2020-02-25 08:05:42.000 | 2020-02-25 08:05:42.000 |   18318 | 1970-01-01 08:00:00.000
   3 | a3       |          3 |          3 | 2020-02-25 08:12:33.000 | 2020-02-25 08:12:33.000 |   18318 | 1970-01-01 08:00:00.000

--conclusion
You can see the column of total_fee1, day_dif and reg_time in sql_2's result
I think the reason is the index that you have been used by mistake in #2253

Maybe I find something in the KuduRecordCursor class.
`
@Override
public boolean advanceNextPosition()
{
boolean needNextRows = !started || !nextRows.hasNext();
    if (!started) {
        started = true;
    }

    if (needNextRows) {
        currentRow = null;
        try {
            do {
                if (!scanner.hasMoreRows()) {
                    return false;
                }

                nextRows = scanner.nextRows();
            }
            while (!nextRows.hasNext());
            log.debug("Fetched " + nextRows.getNumRows() + " rows");
        }
        catch (KuduException e) {
            throw new RuntimeException(e);
        }
    }
    currentRow = nextRows.next();
    totalBytes += getRowLength();
    return `true;`
}`

The problem is about index and currentRow. I have been found these codes and i don't know this line: currentRow = nextRows.next();   Why you can use this row to match the index ，I am confused

Hi JellyMing, kokosing, Praveen2112,
I also reproduced this issue in 328. This issue seems not due to #2253, since the issue is not gone after revert the patch.
Compared to 323, I also notice one patch(#f9e1 Remove TableLayout API from Kudu Connector) remove tableLayout way in kudu connector and seems causing this issue. After revert it, the issue is gone.
Seems #f9e1 remove some deprecated function and replace tableLayout by connectorHandle, but may not handle or fill well some data like desiredColumns etc.
may investagating by checking this patch.

seems the issue easily happens in subclause case like:

seems the issue easily happens when has subQuery like:
select uid,order_no from kudu.t1.test1 where order_no not in ( select 'a2' a union select 'a3' a);

@wlichina111 You were right. When we moved to the new TableLayout API for kudu connector, the project pushdown - applyProject didn't capture the exact desired set of columns to be scanned for queries involving ApplyNode and CorrelatedJoinNode so I guess it was failing for you. These are being resolved in #2843 and #2654. The latter was merged recently to the master branch so can you test it with the latest and let us know if it still fails.

@Praveen2112 Thanks Praveen,seems the issue is gone with latest. @JellyMing FYI

Thank you @Praveen2112 on working on this.


switch-to-configuration-ng: remove recursive exec

Description of changes
In order to reload user systemd units and the user session manager itself, switch-to-configuration needs to be able to connect to the user's DBus bus and interact with the systemd session manager from there. This requires setting the effective UID of the process to the UID of the user we are concerned with. We were accomplishing this by just exec'ing /proc/self/exe with the UID set to the right value, but we can instead use seteuid(2) and connect to the user's DBus socket and go from there. This flattens the process tree of switch-to-configuration and prevents the bugs that come with spawning new processes.

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

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

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

@ofborg test switchTestNg user-activation user-activation-scripts

@ofborg test switchTestNg user-activation-scripts


SemanticdbReporter should set its own Xmaxwarns

This pull request goal is make semanticbreporter store all diagnostics, without depending of -xmaxWarn set by the user in his build. Moreover, this pull request fix a bug, where in previous versions between 2.12 and 2.13.0, only 100 diagnotics could be stored.

in previous version in 2.12 up to 2.13.0, we set new settings() for semanticdbRepoter
which have a Xmaxwarns to default value (100 max warnings), which implies that the reporter wont report more than 100 diagnostics
in 2.13.1+, by overloading def filter we keep the same the same setting Xmaxwarns set by the user.
This setting is supposed to modify the number of warning printed, but should not modify the number of
warning stored in semanticdb file.

Running the test against main in 2.12.14 shows that the number of diagnostic is only 97 (I was expecting 100, but still it's what I wanted to show)
==> X scala.meta.tests.semanticdb.ExpectSuite.metac.expect  0.668s munit.ComparisonFailException: /Users/meriamlachkar/scalacenter/scalameta/tests/jvm/src/test/scala-2.12/scala/meta/tests/semanticdb/ExpectSuite.scala:51
50:      }
51:      this.assertNoDiff(loadObtained, expectedCompat)
52:    }
diff assertion failed
=> Diff (- obtained, + expected)
 Language => Scala
-Diagnostics => 97 entries
+Diagnostics => 101 entries


rank5 fallback and clean up imports

Use a ChainMap to fallback to rank 5 operators when disable_coreml_rank5_mapping=True
Remove unused imports

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Chris Seymour seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Feat/453: Onboard SPAR

onboard spar, create spar oidc client in terraform
add spar application, application client for all env, spar admin role for all env, and two testing roles "user_write" and "user_read" (got from SPAR team) for all env in db
update flyway infrastructure to pass cognito spar client id

Hi @ConradBoydElliottGustafson, the flyway test failed for auth function, I wonder if we should put some placeholder for the spar client id in both pipeline and docker compose file as for fom? are those random numbers?

For the sql script to do insert, better to add ("on conflict (application_name, etc...") do nothing) for later easier fixing migration

When create the new version of the flyway script, be careful about what's the current version is, and if main branch has another version, be careful!!


chore(cli): document compatibility to be Kong 3.x

fixes https://github.com/Kong/go-apiops/issues/98

Codecov Report
Attention: 4 lines in your changes are missing coverage. Please review.

Comparison is base (1b8317a) 33.58% compared to head (f51c16b) 33.57%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1055      +/-   ##
==========================================
- Coverage   33.58%   33.57%   -0.01%
==========================================
  Files         101      101
  Lines       12430    12433       +3
==========================================
  Hits         4175     4175
- Misses       7848     7851       +3
  Partials      407      407

Files
Coverage Δ

cmd/file_openapi2kong.go
0.00% <0.00%> (ø)

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


Always log to file

This adds two small changes:

Always log to the log file.
Add a new command (really a simple wrapper) to get all logs for a particular process

@iffyuva can we merge this? The ability to always log to the file is kinda important, it helps if user is trying to view log file after the fact.

Can you update docs. I will try this out tomm, and let you know. Thanks.

Tried this out locally, working fine.


Adding INCLUDE and LIBRARIES to catkin_package

Adding INCLUDE and LIBRARIES to CMakeLists.txt for the project to be correctly used from other rosbag packages.

Thanks!


Randomly quitting on me

Dan,
Every once in awhile, I'll save a file and not see the growl notification. I switch back to my terminal and see
17:25:44 - info: Local has no changes or remote in sync; no need for push/send.

/Users/aj.siegel/Downloads/filesync-master/app/src/file-record.js:128
            callback(true);
            ^
TypeError: undefined is not a function
    at method._saveMeta (/Users/aj.siegel/Downloads/filesync-master/app/src/file-record.js:128:13)
    at /Users/aj.siegel/Downloads/filesync-master/app/node_modules/fs-extra/node_modules/graceful-fs/graceful-fs.js:102:5
    at Object.oncomplete (evalmachine.<anonymous>:297:15)

Not sure what my be causing this, what other info can I provide you?
I am running CodeKit in the background handling minification, sass->css.
Thanks

Thanks for finding this. You found a minor issue in sync case no. 1 (remote instance version changed to match local file version).
I added a callback so it should be fixed with the next push to the repo.


Provide Cluster size guidance (cpu / mem / external load balancers)

hackathon feedback:
If you’re using GKE, use at least 4 vCPUs (15 GB mem)
In the troubleshooting guide consider what happens

When enough CPU / MEM is not available.
When external load balancers cannot be allocated

https://istio.io/docs/samples/bookinfo.html#before-you-begin
(now) has "If you use GKE, please ensure your cluster has at least 4 standard GKE nodes."
We could add to troubleshooting though (reopen if you feel it's needed)


Remove v4 documentation

Let's use this PR as the main one since it was created first. Here's a basic list of changes I think we should make:

[ ] Add "closes https://github.com/airbrake/airbrake-docs/issues/66" to the original description of this PR. That will tell GitHub to automatically close that issue when this PR is merged and it helps reviewers know what the purpose of this PR is.
[ ] Remove v4 section in this doc: https://github.com/airbrake/airbrake-docs/blob/v4-remove/jekyll/_docs/ruby/development-error-tracking.md
[ ] Remove this doc: https://github.com/airbrake/airbrake-docs/blob/v4-remove/jekyll/_docs/ruby/enable-ssl.md
[ ] Remove this doc: https://github.com/airbrake/airbrake-docs/blob/v4-remove/jekyll/_docs/troubleshooting-2/ssl-certificate-error.md
[ ] Remove the v4 section from this doc: https://github.com/airbrake/airbrake-docs/blob/v4-remove/jekyll/_docs/ruby/proxy-support.md
[ ] Remove this doc: https://github.com/airbrake/airbrake-docs/blob/v4-remove/jekyll/_docs/ruby/command-line-tool.md
[ ] Remove this doc: https://github.com/airbrake/airbrake-docs/blob/v4-remove/jekyll/_docs/troubleshooting-2/notifier-troubleshooting.md

I already changed the branch to remove-v4 for all of the links to files so you don't have to. Just go ahead and make the change you want. Just to be sure, you can see your current branch here:

When you make a change to a doc, commit those changes to the v4-remove branch by using this option:

After you make all the changes you want to make, let us know it's ready to be reviewed by adding a comment here saying "PTAL". Since this has to do with our gem, we should probably have Kyrylo review it as well before it's merged into master.

Hey @stuartmoore1023 you probably already know this bit but here's a tip just in case. You can edit the PR's original description by clicking the pencil icon:


feat: add the new nes-cursor class

Description
This PR will add an easy way to access the custom cursor that this library uses by adding a nes-pointer class
Compatibility
It only adds a new class, so it should be fully compatible
Caveats
I added some new sccs files based on the suggested path found in issue #339

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Windows most specs are blank

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
Used this to test the package
si.cpu()
.then(data => console.log(data))
.catch(error => console.error(error));
Current Output
If applicable, add output to help explain your problem.
{
  manufacturer: '',
  brand: '',
  vendor: '',
  family: '',
  model: '',
  stepping: '',
  revision: '',
  voltage: '',
  speed: NaN,
  speedMin: NaN,
  speedMax: NaN,
  governor: '',
  cores: 20,
  physicalCores: 20,
  performanceCores: 20,
  efficiencyCores: 0,
  processors: 1,
  socket: '',
  flags: 'de pse mce sep mtrr mca cmov psn clfsh ds mmx fxsr sse sse2 ss htt tm ia64 pbe',
  virtualization: true,
  cache: { l1d: 0, l1i: 0, l2: 0, l3: 0 }
}

Expected behavior
A clear and concise description of what you expected to happen.
I would expect the specs to be filled in properly so I can use this on a project.
Environment (please complete the following information):

systeminformation package version: 5.21.17
OS: [e.g. macOS] Windows 11
Hardware [e.g. MacBook Pro 13] I7-12700F - RTX 3070

To get all needed environment information, please run the following command:
  npx systeminformation info

Operating System:
──────────────────────────────────────────────────────────────────────────────────────────
Platform         : Windows
Distro           :
Release          : 10.0.22631
Codename         :
Kernel           : 10.0.22631
Arch             : x64
Hostname         : DESKTOP-41ERLGH
Codepage         : 437
Build            :
Hypervisor       : true
RemoteSession    :

System:
──────────────────────────────────────────────────────────────────────────────────────────
Manufacturer     :
Model            :
Version          :
Virtual          :

CPU:
──────────────────────────────────────────────────────────────────────────────────────────
Manufacturer     :
Brand            :
Family           :
Model            :
Stepping         :
Speed            :
Cores            : 20
PhysicalCores    : 20
PerformanceCores : 20
EfficiencyCores  :
Processors       : 1
Socket           :

Additional context
Add any other context about the problem here.

@thororen1234 ok, this is strange ...
Can you run the following commands  In Powershell:
Get-CimInstance Win32_processor | select Name, Revision, L2CacheSize, L3CacheSize, Manufacturer, MaxClockSpeed, Description, UpgradeMethod, Caption, NumberOfLogicalProcessors, NumberOfCores | fl
Get-CimInstance Win32_CacheMemory | select CacheType,InstalledSize,Level | fl
(Get-CimInstance Win32_ComputerSystem).HypervisorPresent

and post results as text here? Thank you in advance!

@sebhildebrandt
1
Name                      : 12th Gen Intel(R) Core(TM) i7-12700F
Revision                  :
L2CacheSize               : 12288
L3CacheSize               : 25600
Manufacturer              : GenuineIntel
MaxClockSpeed             : 2100
Description               : Intel64 Family 6 Model 151 Stepping 2
UpgradeMethod             : 1
Caption                   : Intel64 Family 6 Model 151 Stepping 2
NumberOfLogicalProcessors : 20
NumberOfCores             : 12

2
CacheType     : 4
InstalledSize : 384
Level         : 3

CacheType     : 3
InstalledSize : 256
Level         : 3

CacheType     : 5
InstalledSize : 10240
Level         : 4

CacheType     : 5
InstalledSize : 25600
Level         : 5

CacheType     : 4
InstalledSize : 128
Level         : 3

CacheType     : 3
InstalledSize : 256
Level         : 3

CacheType     : 5
InstalledSize : 2048
Level         : 4

CacheType     : 5
InstalledSize : 25600
Level         : 5

3
True

@thororen1234 this is interesting again, so all data seems to be there and we need to find out where it stops within the systeminformation code base. Would it be possible for you to go into the node_modules/systeminformation/lib folder and edit the code to add some console.logs
From line 879 ff ... can you add:
            Promise.all(
              workload
            ).then((data) => {
              console.log(data[0]);
              console.log(data[1]);
              console.log(data[2]);
              let lines = data[0].split('\r\n');

Then run you original code
si.cpu()
   .then(data => console.log(data))
   .catch(error => console.error(error));

@sebhildebrandt
your console log

True

{
  manufacturer: '',
  brand: '',
  vendor: '',
  family: '',
  model: '',
  stepping: '',
  revision: '',
  voltage: '',
  speed: NaN,
  speedMin: NaN,
  speedMax: NaN,
  governor: '',
  cores: 20,
  physicalCores: 20,
  performanceCores: 20,
  efficiencyCores: 0,
  processors: 1,
  socket: '',
  flags: 'de pse mce sep mtrr mca cmov psn clfsh ds mmx fxsr sse sse2 ss htt tm ia64 pbe',
  virtualization: true,
  cache: { l1d: 0, l1i: 0, l2: 0, l3: 0 }
}

mine
[
  '\r\n\r\n\r\n\r\n\r\n',
  '\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n',
  'True\r\n'
]
{
  manufacturer: '',
  brand: '',
  vendor: '',
  family: '',
  model: '',
  stepping: '',
  revision: '',
  voltage: '',
  speed: NaN,
  speedMin: NaN,
  speedMax: NaN,
  governor: '',
  cores: 20,
  physicalCores: 20,
  performanceCores: 20,
  efficiencyCores: 0,
  processors: 1,
  socket: '',
  flags: 'de pse mce sep mtrr mca cmov psn clfsh ds mmx fxsr sse sse2 ss htt tm ia64 pbe',
  virtualization: true,
  cache: { l1d: 0, l1i: 0, l2: 0, l3: 0 }
}

by the way ram and such doesn't load either

@thororen1234 so it seems that from inside node.js the first two commands did not returned anything ...
And having a look at your first post ... si.system() and si.cpu() did not returned values, si.osInfo() at least returned some values ... I need to check it again tomorrow on my machines ... but I am sure, I cannot reproduce this...

@sebhildebrandt switched it to powershell 7 and now I have some stuff
3: True

2:
CacheType     : 4
InstalledSize : 384
Level         : 3

CacheType     : 3
InstalledSize : 256
Level         : 3

CacheType     : 5
InstalledSize : 10240
Level         : 4

CacheType     : 5
InstalledSize : 25600
Level         : 5

CacheType     : 4
InstalledSize : 128
Level         : 3

CacheType     : 3
InstalledSize : 256
Level         : 3

CacheType     : 5
InstalledSize : 2048
Level         : 4

CacheType     : 5
InstalledSize : 25600
Level         : 5

1:
Name                      : 12th Gen Intel(R) Core(TM) i7-12700F
Revision                  :
L2CacheSize               : 12288
L3CacheSize               : 25600
Manufacturer              : GenuineIntel
MaxClockSpeed             : 2100
Description               : Intel64 Family 6 Model 151 Stepping 2
UpgradeMethod             : 1
Caption                   : Intel64 Family 6 Model 151 Stepping 2
NumberOfLogicalProcessors : 20
NumberOfCores             : 12

[
  '\r\n' +
    '\x1B[32;1mName                      : \x1B[0m12th Gen Intel(R) Core(TM) i7-12700F\r\n' +
    '\x1B[32;1mRevision                  : \x1B[0m\r\n' +
    '\x1B[32;1mL2CacheSize               : \x1B[0m12288\r\n' +
    '\x1B[32;1mL3CacheSize               : \x1B[0m25600\r\n' +
    '\x1B[32;1mManufacturer              : \x1B[0mGenuineIntel\r\n' +
    '\x1B[32;1mMaxClockSpeed             : \x1B[0m2100\r\n' +
    '\x1B[32;1mDescription               : \x1B[0mIntel64 Family 6 Model 151 Stepping 2\r\n' +
    '\x1B[32;1mUpgradeMethod             : \x1B[0m1\r\n' +
    '\x1B[32;1mCaption                   : \x1B[0mIntel64 Family 6 Model 151 Stepping 2\r\n' +
    '\x1B[32;1mNumberOfLogicalProcessors : \x1B[0m20\r\n' +
    '\x1B[32;1mNumberOfCores             : \x1B[0m12\r\n' +
    '\r\n',
  '\r\n' +
    '\x1B[32;1mCacheType     : \x1B[0m4\r\n' +
    '\x1B[32;1mInstalledSize : \x1B[0m384\r\n' +
    '\x1B[32;1mLevel         : \x1B[0m3\r\n' +
    '\r\n' +
    '\x1B[32;1mCacheType     : \x1B[0m3\r\n' +
    '\x1B[32;1mInstalledSize : \x1B[0m256\r\n' +
    '\x1B[32;1mLevel         : \x1B[0m3\r\n' +
    '\r\n' +
    '\x1B[32;1mCacheType     : \x1B[0m5\r\n' +
    '\x1B[32;1mInstalledSize : \x1B[0m10240\r\n' +
    '\x1B[32;1mLevel         : \x1B[0m4\r\n' +
    '\r\n' +
    '\x1B[32;1mCacheType     : \x1B[0m5\r\n' +
    '\x1B[32;1mInstalledSize : \x1B[0m25600\r\n' +
    '\x1B[32;1mLevel         : \x1B[0m5\r\n' +
    '\r\n' +
    '\x1B[32;1mCacheType     : \x1B[0m4\r\n' +
    '\x1B[32;1mInstalledSize : \x1B[0m128\r\n' +
    '\x1B[32;1mLevel         : \x1B[0m3\r\n' +
    '\r\n' +
    '\x1B[32;1mCacheType     : \x1B[0m3\r\n' +
    '\x1B[32;1mInstalledSize : \x1B[0m256\r\n' +
    '\x1B[32;1mLevel         : \x1B[0m3\r\n' +
    '\r\n' +
    '\x1B[32;1mCacheType     : \x1B[0m5\r\n' +
    '\x1B[32;1mInstalledSize : \x1B[0m2048\r\n' +
    '\x1B[32;1mLevel         : \x1B[0m4\r\n' +
    '\r\n' +
    '\x1B[32;1mCacheType     : \x1B[0m5\r\n' +
    '\x1B[32;1mInstalledSize : \x1B[0m25600\r\n' +
    '\x1B[32;1mLevel         : \x1B[0m5\r\n' +
    '\r\n',
  'True\r\n'
]

@thororen1234

what powershell version you used before?
can you also post new output of si.cpu()?

I was using 5.1.22621.2506 and the output is still blank but I have noticed that \x1B[32;1mName works to get the name but Name or name wont work

@sebhildebrandt still not fixed but I did get it all done manually with lines of code.

I still don't understand why the console.log has the values but the actual specs are blank for yours

to get anything to work I had to do let lines = data[0].replace('\x1B[0m', ').replaceAll('\x1B[0m', '').split('\r\n' + '\x1B[32;1m');
the first replace just for Name: and then replaceall for the rest

@thororen1234 ... two questions:

what line did you change?
what is this for a character \x1B[0m?
As I cannot see this on my machine, I need to understand where this char comes from

@sebhildebrandt
1: 886
2: THIS \x1B[0m THIS 12th Gen Intel(R) Core(TM) i7-12700F

@thororen1234 ... so did you enabled some kind of color coding for your console?
I am sure, this is where this comes from but this seems to be unique to your environment.

To my knowledge I didn't but ill look into it right now

@sebhildebrandt cant find anything to do with color coding on my powershell

@thororen1234 ... can you try the following on a fresh cloned systeminfo repo
in lib/utils.js can you replace the function powershell() (line 424ff) with
function powerShell(cmd) {

  const pattern = [
    '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)',
    '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))'
  ].join('|');

  if (_psPersistent) {
    const id = Math.random().toString(36).substring(2, 12);
    return new Promise((resolve) => {
      process.nextTick(() => {
        function callback(data) {
          resolve(data);
        }
        _psCmds.push({
          id,
          cmd,
          callback,
          start: new Date()
        });
        try {
          if (_psChild && _psChild.pid) {
            _psChild.stdin.write(_psToUTF8 + 'echo ' + _psCmdStart + id + _psIdSeperator + '; ' + os.EOL + cmd + os.EOL + 'echo ' + _psCmdSeperator + os.EOL);
          }
        } catch (e) {
          resolve('');
        }
      });
    });

  } else {
    let result = '';

    return new Promise((resolve) => {
      process.nextTick(() => {
        try {
          const child = spawn('powershell.exe', ['-NoProfile', '-NoLogo', '-InputFormat', 'Text', '-NoExit', '-ExecutionPolicy', 'Unrestricted', '-Command', '-'], {
            stdio: 'pipe',
            windowsHide: true,
            maxBuffer: 1024 * 20000,
            encoding: 'UTF-8',
            env: util._extend({}, process.env, { LANG: 'en_US.UTF-8' })
          });

          if (child && !child.pid) {
            child.on('error', function () {
              resolve(result);
            });
          }
          if (child && child.pid) {
            child.stdout.on('data', function (data) {
              result = result + data.toString('utf8').replace(pattern, '');
            });
            child.stderr.on('data', function () {
              child.kill();
              resolve(result);
            });
            child.on('close', function () {
              child.kill();

              resolve(result);
            });
            child.on('error', function () {
              child.kill();
              resolve(result);
            });
            try {
              child.stdin.write(_psToUTF8 + cmd + os.EOL);
              child.stdin.write('exit' + os.EOL);
              child.stdin.end();
            } catch (e) {
              child.kill();
              resolve(result);
            }
          } else {
            resolve(result);
          }
        } catch (e) {
          resolve(result);
        }
      });
    });
  }
}

This should remove all ansi color coding ... and then all should work also on your side.
If you then start
npm run test

and go through all functions (c for cpu, ...) does this give back proper results??
If this really works, I need to find out WHY we have color codings now...

@sebhildebrandt nothing is returned correctly besides what was correct before

@thororen1234 all really strange ... need to get deeper into in the next days on my machines ... Will contact you again, if I habe any idea.

sounds good thanks

Any news @sebhildebrandt?

Seems to be fixed apparently the layout of all things broke it the window size was 1x1 and its position was 5000ish its good now though.


Issue colors doesn't work in Redmine 3.x

Unless I'm missing a setting somewhere, I don't see the issue colors (shades of red, blue, white) on an issue list in Redmine 3.x.
Thanks for your work on this wonderful theme!

I haven't got my eyes on Redmine 3 yet, so it's possible there's some breaking change, i.e. some classes were removed or modified.
I'm willing to make the theme fully compatible with versions 2.5-3, so stay tuned!

Finally got time to set up Redmine 3 and everything seems to be working just fine.
@kostajh these colors depend on:

priority - this changes the background, by default the lowest priority is green, default is grey, higher is blue, then light red and slightly darker red;
issue's type - this affects the color of a link with the issue number.

Take a look at this:
The background correlates with values Wishlist/Minor/Major/Critical/Blocker and link with the type - red for bugs, purple for tasks etc.
So if it's not working you had recompiled the theme with variables $color-priorities and/or $color-trackers set to false.

yes, you are totally right! Sorry for the incorrect report @mrliptontea

Sorry but I do not know how to apply the colors to the types of issues. Currently I have 38 different types, and only 1 and I do not know how or because it has different color to the rest.
Although my query is very basic, I would appreciate your help.
Greetings.
Diego

@dsgonzalezo I'll try to help.
First, you need to find what id each type of issue (Redmine calls them trackers) have.
As an admin, go to Administration → Trackers or to /trackers URI. There you can get each id from tracker's URL, e.g. /trackers/1/edit is id = 1. Write them down.
Next, follow the How to customize it guide in order to create and include the _custom-variables.scss file.
Basically, in your _custom-variables.scss file, you need to define colors for your custom trackers in $tracker-custom-colors-map variable.
For example, assuming your have trackers with ids 8, 9, and 10, like this:
$tracker-custom-colors-map: (
  8: (
    background: #ad1457,
    color:      #fff
  ),
  9: (
    background: #00695c,
    color:      #fff
  ),
  10: (
    background: #f9a825,
    color:      #fff
  ),
);

Lastly, run grunt to recompile CSS and reload the page.
Hope this helps.

@mrliptontea thank you very much, it worked perfect!
I do not want to abuse your kindness, but I would like one more query regarding the themes, the project view of the last version, these are presented in column form. My problem is because I have about 10 main and up to 100 subprojects and this view complicates me, I prefer the previous one, how do I keep the previous view?
Thank you very much.
Diego

@mrliptontea ah I forgot, the theme of the company logo, how do I add it? is too much and does not correspond to the original issue, sorry.

@dsgonzalezo Re: logo - see here https://github.com/mrliptontea/PurpleMine2/issues/11#issuecomment-96417752
Re: project view - if I understand you correctly, you want to set $use-project-tiles: false; in your custom variables file.
😉

I am impressed, not only by your work, but by your generosity and predisposition to help.
At the moment you have solved all my inconveniences.
But there is always something more, someone always comes up with one more, is there a possibility to add a link to http: // redmine / issues in the top_menu?
Thank you very much
regards
Diego

@dsgonzalezo Thank for your kind words 😊
As for the possibility to add links to the top menu - this would be way out of scope what theme should do. I'm sure there are plugins that allow just that.

Thank you very much, you have been very useful.
Nice to meet you.
Greetings.

One more question
What happens now is that, I have to update my browser with Ctrl + F5 (Deleting the cache) to be able to visualize the change in the theme. Is there any way to make it automatic? It happens that I have more than 30 users that I should ask and verify that they have performed the correct steps to display what corresponds.
Thank you very much

@dsgonzalezo Unfortunately that's something that Redmine manages. Restarting server, however, will cause it to regenerate cache-busting timestamp, which makes sense because typically assets only change when you update themes or plugins.
So when you're happy with your changes and what to make sure all users will see them, simply run sudo service apache2 restart or whatever's appropriate in your case.

Good afternoon, here again.
I need the color of the source of a field to vary according to the content. could do it?
Eg: if the content is "RED" the color of the room must be red, the same with green, yellow or black.
Thank you very much.


merge package from arlac77/npm-package-template

.travis.yml

chore(travis): add node versions -10
chore(travis): remove<EMAIL_ADDRESS>from notifications.email

Codecov Report

Merging #361 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #361   +/-   ##
=======================================
  Coverage   85.04%   85.04%
=======================================
  Files           1        1
  Lines         214      214
=======================================
  Hits          182      182
  Misses         32       32

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 a865400...48817b3. Read the comment docs.

Coverage remained the same at 85.654% when pulling 48817b32d6c9b69dd143011136bcef21609d47f9 on template-sync-1 into a865400d6a5793642dfdd243c475621d7e362c88 on master.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Lorem Ipsum always generates the same string

Seems like it should generate random Lorem Ipsum strings? Can't use it for anything that requires unique text.

Well, that's kind of the idea behind Lorem Ipsum. However, we did think of this case and it will take a :random option as well (https://github.com/sevenwire/forgery/blob/master/lib/forgery/forgery/lorem_ipsum.rb#L101). Did you try that?

Yes, discovered that just a short while ago. I did find that when I generate 100 lines with 8-16 words as the 'n' value, I only get around 94 unique strings. I guess what I need is beyond the scope of this project, which is fine.


Conflict with project.nvim

First of all, thanks for developing this plugin.
I ran into an issue with this plugin when combined with project.nvim. Project.nvim uses the "BufEnter" event, which runs after the "BufReadPost" event, which is what dotenv.nvim currently uses. Because of this, dotenv.nvim is not able to know about a directory change that project.nvim performs with the "BufEnter" event.
I got around this by telling dotenv.nvim to not automatically load the .env file (which just disables the registering of the builtin autocmd) and instead defined my own autocmd but used the "BufEnter" event. This seems to allow dotenv.nvim to be aware of project.nvim's directory switching.
Because I have a workaround, I don't necessarily need the plugin to change. However, I wanted to bring this to your attention as others may encounter this.

--- current dotenv.nvim code
if dotenv.config.enable_on_load then
    local group = vim.api.nvim_create_augroup("Dotenv", { clear = true })
    vim.api.nvim_create_autocmd("BufReadPost", { group = group, pattern = "*", callback = dotenv.autocmd })
  end

Here is my workaround:
--- disable enable_on_load
        require('dotenv').setup({
          enable_on_load = false, -- will load your .env file upon loading a buffer
          verbose = true,         -- show error notification if .env file is not found and if .env is loaded
        }

-- custom autocmd with 'BufEnter' event
local group = vim.api.nvim_create_augroup("Dotenv", { clear = true })
vim.api.nvim_create_autocmd("BufEnter",
  { group = group, pattern = "*", callback = require("dotenv").autocmd })

The workaound works.

#5 probably fix this too, will work on getting it merged soon


Explore alternative fitting procedure for SPEI

Generic Issue
Currently, SPEI relies on an offset to shift the water budget to positive values for zero-bounded statistical distributions. The offset was currently hardcoded as in the monocongo/climate_indices library : 1mm/d.
This can be insufficient, as seen in #1474 where a greater shift was needed.
There was already some plan to let this offset parameter available to user as an argument in SPEI function #1311.
scipy has a parameter loc that could be used to remove the arbitrariness of the offset used. However, if a certain loc is computed, I'm not sure how things will go (there might be NaNs in the final output SPEI) for a dataset with smaller (negative) values of the water budget outside of the calibration period.
The R library has a SPEI function, as far as I can tell, there is not an offset parameter in this case. I will explore alternative ways to get SPEI values
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Just to confirm: loc is indeed expected to generalize the support of the distribution from [0,∞] to [loc, ∞]
https://stackoverflow.com/questions/68948202/negative-observations-for-scipy-stats-gamma-fit

closing, this has been dealt with in #1720


Make It Faster

you can use something like this to make it faster https://github.com/phishontop/sockets-wrapper

Thanks for the suggestion! At the present time this runs as a background job every 24 hours so speed is not an important concern. That module looks interesting though. When it's more mature, please post benchmarks demonstrating the performance gain in docker-nuker and we'll consider it again :)


BUG/TST: linalg: Check the results of 'schur' more carefully.

The Schur decomposition is not unique, so testing the result
of linalg.schur against hard-coded matrices is not reliable.
The updated tests check that the desired properties of the
result are satisfied, and that the order of the diagonal
elements of the triangular matrix agrees with the given
'sort' parameter.
Closes gh-14517

The one test failure is not related to these changes.

Added the backport-candidate label because this is going to be failing on the 1.9.x branch as well now that it's triggered by the newest openblas version.

Indeed it is nice but we need those sorting options still tested  I am afraid. Any chance we can incorporate them again ?

@ilayn, the sort parameter is still tested.  The order of the elements on the diagonal of the triangular matrix will be different for each sort parameter, and this is checked in the updated tests.

Ah they are now in the pytest parametrization sorry for the noise. Thanks


On Update / Delete set to Restrict on FKs

Need to confirm this is the desired behavior.

This is similar to "NO ACTION" in MSSQL.


build Zashi/Keystone wallet switch + flow for Connect Hardware Wallet

BUILD ZASHI / KEYSTONE WALLET SWITCH:

add Zashi/Keystone wallet switch to the header and update the Settings and Show/Hide icons globally
upon tap on the switch, pop up a bottom sheet:

by default display the Zashi wallet, a promo offer button (leading to a buy URL), and a [Connect Hardware Wallet] button
when a user taps on the [Connect Hardware Wallet] button, they will enter the flow for adding the hardware wallet (specified below)
once a user has connected a Keystone Hardware Wallet, display the Zashi and Keystone wallet buttons, and allow the user to switch between the wallets
this global switch allows the user to:

see their wallet balance and transactions in a separated view
switch wallets to send transactions from
view the wallet Balances and shield its funds
see addresses of the wallet in the Receive tab

BUILD THE FLOW FOR CONNECTING HARDWARE WALLET:

a user taps on the button [Connect Hardware Wallet]
a user is navigated to the Connect Hardware Wallet screen

display the explanation and steps to connect
allow the user to navigate to a tutorial by tapping on the View Keystone Tutorial link

when a user taps on the [Continue] button, open Scan UI with instructions "Scan your Keystone wallet to connect" and the flashlight icon

if a user taps on the Cancel button, route them back to Connect Hardware Wallet screen

once a user scans a QR code displayed on their Keystone hardware wallet, they should be routed to the next screen to confirm the wallet they wish to connect

the button Unlock is disabled until a user checks the checkbox
if a user taps on the button Forget this device, abort the flow, and route them back to the home screen
once a user taps on the button Unlock, they should be routed back to the home screen and have Keystone selected in the wallet switch

Closing as finished as part of #1707


Component option parentSelect to prevent the expand/collapse when clicking text and prevent select when clicking arrow icon

Is there an available solution to this?
Btw @amsik , your plugin is good and has a potential to grow. :)
Thank you.
Cheers,
Reymark

Hi! Thank you for your comment. I will try to do it better :)
I did not fully understand your problem. Could you please show me the problem on JSFiddle? You can use this snippet: https://jsfiddle.net/amsik/ff1vyuug/. Add some changes and press Update button. Then give me a link.
Thanks!

Hi @amsik. Thank you for your quick response. :)
Based on your sample fiddle, I have two key points:

When I click the text "Item 2", it should not expand nor collapse its children.
The only way I could/should expand/collapse its children is by clicking the arrow keys

Because when I click the text "Item 2", my only intention is to select the item not expanding/collapsing it

Hope you understand it much better. :)
Thanks,
Reymark

Please try it out: https://jsfiddle.net/amsik/ff1vyuug/6/.
I've just added the options parentSelect: true

Alright looks pretty neat. Thanks! :)


How to wait for page rendered?

Hey,
how to check if pdf.js is currently rendering or finished rendering?
Im using the viewer example as a foundation. In my external code I zoom and want to wait for pdf.js finished rendering before executing more of my code.
Thanks for any answers!

You can listen for the pagerendered event. In general there is no way to know that the entire document is rendered because it may load incrementally (for example, based on range requests or in the viewer when you scroll a page into view).

Problem is that this is too general. It gets called a few times (for every page rendered?). But i don't know when the viewer is actually rendering. Perfect would be a flag var rendering:boolean that i can access.

@MickL. As it was said, the demo viewer never renders all pages (only visible) and re-renders some pages when zoom changes. Looks like you have to write specialized viewer that will render all pages, so you can run your code. See how to wait on page to be rendered with RenderTask.promise at https://github.com/mozilla/pdf.js/blob/master/examples/learning/prevnext.html

Sorry if it wasnt clear. I know it only renders the visible pages. But i need to know when it finished this rendering so i can continue. When "pagerendered" is called twice, how do i know the second is the final one? It would be perfect if there is some variable or event like "pdf js is currently working".

It hard to tell without seeing the example: 1) "pagerendered" could be called for different pages (e.g. after rendering page 2 then after page 1 -- they both are visible but page 2 had less content); 2) zoom/scale parameter changed e.g. due to window.resize; 3) bug in the viewer.

Is there any startrendering event?
I could catch every start and every end so i would know when there is no rendering active.

Also see if https://github.com/mozilla/pdf.js/blob/master/web/dom_events.js#L37 and https://github.com/mozilla/pdf.js/blob/8c5b9255471d7c2f472e477592fca4a50f2a5962/web/pdf_page_view.js#L433

To clearify: I just want to know if the pdf.js is currently rendering. If yes i would wait. If no I can continue.

There is renderingState for every page view, see https://github.com/mozilla/pdf.js/blob/8c5b9255471d7c2f472e477592fca4a50f2a5962/web/pdf_page_view.js#L96 . You can query state for every page view in the document?

Ok thanks this is kind of what i was looking for. It may not be a good idea to check every page when having a 200 page document. But the surrounding 2 may be fine.
It may look something like this:
if(PDFViewerApplication.pdfViewer._pages[currentPage] == 3) {
    // continue
} else {
   // setTimeout iteration
}

Not the best solution but i would work. A variable or promise from pdf.js saying "hey im currently doing some hard work" and "im currently doing nothing" would be more nicely :)

There is renderingState for every page view, see
https://github.com/mozilla/pdf.js/blob/8c5b9255471d7c2f472e477592fca4a50f2a5962/web/pdf_page_view.js#L96
. You can query state for every page view in the document?

There is renderingState for every page view, see
https://github.com/mozilla/pdf.js/blob/8c5b9255471d7c2f472e477592fca4a50f2a5962/web/pdf_page_view.js#L96
. You can query state for every page view in the document?

thanks for mentioning renderingStates property , it really solved the hurdle
var RenderingStates = {
  INITIAL: 0,
  RUNNING: 1,
  PAUSED: 2,
  FINISHED: 3
};

In this sample (https://github.com/mozilla/pdf.js/blob/master/examples/learning/prevnext.html), you can see that we have a promise that will run after the pdf is loaded:
  // Wait for rendering to finish
      renderTask.promise.then(function () {
        pageRendering = false;
        if (pageNumPending !== null) {
          // New page rendering is pending
          renderPage(pageNumPending);
          pageNumPending = null;
        }
      });


TrayPublisher: adds new editorial exchange package product

Changelog Description
This PR adds new editorial_pckg product which should contain OTIO file with .mov resources in same published folder. Idea is to easily publish whole folder containing OTIO and movie files via Traypublisher.
Result would be new otio representation of editorial_pckg product type.
There is a validator looking for all movie files (from otio clip.media_references.target_url) present in uploaded folder (by simple name, whole target_url doesn't need to match, just name.)
Additional info
Next step (in separate PR) would be to create loader consuming .otio file into Resolve etc.
Testing notes:

for conversion of resource files fill output definition ayon+settings://traypublisher/publish/ExtractEditorialPckgConversion?project=ayon_test (in similar fashion as ExtractReview)

3.upload whole folder containing .otio and .mov resource files

Can we keep the default settings the same as you are having in the screen shot image please?