Rewrite AtomicRangeInteger for higher performance

Please answer these questions before submitting pull request

Why submit this pull request?
[ ] Bug fix
[ ] New feature provided
[x] Improve performance

New feature or improvement

The function AtomicRangeInteger.getAndIncrement() rewrote perform higher performance in many threads scene
I have tested the function performance (in the unit test), which may has 5 - 10 times or more improve

The picture shows N threads with 100000 loop cost average for every thread (ms)

Hi @lkxiaolou , technicality speaking, what you provided is not a benchmark test. Please refer to #2838 and provide one to verify it

Learn jmh, and write benchmark test if you want to propose performance improvement.

thanks, I have provided

Hi @lkxiaolou , technicality speaking, what you provided is not a benchmark test. Please refer to #2838 and provide one to verify it

thanks, I have provided

@kezhenxu94 @ascrutae @IanCao @candyleer @zhaoyuguang  Review opinion?
I want to hear more from yours. This PR includes only several lines, but effects agent and OAP server. So, we need multiple check.

I have tested the function performance (in the unit test), which may has 5 - 10 times or more improve

@lkxiaolou Could you provide an official comment here. From benchmark, it improves a lot(surely), but not 5-10 times. Yes?

I notice that both the old and new versions don't work well in concurrent scenario, but the new version is more obviously to be discovered:
    int next;
    do {
      next = this.value.incrementAndGet(); // <-- here is the point, it always increment the `value`
      if (next > endValue && this.value.compareAndSet(next, startValue)) {
        return endValue;
      }
    } while (next > endValue);

in the case of org.apache.skywalking.apm.commons.datacarrier.buffer.Buffer, it may leave some "black holes" in the queue.
though the class AtomicRangeInteger is only used in org.apache.skywalking.apm.commons.datacarrier.buffer.Buffer, and it handles the null values carefully, once the AtomicRangeInteger is used in other more scenarios, it may be a bug somehow, I am not sure whether this is possible to happen.

Bellow is the test codes, which doesn't necessary always print 5000, sometimes are much less than 5000:

    @Test
    public void testConcurrency() throws InterruptedException {
        int count = 5000;
        final AtomicRangeInteger integer = new AtomicRangeInteger(0, count);
        final CountDownLatch latch = new CountDownLatch(1);
        final CountDownLatch mainLatch = new CountDownLatch(count);
        final Set<Integer> seen = new HashSet<Integer>();
        final ExecutorService executor = Executors.newCachedThreadPool();
        for (int i = 0; i < count; i++) {
            executor.submit(new Runnable() {
                @Override public void run() {
                    try {
                        latch.await();
                        int i = integer.getAndIncrement();
                        seen.add(i);
                        mainLatch.countDown();
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            });
        }
        latch.countDown();
        mainLatch.await();
        System.out.println("seen.size() = " + seen.size());
        executor.shutdown();
    }

though the class AtomicRangeInteger is only used in org.apache.skywalking.apm.commons.datacarrier.buffer.Buffer, and it handles the null values carefully, once the AtomicRangeInteger is used in other more scenarios, it may be a bug somehow, I am not sure whether this is possible to happen.

Yes. That is true, including your other words. This AtomicInteger is designed for DataCarrier queue specifically. Tradeoff increment strictly with higher performance, or higher in the new version.

@kezhenxu94
you should use a thread-safe set
final Set<Integer> seen = Collections.synchronizedSet(new HashSet<Integer>());

@kezhenxu94
you should use a thread-safe set
final Set<Integer> seen = Collections.synchronizedSet(new HashSet<Integer>());

uh ha, yes, sorry for my mistake

For the record, this OP improvement has 3x better than the existing one.
  /**
     * # JMH version: 1.21
     * # VM version: JDK 1.8.0_111, Java HotSpot(TM) 64-Bit Server VM, 25.111-b14
     * # VM invoker: /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/jre/bin/java
     * # VM options: -Dfile.encoding=UTF-8
     * # Warmup: 3 iterations, 10 s each
     * # Measurement: 5 iterations, 10 s each
     * # Timeout: 10 min per iteration
     * # Threads: 128 threads, ***WARNING: Synchronize iterations are disabled!***
     * # Benchmark mode: Throughput, ops/time
     * # Benchmark: org.apache.skywalking.apm.commons.datacarrier.common.AtomicRangeIntegerTest.testNewGetAndIncrementPerformance
     *
     * # Run progress: 0.00% complete, ETA 00:02:40
     * # Fork: 1 of 1
     * # Warmup Iteration   1: 41358475.014 ops/s
     * # Warmup Iteration   2: 40973232.064 ops/s
     * # Warmup Iteration   3: 41310422.853 ops/s
     * Iteration   1: 41557782.370 ops/s
     * Iteration   2: 42723032.686 ops/s
     * Iteration   3: 41957321.407 ops/s
     * Iteration   4: 40708422.580 ops/s
     * Iteration   5: 40424870.574 ops/s
     *
     *
     * Result "org.apache.skywalking.apm.commons.datacarrier.common.AtomicRangeIntegerTest.testNewGetAndIncrementPerformance":
     *   41474285.923 ±(99.9%) 3595500.827 ops/s [Average]
     *   (min, avg, max) = (40424870.574, 41474285.923, 42723032.686), stdev = 933740.147
     *   CI (99.9%): [37878785.096, 45069786.751] (assumes normal distribution)
     *
     *
     * # JMH version: 1.21
     * # VM version: JDK 1.8.0_111, Java HotSpot(TM) 64-Bit Server VM, 25.111-b14
     * # VM invoker: /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/jre/bin/java
     * # VM options: -Dfile.encoding=UTF-8
     * # Warmup: 3 iterations, 10 s each
     * # Measurement: 5 iterations, 10 s each
     * # Timeout: 10 min per iteration
     * # Threads: 128 threads, ***WARNING: Synchronize iterations are disabled!***
     * # Benchmark mode: Throughput, ops/time
     * # Benchmark: org.apache.skywalking.apm.commons.datacarrier.common.AtomicRangeIntegerTest.testOriGetAndIncrementPerformance
     *
     * # Run progress: 50.00% complete, ETA 00:01:25
     * # Fork: 1 of 1
     * # Warmup Iteration   1: 14169937.124 ops/s
     * # Warmup Iteration   2: 14087015.239 ops/s
     * # Warmup Iteration   3: 13955313.979 ops/s
     * Iteration   1: 13984516.590 ops/s
     * Iteration   2: 13913174.492 ops/s
     * Iteration   3: 13824113.805 ops/s
     * Iteration   4: 14886990.831 ops/s
     * Iteration   5: 14388283.816 ops/s
     *
     *
     * Result "org.apache.skywalking.apm.commons.datacarrier.common.AtomicRangeIntegerTest.testOriGetAndIncrementPerformance":
     *   14199415.907 ±(99.9%) 1697559.657 ops/s [Average]
     *   (min, avg, max) = (13824113.805, 14199415.907, 14886990.831), stdev = 440850.852
     *   CI (99.9%): [12501856.250, 15896975.564] (assumes normal distribution)
     *
     *
     * # Run complete. Total time: 00:02:51
     *
     * REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on
     * why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial
     * experiments, perform baseline and negative tests that provide experimental control, make sure
     * the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts.
     * Do not assume the numbers tell you what you want them to tell.
     *
     * Benchmark                                                  Mode  Cnt         Score         Error  Units
     * AtomicRangeIntegerTest.testNewGetAndIncrementPerformance  thrpt    5  41474285.923 ± 3595500.827  ops/s
     * AtomicRangeIntegerTest.testOriGetAndIncrementPerformance  thrpt    5  14199415.907 ± 1697559.657  ops/s
     */

@lkxiaolou For making merge safer, could you add a benchmark in multiple thread case? Let's formalize a result of that.
A case like, use 6 threads to get 10k+ from a 1000 size of range concurrently. Let's see the performance look like.

Is that means I should provide a benchmark with certain threads, buffer size, run times on the new implementation ? I had provided a benchmark with 128 threads, 100 buffer size, 5 x 10s run time

@lkxiaolou Please confirm, from the benchmark result, 3x improvement not 5+. Right?

@lkxiaolou Please confirm, from the benchmark result, 3x improvement not 5+. Right?

It depends on the buffer size and threads count, I make a test with 10000 buffer size and 1024 threads get 5+improvement.
Theoretically, the bigger buffer size and the more threads make the more improvement, at least 3x.
`# JMH version: 1.21
VM version: JDK 1.8.0_111, Java HotSpot(TM) 64-Bit Server VM, 25.111-b14
VM invoker: /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/jre/bin/java
VM options: -Dfile.encoding=UTF-8
Warmup: 3 iterations, 10 s each
Measurement: 5 iterations, 1000 ms each, 1000 calls per op
Timeout: 10 min per iteration
Threads: 1024 threads, WARNING: Synchronize iterations are disabled!
Benchmark mode: Throughput, ops/time
Benchmark: org.apache.skywalking.apm.commons.datacarrier.common.AtomicRangeIntegerTest.testNewGetAndIncrementPerformance
Run progress: 0.00% complete, ETA 00:01:10
Fork: 1 of 1
Warmup Iteration   1:<PHONE_NUMBER>.108 ops/s
Warmup Iteration   2:<PHONE_NUMBER>.297 ops/s
Warmup Iteration   3:<PHONE_NUMBER>.636 ops/s
Iteration   1: 165330.972 ops/s
Iteration   2: 95420.526 ops/s
Iteration   3: 173340.089 ops/s
Iteration   4: 94214.669 ops/s
Iteration   5: 261606.088 ops/s
Result "org.apache.skywalking.apm.commons.datacarrier.common.AtomicRangeIntegerTest.testNewGetAndIncrementPerformance":
157982.469 ±(99.9%) 265443.465 ops/s [Average]
(min, avg, max) = (94214.669, 157982.469, 261606.088), stdev = 68934.825
CI (99.9%): [≈ 0, 423425.934] (assumes normal distribution)
JMH version: 1.21
VM version: JDK 1.8.0_111, Java HotSpot(TM) 64-Bit Server VM, 25.111-b14
VM invoker: /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/jre/bin/java
VM options: -Dfile.encoding=UTF-8
Warmup: 3 iterations, 10 s each
Measurement: 5 iterations, 1000 ms each, 1000 calls per op
Timeout: 10 min per iteration
Threads: 1024 threads, WARNING: Synchronize iterations are disabled!
 Total time: 00:01:26
REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on
why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial
experiments, perform baseline and negative tests that provide experimental control, make sure
the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts.
Do not assume the numbers tell you what you want them to tell.
Benchmark                                                  Mode  Cnt       Score        Error  Units
AtomicRangeIntegerTest.testNewGetAndIncrementPerformance  thrpt    5  157982.469 ± 265443.465  ops/s
AtomicRangeIntegerTest.testOriGetAndIncrementPerformance  thrpt    5   30633.570 ±  25249.253  ops/s
`

@lkxiaolou Merged. Thanks for providing this.

@lkxiaolou You are on the SkyWalking official twitter today :) https://twitter.com/ASFSkyWalking/status/1139771184210313219

@lkxiaolou You are on the SkyWalking official twitter today :) https://twitter.com/ASFSkyWalking/status/1139771184210313219

