Improve payloadId generator

Problem
Current payloadId function has defects:

It doesn't guarantee to return a unique value (due to Math.random() not being suited for cryptography and due to single-threadedness of javascript)
It doesn't guarantee to always return a value greater than the previous one (since Date.now() can return the same value if called in the same tick)

Solution 1
Just use randomUUID().
This breaks the expected return type of current payloadId which is a number
Solution 2
Preserves function signature
The most simple, performant and (in my opinion) sufficient solution would be the following:
export function getPayloadId(): number {
  return crypto.getRandomValues(new Uint16Array(1))[0];
}

This would provide a sufficiently random number.
Solution 3
Provide incremental values
To always return a random value greater than the previous one, we have to introduce some state:
let base = 1;

export function getPayloadId(): number {
  return (base++ << 16) + crypto.getRandomValues(new Uint16Array(1))[0];
}

This way, getPayloadId() will guarantee a random value to be always greater than the previous one, even if the function is called in the same tick.
But this guarantee would only exist within a single runtime, so it will not be preserved between different scripts or session restarts.
Solution 4
This is the solution from the current PR. It's quite convoluted, but aims to prevent breaking changes.
export function payloadId(entropy = 3): number {
  const generator = entropy > 3 ? uint16Generator : uint8Generator;
  const shift = entropy > 3 ? 1000000 : 10000;
  const date = Date.now() * Math.pow(10, shift);
  const extra = generator.getRandomValue();
  return date + extra;
}

This guarantees incremental nature of the function if called within a single runtime and has a quite small intersection window of values between script restarts. Relying on timestamp can't guarantee us anything anyway because they can differ between systems, so this intersection I think is ok.
Also, this solution kinda ignores the entropy parameter (not fully, just branching whether or not it's larger than 3), but I don't see much value in preserving it.

Tell me what you think. My personal vote is for Solution 2, but I understand that it might be undesired to get rid of the incremental nature of the function, even if it worked improperly.

@arein Well, since this is a unique-number generator you can't conventionally unit-test it. The current payloadId implementation doesn't have tests either.
Possible tests I can add are:

Test that function returns a number
Test that for several outputs each one is greater than the previous one and they're unique (though it needs to be understood that this doesn't test true uniqueness)
Test that for several outputs the values are within the expected bounds.

Is that what you had in mind?

@arein Well, since this is a unique-number generator you can't conventionally unit-test it. The current payloadId implementation doesn't have tests either.
Possible tests I can add are:

Test that function returns a number
Test that for several outputs each one is greater than the previous one and they're unique (though it needs to be understood that this doesn't test true uniqueness)
Test that for several outputs the values are within the expected bounds.

Is that what you had in mind?

Yes that sounds good. It's obviously really sensitive and crucial logic and many of our systems e.g. the deduplication mechanism in the SDKs itself depend on properties of the generated ids such as uniqueness.

The current payloadId implementation doesn't have tests either

Thanks for raising the bar here

@arein Yeah, writing tests for these was a good idea

I added tests which are actually failing tests for the current payloadId() implementation

I updated the random generator. Now that we use local state, it makes no sense to generate a new random number on each call and it only complicates the code.

I also removed entropy parameter from payloadId. It was buggy anyway, since passing any value larger than 3 would produce a number larger than Number.MAX_SAFE_INTEGER, which in turn would increase the likeliness of repeated numbers even for different timestamps.

Thank you for the PR @everdimension 💯 💯
The new ID generation looks solid and having the tests to back that up is awesome!
I will spend some time testing it out to confirm there wouldn't be any surprises and backwards compatibility is preserved 💯

thank you for the PR @everdimension, I tested with

1.0.8-canary.0 - 23 digits IDs -> doesn't work
1.0.8-canary.1 - 19 digits IDs that I suggested, works correctly

What do you mean by "doesn't work" btw? So some code relies on the generated id length? In which codebase?

@everdimension https://github.com/WalletConnect/walletconnect-monorepo, it contains the main JS clients such as web3wallet

@ganchoradkov Pushed the update: https://github.com/WalletConnect/walletconnect-utils/pull/168/commits/cbaedce5b8acdeda8db8f701b16225eb024c8ce6


Linting and formatting hotfixes for AudioTrack Row

Fixes checks passing on the main branch. Not sure how this lint warning snuck through, but in any case it's a quick fix.
Checklist

[x] My pull request has a descriptive title (not a vague title like Update index.md).
[x] My pull request targets the default branch of the repository (main or master).
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[ ] I added or updated tests for the changes I made (if applicable).
[ ] I added or updated documentation (if applicable).
[x] I tried running the project locally and verified that there are no visible errors.

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

This is ready for re-review as well @dhruvkb if you didn't see. Thanks!


[vs2017] Adapt some variadic template aliases to not trip MSVC 2017.

It seems that MSVC 2017 trips parsing an using of an using of a variadic
template. Removing one level of using seems to work fine. A preprocessor
macro allows to keep using the same syntax in both MSVC 2017 and other
compilers without making a lot of a mess.
I think this might have been uncovered by landing apple/llvm-project#2898
when it was picked up by the auto-merger for the swift/main branch.
I think this was not a problem until now, because Metadata.h was
compiled using the just compiled Clang until now. LLDB is compiled using
MSVC in Windows.
Windows VS2017 CI: https://ci-external.swift.org/job/oss-swift-windows-x86_64/
First failing: https://ci-external.swift.org/job/oss-swift-windows-x86_64/7448/ (might disappear)
Last failure until now: https://ci-external.swift.org/job/oss-swift-windows-x86_64/7462/
/cc @bulbazord @compnerd

@swift-ci please smoke test

Merging to avoid the brokenness.


web: Update from bootstrap 3.3.1 to bootstrap 4.0.0

implemented: #4754

Updated the html template files to be bootstrap 4.0.0 compatible, ensuring that all the functionality and ui is the same.
vendor:
-reimplemented glyphicons from bootstrap 3 to work with 4.0.0. used: https://github.com/Darkseal/bootstrap4-glyphicons.
-jquery to 3.3.1.
-bootstrap3-typeahead updated to work with bootstrap 4
css:
minor css update to alerts.css, graph.css, prometheus.css. navbar and glyphicon button highlighting color inheritance.
note: commits show up as nov 5th, as we didn't do commit signoff messages in initial fork.

cc @juliusv

Thanks for looking into it! You've got conflicts.

Thanks! I'll have a look next week.

Thanks Simon. Hopefully the build passes now, i'll check in next week :)

I tried it quickly and it looks good albeit a few remarks. I've tested on Firefox (63.0.1 on Fedora).