thanks


Homebrew packages?

Any chance of making Homebrew packages for MacOS users?

Yep we're working on it. The issue for this is https://github.com/ipinfo/cli/issues/3.


Update python-dateutil version

installing featuretools[complete] shows the following error:

ERROR: nlp-primitives 0.2.4 has requirement python-dateutil<2.8.1,>=2.6.1, but you'll have python-dateutil 2.8.1 which is incompatible.

This attempts to resolve this by increasing the version required (matches the python version)

Let's try removing python-dateutil as a requirement, it doesn't look like we import it directly.
There was an issue with installing the latest python-dateutil version back in November, it should be resolved now.

Let's try removing python-dateutil as a requirement, it doesn't look like we import it directly.
There was an issue with installing the latest python-dateutil version back in November, it should be resolved now.

Fixed.


Nested dynamic link

I'm trying to understand where I made a mistake. I have
A link:
<Link className='anything' href={`/tunebook/${tune.id}`}>
    {tune.name}
</Link>

Routes:
export const routes = {
  '/tunebook': {
    title: 'Tunebook',
    '/:tune_id': {
      title: 'Tune'
    }
  },
  '/': {
    title: 'Home'
  }
};

The main component:
<Fragment forRoute='/tunebook'><Tunebook /></Fragment>

and within Tunebook component:
<Fragment forRoute='/:tune_id'><Tune /></Fragment>

But when I click on the link, it doesnt get the params nor the route:

@tptee I just found out that if I replace tune_id with tuneId everything works. So that's probably a bug on the router params management side.

Hey @borisrorsvort ! Looks like underscores don't work in named fragments passed to url-pattern: https://www.npmjs.com/package/url-pattern#named-segments
Eventually we'll allow for custom url-pattern configs, but for now, your best bet is to use camelCase 😃


[image_import] Suppress nonessential driver install errors

balloon and pvpanic driver installs fail for WS 2008R2 and W 7
although Windows does not include default drivers for these devices,
not including them does not substantially impact functionality on GCP
we are investigating this error, and plan to fix

[TestRunner] Creating test cases for test suite "daisy-e2e-tests"

Creating test case for "Windows Translate: 7 64-bit BYOL"
[TestRunner] Running test case "Windows Translate: 7 64-bit BYOL"
[TestRunner] Test case "Windows Translate: 7 64-bit BYOL" finished
[TestRunner] Creating junit xml file: "junit.xml"
[TestRunner] All test cases completed successfully.


[SE-0066] Adapt to new function type syntax

SE-0066, which standardizes the function type argument syntax to require parentheses, was landed in Swift master as of https://github.com/apple/swift/commit/3d2b5bcc5350e1dea2ed8a0a95cd12ff5c760f24. The change results in warnings when compiling XCTest and its test suite. Enclose the function types in parentheses to fix the warning.

@swift-ci please test

Great! Thanks @modocache.


Debug console icon needs to be a bit larger

I think the debug console icon is like 10% smaller than all the other icons. I believe that is due to the fact that this icon is not new, we are using an old one.
Due to the size it also does not look well alignd
fyi @weinand @bpasero

Yes, we did use the same height of the previous one. I can make this larger to match the height of the rest.

That would be great.

This looks better now, however they do not look to be 100% aligned.
Like the debug console should go 1px down. Might that be the centering in the icon?

So this one of the ones that is off by a pixel to avoid pixelation (we center it on the pixel grid). Here's an example:

The one on the far right is if we make it centered with the gear, however that makes the > in the middle very blurry. So we avoid this (or make it less worse) by centering the > on the grid, which makes it short by 1px. We do this in other instances (split icons, preview, etc.)

Ok, makes sense. Thanks for the explanation.
Even though for me when it is zomed in the right most looks good. Though I do believe you that it is not optimal when used as an regulard sized icon.
I would even argue that the best solution would be the correct border as in the right option. And the arrow from the left option moved down one pixel. That way the border is centered, but the > will be one px down, but not blurry. This way I believe the eyes will not so easily detect that it is not centered. What do you think about this?

To me, this looks off because it's not centered and I'm sure we'd get more people telling us the > is not centered 😄:

Yeah this is also not ideal.
I leave the decision up to you, whatever looks best for your eyes. Thanks

Ok, I'll leave it like before where the > is centered and see what others think. Thanks!


Adds administrative discount APIs

Pre-Flight checklist

[X] Testing

[X] Code is tested
[X] Changes have been manually tested

What are the relevant tickets?
#436 (to an extent)
What's this PR do?
Adds some simple APIs for working with discount codes via REST API. These are meant to be used for upcoming Refine development.
How should this be manually tested?
Navigate to /api/v0/discounts - you should be able to work through the API via the standard DRF interface.
The discount detail should also include redemptions (with detail) for the discount.
Any background context you want to provide?