Somehow you're missing https://github.com/prometheus/prometheus/pull/4764.
There's not enough margin because the top menu bar and the main header.
Alert rows have no background color.
The built-in console templates are broken by this change (check http://<prometheus_URL>/consoles/prometheus.html for instance).
The button color is lighter, I don't have a strong opinion on this though so I'm fine keeping the new color.

@simonpasquier @achiuBAE Any deadline for this task, if it gets merged then when can we expect this into a release?

@mkumatag Prometheus has adopted a time-based release schedule so there should a new Prometheus release every 6 weeks. You can check the schedule here.
@achiuBAE there are new conflicts.

@simonpasquier All conflicts have been resolved, if there is still an issue with the margins clearing your cache should then ensure you're now viewing the latest css.

Thanks a lot for doing this! This looks very good. A few minor comments:

web/ui/static/vendor/bootstrap-4.1.3/css/.DS_Store should be removed.
I still don't see the UI change introduced by https://github.com/prometheus/prometheus/pull/4764.

We're currently in feature freeze waiting for the final v2.6.0 so in any case this PR will have to wait a bit before being merged.
cc @juliusv for feedback.

Couple of things I noticed when playing with this, before looking at code:

The control buttons in the Graph view are no longer same height and style as their input elements, and no longer connected to them:

In the Graph view's typeahead autocomplete dropdown, you can no longer select elements with KeyUp and KeyDown.
On the /targets page, there is very little spacing between the "All | Unhealthy" selector at the top and the first job group.

@jritchieBAE Just gave this an actual try and there's still some kinks here and there (spacing, styling), but I guess that stuff can be easily fixed. The missing autosuggest keyboard support is an actual problem of course. I'm currently also rebuilding the query browser page in React (with Bootstrap 4 already, so I can base it on this PR), so maybe I will find a dropdown component that works well. Or let me know if you do. I've tried out a couple already, but some are clearly not up for the task (slow with many items) or need a lot of custom work to behave like the one we had.

@juliusv I managed to narrow the issue down. The behaviour of keyboard arrows in the typeahead was being interfered with by the jquery.hotkeys plugin. Disabling this plugin makes the typeahead work as desired. As far as I can tell there are actually no references in the code to the hotkeys file so no functionality is lost.

@jritchieBAE Great, the keyUp/keyDown works now, but I don't see the currently selected dropdown item being highlighted anymore. This makes it hard to see where in the list you are currently navigating. Do you think this is something that can be added back with this autosuggest picker?

@juliusv I'll look into it, hopefully just a CSS change

@jritchieBAE Great. After that, could you rebase on the latest master and rebuild the assets (there's currently a conflict)? And would you be ok with re-opening this PR against a bootstrap4 branch instead of master so I can do some last visual tweaks on it before it goes out?

@jritchieBAE With your latest changes (when rebuilding assets) I get the correct item highlighting now! There is still one odd behavior: if you select one of the items with the cursor keys and press Return to select it, the input field loses focus. This does not happen in current Prometheus, where you want to keep typing in the expression box after selecting a metric (it keeps the focus in the expression box).

@jritchieBAE With your latest changes (when rebuilding assets) I get the correct item highlighting now! There is still one odd behavior: if you select one of the items with the cursor keys and press Return to select it, the input field loses focus. This does not happen in current Prometheus, where you want to keep typing in the expression box after selecting a metric (it keeps the focus in the expression box).

@juliusv I have been unable to reproduce that issue - for me the input field retains focus. I have tested on multiple browsers.
Also, if you create an empty branch for me to make the new pull request into, I will do so :+1:

@jritchieBAE Hm weird, the loss of focus only happens the second time I select something from the dropdown. E.g.:

Go to empty /graph page.
Type node_cpu.
With cursor keys, select node_cpu_seconds_total in the dropdown -> focus remains
Erase the expression input.
Do the same thing again -> no focus on the input field anymore.

I created a new bootstrap4 branch from master against which you should be able to reopen the PR.

In light of the new pull request #5192 , could this pull request be closed?

Yes, thanks, closing here.


fix the error of using invalid key 'force' in nvim_set_hl function

Checklist

[x] I read the CONTRIBUTING GUIDE
[x] I opened a CONTRIBUTING ISSUE before opening the PR

Description
I found the error for which I have raised the issue.

Hey slugbyte sir,
sorry for my mistake earlier but now if you see in my commit ca9ce05
you will see that I have fixed the issue properly. And now the error does not show in my neovim and the theme works.

I just tested on nvim versions 0.9.1 0.9.2 0.9.4 0.9.5 0  and 0.10.0 and found out that force only works on version 10 and above
I also realized I only have one highlight that uses force and it is unnecessary so I removed it :)


Update cross-tenant-mailbox-migration.md

Updated the Domain Sharing link to aka.ms/domainsharingpreview instead of aka.ms/domainshringpreview

Docs Build status updates of commit 4d8bca3:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-365/enterprise/cross-tenant-mailbox-migration.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 36087ef:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-365/enterprise/cross-tenant-mailbox-migration.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

@kelleyvice-msft Please merge this PR. Thanks

Learn Build status updates of commit 971c956:
:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel


Remove stan:: namespace qualification

Summary:
We don't need the stan:: namespace qualification within the stan namespace (all of the math library) unless there's ambiguity with another namespace.
See @bob-carpenter's comment
Current Version:
v2.16.0

Thanks much for turning these into issues.

Closed via #1155


[Bug]: TypeScript errors TS2416 and TS2694 in @rspack/core

System Info
  System:
    OS: Linux 6.11 NixOS 24.11 (Vicuna) 24.11 (Vicuna)
    CPU: (12) x64 Intel(R) Core(TM) i7-10710U CPU @ 1.10GHz
    Memory: 6.97 GB / 15.26 GB
    Container: Yes
    Shell: 5.2.32 - /run/current-system/sw/bin/bash
  Binaries:
    Node: 20.17.0 - ~/.nix-profile/bin/node
    npm: 10.8.2 - ~/.nix-profile/bin/npm
    pnpm: 9.12.0 - ~/.nix-profile/bin/pnpm
    bun: 1.1.31 - ~/.nix-profile/bin/bun
  Browsers:
    Chromium: 130.0.6723.58
  npmPackages:
    @rspack/core: ^1.0.14 => 1.0.14

Details
I get many TypeScript errors just from doing import "@rspack/core" in a TypeScript file.
node_modules/@rspack/core/dist/Compilation.d.ts:399:5 - error TS2416: Property 'entries' in type 'Entries' is not assignable to the same property in base type 'Map<string, JsEntryData>'.
node_modules/@rspack/core/dist/Compilation.d.ts:400:5 - error TS2416: Property 'values' in type 'Entries' is not assignable to the same property in base type 'Map<string, JsEntryData>'.
node_modules/@rspack/core/dist/Compilation.d.ts:401:5 - error TS2416: Property '[Symbol.iterator]' in type 'Entries' is not assignable to the same property in base type 'Map<string, JsEntryData>'.
node_modules/@rspack/core/dist/Compilation.d.ts:407:5 - error TS2416: Property 'keys' in type 'Entries' is not assignable to the same property in base type 'Map<string, JsEntryData>'.
node_modules/@rspack/core/dist/config/zod.d.ts:2751:48 - error TS2694: Namespace 'z' has no exported member 'objectUtil'.

(The first four are new with TypeScript 5.6, the last is not.)
Reproduce link
No response
Reproduce Steps
From an empty directory:
$ npm i @rspack/core @types/graceful-fs @types/node tapable typescript webpack webpack-dev-server
$ echo 'import "@rspack/core"' > test.ts
$ npx tsc --strict --moduleResolution node --esModuleInterop --target ESNext test.ts
node_modules/@rspack/core/dist/Compilation.d.ts:399:5 - error TS2416: Property 'entries' in type 'Entries' is not assignable to the same property in base type 'Map<string, JsEntryData>'.
  Type '() => MapIterator<[string, import("/tmp/r/node_modules/@rspack/binding/binding").JsEntryData]>' is not assignable to type '() => MapIterator<[string, import("/tmp/r/node_modules/@rspack/binding/binding").JsEntryData]>'. Two different types with this name exist, but they are unrelated.
    Type 'MapIterator<[string, JsEntryData]>' is missing the following properties from type 'MapIterator<[string, JsEntryData]>': map, filter, take, drop, and 9 more.

399     entries(): MapIterator<[string, binding.JsEntryData]>;
        ~~~~~~~

node_modules/@rspack/core/dist/Compilation.d.ts:400:5 - error TS2416: Property 'values' in type 'Entries' is not assignable to the same property in base type 'Map<string, JsEntryData>'.
  Type '() => MapIterator<import("/tmp/r/node_modules/@rspack/binding/binding").JsEntryData>' is not assignable to type '() => MapIterator<import("/tmp/r/node_modules/@rspack/binding/binding").JsEntryData>'. Two different types with this name exist, but they are unrelated.
    Type 'MapIterator<JsEntryData>' is missing the following properties from type 'MapIterator<JsEntryData>': map, filter, take, drop, and 9 more.

400     values(): MapIterator<binding.JsEntryData>;
        ~~~~~~

node_modules/@rspack/core/dist/Compilation.d.ts:401:5 - error TS2416: Property '[Symbol.iterator]' in type 'Entries' is not assignable to the same property in base type 'Map<string, JsEntryData>'.
  Type '() => MapIterator<[string, import("/tmp/r/node_modules/@rspack/binding/binding").JsEntryData]>' is not assignable to type '() => MapIterator<[string, import("/tmp/r/node_modules/@rspack/binding/binding").JsEntryData]>'. Two different types with this name exist, but they are unrelated.
    Type 'MapIterator<[string, JsEntryData]>' is missing the following properties from type 'MapIterator<[string, JsEntryData]>': map, filter, take, drop, and 9 more.

401     [Symbol.iterator](): MapIterator<[string, binding.JsEntryData]>;
        ~~~~~~~~~~~~~~~~~

node_modules/@rspack/core/dist/Compilation.d.ts:407:5 - error TS2416: Property 'keys' in type 'Entries' is not assignable to the same property in base type 'Map<string, JsEntryData>'.
  Type '() => MapIterator<string>' is not assignable to type '() => MapIterator<string>'. Two different types with this name exist, but they are unrelated.
    Type 'MapIterator<string>' is missing the following properties from type 'MapIterator<string>': map, filter, take, drop, and 9 more.

407     keys(): MapIterator<string>;
        ~~~~

node_modules/@rspack/core/dist/config/zod.d.ts:2751:48 - error TS2694: Namespace 'z' has no exported member 'objectUtil'.

2751             asset: z.ZodOptional<z.ZodObject<z.objectUtil.extendShape<{
                                                    ~~~~~~~~~~

Found 5 errors in 2 files.

Errors  Files
     4  node_modules/@rspack/core/dist/Compilation.d.ts:399
     1  node_modules/@rspack/core/dist/config/zod.d.ts:2751

@GiveMe-A-Name cc

@GiveMe-A-Name , after #8279 , there is still a type error of zod, but z.objectUtil exists on my machine, could you have a look?
"我不会了"
node_modules/@rspack/core/dist/config/zod.d.ts:2751:48 - error TS2694: Namespace 'z' has no exported member 'objectUtil'.

2751             asset: z.ZodOptional<z.ZodObject<z.objectUtil.extendShape<{
                                                    ~~~~~~~~~~

Found 5 errors in 2 files.

Errors  Files
     4  node_modules/@rspack/core/dist/Compilation.d.ts:399
     1  node_modules/@rspack/core/dist/config/zod.d.ts:2751

a workaround to avoid this type error, is to set skipLibCheck: true in tsconfig.json

The z.objectUtil problem must have something to do with prebundle, because it disappears if I npm i zod and manually edit<EMAIL_ADDRESS>to import the real zod:
@@ -1,6 +1,6 @@
 import type { JsAssetInfo } from "@rspack/binding";
 import type * as webpackDevServer from "webpack-dev-server";
-import { z } from "../../compiled/zod";
+import { z } from "zod";
 import { Chunk } from "../Chunk";
 import type { Compilation, PathData } from "../Compilation";
 import { Module } from "../Module";

The z.objectUtil problem must have something to do with prebundle, because it disappears if I npm i zod and manually edit<EMAIL_ADDRESS>to import the real zod:

weird... It looks like precompiled is exported normally. I don't know much about namespace trick.

Ah, the problem is that prebundle generated
declare const z_objectUtil: typeof objectUtil;

which declares an object that contains the value members but not the type members of the objectUtil namespace.

I opened an upstream rollup-plugin-dts issue and fix:

Swatinem/rollup-plugin-dts#322
Swatinem/rollup-plugin-dts#323


SIL: fix a bug which can cause the stack nesting to get broken by SimplifyCFG's jump threading

We must not copy an alloc_ref [stack] in jump-threading (and similar optimizations).
fixes rdar://problem/28878079

@swift-ci Please smoke test and merge

@swift-ci Please smoke test and merge


Install Command in Terminal

The install [plugin] command in the breakthecode terminal is not working as expected.
Running the command install test yields the same results as install RunHacx. The same image and message about installing RunHacx shows up in the terminal no matter what plugin name is given.

Same here, tried other commands, but all behave the same as runhacx:
install test
install common
install windows
install runhacx

Even tried cloning other repos:
gh repo clone breakthecode2/test
gh repo clone breakthecode2/common
gh repo clone breakthecode2/windows
gh repo clone breakthecode2/runhacx

Thanks for raising the issue, has been fixed

https://c.tenor.com/O3FkWgScIUMAAAAC/sponge-bob-thumbs-up.gif


Request response payload compressed

Request XML or JSON in a gzip format.
The payload type would be GZIP_XML or GZIP_JSON.
The client assumes the responsibility of decompressing the payload.

Hey Jeff, what about just using the native HTTP support with the Content-Encoding HTTP Header.  Perhaps the probe can have an encoding tag list of the encodings it supports (GZip, BZip, EXI, etc)

I was thinking the same thing.  But one thought at a time.

On May 11, 2015, at 8:27 PM, Jeff Vettraino<EMAIL_ADDRESS>wrote:
Hey Jeff, what about just using the native HTTP support with the Content-Encoding HTTP Header. Perhaps the probe can have an encoding tag list of the encodings it supports (GZip, BZip, EXI, etc)
—
Reply to this email directly or view it on GitHub https://github.com/di2e/Argo/issues/40#issuecomment-101080706.


How to visulize the convolution layer and feature layer in mxnet after cnn was finished trained?

I want to plot or visualize the result of each layers out from a trained CNN with mxnet in R. Like w´those abstract art from what a nn's each layer can see.
But I don't know how. Please somebody help me. One way I can think out is to put the weights and bias back to every step and plot the step out. But when I try to put model$arg.params$convolution0_weight back to mx.symbol.Convolution(), I get
Error in mx.varg.symbol.Convolution(list(...)) :
./base.h:291: Unsupported parameter type object type for argument weight, expect integer, logical, or string.
Can anyone help me?

mx.viz.plot_network()
This can show the structure of the network, but I don't know how to display the parameters of the network.

Thank you @ahong007007 . i want to extract the informationfrom every layer from mxnet cnn.
I thought out one way, but encounter a difficulty at one step. Here is what I did.
I found all the trained cnn's parameters in model$arg.params , and to compute with parameters we can use mx.nd... founctions as bellow:
`conv1_result<- mxnet::mx.nd.Convolution(data=mx.nd.array(train_array),weight=model$arg.params$convolution0_weight,bias=model$arg.params$convolution0_bias,kernel=c(8,8),num_filter = 50)
str(conv1_result)
tanh1_result<-mx.nd.Activation(data= conv1_result, act_type = "sigmoid")
pool1_result <- mx.nd.Pooling(data = tanh1_result, pool_type = "avg", kernel = c(4,4), stride = c(4,4))
#conv2 result
conv2_result<- mxnet::mx.nd.Convolution(data=pool1_result,weight=model$arg.params$convolution1_weight,bias=model$arg.params$convolution1_bias,kernel=c(5,5),num_filter = 50)
str(conv1_result)
tanh2_result<-mx.nd.Activation(data= conv1_result, act_type = "sigmoid")
pool2_result <- mx.nd.Pooling(data = tanh1_result, pool_type = "avg", kernel = c(4,4), stride = c(4,4))

1st fully connected layer result
flat_result <- mx.nd.flatten(data = pool2_result)
fcl_1_result <- mx.nd.FullyConnected(data = flat_result,weight = model$arg.params$fullyconnected0_weight,bias = model$arg.params$fullyconnected0_bias, num_hidden = 500)
tanh_3_result <- mx.nd.Activation(data = fcl_1_result, act_type = "tanh")
2nd fully connected layer result
fcl_2_result <- mx.nd.FullyConnected(data = tanh_3,weight = model$arg.params$fullyconnected1_weight,bias = model$arg.params$fullyconnected1_bias, num_hidden =100)`
but when I came to mx.nd.FullyConnected() step , I encountered not sufficient memory(i have 16 GB RAM) and R crashed.
So, does anyone know how to batch_size the input data in mx.nd.FullyConnected(), or any method to make mx.nd.FullyConnected() run successfully as  mx.model.FeedForward.create() did?

Try to use gluon interface,
http://gluon.mxnet.io/chapter04_convolutional-neural-networks/deep-cnns-alexnet.html


chore: remove random wait from test suite

Checklist

[ ] Affected Issues have been mentioned in the Closing issues section
[ ] Documentation has been written/updated
[x] PR title is ready for changelog and subsystem label(s) applied

We now have proper readiness signalling in keycloak so the random wait should no longer be necessary.
This will make test runs slightly faster.

Closing issues
n/a

Fine, you win, merging!


Add ArborWebApps links to the Vagrant/Ansible Arbor install

Also add arbor.png to fully set up Arbor.

This was fixed by @zackgalbreath


Evaluate composable proofs for authentication & authorization

Specifically:

can a JWT-style auth token be transformed into a noninteractive proof using the Fiat-Shamir heuristic
if so, what are the other advantages and disadvantages relative to our present interactive auth protocol? are noninteractive tokens easier to forge? are they more resistant to quantum private-key-cracking algorithms?
what steps are needed to upgrade to noninteractive auth tokens, if appropriate

This will be done in https://github.com/haydnv/rjwt/issues/3


Update Search input to type="search"

This is semantically correct and works just as well.

uhug
On Jan 9, 2017 15:36, "Christian Oliff"<EMAIL_ADDRESS>wrote:

This is semantically correct and works just as well.
You can view, comment on, or merge this pull request online at:
https://github.com/twbs/bootstrap/pull/21617
Commit Summary

Update Search input to type="search"

File Changes

M docs/_includes/nav-docs.html
https://github.com/twbs/bootstrap/pull/21617/files#diff-0 (2)

Patch Links:

https://github.com/twbs/bootstrap/pull/21617.patch
https://github.com/twbs/bootstrap/pull/21617.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/twbs/bootstrap/pull/21617, or mute the thread
https://github.com/notifications/unsubscribe-auth/AMAGXUyJdTtc0m7Ysk5SSY5YDSsTJOuRks5rQeOZgaJpZM4Ld_2a
.


available for reward model:  OpenAssistant / reward-model-deberta-v3-large-v2

We might need a new branch: more reward models.

this PR destroyed the original codes, you should rebase your code on latest commit. Make sure the original script is runnable


Problem building web part dependent on Shared Library

Category

[x] Question

Question
How to build PersonalCalendar Web Part? Trouble with Shared Library
Sequence of commands executed
git clone https://github.com/pnp/sp-starter-kit.git
cd sp-starter-kit
npm install
npm run initialize
cd source/library-starter-kit-shared
npm install
gulp build
npm link
cd ../react-personal-calendar
npm install
npm link @starter-kit/shared-library
gulp build
gulp bundle <- Error here

 Stack Trace
$ gulp bundle
Build target: DEBUG
[08:22:19] Using gulpfile ~\Documents\Git\sp-starter-kit\source\react-personal-calendar\gulpfile.js
[08:22:19] Starting gulp
[08:22:19] Starting 'bundle'...
[08:22:19] Starting subtask 'configure-sp-build-rig'...
[08:22:19] Finished subtask 'configure-sp-build-rig' after 3.74 ms
[08:22:19] Starting subtask 'pre-copy'...
[08:22:19] Finished subtask 'pre-copy' after 21 ms
[08:22:19] Starting subtask 'copy-static-assets'...
[08:22:19] Starting subtask 'sass'...
[08:22:19] Finished subtask 'copy-static-assets' after 45 ms
[08:22:19] Finished subtask 'sass' after 169 ms
[08:22:19] Starting subtask 'tslint'...
[08:22:20] [tslint] tslint version: 5.12.1
[08:22:20] Starting subtask 'tsc'...
[08:22:20] [tsc] typescript version: 2.9.2
[08:22:22] Finished subtask 'tsc' after 2.42 s
[08:22:22] Finished subtask 'tslint' after 3.2 s
[08:22:22] Starting subtask 'post-copy'...
[08:22:22] Finished subtask 'post-copy' after 263 μs
[08:22:22] Starting subtask 'collectLocalizedResources'...
[08:22:22] Finished subtask 'collectLocalizedResources' after 5.11 ms
[08:22:22] Starting subtask 'configure-webpack'...
[08:22:23] Finished subtask 'configure-webpack' after 839 ms
[08:22:23] Starting subtask 'webpack'...
[08:22:27] Error - [webpack] 'dist':
../library-starter-kit-shared/lib/libraries/spStarterKitShared/SpStarterKitSharedLibrary.js
Module not found: Error: Can't resolve 'SpStarterKitSharedLibraryStrings' in 'C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\libraries\spStarterKitShared'
resolve 'SpStarterKitSharedLibraryStrings' in 'C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\libraries\spStarterKitShared'
Parsed request is a module
using description file: C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\package.json (relative path: ./lib/libraries/spStarterKitShared)
Field 'browser' doesn't contain a valid alias configuration

resolve as module

  C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-

shared\lib\libraries\spStarterKitShared\node_modules doesn't exist or is not a directory
  C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\libraries\spStarterKitShared\lib doesn't exist or is not a directory

  C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\libraries\node_modules doesn't exist or is not a directory

  C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\libraries\lib doesn't exist or is not a directory

  C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\node_modules doesn't exist or is not a directory

  C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\lib doesn't exist or is not a directory

  C:\Users\marcus\Documents\Git\sp-starter-kit\source\node_modules doesn't exist or is not a directory

  C:\Users\marcus\Documents\Git\sp-starter-kit\source\lib doesn't exist or is not a directory

  C:\Users\marcus\Documents\Git\sp-starter-kit\lib doesn't exist or is not a directory

  C:\Users\marcus\Documents\Git\node_modules doesn't exist or is not a directory

  C:\Users\marcus\Documents\Git\lib doesn't exist or is not a directory

  C:\Users\marcus\Documents\node_modules doesn't exist or is not a directory

  C:\Users\marcus\Documents\lib doesn't exist or is not a directory

  C:\Users\marcus\lib doesn't exist or is not a directory

  C:\Users\node_modules doesn't exist or is not a directory

  C:\Users\lib doesn't exist or is not a directory

  C:\node_modules doesn't exist or is not a directory

  C:\lib doesn't exist or is not a directory

  looking for modules in C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\node_modules

    using description file: C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\package.json (relative path: ./node_modules)

      Field 'browser' doesn't contain a valid alias configuration

  looking for modules in C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib

    using description file: C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\package.json (relative path: ./lib)

      Field 'browser' doesn't contain a valid alias configuration

  looking for modules in C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules

    using description file: C:\Users\marcus\Documents\Git\sp-starter-kit\package.json (relative path: ./node_modules)

      Field 'browser' doesn't contain a valid alias configuration

  looking for modules in C:\Users\marcus\node_modules

    No description file found

    Field 'browser' doesn't contain a valid alias configuration

      using description file: C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\package.json (relative path: ./node_modules/SpStarterKitSharedLibraryStrings)

        no extension

          Field 'browser' doesn't contain a valid alias configuration

      using description file: C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\package.json (relative path: ./lib/SpStarterKitSharedLibraryStrings)

        no extension

          Field 'browser' doesn't contain a valid alias configuration

      using description file: C:\Users\marcus\Documents\Git\sp-starter-kit\package.json (relative path: ./node_modules/SpStarterKitSharedLibraryStrings)

        no extension

          Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-

shared\node_modules\SpStarterKitSharedLibraryStrings doesn't exist
        .wasm

          Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings doesn't exist

        .wasm

          Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings doesn't exist
        .wasm

          Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-

shared\node_modules\SpStarterKitSharedLibraryStrings.wasm doesn't exist
        .mjs

          Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings.wasm doesn't exist

        .mjs

          Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings.wasm doesn't exist
        .mjs

          Field 'browser' doesn't contain a valid alias configuration

    No description file found

    no extension

      Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\node_modules\SpStarterKitSharedLibraryStrings.mjs doesn't exist

        .js

          Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings.mjs doesn't exist

        .js

          Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings.mjs doesn't exist

        .js

          Field 'browser' doesn't contain a valid alias configuration

      C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings doesn't exist

    .wasm

      Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\node_modules\SpStarterKitSharedLibraryStrings.js doesn't exist

        .json

          Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings.js doesn't exist

        .json

          Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings.js doesn't exist

        .json

          Field 'browser' doesn't contain a valid alias configuration

      C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings.wasm doesn't exist

    .mjs

      Field 'browser' doesn't contain a valid alias configuration

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\node_modules\SpStarterKitSharedLibraryStrings.json doesn't exist

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings.json doesn't exist

          C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings.json doesn't exist

      C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings.mjs doesn't exist

    .js

      Field 'browser' doesn't contain a valid alias configuration

        as directory

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\node_modules\SpStarterKitSharedLibraryStrings doesn't exist

        as directory

          C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings doesn't exist

        as directory

          C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings doesn't exist

      C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings.js doesn't exist

    .json

      Field 'browser' doesn't contain a valid alias configuration

      C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings.json doesn't exist

    as directory

      C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings doesn't exist

[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\libraries\spStarterKitShared\node_modules]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\libraries\spStarterKitShared\lib]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\libraries\node_modules]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\libraries\lib]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\node_modules]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\lib]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\node_modules]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\lib]
[C:\Users\marcus\Documents\Git\sp-starter-kit\lib]
[C:\Users\marcus\Documents\Git\node_modules]
[C:\Users\marcus\Documents\Git\lib]
[C:\Users\marcus\Documents\node_modules]
[C:\Users\marcus\Documents\lib]
[C:\Users\marcus\lib]
[C:\Users\node_modules]
[C:\Users\lib]
[C:\node_modules]
[C:\lib]
[C:\Users\marcus\node_modules\package.json]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\node_modules\SpStarterKitSharedLibraryStrings]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings]
[C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\node_modules\SpStarterKitSharedLibraryStrings.wasm]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings.wasm]
[C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings.wasm]
[C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings\package.json]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\node_modules\SpStarterKitSharedLibraryStrings.mjs]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings.mjs]
[C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings.mjs]
[C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\node_modules\SpStarterKitSharedLibraryStrings.js]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings.js]
[C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings.js]
[C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings.wasm]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\node_modules\SpStarterKitSharedLibraryStrings.json]
[C:\Users\marcus\Documents\Git\sp-starter-kit\source\library-starter-kit-shared\lib\SpStarterKitSharedLibraryStrings.json]
[C:\Users\marcus\Documents\Git\sp-starter-kit\node_modules\SpStarterKitSharedLibraryStrings.json]
[C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings.mjs]
[C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings.js]
[C:\Users\marcus\node_modules\SpStarterKitSharedLibraryStrings.json]
@ ../library-starter-kit-shared/lib/libraries/spStarterKitShared/SpStarterKitSharedLibrary.js 1:0-60 13:19-26 16:19-26
@ ../library-starter-kit-shared/lib/index.js
@ ./lib/webparts/personalCalendar/PersonalCalendarWebPart.js

Environment:
Windows 10 Pro
Node 8.9.4
Gulp: 3.9.1
Where am i going wrong in my build process? I have been trying to follow documentation as best i could.

That is the generally correct list of steps. My understanding is that when you creating the link from the personal calendar folder, that should allow the build process to properly resolve the shared library package. Apparently not.
After you run your npm install in the personal calendar webpart folder, manually add the following to your dependencies section:
"@starter-kit/shared-library": "1.0.0"
i.e:
"dependencies": {
"@microsoft/sp-core-library": "1.9.1",
...
"react": "16.8.5",
"react-dom": "16.8.5",
"@starter-kit/shared-library": "1.0.0"
},
Then your gulp serve should work fine.
If you npm install with the @starter-kit/shared-library in place, you may receive an error if it couldn't be resolved.

Adding more context here, the documentation for this webpart was finally updated to provide better guidance on installing and customizing this webpart.


Ubuntu 15.10 Failed Build

Building on Ubuntu 15.10. Same issue as detailed  here.
I was able to get it to build by changing the Gio::FileMonitorFlags::FILE_MONITOR_WATCH_MOVES to Gio::FileMonitorFlags::FILE_MONITOR_SEND_MOVED
In the Ubuntu library for (glibmm), looking at the source, in file.h where it should define FILE_MONITOR_WATCH_MOVES, the enum doesn't contain it.
enum FileMonitorFlags
{
  FILE_MONITOR_NONE = 0x0
  FILE_MONITOR_WATCH_MOUNTS = (1 << 0),
  FILE_MONITOR_SEND_MOVED = (1 << 1),
  FILE_MONITOR_WATCH_HARD_LINKS = (1 << 2)
};