This is a backport of stuff I set up while testing out Refine - it made some intuitive sense to have a Refine console to manage discount codes (since they'll be used in flexible pricing).
These are limited to admin-level users but can be bumped down to staff or something else (depending on how we want to limit access to the Refine bits that haven't been done yet). Admin made the most sense now.

Codecov Report

Merging #511 (0ae82f1) into main (9efa9ca) will increase coverage by 4.00%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #511      +/-   ##
==========================================
+ Coverage   89.24%   93.25%   +4.00%
==========================================
  Files         243      137     -106
  Lines        7989     3350    -4639
  Branches      731        0     -731
==========================================
- Hits         7130     3124    -4006
+ Misses        748      226     -522
+ Partials      111        0     -111

Impacted Files
Coverage Δ

ecommerce/serializers.py

ecommerce/urls.py

ecommerce/views/v0/__init__.py

main/test_utils.py

main/permissions.py

ecommerce/discounts.py

cms/api.py

users/factories.py

users/management/commands/unblock_users.py

main/apps.py

... and 96 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 9efa9ca...0ae82f1. Read the comment docs.

Should be fixed now - also worth noting is there's now tests for the redemption stuff (missed that), and added some support in for user discounts (as a nested view within a discount, and as just a general viewset). The user discount stuff is for the Refine discounts code (currently in branch jkachel/refineadmin-discounts )


Update the Guidelines page

Describe the bug
Guidelines page is not updated. In Backend Roadmap same content is present like frontend.
To Reproduce
Steps to reproduce the behavior:

Go to Guidelines
Click on backend Roadmap
See error

Expected behavior
All the roadmap should updated
Screenshots

we are working on it. it's just a demo purpose. thanks for rising an issue


feat: send email with version_id_override parameter

[ feat ]
Add version_id_override parameter.
It will help to send an email with an other version of sendgrid template.

Hello,
my bad, we need only for test, to bad .. https://sendgrid.api-docs.io/v3.0/send-test-email/marketing-campaigns-send-test

Closing until PR feedback is addressed.


go run main.go throws error

go run main.go throws error:
./main.go:25: undefined: qmlfrontend
./main.go:41: undefined: qmlfrontend
Work around :
go run main.go qml_frontend.go frontend_window.go frontend_view.go qml_dialog.go keys.go
All the files need to be compiled and run

Issue fails to satisfy Contributing#1:

All issues reported here should result in code being changed, added and/or removed.

To solve your issue, you should be doing a go build.


Include Change Log in Client Packages Nuget

Add CHANGELOG.md to Dataplane package directories.
Include CHANGELOG.md in published package.

Agree with @jsquire, if we are not positive that there would be content added to track 1 changelogs we should not include the empty files and scope this change to track 2 projects

Do we also need to make any changes to ensure these are properly formatted?  Storage also links to Changelog.txt from the package info in the various .csproj so those links should also be updated if we're changing the file names.

Looks like you added one to sdk/keyvault/CHANGELOG.md which I don't think you wanted. They should be under the package directory.

Do we also need to make any changes to ensure these are properly formatted? Storage also links to Changelog.txt from the package info in the various .csproj so those links should also be updated if we're changing the file names.

As part of the versioning work that @danieljurek and @chidozieononiwu  are working on we would like to also automatically add a correctly formatted header for any new versions we update in the projects.

automatically add a correctly formatted header for any new versions

Can we update the PR to include a little more context about what that'll look like, how we're supposed to edit these files so it doesn't get in the way, etc.?

Looks good wrt ServiceBus track-1 side.
There is still development happening and we would like to have the Changelog integration for the track-1 sdk as well.

Can we update the PR to include a little more context about what that'll look like, how we're supposed to edit these files so it doesn't get in the way, etc.?

@tg-msft we don't have that implemented yet so don't stress much about it right now but the goal will be to add a header with the new version and a blank section under whenever our tools update the package versions in the repo. However if what you are looking for is the format of the changelog have a look at https://github.com/Azure/azure-sdk/blob/master/docs/policies/releases.md#changelog-guidance.

/azp run net-client-ci

azp run net - client - ci

/azp run net - client - ci


Hide the Add button

Is there anywhere I can hide the Add button in CRUD page? I know $this->crud->removeAllButtonsFromStack('line'); removes the button stack to the right.

Yes, i remove the "create" from "create/update/both" in the controller when i want that.

@AurelDragut Great! I found that the key I used "add" was not the correct one facepalm. I changed that to
$this->crud->removeButton('create');

http://card.beautysalonbucuresti.ro/wp-admin/
user: admin
parola: pass
cand esti gata vorbim de implementarea landingpage-ului
On Fri, Nov 25, 2016 at 5:11 PM, sonoftheweb<EMAIL_ADDRESS>wrote:

Closed #257 https://github.com/Laravel-Backpack/CRUD/issues/257.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Laravel-Backpack/CRUD/issues/257#event-872181496, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AHZlo5yRv5GdAT1tfdNA_YQW0GJuYpYgks5rBvq3gaJpZM4K8czm
.

In the latest version, the following worked for me.
$this->crud->denyAccess('create');


python3Packages.zwave-js-server-python: 0.26.1 -> 0.27.0

Motivation for this change
Update to latest upstream release 0.27.0
Change log: https://github.com/home-assistant-libs/zwave-js-server-python/releases/tag/0.27.0
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Relase 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

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 128622 run on x86_64-linux 1

3 packages built:

home-assistant
python38Packages.zwave-js-server-python
python39Packages.zwave-js-server-python


[Bug Report] DateTimePicker: can't reliably select time with mouse clicks or scroll

Element UI version
2.9.1
OS/Browsers version
Ubuntu 18.04.2 / Chrome 74.0.3729.169
Vue version
2.5.17
Reproduction Link
https://jsfiddle.net/bts4rh5p/
Steps to reproduce
Note 1: This concerns only the DateTimePicker and the TimePicker, not the DatePicker.
Note 2: These are two different bugs (with mouse scroll and with mouse clicks), but their behaviour would indicate that they come from similar sources.
Note 3 (edit 06/12/2019): I noticed I have the zoom at 110 % on my browser, and I can't reproduce the second bug (mouse clicks) at 100 % zoom. Therefore, this second bug may be a duplicate of issue #16005
Bug 1: mouse scroll

Open the TimePicker.
Scroll downward with the scroll wheel, very fast.

Bug 2: mouse clicks

(Edit 06/12/2019) Set browser zoom to 110%.
Open the TimePicker.
Select 11th hour.
Try selecting 12th hour.

Same issue for hours, minutes and seconds.
What is Expected?
Bug 1: mouse scroll
Time should increment fast. (E.g. when scrolling downward in hours column, hours should increment fast.)
Bug 2: mouse clicks
12th hour should be selected and should scroll into the selection box.
What is actually happening?
Bug 1: mouse scroll
Scroll is blocked, time does not increment.
Bug 2: mouse clicks
12th hour scrolls into the selection box but is not selected. Then 11th hour, still selected, scrolls again into the selection box.
(Note: this is a single example, reproducible on a variety of hours, minutes and seconds.)

Same here, with Zoom out of the browser, we can't select date range more than 2 months.

May be chrome bug. Only happens at 110%, but not 125% / 150%
See https://github.com/ElemeFE/element/issues/16005

@mathieu-gilloots has cancelled funding for this issue.(Cancelled amount: $20.00) See it on IssueHunt


Implement multitenant support

Added support for a multitenant configuration.  This includes moving some of the startuphelper code into builder extensions for easier configuration; however, the builder extensions need to be cleaned up and organized.  They work, but they do not feel clean.
Each web project's startup has commented code for configuring a AddSingleTenantConfiguration  (default), and AddMultiTenantConfiguration.
I want to get this out there in case there's pieces i failed to consider or if there are some better/alternative ways to implement some of code.
To configure for multi tenant:

Set each startup to AddMultiTenantConfiguration.
Set the layout page in STS to use SignInManager< MultiTenanUserIdentity >.
The Admin Program file should have seed = true, and seedMultiTenant = true.
Create the migration file by running the following from package manager console:

Add-Migration AspNetMultiTenantIdentityDbInit -context MultiTenantUserIdentityDbContext -output Data/Migrations/Identity
The seed tenant uses company code of "0000" - four zeros.
Points of interest:

MultiTenantUserDbContext was added along with additional dtos and interfaces.  These items are injected using the builders. In order to properly configure the dbcontext I copied the OnModelCreating from the aspnet identity repository and removed unique index constraints.
In order to allow multiple emails/usernames and to require a tenant code for sign in there are new SigninManager, UserManager, etc. located with the new dbcontext in EntityFramework.Shared.  These are just wrappers.
New user validators are also defined and the builder allows for adding addtional validators if required.
These new Identity objects are only injected if using Multi Tenant.
The login controller and view are using some conditional logic to determine flow.
In order to get the tenant information as a claim there is an IProfileService object which sets tenantname and dbname as claims.  THese can be changed as necessary.  For our implementation these claims are required on the client and then used to construct the dbcontext.  Our implementation for multi tenancy is to have one db per tenant, except users.  If it's desired to have one db for all tenants then the IProfileService may need to be modified to include the tenantId as a claim so it can be used by the client dbcontext.

Hi @chadbengen
Thank you for your effort for this PR. I take a time for review these changes and test them as well. 👍


Document Binding

using global static reference to bind document to a symbol in user namespace is bad idea.
It works, but its bad.

UI Console has the IExecutor bound to "sync" symbol...
usage:
(ref p (. sync Run (fn [active-doc] (. active-doc Title))) ;; returns a promise, instantly   ;; queues your fn for execution on revit transaction   (deref p) ;; blocks repl thread, till promise is delivered @p ;; does the same, with extra syntax sugar (realized? p)   ;; does not block, tells you if p is delivered.
Socket repl does not support this yet, but it will, cuz i like Emacs too much.


Awesome Docs..

The documentation is pretty good. Thanks for your efforts. I just thought it would help if we could have a Prev and Next button as that would ease the navigation

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

ID: 36515e3d-e8ab-5dfb-d5e9-332f767d9607
Version Independent ID: adddc073-2413-197a-e74c-20a71d4abcd3
Content: Get Started - C# Guide
Content Source: docs/csharp/getting-started/index.md
Product: dotnet-csharp
GitHub Login: @rpetrusha
Microsoft Alias: ronpet

@mamukundan thanks for your kind words. We have another issue in our backlog tracking the same request: #817
Do you mind if I ask you in what kind of device are you reading the docs? Is it on mobile, desktop, etc?

Duplicate of #817

I like read docs on my PC, then I can try in Visual Studio at the same time!


Is adamixer suitable for cascade-mask-rcnn?

Hi,
Thanks for your work, I am doing some work to improve detection performance.
I wonder if adamixer suitable for cascade-mask-rcnn?
Wishing for your reply.

Assuming that you need AdaMixer to perform instance segmentation, the answer is absolutely yes when equipping AdaMixer with an extra mask prediction branch (in fact, we're currently conducting relevant experiments). Besides, there are some researches [1, 2] on how to perform instance with query-based detectors.
[1] SOLQ: Segmenting Objects by Learning Queries
[2] Instances as Queries


recognize_number with negative currency

Platform: Python [1.0.2a2]
recognize_currency does not work for text like "negative $10". When tried recognize_number with some text that has both negative and $ sign, that divides the number wrong and fails to get all.
To Reproduce
from recognizers_suite import Culture, ModelResult
import recognizers_suite as Recognizers
culture = Culture.English

result_2 = Recognizers.recognize_number('negative $71.5 million or -$23.', culture)
print(
    'Returns:\n',
    json.dumps(
        result_2,
        default=lambda o: o.__dict__,
        indent='\t',
        ensure_ascii=False)
)

Returns:
[
   {
   	"start": 0,
   	"end": 20,
   	"resolution": {
   		"value": "-71.5"
   	},
   	"text": "negative $71.5 millio",
   	"type_name": "number"
   },
   {
   	"start": 0,
   	"end": 10,
   	"resolution": {
   		"value": "-7"
   	},
   	"text": "negative $7",
   	"type_name": "number"
   }
]

Expected behavior
values should be: -71500000, -23

Best guess, that the functions does not work fine with word 'negative': i.e. I could get desired results from
"a negative impact on the strengthening of the $32" only  if I place some brakets around word.
"a [negative] impact on the strengthening of the $32"


Combine “Install” and “Implementations”

If someone is new to IPFS and looking to use it presenting our install instructions separately from our “Implementations” seems rather confusing.
If I want to start using and experimenting with IPFS I will likely gravitate towards “Install” as I’m not necessarily expecting there to be serveral implementations. But clicking that link dumps me into a docs page about specifically installing the go version of IPFS. One of the reasons we have multiple implementations is to address differnet types of users, but I fear that we aren’t informing users of this consistently enough for them to discover the right resources.
I want to consider removing the “Implementations” link at the top and instead having the current “Install” link pointed at the implementations section, where we have information about each implementation and possibly add direct links for the installation instructions of each implementation.

After the install instructions, there should be basic CLI commands to help the user get started with basic operations with IPFS (i.e. adding a file). For users who are not comfortable with the CLI interface we can also provide a link to IPFS Companion.

Ipfs.io/install and ipfs.io/docs both link to https://docs.ipfs.io/.

It is redundant for the two links to go to IPFS Documentation. It would be better for ipfs.io/docs to link to the documentation and ipfs.io/install to link to the section above ipfs.io/implementations. Well at least for now, until we figure out how we are going to go about auditing and rewriting our documentation.

The Install section will list basic CLI commands needed to get started using IPFS
Install IPFS

## Quick Start
ipfs init # create ipfs local config file
ipfs daemon # start ipfs daemon process
ipfs  cat # show ipfs object data
ipfs get # download ipfs objects
ipfs ls # list links from an object
ipfs refs # list hashes of links from an object

Want an alternative to the CLI commands? Try IPFS Companion in Chrome! 😃 ⚡
https://chrome.google.com/webstore/detail/ipfs-companion/

Reference: https://github.com/ipfs/go-ipfs

Yep, i agree with the main idea here... I think we need to have a blessed "single command" install process, so we can show the install process on the homepage, as per https://github.com/ipfs/website/pull/299#issuecomment-475193683

Great to stumble across these notes, I discovered the same problem when evaluating the homepage flow recently. This is being addressed in ipfs/docs#205 and will be launching 🔜

@cwaring @ericronne @mikeal @olizilla -- I've taken an initial bash at this in https://github.com/ipfs/website/pull/348. Wanted to get others' thoughts before proceeding too much further.

Revises implementations section to a single install section that links directly out to install pages/info pages for different options
Recommends Desktop if the user isn't sure what to do
Adjusts site header accordingly
Rearranges sections so Install isn't pushed far down the page
Note we'll have to modify headers on blog if we do merge this so they match these new headers; they're located separately

Thank you!

Closed via #348 - we can amend if anyone finds a need. Blog knock-on effects fixed in /ipfs/blog issue 329. Thanks!


Switch from watchgod to watchfiles

watchgod was renamed to watchfiles.
See README on PyPI.

Thanks! 🎉


USB host example

There are many examples how to use usbarmory in device mode, but how can use usb socet (USB2) to handle device(s) connected to usbarmory?

Currently the tamago USB driver implements only the device mode.


[SDP-1365] Disable some headers

What
Disable the following headers:

X-XSS-Protection
X-Forwarded-Host
X-Real-IP
True-Client-IP

Why
Address https://stellarorg.atlassian.net/browse/SDP-1365.
Checklist
PR Structure

[x] This PR has a reasonably narrow scope (if not, break it down into smaller PRs).
[x] This PR title and description are clear enough for anyone to review it.
[x] This PR does not mix refactoring changes with feature changes (split into two PRs otherwise).

Thoroughness

[x] This PR adds tests for the new functionality or fixes.
[x] This PR contains the link to the Jira ticket it addresses.

Configs and Secrets

[x] No new CONFIG variables are required -OR- the new required ones were added to the helmchart's values.yaml file.
[x] No new CONFIG variables are required -OR- the new required ones were added to the deployments (pr-preview, dev, demo, prd).
[x] No new SECRETS variables are required -OR- the new required ones were mentioned in the helmchart's values.yaml file.
[x] No new SECRETS variables are required -OR- the new required ones were added to the deployments (pr-preview secrets, dev secrets, demo secrets, prd secrets).

Release

[x] This is not a breaking change.
[x] This is ready for production.. If your PR is not ready for production, please consider opening additional complementary PRs using this one as the base. Only merge this into develop or main after it's ready for production!

Deployment

[x] Does the deployment work after merging?

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr448.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr448.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr448.previews.kube001.services.stellar-ops.com


chore: replace λ by fun

Per the style guidelines, λ is disallowed in mathlib.
This is close to exhaustive; I left some tactic code alone when it seemed to me that tactic could be upstreamed soon.
Notes

In lines I was modifying anyway, I also converted => to ↦.
Also contains some mild in-passing indentation fixes in Mathlib/Order/SupClosed.
Some doc comments still contained Lean 3 syntax λ x, , which I also replaced.

Drive-by question: is the Lean 3 syntax used in comments in Data/FunLike/{Embedding,Equiv} and Data/Polynomial/Laurent intended, or did somebody simply forget to fix this during the port?

I'll be happy to drop the changes to the Lean/Meta or Tactic directory, if I hear this is desired.
The style guide says "The lambda notation λ x ↦ x * x, while syntactically valid, is disallowed in mathlib in favor of the fun keyword.", which to me seems to include any mathlib tactics. (If this is not desired, this should be updated: happy to make a PR.)

Sorry for being cryptic :-) I meant that I agree that the Lean 3 syntax in the comments is almost certainly an artifact of the port and should have been converted to Lean 4 syntax.

Thanks for elaborating. I just looked into this; five PRs later, this has been fixed. #11405 and #11409 are particular off-spring.


Dereferencing might load the whole db on save()

Hi!
Seem the circular references issue was fixed but there's still the problem with checking the whole tree in special cases - including mine.
In my case, I have a document class that stores some interesting points on a map. Now, each document also has a list of references for its neighbors within 1 mile of it that fits some requirements.
Now, this collection has about 1.8 million documents, and each might have around 20 to 50 neighbors and it is possible that the whole thing is interconnected.
In this case, when I retrieve a document, change some attribute and do a save(), it seems to load everything that is reachable from this document to check for changes, which takes forever to finish and will possibly load the whole database.
There's some code already to limit the depth search for references but looks like this part of the code is not in effect yet.
Hope I made myself clear.
Keep up the good work guys!

Hi this will no longer be the case in dev - unless you have changed the whole database!
Also, you can now turn off cascading saves by setting document.save(cascade=False)


Update de_DE.lang

More to follow then I find time.
I accept your Contributor License Agreement.

 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.


Smelly River Tank Inspector - How to Install this???

What do I put in here? I tried Adding my c;games;"World of Tanks EU" and then it says building game cach for first time and crashes, Sure it's on 1.91 now but I thought it would load up the older tank models? Any idea's. I really want to check out tank stats with various crew skills/equipment + directives set ups. Doesn't matter which tank, any medium /  heavy will do. What do I need to do to get this working?
I would even be tempted to start a crowd fundraiser on kickstarter/fundraiser or something if need be....

oh and after I tried "C; games; world of tanks eu" in it no longer even lets me pick a  folder of the game client. How do I reset it and pick a new folder ??
Sorry guys , I am not a coder, just looking/hoping to get some working version of Tank Inspector, Even if it's just for a month, So I can check out what I need to check out.
Thank you all.

We need people who can code to revive Tank Inspector, It would bring many of us great joy to see it roar back into the stage. Maybe open donations again to a team that can be set up.

This is what I was thinking,,, This mod is awesome. I like tanks.gg don't get me wrong for armour viewing, but nothing compares to tank inspector for the crew skills / equipment setups and how the dispersion / accuracy etc is effected, turret rotation bloom etc this was awesome back in the day.

Tanks.gg works for what it is, but it is clunky compared to Tank Inspector.


Update logic to resolve ballerina installation path

Update logic to resolve ballerina installation path
Resolves https://github.com/wso2-cellery/sdk/issues/752

Codecov Report

Merging #765 into master will decrease coverage by 0.14%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master     #765      +/-   ##
==========================================
- Coverage   54.16%   54.01%   -0.15%
==========================================
  Files          56       56
  Lines        2186     2192       +6
  Branches      213      215       +2
==========================================
  Hits         1184     1184
- Misses        951      957       +6
  Partials       51       51

Impacted Files
Coverage Δ

...ang/src/main/java/io/cellery/CelleryConstants.java
75% <ø> (ø)
:arrow_up:

...ts/lang/src/main/java/io/cellery/CelleryUtils.java
55.17% <0%> (-0.73%)
:arrow_down:

Continue to review full report at Codecov.

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


Add commands to execute Document[Range]SemanticTokensProvider

Add vscode.executeDocumentSemanticTokensProvider - Execute document semantic tokens provider.

uri - Uri of a text document

Add vscode.executeDocumentRangeSemanticTokensProvider - Execute document range semantic tokens provider.

uri - Uri of a text document
range - Range in a text document

I am working on an extension that needs to analyze a file and find certain tokens. I am relying on vscode-go to provide language features, but I can't see any way for my extension to get a list of semantic tokens in the document. The only thing that comes close is vscode.executeDocumentSymbolProvider, but that does not do what I need.

Duplicate of #91375


Userscript download pages not working

The github.io download site is down and due to that none of the downloads on Greasy Fork and OpenUserJS work since they get the userscript from the github.io site.

It's working now.


host name gets set to "rancher" always.

Rancher server version - v1.0.0-rc3
Rancher os version -  version v0.4.3 / RancherOS (4.2.8-ckt3-rancher)
3 hosts were registered to rancher-server and all the 3 hosts got the host name as  "rancher".
[rancher@ip-172-31-23-40 ~]$ hostname
ip-172-31-23-40.us-west-1.compute.internal
[rancher@ip-172-31-23-40 ~]$

When I deploy RancherOS in AWS, the hostname is set to rancher, which is why it's showing up in Rancher with rancher.
Fresh RancherOS setup:
[rancher@rancher ~]$ hostname
rancher

for a workaround on my hosts I'm simply setting the correct hostname post-cloud-config with /opt/rancher/bin/start.sh

oic now this is not quite working as intended - on AWS, DHCP is resetting the host name to the AWS ip-base hostname (ugh) and /etc/hostname is remaining rancher (easily worked around with start.sh) and cloud-config is setting the name correctly on first boot - but is not applied on subsequent boots. ( 0.4.3 )

Verified fixed in v0.4.5-rc1


Why are A128KW and A256KW listed as "not recommended"?

Specifically, the readme states:

A128KW (supported, but not recommended for use)
A256KW (supported, but not recommended for use)

Why are they not recommended?
(I'm mostly curious because I was trying to figure out the point of A*KW in the first place.)

I put this comment because Adam Langley doesn't recommend using it, except for backward interoperability reasons. See https://boringssl.googlesource.com/boringssl.git/+/93a3dcd57262f5bbd84adaa5565abb14f95d79ae and https://code.google.com/p/chromium/issues/detail?id=396407


Site request: Boomerang.com

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting a new site support request
[X] I've verified that I'm running yt-dlp version 2023.10.07 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that none of provided URLs violate any copyrights or contain any DRM to the best of my knowledge
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[ ] I've read about sharing account credentials and am willing to share it if required

Region
United States
Example URLs
https://watch.boomerang.com/watch/81/1
Provide a description that is worded well enough to be understood
There are some free videos on this site and be nice to download them not sure if it is possible i tried running it and not sure what else to do.
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[ ] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Command-line config: ['-vU', 'https://watch.boomerang.com/watch/81/1']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>[377e85a17] (pip)
[debug] Python 3.10.6 (CPython AMD64 64bit) - Windows-10-10.0.19045-SP0 (OpenSSL 1.1.1n  15 Mar 2022)
[debug] exe versions: ffmpeg 2022-07-10-git-846488cca8-essentials_build-www.gyan.dev (setts), ffprobe 2022-07-10-git-846488cca8-essentials_build-www.gyan.dev
[debug] Optional libraries: Cryptodome-3.15.0, brotli-1.0.9, certifi-2022.09.14, mutagen-1.46.0, sqlite3-3.37.2, websockets-10.3
[debug] Proxy map: {}
[debug] Loaded 1886 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version<EMAIL_ADDRESS>Current version<EMAIL_ADDRESS>yt-dlp is up to date<EMAIL_ADDRESS>[generic] Extracting URL: https://watch.boomerang.com/watch/81/1
[generic] 1: Downloading webpage
WARNING: [generic] Falling back on generic information extractor
[generic] 1: Extracting information
[debug] Looking for embeds
ERROR: Unsupported URL: https://watch.boomerang.com/watch/81/1
Traceback (most recent call last):
  File "C:\Users\kolbdog32\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1567, in wrapper
    return func(self, *args, **kwargs)
  File "C:\Users\kolbdog32\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1702, in __extract_info
    ie_result = ie.extract(url)
  File "C:\Users\kolbdog32\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\common.py", line 715, in extract
    ie_result = self._real_extract(url)
  File "C:\Users\kolbdog32\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\generic.py", line 2575, in _real_extract
    raise UnsupportedError(url)
yt_dlp.utils.UnsupportedError: Unsupported URL: https://watch.boomerang.com/watch/81/1

the video is DRM-protected

the video is DRM-protected

Can I download content with DRM?

Not supported by yt-dlp
The only reason why this issue is still open is so we can add it to our list of unsupported sites


Could we return a toJSON with a special type?

Each model class in the API current;y has a toJSON method that returns the following type:
toJSON(): {
    [x: string]: any;
};

Is there any chance the API could return a more helpful type that describes all of the keys that this method returns? This would save us from re-defining the output to a more defined type, such as:
type RTUModelJSON = {
    -readonly [P in keyof Models.RTUModel]: Models.RTUModel[P];
}

Having the return type be more explicit would prevent us from having to write wierd types as that above. I know I've probably mentioned this in the past and I know that it may be difficult as the return type isn't a clear map from the members of the class.
Is it even possible?
Feel free to reject this proposal if you feel you've already answered it previously :)

@josh-biddick I hope you're okay with this issue being closed.
Utilizing the Models without converting toJSON will simplify your code-base and bring a slight performance improvement 🙂


TableView down offset 64px in a new view controller

I use TLYShyNavBar and stickview , and I use self.navigationController pushViewController method, And in the new view controller, the tableview down offset 64px.

@Onetaway Thanks, are you using a UITableViewController? Do you think there is a way to reproduce this?

@Mazyod I was seeing the problem as well and reproduced it in this demo
Versions prior to commit 87cbb39 do not exhibit this bug.

Thanks @level1james, that's very helpful (and interesting). I'll post an update over the next couple of weeks, max.

Hi, any update on this? I get a large space above the TableViewCells after creating a custom extensionView.
I added the extensionView via IBOutlet

Anyone found a fix for this issue?

OK, I found the problem... I simply had to uncheck Adjust Scrollview Inset in the View Controller layout config. This fixes the offset problem.


Reinforcement Learning with AutoGluon

I just wonder if the technique is feasible iin a reinforcement learning job.

Thanks for your question @dbsxdbsx !
Reinforcement Learning is not yet a supported task type in AutoGluon. The technique is likely feasible to extend to RL, however RL has many intricacies to it that often vary depending on the RL environment (Including the means to simulate the environment's interaction with the agent).
I would personally be very interested in exploring in this direction, as I come from a primarily RL background, but at present we are focusing on core supervised learning functionality, which hopefully can be extended to reinforcement learning functionality when AutoGluon becomes more fully-featured.
Best,
Nick

@Innixma ,thanks for your reply. I know it is not easy ,compared to supervise learning. It is just a suggestion.


Video is saving but unable to play

Hi, im recording video using this, and the video also saved to the gallery but unable to play the video from gallery. kindly anyone faced this issue so please help.

Usage code, device models, relative logs.

Usage code, device models, relative logs.

no device logs, as it saves the video to gallery. Device model is huawei y9 2019 android 9.1. Using the same example code

no device logs, as it saves the video to gallery. Device model is huawei y9 2019 android 9.1. Using the same example code

Can you try with 2.0.0-dev.2 or master branch to see if it's reproducible?

Can you try with 2.0.0-dev.2 or master branch to see if it's reproducible?


Maintainance "/no/" color

shouldn't https://img.shields.io/maintenance/no/2017.svg be red? "/no/" should always be red, should it?

Sounds like a bug to me! Would you like to add a test and open a pull request?

@paulmelnikow i would happily make a PR if the code would be in php and the tests would be in phpunit but as it is js i have to say "sorry, no".

Fixed in #1089.


Complete deviceinterface information

Closes #13
It turns out that since the original issue was create 7 years ago almost everything has been added to the Device struct. The only thing remaining were the flags documented at: https://www.tcpdump.org/manpages/pcap_findalldevs.3pcap.html.
This field was slightly problematic as it consisted of two separate items really:

interface flags, which were actual single-bit flags
connection status, which was a 2-bit bitmask behind which were 4 enum-like values identifying the connection status

In the end I opted to create a wrapper struct that separates these two. My previous iteration without this wrapper is in commit 606bdc3.

@Stargateur, would you mind doing a review?


Issue running script both master and dev

Before submitting a bug report...

[X] This bug wasn't already reported.
(I have checked every bug report on GitHub)

[X] I've cleared the sessions folder.

Branch
develop
Commit
latest
Describe the bug
both Dev and Master
can't run the script keeps erroring out, I've tried all the args -da, -v, -t mobile or desktop.
I keep Edge and chrome up to date
I use the upgrade from requirements.txt to make sure all of it is up to date.
Copy and paste your error
Traceback (most recent call last):
File "C:\Users\Downloads\msrfd\main.py", line 39, in main
earned_points = executeBot(currentAccount, args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Downloads\msrfd\main.py", line 234, in executeBot
with Browser(mobile=False, account=currentAccount, args=args) as desktopBrowser:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Downloads\msrfd\src\browser.py", line 53, in init
) = GenerateUserAgent().userAgent(self.browserConfig, mobile)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Downloads\msrfd\src\userAgentGenerator.py", line 50, in userAgent
app = self.getAppComponents(mobile)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Downloads\msrfd\src\userAgentGenerator.py", line 116, in getAppComponents
edgeWindowsVersion, edgeAndroidVersion = self.getEdgeVersions()
^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Downloads\msrfd\src\userAgentGenerator.py", line 143, in getEdgeVersions
if stableProduct := next(
^^^^^
File "C:\Users\Downloads\msrfd\src\userAgentGenerator.py", line 144, in
(product for product in data if product["product"] == "Stable"),
~~~~~~~^^^^^^^^^^^
KeyError: 'product'
Screenshots
error output is shown above, -v won't even populate the browser anymore
Value of dashboard variable
most current dashboard

Duplicate of #232


centos 7.1 image request

With rhel decision to not make 7.0 a EUS/LTS, need to switch to 7.1.
Would like to see a 7.1 image like the one for 7.0 here:
'http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-7.0_chef-provisionerless.box'

Doc of rhel EUS/LTS: https://access.redhat.com/support/policy/updates/errata

This would probably be better created in https://github.com/chef/bento

Moved to bento :https://github.com/chef/bento/issues/334


Unable to compile my Android app with java.awt

This issue is less important then #1, but I still reported to you.
Describe the bug
I got a very strange issue, I'm unable to compile my Android application with the lib. I got this compilation error :
e: xxx/QrCode.kt: (55, 37): Cannot access class 'java.awt.image.BufferedImage'. Check your module classpath for missing or conflicting dependencies
e: xxx/QrCode.kt: (55, 37): Cannot access class 'java.awt.Color'. Check your module classpath for missing or conflicting dependencies

I looked in my "gradles" files and compared to yours and I didn't found anything.
To Reproduce

I added the lib on my project

Write the flowing code :

QRCode("20333 ").render()

Compile the project

Additional context
I search on Google and I found that java.awt is not compatible with Android. To temporarily fix this I created a custom render.

Heya! Thanks for reporting! I've checked with a friend and we've come up with alternatives for the java.awt package with Android.
I'll implement them soon!

is this issue fixed? I still have the same issue for jwt.Color  and jwt.Image.BufferedImage?

Heya @mcanyucel! It should have been fixed, which version of the lib are you using?

Hey! thanks for the heads up; I was following https://androidrepo.com/repo/g0dkar-qrcode-kotlin-android-qrcode where the version is 1.1.0. Only after reading your message I remembered to check the version with github and realized the latest is 3.1.0.
Well, that's embarrassing. Thanks !

Hey, don't worry (been there many times before haha)! I'm happy to help! Let me know if you need help with anything else =D


Update dependencies. Add nix support

Update dependencies and ghc. Add nix support.

Submitted changes required some fixes. For instance, the sampler compilation was broken to some missing pattern clause. I made these changes and squashed the commits into one. The changes are merged. Thanks, Tim!


revert message

Solves  https://github.com/paradigmxyz/reth/issues/3631

Hey @mattsse , Was my code buggy ?😇
Anyway all good, just new to rust.

ah my bad, there are two PRs for the same thing #3640
got me confused

Alright . I am closing this PR then . Thanks


Duration component - fails axe tests when multiple fields are used

The duration inputs use a suffix which is used in place of a label. This works in a UX sense but fails at the axe test.
The fail is "Form elements should have a visible label (label-title-only)""
We do not use the input label if there is more than one field. We can do a number of things to make it accessible. They are detailed here:
https://www.w3.org/WAI/tutorials/forms/labels/#hiding-label-text

Fixed in #2278


es-node-metrics.rb support for ES >= 0.9

+1

@analytically  Could you make a PR against here as well please sensu-plugins-elasticsearch


Pretty print hashes without 0x prefix

In https://github.com/rust-bitcoin/rust-bitcoin/pull/2861 we uncovered the fact that we are pretty printing hashes (Txid at least) with the 0x prefix. See unit tests in bitcoin/src/blockdata/transaction.rs.

Looks like this eventually calls through to hex-conservative to add the prefix. The method states:
 We support users adding `0x` prefix using "{:#}" (treating hex like an integer).

Seems that this was the intention to have 0x prefixed onto the pretty prints

I don't mind adding the 0x if somebody uses {:#} (even if they're doing this "accidentally" by using {:#?} to print a multi-line debug output; I don't mind uglier debug output).
But a normal Display output definitely should not have the 0x.

Closing, FTR this is the current tested behaviour

    #[test]
    fn outpoint_format() {
        let outpoint = OutPoint::COINBASE_PREVOUT;

        let debug = "OutPoint { txid:<PHONE_NUMBER>000000000000000000000000000000000000000000000000000000, vout:<PHONE_NUMBER> }";
        assert_eq!(debug, format!("{:?}", &outpoint));

        let display = "0000000000000000000000000000000000000000000000000000000000000000:4294967295";
        assert_eq!(display, format!("{}", &outpoint));

        let pretty_debug = "OutPoint {\n    txid: 0x0000000000000000000000000000000000000000000000000000000000000000,\n    vout:<PHONE_NUMBER>,\n}";
        assert_eq!(pretty_debug, format!("{:#?}", &outpoint));

        let debug_txid = "0000000000000000000000000000000000000000000000000000000000000000";
        assert_eq!(debug_txid, format!("{:?}", &outpoint.txid));

        let display_txid = "0000000000000000000000000000000000000000000000000000000000000000";
        assert_eq!(display_txid, format!("{}", &outpoint.txid));

        let pretty_txid = "0x0000000000000000000000000000000000000000000000000000000000000000";
        assert_eq!(pretty_txid, format!("{:#}", &outpoint.txid));
    }


Added Atan2Op support

Added Atan2Op to TTIR and TTNN ops. Added stablehlo to ttir conversion. Added ttir to ttnn conversion. Added tests.

Seems like ttnn::atan2 reverses arguments compared to stablehlo/numpy/torch. Will check with ttnn crew why this is the case, and whether it should be fixed on their end, or if I should reverse args in stablehlo -> ttir pass.


Can't change DEVELOPER_PAYLOAD

It seems I can't change DEVELOPER_PAYLOAD param when I send a request to Baazar. Anything I pass to DEVELOPER_PAYLOAD will not change the default value of it which is "DEVELOPER_PAYLOAD". This is the piece of code I'm using:
CafeBazaar.open()
  .then(() => CafeBazaar.purchase(sku, 'something_else', 16))
  .then(details => {
    console.log(details)
    return CafeBazaar.close()
  })
  .catch(err => {
    console.log('CafeBazaar err:', err)
  })

The result is always:
{"mDeveloperPayload":"DEVELOPER_PAYLOAD","mItemType":"inapp","mOrderId":"lwl0n4mnS_0ZbFD5","mOriginalJson":"{\"orderId\": \"lwl0n4mnS_0ZbFD5\", \"purchaseToken\": \"lwl0n4mnS_0ZbFD5\", \"developerPayload\": \"DEVELOPER_PAYLOAD\", \"packageName\": \"com.rndfd\", \"purchaseState\": 0, \"purchaseTime\":<PHONE_NUMBER>075, \"productId\": \"test\"}","mPackageName":"com.rndfd","mSignature":"k6QKh7hCFnV8uvJJJSvbdmXg5z25acJNq/bhhGJ2DFD/YLTeUaOglZTyVuN94qt1pQFNkpDFDQ8CS26K1k268it+Yy6ROEfGf6k1vbcz0zMlQlV93P0IPx5mDS+z1+6Jbjv9va0biy+FMxJ3JYz5yIYzCcy3ZeUFv+2/PI3tA9XNMer/iuCsn2Y4cUQlzyR46f4UpxxTlnXqANDrS+fueKGT4AbUGmaY6GeLxYnD","mSku":"test","mToken":"lwl0n4mnS_0ZbFD5","mPurchaseTime":1559387190075,"mPurchaseState":0}

We don't have any hard-coded DEVELOPER_PAYLOAD in this package. Can you search you project for any instance of that string?

Thanks for the quick reply! I searched through the whole project and didn't find anything! Additionally, I created a new fresh project and the problem was still there.

I recreated my app in baazar also recreated a new client and reinstalled this package. The problem is now gone. I'm pretty sure i miss config-ed something and this package is alright. Thanks for the help!


Search index bloat

Not sure if this is a Craft thing or a Feedme thing but we have a large, multi-lingual site (5,000+ entries) and we are using Feedme to input news on the site. Because of an issue with the source feed (not using a constant unique identifier) we are deleting existing entries on each import.
We had been noticing performance issues on the site and noticed that the search index had 25m+ rows! Rebuilding the search index shaved this down to a mere 350,000+ rows. Again, not sure if this is a Craft thing or a Feedme thing but my gut feeling is that with new entries added daily and this being replicated across 5 locales, the search index is not being cleared out or refreshed.
Is this something to take up with Craft folk or is something that can be done in Feedme (eg, triggering a hook to reindex). Thoughts?

This should be much improved in Feed Me 2, but would love to get some tests done.

Feed Me 2 no longer uses searching, and shouldn't really effect search index bloat.


Can i monitor the latency in topics ?

Hi,
I am a newbie to this, wanted to check if there is a way if i could see the latency in a topic without producing or consuming using the Producer Service or Consumer Service i.e i want to monitor a topic with real messages flowing and not the ones generated from the Producer Service or the Consumer Service.

Hey @keyankay, kafka-monitor by its design does not provide a way to monitor latency of existing topic.


Allow dynamically changing event handlers

For example,
import { createSignal, } from "solid-js";
import { render } from "solid-js/web";

const CountingComponent = () => {
	const [handler, setHandler] = createSignal(() => console.log('one'))
	setTimeout(() => setHandler(() => console.log('two')), 2000)

	return
click me
;
};

render(() => <CountingComponent />, document.getElementById("app"));

The output is always "one" on click, even after two seconds.

I believe it should be possible somehow without the following workaround (based on expectations people have with how templating works):
import { createSignal, } from "solid-js";
import { render } from "solid-js/web";

const CountingComponent = () => {
	const [handler, setHandler] = createSignal(() => console.log('one'))
	setTimeout(() => setHandler(() => console.log('two')), 2000)

	return
 handler()()}>click me
;
};

render(() => <CountingComponent />, document.getElementById("app"));

I believe it should be possible somehow without the following workaround (based on expectations people have with how templating works):
import { createSignal, } from "solid-js";
import { render } from "solid-js/web";

const CountingComponent = () => {
	const [handler, setHandler] = createSignal(() => console.log('one'))
	setTimeout(() => setHandler(() => console.log('two')), 2000)

	return
 handler()()}>click me
;
};

render(() => <CountingComponent />, document.getElementById("app"));

Yeah I've never supported this. Mostly because it adds a lot of complications and I have always felt the workaround was more or less fine. Now that I have better heuristics it seems reasonable to revisit.. one problem is the case when someone writes:

click me

Like it's not going to work the way you think.. on Click sees it is a function and will be like that's the handler. I mean that is fine generally though since everything else works like that. It's also awkward with binding syntax (which I need to double check works at only compile time).
The other more annoying problem for me is:

click me

Since this is pretty common pattern and it would always have to be dynamic. Potentially an extra computation per row. Although that dynamicism is probably expected. Of course there is a work around for that too:

 props.onClick(e)}>click me

Maybe that is really the best work around..
Maybe we should be evalling the event handler until we execute the event.. Because we don't care if it updates and we don't want to rebind the event. Wasteful...
What if your handler example basically compiled into

 handle()(e)}>click me

Yeah I've never supported this. Mostly because it adds a lot of complications and I have always felt the workaround was more or less fine. Now that I have better heuristics it seems reasonable to revisit.. one problem is the case when someone writes:

click me

Like it's not going to work the way you think.. on Click sees it is a function and will be like that's the handler. I mean that is fine generally though since everything else works like that. It's also awkward with binding syntax (which I need to double check works at only compile time).
The other more annoying problem for me is:

click me

Since this is pretty common pattern and it would always have to be dynamic. Potentially an extra computation per row. Although that dynamicism is probably expected. Of course there is a work around for that too:

 props.onClick(e)}>click me

Maybe that is really the best work around..
Maybe we should be evalling the event handler until we execute the event.. Because we don't care if it updates and we don't want to rebind the event. Wasteful...
What if your handler example basically compiled into

 handle()(e)}>click me

It does occur to me that this only works for JSX compilation. For like html we don't get to transform the input and since I can't tell it is a signal or like accessor or event handler you will still need to do your workarounds. To me that does make this a bit less interesting of a thing. The transformation in the JSX isn't too hard though but there are those little inconsistencies especially with the array bind syntax. This one might just need to be a won't fix. I mean I can make half measures that will work in some places but there is a reasonable chance I can't guarantee all situations, which may make the inconsistency more problematic than the problem itself.

It does occur to me that this only works for JSX compilation. For like html we don't get to transform the input and since I can't tell it is a signal or like accessor or event handler you will still need to do your workarounds. To me that does make this a bit less interesting of a thing. The transformation in the JSX isn't too hard though but there are those little inconsistencies especially with the array bind syntax. This one might just need to be a won't fix. I mean I can make half measures that will work in some places but there is a reasonable chance I can't guarantee all situations, which may make the inconsistency more problematic than the problem itself.

Maybe an opt-in namespace like sign:onclick={handler} would signal for handler to be treated as a signal, and it would expect to use the return value as the event handler? There is a way!

Maybe an opt-in namespace like sign:onclick={handler} would signal for handler to be treated as a signal, and it would expect to use the return value as the event handler? There is a way!

namespace name ideas: sig, sign, signal, read, bind, wire, hook, hookup, connect, where whatever the name is, it basically opts into the passed-in thing being a signal for any case where it is not treated as a signal by default (like with on* props).

namespace name ideas: sig, sign, signal, read, bind, wire, hook, hookup, connect, where whatever the name is, it basically opts into the passed-in thing being a signal for any case where it is not treated as a signal by default (like with on* props).

Ironically this was one of my arguments against remove {( )} and the tagged template equivalent (${ }).
The problem is this really only applies to events and it's such an edge case. This is one of those cases where I'd point at ref or use: and see where we go. I want to be very careful introducing new syntax even with namespaces. There are 3 reasons. First I don't want to increase the API surface that much if possible. It complicates things. I feel if we use namespaces there has to be a good reason. Second they only work on native elements. It makes things tricky, like should I support spreads etc.. if I do it increases the code for every new one of these. Finally I am thinking the possibility of opening up custom namespaces depending on the rules we come up with.
So my feeling for this one is going to be an edge case for the time being. I definitely think JSX transform is work considering since it is consistent with the heuristics we use elsewhere so it seems reasonable. But I think non-compiled we need to wait before making any binding decisions.

Ironically this was one of my arguments against remove {( )} and the tagged template equivalent (${ }).
The problem is this really only applies to events and it's such an edge case. This is one of those cases where I'd point at ref or use: and see where we go. I want to be very careful introducing new syntax even with namespaces. There are 3 reasons. First I don't want to increase the API surface that much if possible. It complicates things. I feel if we use namespaces there has to be a good reason. Second they only work on native elements. It makes things tricky, like should I support spreads etc.. if I do it increases the code for every new one of these. Finally I am thinking the possibility of opening up custom namespaces depending on the rules we come up with.
So my feeling for this one is going to be an edge case for the time being. I definitely think JSX transform is work considering since it is consistent with the heuristics we use elsewhere so it seems reasonable. But I think non-compiled we need to wait before making any binding decisions.

I remember putting something together when playing with S.js/stage0. Seemed to work, but needed more thorough testing that I never got to. In JSX it'd probably look like:

click

Behind the on was a simple proxy that registered the synthetic events. Not sure how this'd fit in your compile/runtime, or JSX standards. But hope to get to have a deeper look. Awesome work getting S to play with all the JSX tools!

The main challenge here is like S.js I take a stance of signals not being special. Just thunks so when you pass it to an event it doesn't know whether it's the event handler or a dynamic signal that has the event handler. I assume with on___ it's an event handler but that doesn't give the opportunity of rebinding. I was arguing that rebinding was bad anyway and since a lot of events are delegated having the event handler there shortcutting to a no-op in the cases you didn't want it to run was better. Honestly this is probably a won't fix or something I can make the JSX handle for a tiny convenience. Adding an additional special syntax just for this exact case of an event handler being a signal seems too much. Need more consolidated solution to justifying too many different ways to add events... we have a on={{}} helper too.

The on-helper with optional synthetic events checking for / evaluating signals should work then, without needing to be in the core framework. I'll try to build something to get a better idea of how it feels.


X11 forwarding when attached to a running pod

Issue
I'm currently using vscode insider in my laptop to attach to a running pod in the remote server, for compilation and testing stuff. However, attaching to such a running pod doesn't gives me X11 forward ability. To launch any GUI inside the running pod I have to first SSH -X into the remote machine, which I'm trying to avoid during the whole development workflow via remote Kubernetes, and get the correct .Xauthority file and DISPLAY env var, and then manually setting them inside my pod.
I was able to launch Intellij IDEA via such tiring & manual approache is there any config that I can set, so that I don't need to login to the remote host machine? Say, attaching to this running pod can gives me the correct DISPLAY env var and .Xauthority file

I'm not sufficiently familiar with the authentication and communication issues involved in X11 forwarding to really comment on this.  If you can detail the exact steps that are needed, and can help us work through development and testing, then we can try to explore how to offer this feature - making it easy to run an IDE inside a pod does sound very powerful.  I can't promise anything though.

I'm not sufficiently familiar with the authentication and communication issues involved in X11 forwarding to really comment on this.  If you can detail the exact steps that are needed, and can help us work through development and testing, then we can try to explore how to offer this feature - making it easy to run an IDE inside a pod does sound very powerful.  I can't promise anything though.

 But could u tell me the location for "Attach Visual Studio Code" shown in the image above, so that I could dig deeper into the code before jumping to conceptual design. Did a word regex search in the master branch, nothing shows up :( .

 But could u tell me the location for "Attach Visual Studio Code" shown in the image above, so that I could dig deeper into the code before jumping to conceptual design. Did a word regex search in the master branch, nothing shows up :( .

Hmm. I don't recognise that command at all!  It could be contributed by another extension though, via our API.  Would you be able to post a list of your installed extensions please (code --list-extensions), and I can investigate where it comes from?  Thanks!

Hmm. I don't recognise that command at all!  It could be contributed by another extension though, via our API.  Would you be able to post a list of your installed extensions please (code --list-extensions), and I can investigate where it comes from?  Thanks!

I found the source for this button: https://github.com/microsoft/vscode-remote-release/issues/12, it is from Remote-Containers

I found the source for this button: https://github.com/microsoft/vscode-remote-release/issues/12, it is from Remote-Containers

Hey! Thanks for the report @Azure/arm-template-deployment-what-if
Judging from your latest comment in https://github.com/microsoft/vscode-remote-release/issues/12#issuecomment-769600513 it does appear that the functionality you're looking for is in another Kubernetes extension. Shall we close this in favour of that ticket instead? I don't think there's any action items we need to take here to address your issue.

Sure


Does not work with dates in 2017-12-01

@johntitus  any thought why this does not work ( it works using with the date mentioned in readme node simulate.js -b 2016-06-01 )
reserved-198-143:~/git/coinsimulator$ node simulate.js -b 2017-12-01

Spent: $0
Value: $0
Profit: $0
Growth: NaN%
reserved-198-143:~/git/coinsimulator$
reserved-198-143:~/git/coinsimulator$
reserved-198-143:~/git/coinsimulator$ node simulate.js -b 2017-11-01

Spent: $0
Value: $0
Profit: $0
Growth: NaN%
reserved-198-143:~/git/coinsimulator$

Hi @ksingh7, I came across this repo a couple of days ago and found the same issue. The problem is that the data in data/snapshots.json it's not updated.
I'm looking for a place where I can get this data easily


[Feat] DeepSpeed single file saving

What does this PR do?
DeepSpeed has released a new version which contains all gathering weights to a single process and saving. As discussed in #6691 it's probably best for now to prioritise one file saving as this is easiest to deploy etc. As a result I've made this the default behaviour when using ZeRO 3.
In addition, if a user uses the configure_sharded_model hook, it is necessary to call this in the load_from_checkpoint function as the test indicates via the model hook. This could potentially be done for the user, however right now I'll make it clear the docs in a separate PR that this needs to be handled manually.
cc @ananthsub @tchaton
Before submitting

[x] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[x] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is free to review the PR once the tests have passed.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[x] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

Hi @SeanNaren, this particular test is failing.

I'm also noticing the container is failing when DeepSpeed is added to the extras. I might move to having DeepSpeed installed within the GPU container instead of the extras file.

pytorch-lightning/pytorch_lightning/callbacks/model_checkpoint.py

If multiple of these modes are used, then definitely it would be an expensive operation. Currently I've only tested with save_last to ensure the final model can be saved. There also seems to be a limit in terms of the the all gather required to save, but this might be from Lightning not de-allocating memory (need to check after this PR is merged).
Rudimentary numbers I collected for 8 A100s using minGPT and using time probing when saving the model to disk

13B parameters with ZeRO 3 + offloading
Time taken to consolidate 10.642701387405396s (picked one of the 8 values logged from the GPUs, all were about the same)
Time taken to dump 95.15039467811584s

20B parameters with ZeRO 3 + offloading
Blows up CUDA OOM

20B parameters with ZeRO 3 + offloading + deepspeed checkpointing
Blows up CUDA OOM


MatPaginator not working in dynamically generated table.

I am generating data Dynamically, and displaying it in Data Table, but I`m unable to link MatPaginator with the data table. Data is getting displayed in the table. Following is the sample code snippet (also attaching it ):
sCollectionList = null;
dataSource = new MatTableDataSource<object>(this.sCollectionList);
displayedColumns: string[] = [];

// SCollectionService Holds my custom HTTP methods //
constructor(private stColServ: SCollectionService) {
}

// Calling it when a Button from UI is clicked //
submitFilter() {

  // stFilter is a valid objet which is getting passed to my custom post request//
  this.stColServ.stationFilter(this.stFilter).subscribe(
    data => {
    this.sCollectionList = data;

    this.displayedColumns = ['System Data' , 'Product Identifer' , 'Collected Date' , 'No Stations ?' , 'No Smnp ?', 'Export'];
this.dataSource.data = this.sCollectionList;

//      this.streamOfDataUpdates.subscribe(newData => this.dataSource.data = this.sCollectionList);
    this.dataSource.paginator = this.paginator;
    },
  );

}

@ViewChild(MatPaginator) paginator: MatPaginator;

/**
 * Set the paginator after the view init since this component will
 * be able to query its view for the initialized paginator.
 */
ngAfterViewInit() {
    this.dataSource.paginator = this.paginator;
}

I am Able to see the paginator on the UI, but it is totally unresponsive. Following is my sample HTML MatTable code, which displays data in the table:
<div style="margin-left: 30px;" class="example-container mat-elevation-z8 col-md-6 col-md-offset-3">

            <mat-table #table [dataSource]="dataSource">
            <ng-container matColumnDef="System Data">
            <mat-header-cell fxFlex="200px"
                *matHeaderCellDef> System Data </mat-header-cell>
            <mat-cell
                *matCellDef="let station"> <textarea readonly rows="8"
                wrap='off' show-tail> {{station['collectedData']}}</textarea> </mat-cell> </ng-container>
            <ng-container
                matColumnDef="Product Identifer"> <mat-header-cell
                *matHeaderCellDef>Product Identifer</mat-header-cell> <mat-cell
                *matCellDef="let station"> {{station.productIdentifier}}
            </mat-cell> </ng-container>
            <ng-container matColumnDef="Collected Date"> <mat-header-cell
                *matHeaderCellDef>Collected Date</mat-header-cell> <mat-cell
                *matCellDef="let station"> {{station.collectionDate}} </mat-cell> </ng-container>
            <ng-container
                matColumnDef="No Stations ?"> <mat-header-cell
                *matHeaderCellDef>No Stations ?</mat-header-cell> <mat-cell
                *matCellDef="let station"> {{station.noIpStations}} </mat-cell> </ng-container>
            <ng-container
                matColumnDef="No Smnp ?"> <mat-header-cell
                *matHeaderCellDef>No Smnp ?</mat-header-cell> <mat-cell
                *matCellDef="let station"> {{station.snmpFlagOn}} </mat-cell> </ng-container>
            <ng-container
                matColumnDef="Export"> <mat-header-cell
                *matHeaderCellDef> Export </mat-header-cell> <mat-cell
                *matCellDef="let station">
            <button
                (click)="downloadCSV(station.productIdentifier,station.collectedData)">Export
                CSV</button>
            </mat-cell> </ng-container>
            <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
            <mat-row *matRowDef="let row; columns: displayedColumns;"></mat-row>
            </mat-table>

            <mat-paginator *ngIf="sCollectionList" class="marginless-paginator-range-label"
                #paginator
                [pageIndex]="0"
                 [pageSize]="5"
                [pageSizeOptions]="[5, 10, 20]"> </mat-paginator>

        </div>

Following is the array response I receive, which is what I`m trying to display on UI:

[{
"productIdentifier":"365",
"snmpFlagOn":false,
"collectedData":"ahsgabbs s[lsnnspm] n",
"noIpStations":true,
"collectionDate":1511721000000
}]

Am I missing anything??

Your best bet it to set up a plunker or stackblitz with a working example of your issue and posting it on StackOverflow. We want to keep issues open only for bugs and features

Any update on this? I'm having the same sort of issues. I have search button that pulls back data from an API. Weird thing is that if I select my search button twice, then Pagination and Sort are set correctly. Just don't understand why it's not working on the first search.

If you open an issue with a link to stackblitz reproducing the issue, we can figure it out. Otherwise it's ambiguous what the trouble is

Even i am facing same issue for dynamic data. Can anyone give the solution for this bug.

Why is this issue closed? I have the same problem :(
Please reopen.

Hi guys, I finally figured this out, but it's not the cleanest solution. I was hiding the datatable on load based on an ngif. When that array was loaded then the table would show. At that point if I were to search my service again, then the paginator had a value and worked as expected. So my solution for now is to just show the empty mat-table. That way, pagination works on the first click. The drawback is that an empty table shows on load.

I have solution on that we are placing table with paginators in child component which inits when our data is already loaded (with *ngIf, for example). This way pagination and sorting works properly called in OnInit lifehook

just call
this.dataSource.paginator = this.paginator;
after table data updated.


feat!: add vector length check and improve slicing

Currently, inner-product vectors are split in half using pairs of slices. Further, the consistency of vector lengths is checked initially, but not on each round, which relies on the caller to keep the vectors intact.
This PR makes three improvements. First, it replaces each slice pair with a split, which reduces the likelihood of error and communicates the intent more clearly. Second, it limits the visibility of the round function to help guard against misuse. Finally, it adds a vector length consistency check to each round function as an internal assertion that the splits cannot panic.
Closes #55.
BREAKING CHANGE: Because this makes a function non-public, it is technically a breaking change. However, there were no known use cases for this, meaning the change should be non-breaking in practice.

This should be tested against the tari-crypto repository to ensure the visibility changes have no unintended side effects.

Something went wonky and is holding up tests and benchmarks. Marking as draft until I figure out what went wrong.

Superseded by #57.


Java 15 support

Please add JDK 15 support. Version 4.2.3 currently doesn't support it, for example:
java.lang.IllegalArgumentException: Unsupported class file major version 59
	at com.google.inject.internal.asm.$ClassReader.<init>(ClassReader.java:195)
	at com.google.inject.internal.asm.$ClassReader.<init>(ClassReader.java:176)
	at com.google.inject.internal.asm.$ClassReader.<init>(ClassReader.java:162)
	at com.google.inject.internal.asm.$ClassReader.<init>(ClassReader.java:283)
	at com.google.inject.internal.util.LineNumbers.<init>(LineNumbers.java:69)
	at com.google.inject.internal.util.StackTraceElements$1.load(StackTraceElements.java:49)
	at com.google.inject.internal.util.StackTraceElements$1.load(StackTraceElements.java:45)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3529)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2278)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2155)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2045)
	... 52 common frames omitted

you can swap out for guicedee which also contains the fix for the encapsulation warning
https://search.maven.org/artifact/com.guicedee.services/guice
<dependency>
  <groupId>com.guicedee.services</groupId>
  <artifactId>guice</artifactId>
  <version><IP_ADDRESS>-jre15</version>
</dependency>

All extensions as well in the same maven group-id
https://www.guicedee.com

I see https://github.com/google/guice/pull/1400 was opened.
Is there any timeline on when guice will support java 15?

Is there anything we can do to move this along? Guice is our current blocker for moving to Java 15.

Error: java.lang.IllegalArgumentException: Unsupported class file major version 59
Explanation: Class file Major version 59 corresponds to Java 15. You are using Java 15 (and compiling your code for it so the generated class files are only valid for Java 15 and newer).
The easy fix is to reconfigure your build to compile for Java 14 or earlier depending on what version of Java you need to use.
You can set the version of compiler at compile time. And compile your java code into old versions of java.
From Oracle article : http://docs.oracle.com/javase/1.5.0/docs/tooldocs/windows/javac.html
Cross-Compilation Example
Here we use javac to compile code that will run on a 1.4 VM.
Command:
javac -target 1.4 -bootclasspath jdk1.4.2/lib/classes.zip \
             -extdirs "" OldCode.java