Which since it is 2.44 it should contain that declaration but it doesn't.
Unless FILE_MONITOR_WATCH_MOVES was implemented after version 2.44.0, the version that installs by default with Ubuntu15.10.

Thank you. It might be a documentation issue here for instance: https://developer.gnome.org/glibmm/stable/group__giommEnums.html#ga469f795e9a4dddb2421c0e5568be6649. We might fix this by figuring out which version of glibmm really introduced FILE_MONITOR_WATCH_MOVES.


AccountController - Index

Implementing IActionResult Index()

Note: User.Identity.IsAuthenticated will only with with the [Authorize] attribute.
[Complete]
Not Authenticated: 403 code returns (tested with fiddler) and directed to forbidden view
Authenticated: HttpContext injected correctly, able to find user by id from repository.
[Progress]
GetProfileView(user) in progress.


Extracted and tested the database interactions from Contribution.

The goal of this PR is to simplify Contribution and get decent tests around its database interactions, particularly the database migrations from version-to-version and construction from a Cursor.
To that end

Database interactions were extracted into a ContributionDao
Tests were added
Classes that formerly called save(), delete() on Contribution were updated to use a data access object

Codecov Report

Merging #1026 into master will decrease coverage by 0.01%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master   #1026      +/-   ##
=========================================
- Coverage    3.71%    3.7%   -0.02%
=========================================
  Files         104     105       +1
  Lines        5143    5160      +17
  Branches      489     485       -4
=========================================
  Hits          191     191
- Misses       4939    4956      +17
  Partials       13      13

Impacted Files
Coverage Δ

...ns/contributions/ContributionsContentProvider.java
11.42% <ø> (ø)
:arrow_up:

...r/free/nrw/commons/contributions/Contribution.java
0% <0%> (ø)
:arrow_up:

...ommons/modifications/ModificationsSyncAdapter.java
0% <0%> (ø)
:arrow_up:

...w/commons/contributions/ContributionsActivity.java
0% <0%> (ø)
:arrow_up:

...ommons/contributions/ContributionsListAdapter.java
0% <0%> (ø)
:arrow_up:

...java/fr/free/nrw/commons/upload/UploadService.java
0% <0%> (ø)
:arrow_up:

...in/java/fr/free/nrw/commons/data/DBOpenHelper.java
20% <0%> (ø)
:arrow_up:

...ommons/contributions/ContributionsSyncAdapter.java
0% <0%> (ø)
:arrow_up:

...ree/nrw/commons/contributions/ContributionDao.java
0% <0%> (ø)

...n/java/fr/free/nrw/commons/CommonsApplication.java
27.65% <0%> (ø)
:arrow_up:

... and 1 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 0aa20ef...7c80991. Read the comment docs.