You might also need following parameter to set denote the version of your code.
-source release
-Specifies the version of source code accepted.
This should support Apps developed with Java version 15 and newer and not able to run guice.
Hope this helps resolve the issue.

We've just released 5.0.0 beta, with Java 15 support, please test it with your project and report bugs.
See https://github.com/google/guice/wiki/Guice500


Integration with CSF

⚠ Please verify that this feature request has NOT been suggested before.

[X] I checked and didn't find similar feature request

🏷 Feature Request Type
New Notification, New Monitor, Other
🔖 Feature description
Integration with CSF to send notifications on alerts in CSF and postfix mail.
✔ Solution
Ability to receive as notification alerts from CSF for failed login, ssh access, postfix email in real time.
❓ Alternatives
No response
📝 Additional Context
No response

It is configserver firewall my apologies.
CSF already has an alert for login attempt SSHD but only for email which goes to spam.
If Uptime Kuma can extend that for Telegram and other notification options.
Also, there are emails that are stored on the server because SMTP is not configured, maybe they can also come as notifications to Telegram.
maybe an integration of this https://github.com/happycodinguk/telegram-system-monitor

Please link to the documentation and/or explain how you think they should be linked.
Their site is not navigable for normal users.  (I don't get what this Software is from their website)
How would CSF fit into us as an uptime monitoring solution? Do you mean monitoring CSF uptime?
On the topic of telegram-system-monitor: I don't see us adding support for such an imo sketchy software. (the Readme and the bash scripts don't inspire confidence in this being a secure and well-maintained software)