[DOC]: Clarify the intended use of the Skaffold values

How would you describe the priority of this documentation request
None
Please provide a link or source to the relevant docs
https://github.com/NVIDIA/nv-ingest/tree/main
Describe the problems in the documentation
Add documentation on what the Skaffold values are intended for.
(Optional) Propose a correction or improvement
No response

This seems to be irrelevant now


Grindable ammo cartridges

About the PR
You can now grind ammo cartridges in the all-in-one grinder. This includes special ammo (for example, incendiary ammunition has CLF3 in it.)
The bullets do not contain lead since it is currently too powerful of a reagent to be used for such a common item.
Additionally, with the power of MULTI-INHERITANCE™, this reduces on yaml copypaste for special ammo bullet colors.
Also makes the uranium shotgun shell's name consistent.
Why / Balance
More grindables are good for improvised chem
Technical details

Media
Requirements

[X] I have read and am following the Pull Request and Changelog Guidelines.
[X] I have added media to this PR or it does not require an ingame showcase.

Breaking changes

Changelog
:cl:

add: You can now grind bullets to get lead (among other materials.)

If you try to grind the primer and gunpowder, they explode. You can maybe use the gunpowder to make a more powerful pipe bomb.
This is all out of scope on this PR but when I put a shotgun shell into a blender... I expect to get a budget claymore out of it then just straight lead (and fiber???? thats not how that works).

After some internal discussion, the bullets now use iron instead of lead. I feel like lead in its current state is simply too powerful to be used for such a common item right now. You can deal immense damage with small unit amounts, and lixocide in of itself is pretty ridiculous as well.

Lead still only for nukies. :despair:

Changelog still says that you get lead from bullets

Licoxide and lead would be awesome for revolutions, revs need more non-meta tools to swing odds in their favor. Cargo rush wars are just so snoozefest most of the time as it leads to steamroll of one of other side. 😭

Amatoxin bow my beloved.

Licoxide and lead would be awesome for revolutions, revs need more non-meta tools to swing odds in their favor. Cargo rush wars are just so snoozefest most of the time as it leads to steamroll of one of other side. 😭

Amatoxin bow my beloved.

Even after rework still too fast + arrows have "barely any".

After some internal discussion, the bullets now use iron instead of lead. I feel like lead in its current state is simply too powerful to be used for such a common item right now. You can deal immense damage with small unit amounts, and lixocide in of itself is pretty ridiculous as well.

Copper would make more sense and would add a source that isnt cargo


Long-lived AMQP connection

At present, we make a new connection for every AMQP message we send. This is not ideal.
From the RabbitMQ documentation (emphasis theirs):

Before an application can use RabbitMQ, it has to open a connection to a RabbitMQ node. The connection then will be used to perform all subsequent operations. Connections are meant to be long-lived. Opening a connection for every operation (e.g. publishing a message) would be very inefficient and is highly discouraged.

This comes from AMQP 0-9-1-centric and .NET-centric documentation, but it still applies for us.

Very interesting ... and kind of obvious now that it's linked :)
Suggests the server has to hold a connection longer-lived than an individual Agent.
Hmm.....

I've been pondering this for a bit, actually. Was something I thought about working on as part of #105, but there's already so much stuff in there that I think I'd rather get a bow on it and do further refactoring of our AMQP/Proton usage as part of a separate effort.

Potential Solution
Instead of sending one AMQP message per RabbitMQ connection, we can store the messages and send them at a later  time. This enables the iRODS server to batch messages. This also means the server is less likely to lose messages if they were written down successfully.
Plugin Configuration
The audit plugin would grow two new configuration options:

shared_memory_size_in_bytes: The size of the shared memory buffer used to hold audit information

This would be allocated on plugin start and shared between all agents
Does it make sense to abstract the storage space used to hold audit information?

flush_interval_in_seconds: The amount of time before an agent attempts to send the messages stored in the shared memory buffer

High-Level Algorithm
The audit plugin would be changed to do the following:

Attempt to write the audit information into the pre-allocated shared memory buffer.
If inserting the audit information exceeds the shared_memory_size_in_bytes, flush the messages.
If the message was inserted without error, check the flush_interval_in_seconds.
If the flush_interval_in_seconds has been satisfied, flush the messages.
If the flush_interval_in_seconds has not been satisfied, do nothing.

Flush the messages means ... opening and using a single RabbitMQ connection to send all messages stored in shared memory. Only one agent is allowed to do this.
This solution assumes access to the shared memory is synchronized across agents running on the same machine. This solution does not require zone-wide synchronization.

Would the messages also flush when the plugin's stop operation is invoked?

Would the messages also flush when the plugin's stop operation is invoked?

That's a possibility. We'd need to investigate and see what the pros/cons are around the stop operation.

Or is this being managed outside of the agents?

It is all happening inside the agent. The good thing about this design is that it's flexible. The audit plugin could simply write things down and let another tool handle sending the messages. The design presented just makes it so that no other tool is necessary.

Have to make sure we write down the new messages in the full buffer case... so...
flush_messages {
    send_all_messages_in_single_connection()
    set_last_flush_time()
}

# check the flush_interval_in_seconds
if enough seconds have passed:
    flush_messages()

# save new message
message_saved = 0
do while message_saved != 1:
    if !(save_message_to_buffer):
        flush_messages()

Oh, I see. The flushing is actually managed in the shared memory in addition to the messages to flush. Mental model was missing some screws, as per usual.

I am personally not a fan of batching messages in this way. To me it feels like a janky, overcomplicated workaround for our ownership model.
Instead, I propose we have a single connection per agent, opened in start(), reused in exec_rule(), and closed in stop().

That seems reasonable and good.
And we'll still see a performance gain since an Agent can send hundreds of messages if all PEPs are configured to fire.
Will be fun to measure and compare.

We adapted the irods plugin to send messages to kafka instead of over AMQP. Now we see a pretty high rate of new connections to kafka (coming from the plugin) which decreases the performance of our kafka broker.
Is it safe to create a singleton kafka client in the plugin (so a single client per irods process instead of per agent)? And if yes, how exactly? We're lacking C++ experience, so any help is very welcome.
Using a long-lived kafka client is a best practice, just like AMQP connections and the kafka client already takes care of message housekeeping like buffering and flushing.

If I'm understanding correctly, you're asking if a single kafka client can be per iRODS server rather than per agent. Does that sound correct?

That's correct and pretty important since the irods server spawns a lot of agents (mainly due to Globus transfers creating a connection for each file to be transferred, if I'm not mistaken). We already implemented your second suggestion (that is created kafka client in plugin.start and destoy in plugin.stop). But that only partly solves our issue.
We'll go for a proxy solution.

Hi @wijnanjo, would love to know where you are doing this work.  Please consider making contact at<EMAIL_ADDRESS>if mentioning here is not desired.  Thanks.

new 5.0 process model

main irodsServer only has children with jobs, one would be a buffer/proxy for this purpose
would launch a long-running proxy process

holds series of messages - perhaps message-type agnostic?
IPC between agent and long-running process - so no copying when it's time to 'send'
kafka can't just be a series of bytes - has to deserialize the json to see the key/pid-host-zone 'group' information for grouping AND ordering

suggests different flavors of 'proxy' based on message technology / protocol

would need 5.0 first

or
a completely separate binary/service (k8s?)

not handled by grandpa?  could be python / etc.
similar to https://github.com/yumok/amqp-kafka-bridge
could be done today by administrators

very interested in any performance / throughput numbers with today's various solutions

@wijnanjo Any updates on the proxy solution?

Hi @korydraughn, we haven't changed our current solution, apart from some configuration tweaks. Just last week I noticed in our logs that we are loosing a significant number of kafka auditmessages and this typically happens in auditplugin.stop (timeouts when we flush and close the kafka producer). The root cause is yet unknown (maybe too much load on kafka or the network ?). Those errors occur only now and then but it adds up over time. So, a solution as outlined above by @trel is still urgent.
And so I'm trying the following:

define an API in protobuf to export auditrecords. I call this the collector-API (I stole the idea from OpenTelemetry project where they basically solved a similar issue)
run a gRPC server that implements this 'collector API'. In my case this collector will export the auditrecords to kafka. The official kafkaclient does batching and retries out-of-the box and now it'll be a long living instance, thus we don't have to call that dreaded 'flush' call anymore.
the auditplugin becomes a gRPC client, sending records to the collector.

This designs offers flexibility:

gRPC is fast and can use tcp or unix domain sockets
we can deploy the collector server as a separate (loadbalanced) service/container (gRPC over tcp) or as a single long running irods process (in 5.0 and gRPC over a socket).
users can create their own collector in their language of choice and send the data to whatever they like.
a minimal solution could even work without a gRPC server. In this case the auditplugin would call a 'local' collector: simply a class that implements the collector API and directly sends over AMQP, kinda like the current solution.

Downside is (slightly) increased complexity and less resilience (another component that may fail). A specific concern for us (related to ordering gurantee of audit messages in kafka) is that we must send all messages from a particular irods process to the same kafka producer (ie collector) as this preservers ordering of messages in kafka.
I can do the gRPC server in Go but I might ask your help for the C++ part. We'll see how it works out.

No messages go out because having a live connection is a prerequisite of the iRODS server doing any work

That's a valid concern. A simple collector could still send the payload immediately to the broker and ack on each request; that would give the same behavior as the current solution.
Our "kafka flavour" of the collector would initially not provide these guarantees (instead it's expected to work very performant). But we could enhance it by persisting every message that is 'on its way to kafka' (=either in a memory queue of the kafkaclient either in flight) to disk, then ack'ing, and later on removing the message from disk when we have an ack from kafka. Or in case of broker is down, recover the messages from disk and retry.

I can do the gRPC server in Go but I might ask your help for the C++ part. We'll see how it works out.

@wijnanjo Sounds good. Happy to assist with the C++ part.
What I'm about to say is similar to what's been said already. Consider the following:
The audit plugin can write generic messages to an abstract storage device. The abstract storage device could represent a memory buffer, a disk, a database, or anything else you can think of. The important thing to keep in mind is:

The audit plugin doesn't need to know about kafka or amqp
The audit plugin just writes the messages down as fast as possible

No network required (unless the abstract storage device uses one internally)

From there, a process hanging off of the iRODS server or an external application could pull messages from the abstract storage device, convert the messages to the target format, and send them to their final destination (e.g. kafka).
We'd include an abstract storage device implementation and binary for AMQP with the audit plugin. The two components would serve as the reference for other implementations.
Questions for @wijnanjo:

How frequently is the audit information accessed?
When accessing the audit information, how up-to-date should it be?


Implement Board Server ☂

A board server is a general concept and this issue is an umbrella for the first cut of the simplest possible concrete implementation of a board server.
A board server is a place where peeps who can store boards they are working on and share them with others.

[x] Implement basic key-based auth support
[x] #1976
[x] #1977
[x] Implement simplest possible "run this board as an app"
[x] Implement simplest possible "run this board as an API"

Let's first imagine board sharing server from the user perspective.

A user is given a URL of the board server. For example, I am told that Bob has a really cool board server at [url].
A user goes to https://breadboard-ai.web.app/ and adds this server as a source (it's another option, in addition to File System API et al. sources). Alternatively, they browse to the server URL and it redirects them to https://breadboard-ai.web.app/ to add as source.
They likely do some authentication dance, after which they are registered with that board server. Some servers might be public and I can just add them. Some may be well-protected.
Once registered, the user can see all boards that are on that server. For example, I can see all of the boards that Bob and his friends built. It's easy to search/filter/etc. to find and play with the boards.
The user also has their own work area, where they can store boards they built. From their perspective, it's just one more section in the left-hand slide-out panel.
Each board in this work area has a URL from the start. These URLs are Internet-accessible and stable.
Each board in this area starts as "unlisted". One can access it using direct URL, but it won't show up in the list of boards on the server.
The user creates boards in this area. When they are ready to share these boards with others, they clear the "unlisted" mark, and at that point, the board is visible to everyone on the server. Bob can see my boards!
Some servers may have sophisticated ACL controls that allow making boards searchable to public, groups, etc.

🚢  victory


Fix memory corruption due to publisher-multithreading

For us, the publishing in a separate thread was causing memory corruption and crashes that occurred only sporadically and when ICP was running for an extended period of time (> 1 h). This is likely due to the lack of a mutex mechanism, resulting in reading data to publish while data might be changing from the other thread.
Also, since the publisher thread gets spawned and destroyed on every loop cycle, the time gain was not noticable for us. If it is still desired, a more optimal way would probably be to use a thread that gets spawned once and then gets fed data to publish by a mutexed queuing mechanism (which the ROS publishers have probably built-in already anyway).
See https://github.com/ethz-asl/moma/pull/149

Thank you for fixing this! Apologies for not reviewing earlier.


hassos installer hangs

The script doesnt appear to be working on 6.1-3
Not sure if its script or hassos related.

appears to be related to this: https://github.com/home-assistant/hassio-supervisor/issues/859

It appears home assistant has booted. Please ignore.

I have the same issue

I'm having the same exact issue.  However, this thread is closed without a solution/fix.   Did anyone figure out what's wrong?

Try pressing the enter key a couple of times if you are at that exact same screen

Also, consider double checking your DNS settings on the host.


[Suggestion] add "Bulk Crap Uninstaller"

I've been using this program in the past for manual removal of Crapware and unneeded programs.
In my opinion it would be nice if BCUninstaller would be in the manual tools folder so other people can enjoy using it as well.

Bulk Crap Uninstaller (or BCUninstaller) is a free (as in speech) program uninstaller. It excels at removing large amounts of applications with minimal user input. It can clean up leftovers, detect orphaned applications, run uninstallers according to premade lists, and much more! Even though BCU was made with IT pros in mind, by default it is so straight-forward that anyone can use it.
BCU is fully compatible with Windows Store Apps, Steam, Windows Features and has special support for many uninstalling systems (NSIS, InnoSetup, Msiexec, and many other).

Link: https://github.com/Klocman/Bulk-Crap-Uninstaller

Personally, and this is just my opinion, I don't think it's really necessary to include. Firstly, Tron does many removals of crapware already(and the stuff it doesn't remove can easily be added to the removals, if you can provide the uninstaller location or the GUID)
Secondly, this would just be among the average technician's personal arsenal of tools. Since Tron wouldn't be running it itself at any point, and it's not part of the current usage process of Tron, I don't think it needs to be included.
If every tool that's useful to techs was included along with Tron, the list would be very large. xD

I haven't heard of this utility but will take a look at it. Anything that can assist in automating bloat removal is a candidate for inclusion, providing it doesn't duplicate functionality of course. Open to hearing anyone else's thoughts as well.

OK, after looking it over, I really like BCU, seems very powerful. However, since it's not automatable, I'm going to leave it out of Tron for now and close this suggestion. Thanks for the recommendation.


Document release process for this repo

Currently the module is at 0.2.0 but the repo only shows 0.1.0 under releases https://github.com/open-telemetry/opentelemetry-go-build-tools/releases.
We need to document the release process for this repo to ensure it is done consistently across releases.

Done https://github.com/open-telemetry/opentelemetry-go-build-tools/releases/tag/v0.2.0 :))

I have done it as part of https://github.com/open-telemetry/opentelemetry-go-build-tools/pull/325


Run TiDB 5.2.0 at CI

This pull request runs TiDB 5.2.0 at CI.

TiDB 5.2.0 has been released on Aug 27, 2021.
https://docs.pingcap.com/zh/tidb/stable/release-5.2.0

hooopo/tidb-playground:v5.2.0 is available at Docker Hub
https://hub.docker.com/layers/hooopo/tidb-playground/v5.2.0/images/sha256-78ba54d7098635fd1d29b7f41ad1030d98c4a720ae97d4d680e08611caf93fa6?context=explore

@hooopo I've just found hooopo/tidb-playground:v5.2.0 at Docker Hub then opened this pull request. Please let me know if you have concerns/questions. Thank you.

TiDB v5.2.0 is already in the job list: https://github.com/pingcap/activerecord-tidb-adapter/blob/main/.github/workflows/ci.yml#L74

Thanks for the reply. I should have checked them carefully.


Generate interfaces for new projects

For many small BSV modules, writing the interface definitions and connecting it to the testbench is quite a lot of copy-paste effort. Therefore I had the idea to add it to the bsvNew script.
The current version is not really advanced (it is actually quite hacky) but fits my intended use-case.

Thanks for the contribution, looks good.
Could you add some help text describing the supported interfaces? Right now a user needs to look into the code to figure out what works.

Good point, I have added the list of interfaces to the help text.

Thank you for incorporating that change.
Another issue I've encountered is that when multiple interfaces of the same type are added, they all share the same name and test bench BRAM etc.

Yes, specifying an interface multiple times causes issues. Probably I will add some kind of enumeration.

Added the enumeration and also AXI lite master for completeness

Looks good, thanks!


Add eWeLink authentication

Fixes #4

Pull Request Test Coverage Report for Build 20

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 18:
0.0%

Covered Lines:
26

Relevant Lines:
26

💛  - Coveralls

Pull Request Test Coverage Report for Build 20

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 18:
0.0%

Covered Lines:
26

Relevant Lines:
26

💛  - Coveralls


Reduce binary sizes

relates to: kairos-io/kairos#2285

Btw I think kceypt is not being shipped as part of Kairos anymore as everything is done via it's public apis directly on immucore and agent

@Itxaka good point, will add those

@Itxaka good point, will add those

Im a bit worried about immucore as it runs on an empty system no idea what upx needs to be able to autodecompress?

aren't we missing here to compress/minimize immucore too?

@Itxaka ok I'll do immucore last and in a different PR

@mudler yes my bad, will add a bunch of others I completely forgot we had there. Also, will remove the docs since they account for half of the size of the compressed binary (12Mb and 24 total)


codespell pmagpy/*.py

Thanks for the spell check on the comments throughout the code. Nice to have this clean-up effort.


[stable/kube-state-metrics] Add securityContext

What this PR does / why we need it:
Currently kube-state-metrics runs as root. Switch to nobody instead. Safer and fixes installing this on podSecurityPolicy-enabled clusters.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

/assign davidkarlsen

/assign scottrigby

/ok-to-test

/lgtm


Training on custom dataset with custom mask for Inpainting

Hello @lindahua @wwhio @tpoisonooo @hellock @innerlee
Great work on the paper and even the results look amazing!
Can you please guide me with step by step process on how we need to prepare a dataset for a custom image dataset with a custom mask (if possible)?
How the masks will look like in the sense that whether it will be a colour image on which white patches (the part that will be inpainted from the model) is drawn or it will be a completely black image on which white patches (the part that will be inpainted from the model) is drawn? (in short how to prepare mask and then how to supply it for model training)
I referred to your steps but couldn't completely follow them.
Thank you in advance!

Implement your dataset which gives the information of your data. Register it, import it in mmedit/datasets/__init__.py, and add it to __all__.
Implement your pipeline which gives the process according to information provided by dataset. Register it, import it in mmedit/datasets/pipelines/__init__.py, and add it to __all__.

During implementing your dataset, just give the information:

Your dataset should inherit the ImgInpaintingDataset class, and implement your load_annotations function.
You may change the __init__ function according to your need.
In load_annotations: package all information you need for one paired data into a dict and append these dicts to a list and return this list.
Call load_annotations in __init__ like ImgInpaintingDataset does.


Application hosted media calling bot which proactively messages aswell.

Trying to develop an application hosted media calling bot which when it joins an online meeting it can type a welcome message in the call chat.
The purpose of the bot is to record calls so I shall be use the updaterecordingstatus api and I want it to type a warning in the call/meeting chat window.
Finding not many good samples on the Microsoftgraphcomms repo...

@charliewatkinson Can you provide more information on what you are trying to do, or where we could help?  We are a little unclear and want to make sure we get you the right help.

When my bot joins the call, I want it to type a message in the meeting chat window (where all participants can see).
Haven't found any information on how to do this.

@tracyboehrer thanks. Keep me updated.

You should be able to create a calling/meeting bot and add text capabilities to it. Your bot would need to be installed in the context that you wanted to send the text message to (so someone would have to manually add it to the meeting).
The documentation can be found here: https://docs.microsoft.com/en-us/microsoftteams/platform/bots/calls-and-meetings/calls-meetings-bots-overview.
If you have additional questions the Teams developer support group should be able to help, you can contact them in one of the ways listed here: https://aka.ms/teamsdevfeedback.


Ability to express expected output.

This seems to be harder then I initially anticipated.
The simplest part of the problem is that variables need to be replaced in the expected output, since the test server port always change, which means the HOST part of the request will always be different.
The simple part of the problem is that there are headers that get generated with the date. These could be ignored.
The hard part of the problem is that the header lines are ordered randomly since they come from a map.


[bug] Second TapTarget should be present if first was dismissed

I have verified the issue exists on the latest version
I am able to reproduce it
TapTargetSequence targetSequence = new TapTargetSequence(getActivity())
                .targets(
                       TapTarget.forView(mTextView,"Title","SubTitle").cancelable(true) ,
                       TapTarget.forView(mEditText, "Title", "SubTitle").cancelable(true),
                       TapTarget.forView(mEditText2, "Title", "SubTitle").cancelable(true)
                );
        targetSequence.start();

reproduce it:
Run the app
-> First TapTarget is present
Click outside or click ob back button on device to dismiss first TapTarget
-> First TapTarget is dismissed
[bug]
Second and Third TapTargets are also dismissed
[expected result]
Second TapTarget should be present
Version used: 1.9.1
Stack trace:
Android version 6.0.1:

use TapTargetSequence#continueOnCancel(true)


support biolink model mixins

Biolink model has "mixin" classes like ChemicalOrDrugOrTreatment which includes ChemicalEntity, Drug, and Treatment.
Supporting these mixins means changes to the biolink-model JS tool, so that when a query node has the category "ChemicalOrDrugOrTreatment", BTE knows to look for operations to ChemicalEntity (and its children), Drug, and Treatment...
Another example of a mixin is GenomicEntity, which includes Gene

Also include predicate mixins like increases amount or activity of

should this be assigned to someone else, since @tokebe seems fairly focused on caching / async related issues?

I think @tokebe is probably the first one to consult when tackling this issue, but since it's not obviously holding up any of the December demo queries, I'm moving this to "non-critical" for now...

From the September demo:
I think there's some interest in using predicate mixins like the increases amount or activity of described above.
also perhaps some interest in having the GeneOrGeneProduct, to deal with Gene / Protein conflation

Importance of this issue ticked up based on a discussion during the relay.  In response to this question I raised on Translator slack (https://ncatstranslator.slack.com/archives/C02ELMPJBGV/p1633020386041900; illustrated in the screenshot below), the biolink model folks will be adding a mixin to include all predicates except subclass of (https://github.com/biolink/biolink-model/issues/883), which leads to nonspecific answers like the one below.

My original post from Translator slack:

Workflow D.6 (query): This query asks for paths that join metformin (n0: a SmallMolecule) to ferritin (n3: a Protein) with two intermediate nodes (n1 and n2: both Proteins). BTE returns 1771 results for this query (link).  But many of them are technically correct but I think not useful. As you can see in the screenshot below, BTE is using very generic nodes for protein classes in n2 (like "eukaryotic protein", or "Homo sapiens protein"), with the edges to n1 and n3 representing subclass relationships.  I think this suggests that this query needs to be refined because Biolink Model conflates proteins and protein classes, but would definitely appreciate other thoughts...

wait until these changes get closed to prod before closing


Font Test Examples Broken

It appears that the ILI_Ada_FontTest3, ILI_Ada_FontTest4 (at least) are completely broken.  I was able to make a very rudimentary example work by modifying
#include "font_Arial.h"
to
#include "ili9341_t3n_font_Arial.h"
Here's my code for a one-font example:
#include <Adafruit_GFX.h>

#include <SPI.h>
#include <ILI9341_t3n.h>

#include "ili9341_t3n_font_Arial.h"

#define CENTER ILI9341_t3n::CENTER

// *************** Change to your Pin numbers ***************
#define TFT_DC  9
#define TFT_CS 10
#define TFT_RST 7
#define TFT_SCK 13
#define TFT_MISO 12
#define TFT_MOSI 11
#define TOUCH_CS  6

ILI9341_t3n tft = ILI9341_t3n(TFT_CS, TFT_DC, TFT_RST, TFT_MOSI, TFT_SCK, TFT_MISO);

uint8_t test_screen_rotation = 0;

void setup() {
  Serial.begin(38400);
  long unsigned debug_start = millis();
  while (!Serial && ((millis() - debug_start) <= 5000));
  Serial.println("Setup");
  tft.begin();

  tft.fillWindow(ILI9341_BLACK);
  tft.setRotation(1);

  tft.setTextColor(ILI9341_WHITE);
  tft.setFont(Arial_20);
  tft.println("Arial_20");
  displayStuff();

}

void loop()
{
}

uint32_t displayStuff()
{
  elapsedMillis elapsed_time = 0;
  tft.println("ABCDEFGHIJKLM");
  tft.println("nopqrstuvwxyz");
  tft.println("0123456789");
  tft.println("!@#$%^ &*()-");
  tft.println(); tft.println();
  return (uint32_t)elapsed_time;
}

I'd be happy to modify the examples as required and submit pull requests if you are OK with that
Frank

Hi @paynterf  (and @mjs513 )
Not sure what the font example is broken means?   Does not work?  Does not Compile?
That is I just tried the Fonttest4 on my machine with just editing the pin number for CS...
Again not sure if the issue is it does not build?
If so may depend on what other libraries you have or don't have installed.
I believe with these tests we were setup using the font library: https://github.com/mjs513/ILI9341_fonts
We were trying to setup this code to be able to use font files from different places.  Problem is that each one defines their own header files which bring in their code base as well.
But I could be forgetting something.

@paynterf (and @KurtE)
I just ran both fonttest3 and font_test4.  Both are working for me with one exception.  Think the font sizes in font_test3 are probably too large.  But it is displaying text correctly.
@KurtE is correct you will need to download  the font library: https://github.com/mjs513/ILI9341_fonts for the examples to work properly.  Otherwise you will have to change the font names as you discovered.
@KurtE's explanation is correct.  The font library is set up so you can use it with any of the display libraries - ILI9341, ILI9488 and HX8357 for example.

Hmm,
It wouldn't compile for me at all with the ili9341_t3n library loaded; the font libraries weren't found.  When I modified the code to use the ili9341_t3n_ font libraries like this::
#include <Adafruit_GFX.h>

#include <SPI.h>
#include <ILI9341_t3n.h>

#include "ili9341_t3n_font_Arial.h"
#include "ili9341_t3n_font_ArialBold.h"
#include "ili9341_t3n_font_ComicSansMS.h"
#include "ili9341_t3n_font_OpenSans.h"

Then it would work.  After making these changes (and removing the fonts that weren't available), I got this display

Which looks a bit strange, but maybe that's what you were after?
Frank

Did you download the fonts library (https://github.com/mjs513/ILI9341_fonts) and put it in your arduino libraries folder?
Almost - should see the over writing of fonts with the boxes - its suppose to clear screen after you hit return.

What were the compile errors?
Are you using the latest released other libraries like ili9341_t3 or for example do you have an older one in your /libraries folder.
Why this might matter.  Is some of these libraries were updated, for the compiler to generate an archive which gets included with the build instead of individual binaries.  This can help as only those things in the archive which have been referenced will be included, which can help reduce the number of duplicate symbols or the like.

Might want to put a note in the ReadMe to the effect that the extra  font library is required?

ILI_Ada_FontTest3.ino compiles and runs fine after installing the extra fonts library

Thanks,
I put int a quick note in the Readme, in the font section.
From: Frank Paynter @.>
Sent: Friday, March 12, 2021 11:10 AM
To: KurtE/ILI9341_t3n @.>
Cc: KurtE @.>; State change @.>
Subject: Re: [KurtE/ILI9341_t3n] Font Test Examples Broken (#37)
Might want to put a note in the ReadMe to the effect that the extra font library is required?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub https://github.com/KurtE/ILI9341_t3n/issues/37#issuecomment-797692720 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AAL4MQGCJXJREG3GYD3CPXTTDJKF7ANCNFSM4Y4D6L7A .  https://github.com/notifications/beacon/AAL4MQGUY7ACFD25PKNXM43TDJKF7A5CNFSM4Y4D6L7KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOF6F5GMA.gif

Just read it  - very nice!

I will go ahead and close for now


Shortcut for map and flatmap

Right now a type ZIO[..., Dataset[A]] will need a double map to change to ZIO[..., Dataset[B]]
.map(_.map(...))

That would be nice to have a map shortcut that convert directly from ZDS[A] to ZDS[B].

This is the WIP branch https://github.com/leobenkel/Zparkio/tree/map_shortcuts


Better support for manual refunds

Don't attempt to cancel payments that don't support it.
Attempting to cancel a payment that only supports manual refunds will not contact the api.
Instead it will keep the payment in the completed state, which in turns causes the order-payment-state to be 'credit owed'. A log entry in created on the payment that has a message about the the manual refund.

:+1: save for the minor comment.


I suggest pinning SvelteKit version to avoid breaking change error

Hello,
What do you think to pin SvelteKit version in examples/* to avoid breaking change error like this?
Best regards,
Stéphane

I would rather update the dev script to vite dev in examples… i think better to stay up to date and include all new features bug fixes etc..


Input group addon right corner becomes square when adding a validation element

It seems that when I add a invalid-feedback class to a input-group, the corners on the right stop being rounded.
I made a JSFiddle here.
It also dosen't work on the bootstrap docs here (Click submit while the username field is empty and the username field's corners are cut off too).
Not working

Short Link:

		https://jkmls.tk/

	<input type="text" class="form-control is-invalid" id="name" aria-describedby="name-addon">

		<button class="btn btn-primary" type="button">Random</button>

		Please choose a username.

Working

All i did was comment out the validation text:

Duplicate of #25110.


input divider issues when input class is used insider input-group

Current Behavior
Check this recording for the two input group code blocks below
https://github.com/skeletonlabs/skeleton/assets/6120010/29a0c3c4-cdf3-430c-9d38-cd353b3685b4

first fiekd in the recording
when <input class=input"... is used inside an input group the divider does not show correctly.

second field in the recording.
if input-group-divider is class is removed from the group div, a blue divider appears when input box is in focus

Reproduction / Steps To Reproduce

	Namespace:

		<input class="input" type="text" placeholder="Namespace" required />

	Database:

		<input type="text" placeholder="Database" required />

Anything else?
workaround:

keep the input-group-divider class and remove class="input" from input tag.

@sachinbhutani So there's two issues here:

You've implemented .input for the input within the Namespace .input-group. This should not be present. Here's the corrected markup:

	Namespace:

		<input type="text" placeholder="Namespace" required />

The second issue was the blue ring style applying to inputs within input groups that do not implement .input-group-divider, such as your Database field. For this I've implemented a small change to the default styling on our side that should resolve this. This will go live with tomorrow's release.


Update index.html

Changes in font weight
Description of PR
A brief description of what changes your PR introduces. The better this description, the quicker we can review, exchange feedback, and merge!
Relevant Issues
Fixes #...
Changed The font-weight
Checklist

[x] Compiles and passes lint tests
[x] Properly formatted
[x] Tested on desktop
[x] Tested on phone

Screenshots
Add relevant screenshots here

Why was the font weight changed?

It will look good to increase the font weight

It will look good to increase the font weight

Have you read the guidelines for contributing?

YES , I read the guidelines for contributions.
You can verified whether it will look good by changing the font weight

Do you mind adding a few before-after screenshots? And maybe update the PR title/descriptions so that people can get a summary of the changes

YES , I have read the guidelines for contributions.
You can verified whether it will look good by changing the font weight

Usually I do not engage in these talks, but by looking at the PRs you've raised, looks like you did not read any guideline. There's no description of the changes, there's no screenshots, there's no bug associated with the PR.


Added Weaviate

Weaviate has a direct LangChain integration https://python.langchain.com/en/latest/ecosystem/weaviate.html

Hey, @bobvanluijt, thanks for the PR. Is there any special integration on the Weaviate side?

Closing the PR for now, the goal of this list is to reference the tools using langchain. Available vector stores in langchain are referenced here: https://python.langchain.com/en/latest/modules/indexes/vectorstores.html, including Weaviate. Please feel free to reopen the PR with additional references if Weaviate uses Langchain in a way.


How to add custom endpoint

I have others enpoints in project (example package oauth2_provider add endpoints for oauth token's) how to add this in swagger doc, any fake docstring? or static format?

I have a problem with this as well. It doesn't seem to pick my yaml and isn't documented very well in the docs. Someone care to chime in?

I face the same problem. Would be nice to have a way to create a "swagger-exempt" which will ignore the route. Some decorator or "magic" keyword in the docstring to archive this would be nice.

I solved this by converting my views into viewsets. From DRF docs:

Typically, rather than explicitly registering the views in a viewset in the urlconf, you'll register the  viewset with a router class, that automatically determines the urlconf for you.

http://www.django-rest-framework.org/api-guide/viewsets/

The docs get generated for subsets of APIViews only. However, DRF now generates the schema documentation and it is possible to write explicit docs.


TODO: start models after window.close for spotify auth

also change to loader only after that
delete cache for testing

test cached token and fb auth


Same error is shown two times on the login page when trying to enter an invalid magic code fastly

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open web chrome
Sign out
Enter email and click on continue
Now enter any invalid code but should be of only 6 digits , let's say 123456 and make sure that your magic code field is still focused
(very important step) Immediately hit enter, press any number from the keyboard and again hit enter. This step should be done very fast. (Hit enter , press any number and again hit enter)
Notice that the same error 'Incorrect magic code' is displayed in two locations at the same time

Expected Result:
Only one error should be displayed on entering wrong magic code one after the other
Actual Result:
Two similar errors are displayed at the same time
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number:
Reproducible in staging?: needs reproduction
Reproducible in production?: needs reproduction
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/43996225/235463351-9d60a111-7c3a-4f54-9907-bf0cdbafa81b.mp4
Expensify/Expensify Issue URL:
Issue reported by: @priya-zha
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1682916390743029
View all open jobs on GitHub

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

This one took a couple of tries to reproduce, though I was able to do so.

Opening up to the community to get things kicked off.

Job added to Upwork: https://www.upwork.com/jobs/~01dad7fb85d2cda427

Current assignee @JmillsExpensify is eligible for the External assigner, not assigning anyone new.

Triggered auto assignment to Contributor-plus team member for initial proposal review - @aimane-chnaif (External)

Triggered auto assignment to @pecanoro (External), see https://stackoverflow.com/c/expensify/questions/7972 for more details.

@aimane-chnaif Yeah, you are right, not reproducible, closing.

Nice, thanks ya'll!


Option to exclude field

We have a config field that is only for debugging, and shouldnt be set in production. For that reason, it also shouldnt be included in the default config generated by doku. But I dont see any way to achieve that, even with #[default(None)] and no doku annotation its included in the output. Maybe the field could be skipped in that case, or there could be a separate #doku(skip) annotation.
You can see the code in this PR.

Perfect, thanks! I was looking for this in the readme/docs, but didnt find anything. So a list of supported parameters would be useful.


Test pydata application

PR created to test whether Travis creates multiple jobs.

@pbanaszkiewicz @chrismedrela
I have added another job on Travis that runs the test suite while the pydata app is deployed.
Please review.

@pbanaszkiewicz

Why not conditionally include it in the config? It could be controlled via envvar.

Nice suggestion. I am starting to reconsider #938. By overriding the envvar DJANGO_SETTINGS_MODULE, we can switch between a normal deployment and a PyData deployment.

My general question is: why can't we have just one job on Travis with PYDATA=true? Do I understand correctly that:

This job runs tests of all apps.
If AMY works with pydata enabled, it also works with pydata disabled.

Having one job makes testing and deployment much easier - we don't need deploy-pydata branch, separate Travis jobs etc.

OK, I understand why we need two jobs now. However, I think we need to address a much more fundamental issue - the way we monkey patch everything in pydata/apps.py scares me, especially that we monkey patch models. It's not going to scale at all.
I think what we need to do is to reuse the same Sponsorship model for both standard and pydata deployment. This can be done by converting it from an enum to a ForeignKey to a new model SponsorshipOption, so that the choices can be dynamically changed by altering the records of SponsorshipOption table.
If for some reason we need different models for standard and pydata deployment, a model in pydata app would inherit from a model in workshops app.
Any ideas how we could get rid of monkey patching templates, forms and views? This could be probably done be some kind of inheritance again.
Can we postpone it to v1.10?

@chrismedrela:

OK, I understand why we need two jobs now. However, I think we need to address a much more fundamental issue - the way we monkey patch everything in pydata/apps.py scares me, especially that we monkey patch models. It's not going to scale at all.

That's true, but it was a deliberate choice. Maybe it's time to revisit it, maybe it's too soon.

Can we postpone it to v1.10?

Yes, this is definitely too much to merge this late in v1.9 development cycle.

Any ideas how we could get rid of monkey patching templates, forms and views? This could be probably done be some kind of inheritance again.

Perhaps we should have a discussion somewhere else, and only focus on that solution in this thread. @narayanaditya95 can you please make a separate issue if you feel we should discuss PyData application and how it integrates with other parts of AMY?

I'm :+1: for merging when these three issues above are addressed. I've created a new issue #1075 to address monkey patching issue.

@chrismedrela
Are you fine with the current implementation of merging a branch, or would you rather consider a different approach that I suggested to @pbanaszkiewicz

Nice suggestion. I am starting to reconsider #938. By overriding the envvar DJANGO_SETTINGS_MODULE, we can switch between a normal deployment and a PyData deployment.

Nice suggestion. I am starting to reconsider #938. By overriding the envvar DJANGO_SETTINGS_MODULE, we can switch between a normal deployment and a PyData deployment.

@narayanaditya95 I'd like to have everything on one branch (develop). Maintaining second branch (deploy-pydata) would be a lot of work, because of backporting everything from develop to deploy-pydata. So, yes, I'm :+1: for varying between deployments with envvars, with one important modification: I'd like to have one settings.py file that reads from an ENABLE_PYDATA envvar and contains conditionals like if ENABLE_PYDATA:. IMO that is simpler than having two separate settings.py files and keeping them in sync.

BTW this is exactly what @pbanaszkiewicz has proposed:

What exactly is in deploy-pydata?

Adds pydata to INSTALLED_APPS and urlconfig. See the commit cf8603a

Why not conditionally include it in the config? It could be controlled via envvar.

@chrismedrela Please review.

@pbanaszkiewicz could you review the design?

@chrismedrela
Addressed all concerns.

@narayanaditya95 thank you for your work on this PR! @pbanaszkiewicz please merge if you like it.