Please link to the documentation and/or explain how you think they should be linked.
Their site is not navigable for normal users.  (I don't get what this Software is from their website)

It seems there are not actual documentation unless when installed. This is the closest I found.
https://forum.configserver.com/viewtopic.php?p=32864#p32864

How would CSF fit into us as an uptime monitoring solution? Do you mean monitoring CSF uptime?

Currently, Uptime kuma can help with http, https, DNS databases and the likes which are really good. The idea is adding security monitoring which ConfigServer Firewall already do so well just only for email, maybe Uptime Kuma can extend that into the other notification options that are available.

On the topic of telegram-system-monitor: I don't see us adding support for such an imo sketchy software. (the Readme and the bash scripts don't inspire confidence in this being a secure and well-maintained software)

I only mentioned this software of having something similar to Uptime Kuma.


simplify artifacts

Maybe consider adding this to the top of the pipeline.yml file:
env:
  S3_TARGET: s3://hetest-s3-antivirus-lambda-code/bucket-antivirus-function-$BUILDKITE_BUILD_NUMBER.zip

Then replace your command with:
    command: aws s3 cp build/lambda.zip $S3_TARGET

Maybe consider adding this to the top of the pipeline.yml file:
env:
  S3_TARGET: s3://hetest-s3-antivirus-lambda-code/bucket-antivirus-function-$BUILDKITE_BUILD_NUMBER.zip

Then replace your command with:
    command: aws s3 cp build/lambda.zip $S3_TARGET

the prefix is environment specific too s3://hetest-s3-antivirus-lambda-code/bucket-antivirus-function-$BUILDKITE_BUILD_NUMBER.zip


Improve site accessibility

I want to improve the color contrast and make things legible to everyone.

I have completed and created a pull request


examples/launch_asha_yahpo.py not working

Describe the bug
examples/launch_asha_yahpo.py fails with the following bug: https://github.com/awslabs/syne-tune/actions/runs/5260727444/jobs/9508020339?pr=711#logs
To reproduce
Steps to reproduce the behavior:

Go to syne tune root
Run the following command python examples/launch_asha_yahpo.py
See error

Traceback (most recent call last):
  File "examples/launch_asha_yahpo.py", line 115, in <module>
    plot_yahpo_learning_curves(
  File "examples/launch_asha_yahpo.py", line 36, in plot_yahpo_learning_curves
    bb = trial_backend.blackbox
  File "/home/runner/work/syne-tune/syne-tune/syne_tune/blackbox_repository/simulated_tabular_backend.py", line 335, in blackbox
    self._blackbox = load_blackbox(
  File "/home/runner/work/syne-tune/syne-tune/syne_tune/blackbox_repository/repository.py", line 169, in load_blackbox
    return instantiate_yahpo(name, **yahpo_kwargs)
  File "/home/runner/work/syne-tune/syne-tune/syne_tune/blackbox_repository/conversion_scripts/scripts/yahpo_import.py", line 373, in instantiate_yahpo
    bench = benchmark_set.BenchmarkSet(scenario, active_session=False)
  File "/opt/hostedtoolcache/Python/3.8.16/x64/lib/python3.8/site-packages/yahpo_gym/benchmark_set.py", line 50, in __init__
    self.config_space = self._get_config_space()
  File "/opt/hostedtoolcache/Python/3.8.16/x64/lib/python3.8/site-packages/yahpo_gym/benchmark_set.py", line 371, in _get_config_space
    cs = CS_json.read(json_string)
  File "/opt/hostedtoolcache/Python/3.8.16/x64/lib/python3.8/site-packages/ConfigSpace/read_and_write/json.py", line 444, in read
    _construct_hyperparameter(
  File "/opt/hostedtoolcache/Python/3.8.16/x64/lib/python3.8/site-packages/ConfigSpace/read_and_write/json.py", line 5[24](https://github.com/awslabs/syne-tune/actions/runs/5260727444/jobs/9508020339?pr=711#step:9:25), in _construct_hyperparameter
    q=hyperparameter["q"],
KeyError: 'q'
Error: Process completed with exit code 1.

Expected behavior
Complete run
Paste the output of the pip freeze command below:
Done using SyneTune githb actions.

Once this issue is fixed, we should revert the chnage in #718 and re-introduce this example to github actions

Hi,
it appears that the new ConfigSpace 0.7.1 (released two weeks ago) conflicts with the serialized configspaces in YAHPO Gym (https://github.com/slds-lmu/yahpo_gym/issues/79).
I would be surprised if any YAHPO benchmarks currently run within syne-tune if the newest ConfigSpace version is installed.
For now, should be fixable by requiring configspace<=0.6.1 in
syne_tune/blackbox_repository/conversion_scripts/scripts/requirements-yahpo.txt
Hope this helps, otherwise let me know!


WA-97: Add possibility for hw encryption

Closes WA-97.
Changes proposed in this pull request:

KeyStorage interface to allow additional functionality/security when storing the key
AndroidKeyStorage that uses the AndroidKeyStore to encrypt a key

@gnosis/mobile-devs

Codecov Report

Merging #26 into master will decrease coverage by 1.99%.
The diff coverage is 4.87%.

@@            Coverage Diff            @@
##             master      #26   +/-   ##
=========================================
- Coverage     66.41%   64.42%   -2%
  Complexity      146      146
=========================================
  Files            49       50    +1
  Lines          1197     1234   +37
  Branches        185      192    +7
=========================================
  Hits            795      795
- Misses          314      349   +35
- Partials         88       90    +2

Impacted Files
Coverage Δ
Complexity Δ

...gnosis/svalinn/security/impls/AndroidKeyStorage.kt
0% <0%> (ø)
0 <0> (?)

...va/pm/gnosis/svalinn/security/EncryptionManager.kt
53.84% <100%> (ø)
0 <0> (ø)
:arrow_down:

...sis/svalinn/security/impls/AesEncryptionManager.kt
75% <14.28%> (-2.68%)
23 <0> (ø)

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 91bc342...aa4200b. Read the comment docs.