Tuple types are not indexed by number in mapped types

Bug Report
🔎 Search Terms
tuple, mapped types, number
🕗 Version & Regression Information

This is the behavior in every version I tried, and I reviewed the FAQ for entries about tuple types

⏯ Playground Link
Playground link with relevant code
💻 Code
type ValType = "i32" | "i64";

class Local<Type extends ValType> {
    readonly #type: Type;

    constructor(type: Type) {
        this.#type = type;
    }

    get type(): Type {
        return this.#type;
    }
}

type Locals<Types extends readonly ValType[]> = {
    [K in keyof Types]: K extends number ? Local<Types[K]> : Types[K]
}

function toLocals<Types extends readonly ValType[]>(valTypes: Types): Locals<Types> {
    return valTypes.map(type => new Local(type)) as unknown as Locals<Types>;
}

const i32x2 = ["i32", "i32"] as const;
// Error, the function should've returned the correct type
const locals: readonly [Local<"i32">, Local<"i32">] = toLocals(i32x2);

🙁 Actual behavior
The tuple keys are not mapped correctly as numbers. For some reason K extends number is never triggered for the numeric keys in ["i32", "i32"].
🙂 Expected behavior
The mapping should set K = 0 and K = 1 in the tuple, while it does correctly set them to "0" and "1" as far as I can tell there is no way to identify all "numeric like" strings in a mapped type. My assumption was the whole point of allowing "number" keys for objects was so that this kind've thing worked.
Notes
The mapped types still work fine for array, i.e. Locals<readonly ("i32")[]> resolves just fine to readonly Local<"i32">[] but this functionality doesn't extend to tuples.

For the record the whole mapped types on tuples and arrays does kind've work:
type Locals<Types> = {
    [K in keyof Types]: Local<Types[K]>
}

function toLocals<Types extends readonly ValType[]>(valTypes: Types): Locals<Types> {
    return valTypes.map(type => new Local(type)) as unknown as Locals<Types>;
}

const i32x2 = ["i32", "i32"] as const;
// Error, the function should've returned the correct type
const locals: readonly [Local<"i32">, Local<"i32">] = toLocals(i32x2);

However it still reports an error in trying to wrap, essentially generics with a constraint can't be used properly in a mapped type:
type Locals<Types> = {
    // Type 'Types[K]' does not satisfy the constraint 'ValType'.
    //  Type 'Types[keyof Types]' is not assignable to type 'ValType'.
    //    Type 'Types[string] | Types[number] | Types[symbol]' is not assignable to type 'ValType'.
    //      Type 'Types[string]' is not assignable to type 'ValType'.(2344)
    [K in keyof Types]: Local<Types[K]>
}

ability to distinguish between the 0 and "0" meanings

I thought it was more about being able to distinguish between 0 and, say, "foo".  That's why numeric index signatures are generally convenient, because it's harder to make that distinction otherwise.

From a caller perspective, giving you the ability to distinguish between the 0 and "0" meanings doesn't make any sense because objects can't have different property slots.

I know that there's not actually "number keys" in JS, but the fact is there is no other way in TypeScript to say K extends IsValidNumberString. Which again is the whole point of allowing number signatures for types in the first place right? Like the fact SomeTupleType[0] is legal works on this presumption.

I thought it was more about being able to distinguish between 0 and, say, "foo". That's why numeric index signatures are generally convenient, because it's harder to make that distinction otherwise.

Arguably with template types, we should be able to do K extends `${ number }` , although at present that doesn't work either:
type Locals<Types extends readonly ValType[]> = {
    // Type 'Types[K]' does not satisfy the constraint 'ValType'.
    //   Type 'Types[`${number}` & string]' is not assignable to type 'ValType'.
    [K in keyof Types]: K extends `${ number }` ? Local<Types[K]> : Types[K]
}

In this case, K is too wide in the ? case, in practice it could be narrower as K in keyof Types should only include actual keys.
Although I suppose we can do this:
type Locals<Types extends readonly ValType[]> = {
    [K in keyof Types]: K extends `${ number }` ? Types[K] extends ValType ? Local<Types[K]> : never : Types[K]
}

This is definitely "correct", but man is it a complicated type to write just for the purpose of mapping the inner values.
Like TypeScript already offers the magic mapped array/tuple types behaviour, it would probably be simpler if this just worked for generics with constraints as well as per my second comment.
Because for whatever reason adding the constraint:
type Locals<Types extends readonly ValType[]> = {
    [K in keyof Types]: Local<Types[K]>
}

Means the mapped type no longer acts as a array/tuple-only mapped type.
Alternatively alternatively, we could just have actual syntax to say some mapped type just applies to the entries in an array/tuple:
type Locals<Types extends readonly ValType[]> = {
    // All other keys are automatically passed through as is
    [K in arrayKeys Types]: Local<Types[K]>
}

An operator to get the numeric keys out of a type, in number form, would be a reasonable suggestion

An operator to get the numeric keys out of a type, in number form, would be a reasonable suggestion

Like #48094?

This issue was fixed by #48837. The original example now works as expected when Locals is simplified to just this:
type Locals<Types extends readonly ValType[]> = {
    [K in keyof Types]: Local<Types[K]>
}


DRAFT: Add Operating System Icons

#361
There are a few things to call out here.

This adds a completely new table to the return of icons-default and icons-light called icons_by_operating_system. This set of icons is added with the other icons to the lookup table that is generated during initialization of all devicons.
This (currently) does not pass the provided make tests due to the addition of the new icons_by_operating_system attribute
There are several icons that I am choosing to omit from this. The following list of icons were omitted as the provided icon by nerdfonts cheat-sheet was not found when I pasted it into my terminal. I am currently using the patched version of firacode so I suspect these various items are all in a newer patch for Firacode. In any case, I did not see them and thus did not want to commit them. I did complete them however so a lua file is attached to this message with each one so that it can be reviewed should someone decide to include these icons

archcraft
arcolinux
arduino
biglinux
crystal
garuda
hyperbola
kde_neon
kubuntu
locos
lxle
mate
mxlinux
parabola
puppy
qubesos
tails
trisquel
vanilla
xerolinux

Pretty much all colors were established via "best guess"/"eyeball test". Others have figured out Apple/Windows color palettes and thus for these 2 I pulled the primary color from their established color palette. Feel free to adjust the color codes as needed. Color can be subjective after all :)
On colors, I did not do anything fancy for any of the OS icons for the
"light" vs "default". It is a literal copy and paste between the 2. If someone wants different colors for the OS when requesting a "light" version of them, they can do that work lol.
I know that this PR doesn't exactly follow the Contributing guidelines request but given that is a bit chunky and adding stuff that doesn't really have a home, I figured it would be worth explaining that. Do let me know what you believe needs to be changed/fixed/etc to get this in :)
potential-icons.zip

This looks great. The operating system distinction is not exposed to the user.
I'm not sure about removing linux from the names. The font names all have linux in them and it will be useful to disabmiguate.
@gegoune ? @Akmadan23 ?

This looks great. The operating system distinction is not exposed to the user.
I'm not sure about removing linux from the names. The font names all have linux in them and it will be useful to disabmiguate.
@gegoune ? @Akmadan23 ?

The initial commit had certain distros that had names like almalinux or rocky linux while others (such as redhat) did not. The removal of "linux" from the names was a way to make the names more consistent across the board. IMO they should either all have linux in their name, or none of them should in order to prevent confusion and make it easier on people using the icons in scripts/plugins

This looks great. The operating system distinction is not exposed to the user.
I'm not sure about removing linux from the names. The font names all have linux in them and it will be useful to disabmiguate.
@gegoune ? @Akmadan23 ?

Looks good. As @miversen33 said, either all or none should have linux in the name, and I'd go with none, since all of them are linux distros (except of course windows, macos and the BSDs, which are pretty obvious).
We should also update the color generation script to handle the icons_by_operating_system section now...

I attempted to add the icons_by_operating_system and while it "looked good", it seems to break the icons_by_file_type table in icons-light during the generation. Thus I am going to have to let someone else do that

It should be ok now. Could you please run it via make colors and push the updates?

Done :)

Awesome!


how to build for powerpc openwrt musl libc 1.2.3 device?

For the last few weeks with the help of @Emilgardis I've tried to get rust compiled for my powerpc openwrt device.
See also: https://github.com/cross-rs/cross/pull/1349
Currently we're testing those images created by @Emilgardis:

http://ghcr.io/emilgardis/powerpc-unknown-linux-musl-cross:test
http://ghcr.io/emilgardis/powerpc-unknown-linux-muslsf-cross:test

We managed to get the first one of those to produce debug build using:
RUSTFLAGS="-C target-feature=-crt-static" cross +nightly build --target powerpc-unknown-linux-musl

but since the resulting binary is 15mb big I'd need a release build to actually test if it can run on my device, which failed to build so far:
$ RUSTFLAGS="-C target-feature=-crt-static" cross -Zbuild-std=std,panic_abort +nightly build --target powerpc-unknown-linux-musl --release
[cross] warning: using newer rustc `1.75.0-nightly (2f1bd0729 2023-10-27)` for the target. Current active rustc on the host is `rustc 1.73.0 (cc66ad468 2023-10-03)`.
 > Update with `rustup update`
   Compiling compiler_builtins v0.1.101
   Compiling core v0.0.0 (/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core)
   Compiling libc v0.2.149
   Compiling cc v1.0.79
   Compiling memchr v2.5.0
   Compiling std v0.0.0 (/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std)
   Compiling unwind v0.0.0 (/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/unwind)
   Compiling rustc-std-workspace-core v1.99.0 (/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/rustc-std-workspace-core)
   Compiling alloc v0.0.0 (/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc)
   Compiling cfg-if v1.0.0
   Compiling adler v1.0.2
   Compiling rustc-demangle v0.1.23
   Compiling rustc-std-workspace-alloc v1.99.0 (/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/rustc-std-workspace-alloc)
   Compiling panic_unwind v0.0.0 (/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/panic_unwind)
   Compiling panic_abort v0.0.0 (/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/panic_abort)
   Compiling gimli v0.28.0
   Compiling miniz_oxide v0.7.1
   Compiling std_detect v0.1.5 (/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/stdarch/crates/std_detect)
   Compiling object v0.32.0
   Compiling hashbrown v0.14.2
   Compiling addr2line v0.21.0
   Compiling proc_macro v0.0.0 (/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/proc_macro)
   Compiling my-project v0.1.0 (/home/user/Development/git/my-project)
error[E0463]: can't find crate for `panic_abort`

For more information about this error, try `rustc --explain E0463`.
error: could not compile `my-project` (bin "my-project") due to previous error
[cross] warning: rust-std is not available for powerpc-unknown-linux-musl
[cross] note: you may need to build components for the target via `-Z build-std=<components>` or in your cross configuration specify `target.powerpc-unknown-linux-musl.build-std`
              the available components are core, std, alloc, and proc_macro

commenting out all my properties in this Cargo.toml block makes the release build work too:
[profile.release]
#opt-level = 'z'   # Optimize for size
#lto = true        # Enable link-time optimization
#codegen-units = 1 # Reduce number of codegen units to increase optimizations
#panic = 'abort'   # Abort on panic
strip = true # Strip symbols from binary*

ohhh, but it actually is compatible! running
ln -s /lib/libc.so /lib/ld-musl-powerpc.so.1

makes my binary print the expected output!
root@openwrt:~# /bin/my-project
hello world

Can you help me translate our success into something I can put into a .gitlab-ci.yml task?

also, will this solution blow up as soon as I do anything that uses float-point operations? since my musl-libc is actually soft-float but the compiler seems to think we have hardware-float?
Can you make the second = soft-float image public so I can use that one instead? Also can you merge what we managed to do into the regular cross-rs infrastructure?

Awesome!
Cross works by running in/starting a container, so unfortunately container in container is needed. If you want you can skip cross and just emulate what cross does but without cross. Shouldn't be too hard, just copy the dockerfile I've made and supply all the needed files and use that as the base image for the runner, then also install rustup and you should be all good :)
If you do want to use cross for Gitlab Runners, recommended usage is via CROSS_REMOTE now. see https://github.com/cross-rs/cross/wiki/FAQ#gitlab-ci

also, could you try adding a float operation to the binary, interested if the device actually can do hard floats.
something like
println!("{:?}", (1.0f32/10.0).sin());

no, doesn't seem like it can:

hello world
Illegal instruction

running in dev environment this instead prints:

hello world
0.09983342

Okey, so I don't think what'S described at https://github.com/cross-rs/cross/wiki/FAQ#gitlab-ci can work for me, since I'm not hosting a gitlab instance myself but just using the public gitlab.com instance which includes 400 free CI minutes myself - but I don't think (or know how) I can access a docker host from there like described at tcp://docker:2375/

You should be able to use tcp://docker:2375/ just fine, doesnt matter if you host the instance yourself or not.
So, for only using softfloat, you can do RUSTFLAGS="-C target-feature=-crt-static,-hard-float" and also use the muslsf image instead.
Another thing you could do is use a custom target, this way you don't have to specify any rustflags via env.
#Cross.toml
[target."powerpc-unknown-linux-muslsf.json"]
image = "ghcr.io/emilgardis/powerpc-unknown-linux-muslsf-cross:test"
build-std = true

# powerpc-unknown-linux-muslsf.json
{
    "arch": "powerpc",
    "crt-objects-fallback": "musl",
    "crt-static-default": false,
    "crt-static-respected": true,
    "data-layout": "E-m:e-p:32:32-Fn32-i64:64-n32",
    "dynamic-linking": true,
    "env": "musl",
    "has-rpath": true,
    "has-thread-local": true,
    "linker-flavor": "gnu-cc",
    "llvm-target": "powerpc-unknown-linux-musl",
    "max-atomic-width": 32,
    "os": "linux",
    "position-independent-executables": true,
    "pre-link-args": {
        "gnu-cc": [
            "-m32"
        ],
        "gnu-lld-cc": [
            "-m32"
        ]
    },
    "relro-level": "full",
    "stack-probes": {
        "kind": "inline"
    },
    "supported-split-debuginfo": [
        "packed",
        "unpacked",
        "off"
    ],
    "target-endian": "big",
    "target-family": [
        "unix"
    ],
    "target-mcount": "_mcount",
    "target-pointer-width": "32",
    "features": "-hard-float"
}

cross +nightly build --release --target powerpc-unknown-linux-muslsf.json

looking further into the MPC8540, you might be fine with SPE. this comment is a bit concerning though

The following CPUs are known to not working with this port:
MPC8540 (for this one, you can use Debian's regular powerpc port with activated FPU emulation in the kernel)

hmm, something with that custom target json didn't work as hoped:
$ cross +nightly build --target powerpc-unknown-linux-muslsf.json --release
[cross] warning: using newer rustc `1.75.0-nightly (2f1bd0729 2023-10-27)` for the target. Current active rustc on the host is `rustc 1.73.0 (cc66ad468 2023-10-03)`.
 > Update with `rustup update`
   Compiling my-project v0.1.0 (/home/user/Development/git/my-project)
error: linking with `cc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin" VSLANG="1033" "cc" "-m32" "/tmp/rustctgSOPN/symbols.o" "/target/powerpc-unknown-linux-muslsf/release/deps/my_project-b43545ee96f7e2e3.my_project.2be8c3d152745613-cgu.0.rcgu.o" "-Wl,--as-needed" "-L" "/target/powerpc-unknown-linux-muslsf/release/deps" "-L" "/target/release/deps" "-L" "/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/powerpc-unknown-linux-muslsf/lib" "-Wl,-Bstatic" "/target/powerpc-unknown-linux-muslsf/release/deps/libcompiler_builtins-ef09095d5d60da69.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/powerpc-unknown-linux-muslsf/lib" "-o" "/target/powerpc-unknown-linux-muslsf/release/deps/my_project-b43545ee96f7e2e3" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,--strip-all" "-nodefaultlibs"
  = note: /usr/bin/ld: cannot find Scrt1.o: No such file or directory
          /usr/bin/ld: cannot find crti.o: No such file or directory
          ...
          /usr/bin/ld: /target/powerpc-unknown-linux-muslsf/release/deps/my_project-b43545ee96f7e2e3.my_project.2be8c3d152745613-cgu.0.rcgu.o: relocations in generic ELF (EM: 20)
          /usr/bin/ld: /target/powerpc-unknown-linux-muslsf/release/deps/my_project-b43545ee96f7e2e3.my_project.2be8c3d152745613-cgu.0.rcgu.o: error adding symbols: file in wrong format
          collect2: error: ld returned 1 exit status

and the spe version fails like this:
error: linking with `cc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin" VSLANG="1033" "cc" "-m32 -mspe" "/tmp/rustcGLJTbP/symbols.o" "/target/powerpc-unknown-linux-muslspe/release/deps/my_project-5fc72a3857ce6d3c.my_project.d68e5b2406453db7-cgu.0.rcgu.o" "-Wl,--as-needed" "-L" "/target/powerpc-unknown-linux-muslspe/release/deps" "-L" "/target/release/deps" "-L" "/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/powerpc-unknown-linux-muslspe/lib" "-Wl,-Bstatic" "/target/powerpc-unknown-linux-muslspe/release/deps/libcompiler_builtins-5290246e7a0b36d3.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/powerpc-unknown-linux-muslspe/lib" "-o" "/target/powerpc-unknown-linux-muslspe/release/deps/my_project-5fc72a3857ce6d3c" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,--strip-all" "-nodefaultlibs"
  = note: cc: error: unrecognized command line option '-m32 -mspe'

okey so the binary resulting from this command:
RUSTFLAGS="-C target-feature=-crt-static,-hard-float" CROSS_CONTAINER_ENGINE=podman cross +nightly build --target powerpc-unknown-linux-musl --release

gives good float output:

hello world
0.09983342

that warning is what I'm discussing in https://github.com/rust-lang/rust/issues/117347
for the powerpc-unknown-linux-muslsf.json and powerpc-unknown-linux-muslspe.json targets, forgot that we also need to specify the linker
i'm not certain what the envvar would be called but you can set it in .cargo/config.toml
should be powerpc-linux-muslsf-gcc

I've tried putting those two into .cargo/config.toml:
[target."powerpc-unknown-linux-muslsf.json"]
linker = "powerpc-linux-muslsf-gcc"

[target.powerpc-unknown-linux-musl]
linker = "powerpc-linux-muslsf-gcc"

But it didn't change the output of cross +nightly build --target powerpc-unknown-linux-muslsf.json --release shown 4 posts above.
btw. huge thanks for helping me with this! :)

Also, since you said using tcp://docker:2375/ on public gitlab.com should work just fine, I wanted to try that - but I need a docker image for the layer calling cross, and the guide at https://github.com/cross-rs/cross/wiki/FAQ#gitlab-ci doesn't specify one. Is there a one provided by the cross-rs project for this purpose or do I need to do a cargo install cross in a generic rust docker image?

we have a generic image https://github.com/cross-rs/cross/pkgs/container/cross

thanks! is there one with nightly installed too?
$ RUSTFLAGS="-C target-feature=-crt-static,-hard-float" cross +nightly build --target powerpc-unknown-linux-musl --release
[cross] warning: unable to get metadata for package
[cross] note: Falling back to `cargo` on the host.
error: toolchain 'nightly-x86_64-unknown-linux-gnu' is not installed

no wouldn't make sense to install nightly in the images since they are "nightly"
install nightly with rustup install nightly

that's https://github.com/cross-rs/cross/issues/1351, im still not sure why it happens since it has worked for a while before

okey, thanks for showing me the connection!
So gitlab build won't work until there's a solution for #1351 - correct?
Can you help me get the json based build definition files working?
For the powerpc-unknown-linux-muslsf.json you posted I get this error:

/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory

And for the *spe.json version's the error is:

cc: error: unrecognized command line option '-m32 -mspe'

the powerpc-unknown-linux-muslsf.json target is using the wrong c toolchain, you'd have to tweak the variables set in
https://github.com/cross-rs/cross-toolchains/pull/46/files#diff-d3289395a4fe24e408d63f42af8d51c23b61c51ec8974e090bb33c9a60c68a57
however, I'm not sure about the naming of the env-vars with .json targets, I think I remember something about cargo not supporting them
for the spe version, same story


Load words dynamically

Right now the daily word will reload every deployment, would be nice to have the option to add new words without redeployment.

Deployments shouldn't change word order, closing for now.


Vogue - Ambient Light player bugs

http://www.a1k0n.net/code/jsxm/#amblight.xm
It seems to not skip patterns where it should, or something. Haven't looked into it at all yet.

there's something wrong with this copy of the song... that pattern is broken, has a bunch of F00s in it, with no D00 pattern break.


refactor: add statistics to navbar

Summary
https://app.clickup.com/t/861mxmdy5

Checklist

[ ] I checked my UI changes against the design and there are no notable differences
[ ] I checked my UI changes for any responsiveness issues
[ ] I checked my UI changes in light AND dark mode
[ ] I checked my (code) changes for obvious issues, debug statements and commented code
[ ] I opened a corresponding card on Clickup for any remaining TODOs in my code
[ ] I added a short description on how to test this PR (if necessary)
[ ] Documentation (if necessary)
[ ] Tests (if necessary)
[ ] Ready to be merged

@alexbarnsley for this one we could merge to staging to get a release out


Violation of license (and pure asshattery by XYZ)

Hi. It seems like XYZWare, the printing program that comes with XYZ 3d printers, is just a heavily mutilated repetier host, with anything that looks scary just hidden. Decompiled it, and ran across things like:
"			this.helpToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[]
{
this.repetierHostHomepageToolStripMenuItem,
this.repetierHostDownloadPageToolStripMenuItem,
this.manualToolStripMenuItem,
this.toolStripMenuItem2,
this.slic3rHomepageToolStripMenuItem,
this.skeinforgeHomepageToolStripMenuItem,
this.toolStripSeparator2,
this.repRapWebsiteToolStripMenuItem,
this.repRapForumToolStripMenuItem,
this.thingiverseNewestToolStripMenuItem,
this.thingiversePopularToolStripMenuItem,
this.toolStripMenuItem1,
this.aboutRepetierHostToolStripMenuItem,
this.donateToolStripMenuItem,
this.checkForUpdatesToolStripMenuItem,
this.supportToolStripMenuItem
});"
Its all just hidden, visibility set to false.
And the standard draconian 'We own everything!' license in there. They also include a whole bunch of other open source libraries, along with statically linking with GPL licensed stuff.
I am sure this isn't news, but..? Couldn't find anything on it.

Wouldn't have guessed that from the look I know. Guess they have taken the latest open source version as base, which is ok so far. Linking GPL stuff makes them GPL but these are not your products, so nothing I would do here. Nonetheless thanks for the information. Always nice to know who is using our software base.


Disable submit button on validation errors

Hi !, this addon is awesome, but i'm font find any example or documentation about disable the submit button on validation error.
Is possible ? maybe there are any way to get the model whitin block content in template? or there are any simple way?
thanks!

we end using something like this:
{{#with (changeset user validations) as |data|}}

  {{#form-for data
    submit=(route-action 'submit')
    as |f|}}

is valid: {{data.isValid}}

  {{/form-for}}

{{/with}}

Given that validations are handled outside of this add-on, I think you would have to resort to applying it to each submit button.
{{f.submit 'Submit form' disabled=(not data.isValid)}} or something should work.


Fix loading status.

Loading status failed to switch to true on second or later rendering of the request.
@mbasso

Thank you very much!


allow for user login / authentication

Allow for user login / authentication.
This should:

be optional
use login/password
optional Github OAuth

This issue was moved to coderoad/core-coderoad#3


Feature: add "install" toolbar button for certificate files

Resolved / Related Issues

[x] Were these changes approved in an issue or discussion with the project maintainers? In order to prevent extra work, feature requests and changes to the codebase must be approved before the pull request will be reviewed. This prevents extra work for the contributors and maintainers.
Closes #12482

Validation
How did you test these changes?

[x] Did you build the app and test your changes?
[ ] Did you check for accessibility? You can use Accessibility Insights for this.
[ ] Did you remove any strings from the en-us resource file?

[ ] Did you search the solution to see if the string is still being used?

[ ] Did you implement any design changes to an existing feature?

[ ] Was this change approved?

[x] Are there any other steps that were used to validate these changes?

Open app ...
Click on any .cer, .crt, .pfx, and .der files.

Screenshots (optional)

Thank you for the pull request, this looks very good.


fix: do not add the scrollbar by default

Using reveal adds a double scrollbar as overflow: scroll is used. We should use overflow: auto instead.
https://codepen.io/DanielRuf/pen/RMRVjO
https://codepen.io/DanielRuf/debug/RMRVjO
Closes https://github.com/zurb/foundation-sites/issues/11064 and https://github.com/zurb/foundation-sites/issues/10824
Codepen with the changes: https://codepen.io/DanielRuf/pen/RMRgNN

Codepen with the changes: https://codepen.io/DanielRuf/pen/RMRgNN

Will try to prepare as many testcases as possible so we can test all (common) usecases.

Prepared some test cases here:
https://codepen.io/DanielRuf/pen/VXKqLa?editors=1000
Will run the tests on monday for the browsers or devices that I can not test here.
Will test tomorrow the other browsers which I can test.

@DanielRuf Do you have a Browserstack account ?
If not, I'll make the tests.

@DanielRuf Do you have a Browserstack account ?

No, I do not have one but we have one at work and our own device lab.
If you want you can do some testing with your browserstack account.


flush logger thread on cpu exception (#43)

uses the (already existing) exception handler in skyline to flush the logger and then perform a user abort.
atmosphere crash report appears to be the same? could use some more testing but this is probably a good utility to have.

edit: the atmosphere crash report is not the same


Release v0.11.1

@shadycuz could you take a look at the coverage upload failure please? If it's a recurring issue could you fill me in on how to solve it in future?
I could do with at least an alpha release of this, if not it published, so I can start on trying to build a reference implementation of a plugin for testing with.

Sorry @dhutchison, I forgot this never got merged.
The token issue is annoying and is wrecking my other projects also. It appears it uses the "public" token which is rate limited somehow? Either by IP or project or owner etc.
Apparently, the solution is to use on_pull_request target. Which gives the MR access to the repository codecov token....
Okay, I just checked... we are not using the token 🙃


Please publish on atmosphere

Hello,
Some of your latest commits are not published and fix important issues. Can you publish the master on atmosphere ?
Thx.
Bye

enjoy :)

Thx
Le 15 avr. 2016 23:19, "comerc"<EMAIL_ADDRESS>a écrit :

enjoy :)
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/comerc/meteor-autoform-typeahead/issues/12#issuecomment-210649731


trying to use chromedriver 2.22 to see if timeout issue gets better

@SethDavenport this will only run smoke tests in circle ci instead of all tests

:shipit: - if this helps please patch it over to the others when you have time. Thanks!


Feature/demo2x

the IntegrationSpec doesn't work on master either

I think I have fixed your comments, can you take another look-see?

Thanks @mihaisoloi - am merging it!


allow user to add all data with one command

A pilot of this capability is already committed in f403a37. The idea is to be able to automatically compute the name, data file, and metadata file given the contents of the data directory.
The current pilot assumes that each experiment has two files, which follow the pattern
data file: {experiment name}_{something}.csv
metadata file: {experiment name}_{anything with "metadata" in it}.csv
the new dir command lets us see the result of that:
(Cmd) dir LCdata/
found files for 9 experiments in LCdata/
+--------------+--------------------------------------------+---------------------------+
| name         | data                                       | metadata                  |
+--------------+--------------------------------------------+---------------------------+
| rpom3int     | rpom3int_pos_aligned.csv                   | Rpom3int_metadata.csv     |
| ventdom      | ventDOM_pos_aligned.2014.05.20_v1.csv      | ventDOM_metadata.csv      |
| geomics      | GEOMICS_pos_aligned.2014.04.21_v1.csv      | GEOMICS_metadata.csv      |
| deepdomtraps | DeepDOMtraps_pos_aligned.2014.05.05_v1.csv | DeepDOMtraps_metadata.csv |
| tps4         | Tps4_pos_2014.05.23.csv                    | Tps4_metadata.csv         |
| rpom3ext     | rpom3ext_pos_aligned.csv                   | Rpom3ext_metadata.csv     |
| tps6         | Tps6_pos_2014.05.23.csv                    | Tps6_metadata.csv         |
| syn2         | syn2_pos.csv                               | Syn2_metadata.csv         |
| aaiw         | AAIW_pos_aligned.2014.05.13_v1.csv         | AAIW_metadata.csv         |
+--------------+--------------------------------------------+---------------------------+

and add_dir lets you add all of that data in one fell swoop. If you want to change the name of the experiment, or the experiment's data files don't match these patterns, you're out of luck.

This is pretty robust as it works as is with the new data. closing.


Question: ARM docker images

It would be great if you could provide docker images for ARM processors. Archivebox would be great to be able to work on a RaspberryPi, archiving websites.

I think use Github Actions to build multi-arch images would be a good solution.
FYI: https://github.com/crazy-max/ghaction-docker-buildx
Usage Example: https://github.com/DIYgod/RSSHub/blob/master/.github/workflows/docker-release.yml

Checkout the docker-arm branch for arm support!
git remote update
git checkout docker-arm
docker build . -t archivebox

docker run -v $PWD:/data -p 8000:8000 archivebox server <IP_ADDRESS>:8000

Unfortunately the image is 1.25GB because building some python packages on arm requires a C++ compiler, but maybe that can be reduced with multi-stage builds if we figure out where all the built binaries are stored in the OS filesystem.


TS 3.4.0-dev.20190202 with 1.31.0 insiders crashes on sugestions

Version: 1.31.0-insider (user setup)0
Commit: 5ab047b584d974033e0c5ce529ea74a869355b87
Date: 2019-02-04T15:32:22.547Z
Electron: 3.1.2
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Windows_NT x64 10.0.17763

Steps to Reproduce:
Using node-forge pki and fs as such:
import { pki } from 'node-forge'
import { readFile } from 'fs'

readFile(pkeyPath, { encoding: 'utf8' }, (err, res) => {
  const pkey = pki.privateKeyFromPem(res);
  pkey.; // error happens here
})

@types/node and @types/node-forge are installed
tsconfig.json:
{
  "compilerOptions": {
    "target": "esnext",
    "module": "commonjs",
    "allowJs": true,
    "checkJs": true,
    "jsx": "react",
    "declaration": false,
    "sourceMap": false,
    "inlineSourceMap": true,
    "removeComments": true,
    "strict": true,
    "noImplicitAny": true,
    "noEmitOnError": true,
    "strictNullChecks": true,
    "strictFunctionTypes": true,
    "strictPropertyInitialization": true,
    "noImplicitThis": true,
    "alwaysStrict": true,
    "noUnusedLocals": true,
    "noUnusedParameters": true,
    "noImplicitReturns": true,
    "noFallthroughCasesInSwitch": true,
    "moduleResolution": "node",
    "baseUrl": "./",
    "allowSyntheticDefaultImports": true,
    "esModuleInterop": true
  },
  "include": [
    "./namespaces/*.d.ts",
    "./src/**/*.tsx?"
  ]
}

[2019-02-04 15:17:24.988] [renderer1] [error] Tree element not found: [object Object]: Error: Tree element not found: [object Object]
    at e.getElementLocation (file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:99:985)
    at e.isCollapsed (file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:99:340)
    at n.e.isCollapsed (file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:1017:981)
    at t.revealMarkersForCurrentActiveEditor (file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:4897:276)
    at t.autoReveal (file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:4897:95)
    at t.onActiveEditorChanged (file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:4894:212)
    at e.fire (file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:81:332)
    at t.doEmitActiveEditorChangeEvent (file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:4908:709)
    at t.handleActiveEditorChange (file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:4908:485)
    at file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:4908:833
    at e.fire (file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:81:312)
    at file:///F:/Users/Paulo/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:5345:314
[2019-02-04 15:17:42.364] [renderer1] [error] TypeScript Server Error (3.4.0-dev.20190202)
Error processing request. Debug Failure. False expression.
Error: Debug Failure. False expression.
    at doChange (tsserver.js:113623:22)
    at tsserver.js:113614:96
    at Function.ChangeTracker.with (tsserver.js:108758:17)
    at Object.getCodeActions (tsserver.js:113614:64)
    at tsserver.js:109744:121
    at Object.flatMap (tsserver.js:504:25)
    at Object.getFixes (tsserver.js:109744:23)
    at tsserver.js:118957:35
    at Object.flatMap (tsserver.js:504:25)
    at Object.getCodeFixesAtPosition (tsserver.js:118955:23)
    at IOSession.Session.getCodeFixes (tsserver.js:127107:64)
    at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (tsserver.js:125913:61)
    at tsserver.js:127276:88
    at IOSession.Session.executeWithRequestId (tsserver.js:127267:28)
    at IOSession.Session.executeCommand (tsserver.js:127276:33)
    at IOSession.Session.onMessage (tsserver.js:127298:35)
    at Interface.<anonymous> (tsserver.js:128559:27)
    at Interface.emit (events.js:182:13)
    at Interface._onLine (readline.js:290:10)
    at Interface._normalWrite (readline.js:433:12)
    at Socket.ondata (readline.js:149:10)
    at Socket.emit (events.js:182:13)
    at addChunk (_stream_readable.js:279:12)
    at readableAddChunk (_stream_readable.js:264:11)
    at Socket.Readable.push (_stream_readable.js:219:10)
    at Pipe.onread (net.js:636:20): Error: TypeScript Server Error (3.4.0-dev.20190202)
Error processing request. Debug Failure. False expression.
Error: Debug Failure. False expression.
    at doChange (tsserver.js:113623:22)
    at tsserver.js:113614:96
    at Function.ChangeTracker.with (tsserver.js:108758:17)
    at Object.getCodeActions (tsserver.js:113614:64)
    at tsserver.js:109744:121
    at Object.flatMap (tsserver.js:504:25)
    at Object.getFixes (tsserver.js:109744:23)
    at tsserver.js:118957:35
    at Object.flatMap (tsserver.js:504:25)
    at Object.getCodeFixesAtPosition (tsserver.js:118955:23)
    at IOSession.Session.getCodeFixes (tsserver.js:127107:64)
    at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (tsserver.js:125913:61)
    at tsserver.js:127276:88
    at IOSession.Session.executeWithRequestId (tsserver.js:127267:28)
    at IOSession.Session.executeCommand (tsserver.js:127276:33)
    at IOSession.Session.onMessage (tsserver.js:127298:35)
    at Interface.<anonymous> (tsserver.js:128559:27)
    at Interface.emit (events.js:182:13)
    at Interface._onLine (readline.js:290:10)
    at Interface._normalWrite (readline.js:433:12)
    at Socket.ondata (readline.js:149:10)
    at Socket.emit (events.js:182:13)
    at addChunk (_stream_readable.js:279:12)
    at readableAddChunk (_stream_readable.js:264:11)
    at Socket.Readable.push (_stream_readable.js:219:10)
    at Pipe.onread (net.js:636:20)
	at v.dispatchResponse (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\extensions\typescript-language-features\dist\extension.js:1:178116)
	at v.dispatchMessage (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\extensions\typescript-language-features\dist\extension.js:1:176870)
	at constructor._reader.onData.e (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\extensions\typescript-language-features\dist\extension.js:1:176226)
	at e.fire (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:44:113)
	at t.Reader.onLengthData (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\extensions\typescript-language-features\dist\extension.js:1:182299)
	at Socket.t.Reader.constructor.e.on.e (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\extensions\typescript-language-features\dist\extension.js:1:181947)
	at Socket.emit (events.js:182:13)
	at Socket.EventEmitter.emit (domain.js:442:20)
	at addChunk (_stream_readable.js:279:12)
	at readableAddChunk (_stream_readable.js:264:11)
	at Socket.Readable.push (_stream_readable.js:219:10)
	at Pipe.onread (net.js:636:20)
[2019-02-04 15:25:09.662] [renderer1] [error] TypeScript Server Error (3.4.0-dev.20190202)
Error processing request. Debug Failure. Invalid cast. The supplied value [object Object] did not pass the test 'isLabeledStatement'.
Error: Debug Failure. Invalid cast. The supplied value [object Object] did not pass the test 'isLabeledStatement'.
    at Object.cast (tsserver.js:1350:22)
    at doChange (tsserver.js:113683:39)
    at tsserver.js:113675:96
    at Function.ChangeTracker.with (tsserver.js:108758:17)
    at Object.getCodeActions (tsserver.js:113675:64)
    at tsserver.js:109744:121
    at Object.flatMap (tsserver.js:504:25)
    at Object.getFixes (tsserver.js:109744:23)
    at tsserver.js:118957:35
    at Object.flatMap (tsserver.js:504:25)
    at Object.getCodeFixesAtPosition (tsserver.js:118955:23)
    at IOSession.Session.getCodeFixes (tsserver.js:127107:64)
    at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (tsserver.js:125913:61)
    at tsserver.js:127276:88
    at IOSession.Session.executeWithRequestId (tsserver.js:127267:28)
    at IOSession.Session.executeCommand (tsserver.js:127276:33)
    at IOSession.Session.onMessage (tsserver.js:127298:35)
    at Interface.<anonymous> (tsserver.js:128559:27)
    at Interface.emit (events.js:182:13)
    at Interface._onLine (readline.js:290:10)
    at Interface._normalWrite (readline.js:433:12)
    at Socket.ondata (readline.js:149:10)
    at Socket.emit (events.js:182:13)
    at addChunk (_stream_readable.js:279:12)
    at readableAddChunk (_stream_readable.js:264:11)
    at Socket.Readable.push (_stream_readable.js:219:10)
    at Pipe.onread (net.js:636:20): Error: TypeScript Server Error (3.4.0-dev.20190202)
Error processing request. Debug Failure. Invalid cast. The supplied value [object Object] did not pass the test 'isLabeledStatement'.
Error: Debug Failure. Invalid cast. The supplied value [object Object] did not pass the test 'isLabeledStatement'.
    at Object.cast (tsserver.js:1350:22)
    at doChange (tsserver.js:113683:39)
    at tsserver.js:113675:96
    at Function.ChangeTracker.with (tsserver.js:108758:17)
    at Object.getCodeActions (tsserver.js:113675:64)
    at tsserver.js:109744:121
    at Object.flatMap (tsserver.js:504:25)
    at Object.getFixes (tsserver.js:109744:23)
    at tsserver.js:118957:35
    at Object.flatMap (tsserver.js:504:25)
    at Object.getCodeFixesAtPosition (tsserver.js:118955:23)
    at IOSession.Session.getCodeFixes (tsserver.js:127107:64)
    at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (tsserver.js:125913:61)
    at tsserver.js:127276:88
    at IOSession.Session.executeWithRequestId (tsserver.js:127267:28)
    at IOSession.Session.executeCommand (tsserver.js:127276:33)
    at IOSession.Session.onMessage (tsserver.js:127298:35)
    at Interface.<anonymous> (tsserver.js:128559:27)
    at Interface.emit (events.js:182:13)
    at Interface._onLine (readline.js:290:10)
    at Interface._normalWrite (readline.js:433:12)
    at Socket.ondata (readline.js:149:10)
    at Socket.emit (events.js:182:13)
    at addChunk (_stream_readable.js:279:12)
    at readableAddChunk (_stream_readable.js:264:11)
    at Socket.Readable.push (_stream_readable.js:219:10)
    at Pipe.onread (net.js:636:20)
	at v.dispatchResponse (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\extensions\typescript-language-features\dist\extension.js:1:178116)
	at v.dispatchMessage (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\extensions\typescript-language-features\dist\extension.js:1:176870)
	at constructor._reader.onData.e (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\extensions\typescript-language-features\dist\extension.js:1:176226)
	at e.fire (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:44:113)
	at t.Reader.onLengthData (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\extensions\typescript-language-features\dist\extension.js:1:182299)
	at Socket.t.Reader.constructor.e.on.e (f:\Users\Paulo\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app\extensions\typescript-language-features\dist\extension.js:1:181947)
	at Socket.emit (events.js:182:13)
	at Socket.EventEmitter.emit (domain.js:442:20)
	at addChunk (_stream_readable.js:279:12)
	at readableAddChunk (_stream_readable.js:264:11)
	at Socket.Readable.push (_stream_readable.js:219:10)
	at Pipe.onread (net.js:636:20)

Does this issue occur when all extensions are disabled?: No

Despite the nice, small repro, I can't get this to happen. I'm on 1.31.1 and a build from March 14, however.

@pocesar If you can share your tsserver logs, we would at least be able to see some more information from Typescript's point of view.
You can upload logs by following these steps:

With "typescript.tsserver.log": "verbose" enabled
Restart vscode or vscode insiders
Reproduce the problem
You can share the logs using

either by sharing logs in the folder that gets opened by running open tsserver log from the command palette
or
Run code --upload-logs on the command line (or code-insiders --upload-logs if using vscode insiders) and follow instructions and then share the log file ID

@sandersn I don't think I can reproduce this anymore, although new unrelated errors appeared (and I already opened new issues about). if it does happen again, I'll try getting the verbose log. the error is cryptic and doesn't give much information, indeed

Thanks for your help @pocesar. Let's re-open if you can get it to repro again.


Reconsider how we configure lint rules in analysis options objects

In https://dart-review.googlesource.com/c/sdk/+/335063/3/pkg/linter/test/rule_test.dart, @scheglov notes:

I understand that we need to configure lint rules in some way, but I'm concerned about the current approach of modifying the analysis options object directly. This can lead to code that is difficult to maintain and understand.

I would propose an alternative approach that involves using or generating an analysis_options.yaml file. This would allow us to define lint rules in a more declarative and maintainable way, and it would also align with how the analysis server handles lint rules.

I believe that this change would make our code more readable, easier to understand, and less prone to errors. I would be happy to discuss this further if you have any questions.

Let me re-state it a bit easier, without LLM nonsense.
I hoped to be able to use AnalysisContextCollection[Impl] for all our analysis uses.
And I did a big push to use it for the analysis server itself.
Just give it the correctly configured file system, and let the analyzer do its work.
Don't go to the low level, and don't patch internal data.
This should be the last resort, if we really cannot do otherwise.

I made a big step in this direction with

https://dart-review.googlesource.com/c/sdk/+/390660 - make 11 fields in AnalysisOptionsImpl final. Woohoo!
https://dart-review.googlesource.com/c/sdk/+/391020 - make the three strict modes part of the public API.

However, a few fields remain mutable. In particular enabledLegacyPluginNames is still writable and is still modified in tests.

And with https://dart-review.googlesource.com/c/sdk/+/392240 I think this can be closed.  We do not update lint rules with that function; it's usually warning, lint, and contextFeatures. Please re-open if there are more specific actions to take here.


Profile - add icons and comments

https://www.ssw.com.au/rules/profile

Add the 4 icons on this page too

Add the rules that have comments

See image - change from

No rules have been somewhat disagreed yet
To
❌ No tagged rules yet.
-a

To: @adamcogan
cc: @JackLeerson
Hi Adam,

Add the 4 icons on this page too

Done - Each tab has an icon

Add the rules that have comments

Done - There is a tab for the rules you have commented on

Figure: Comments tab and icons

See image - change from
No rules have been somewhat disagreed yet
To
❌ No tagged rules yet.
-a

Done

Figure: New no content message


DCOS-53347: add error badges to Jobs form

Testing
Go to the jobs form, make some errors happen, confirm that the tabs get badges
For example:

Create a job with the id "test-id"
Select the "Command Only" radio input
Submit
The "General" tab should be badged with 1 error

Trade-offs
The messages in the ErrorsAlert banner are treated differently than in the Create Service form:

They aren't de-duplicated
The error path is prepended to the error messages

Not de-duplicating the errors causes the error badge count not to match the number of list items in the ErrorsAlert banner
Dependencies
dcos-ui-plugins-private PR
Screenshots

A lot of tests are failing, I will take a look.

@mperrotti , I updated the integration tests, I hope you don't mind.

:tada: This PR is included in version 2.139.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Support for 17

Hi,
This is great work. Is it possible for you to update this for Angular 17?

Got you covered, just point to version 1.1.0!


Audio only in the first game

Hi - i have created a Twang32 and it works almost the sound is only in the first game...
When I reset the device it works again but never in subsequent games?

https://github.com/bdring/TWANG32/blob/a848394748c9df7516cd4b9a902e994b4a067f36/TWANG32/sound.h#L59
The issue is somehow related to the pause of the audio - it really only is an issue when writing to the EEPROM and it disables the sound / interrupts.. It seems like the sound_resume is not working as expected
It could be related to the ESP32 chip - frequency something?

The issue is "resolved" you have to use ESP32 < version 2.x - 1.0.6 works fine


vscode 设置"editor.formatOnSave": true,更改api自动保存顶部会出现go: malformed module path "/": trailing slash

Environments (please complete the following information):
OS: [e.g. Mac]
go-zero version [e.g. go 1.22.0]
goctl version [e.g. 1.6.5, optional]
goctl-vscode [v0.1.10]

I also encountered the same problem, how to solve it?

It has already fixed on  https://github.com/zeromicro/go-zero/pull/4176, you can upgrade your goctl to the master branch after it merged.

goctl v1.6.6 version has fixed this problem.


ARIA role attribute in Markdown content is not rendered

What version of Hugo are you using (hugo version)?

$ hugo version
hugo v0.83.1-5AFE0A57+extended darwin/amd64 BuildDate=2021-05-02T14:38:05Z VendorInfo=gohugoio

Does this issue reproduce with the latest release?
Yes, I confirmed it's still an issue with v0.110.0:
$ hugo version
hugo v0.110.0-e32a493b7826d02763c3b79623952e625402b168+extended darwin/arm64 BuildDate=2023-01-17T12:16:09Z VendorInfo=gohugoio

Context
I was testing out Hugo's Markdown attribute support with the following text in a .md file in content/posts/:
blah blah blah
{.note role="note" data-hello="world"}

Hugo drops the role="note" attribute when it renders the <p> element:

It's desirable to be able to define ARIA attributes like this for those sites that aim to better support screen readers and accessibility in general.

https://github.com/yuin/goldmark/pull/358


Push rejected, failure creating release

Hi,
I'm for the first time trying to deploy a Meteor app to Heroku. I just started out with the todos example, added the buildpack and tried to push the comitted code. Everything seems to go fine, but somehow the push is rejected and the build fails.
Rick:todos rkplas$ git push heroku master
Counting objects: 113, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (108/108), done.
Writing objects: 100% (113/113), 247.42 KiB | 0 bytes/s, done.
Total 113 (delta 3), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Fetching custom git buildpack... done
remote: -----> Node.js app detected
remote: -----> Installing node
remote: -----> Installing meteor
remote: Downloading Meteor distribution
remote: ######################################################################## 100.0%
remote:
remote: Meteor <IP_ADDRESS> has been installed in your home directory (~/.meteor).
remote:
remote: Now you need to do one of the following:
remote:
remote:   (1) Add "$HOME/.meteor" to your path, or
remote:   (2) Run this command as root:
remote:         cp "/tmp/buildpack_60aea2829a59bc7586e9d5738213406b/meteor-eDih/.meteor/packages/meteor-tool/1.0.38/meteor-tool-os.linux.x86_64/scripts/admin/launch-meteor" /usr/bin/meteor
remote:
remote: Then to get started, take a look at 'meteor --help' or see the docs at
remote: docs.meteor.com.
remote: -----> Bundling bundle
remote: ios: removed platform
remote: android: removed platform
remote: npm WARN package.json<EMAIL_ADDRESS>No description
remote: npm WARN package.json<EMAIL_ADDRESS>No repository field.
remote: npm WARN package.json<EMAIL_ADDRESS>No README data
remote:
remote: ><EMAIL_ADDRESS>install /tmp/build_60aea2829a59bc7586e9d5738213406b/.meteor/heroku-build/app/programs/server/node_modules/fibers
remote: > node ./build.js
remote:
remote: `linux-x64-v8-3.14` exists; testing
remote: Binary is fine; exiting
remote<EMAIL_ADDRESS>node_modules/underscore
remote:
remote<EMAIL_ADDRESS>node_modules/semver
remote:
remote<EMAIL_ADDRESS>node_modules/chalk
remote: ├──<EMAIL_ADDRESS>remote: ├──<EMAIL_ADDRESS>remote: ├──<EMAIL_ADDRESS>remote: ├──<EMAIL_ADDRESS><EMAIL_ADDRESS>remote: └──<EMAIL_ADDRESS><EMAIL_ADDRESS>remote:
remote<EMAIL_ADDRESS>node_modules/eachline
remote: └──<EMAIL_ADDRESS>remote:
remote<EMAIL_ADDRESS>node_modules/source-map-support
remote: └──<EMAIL_ADDRESS><EMAIL_ADDRESS>remote:
remote<EMAIL_ADDRESS>node_modules/fibers
remote: -----> Adding PATH environment
remote: -----> Running extras
remote: -----> Adding MONGOHQ_URL -> MONGO_URL env
remote: -----> Adding MONGOLAB_URI -> MONGO_URL env
remote: -----> Installing phantomjs.
remote: -----> Discovering process types
remote:        Procfile declares types   -> (none)
remote:        Default types for Node.js -> web
remote:
remote: -----> Compressing... done, 26.4MB
remote: -----> Launching...
remote:  !     Push rejected, failure creating release
remote:
remote: Verifying deploy...
remote:
remote: !	Push rejected to salty-tundra-1782.
remote:
To https://git.heroku.com/salty-tundra-1782.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/salty-tundra-1782.git'

Okay so the push rejected was an easy fix: I simply forgot to add the mongolabs addon before pushing, you might want to add that to the docs...
The app now pushes and the app seems to build and deploy, but unfortunately it seems to crash because it cannot find the build somehow?
2015-01-08T09:23:47.568375+00:00 heroku[api]: Release v9 created by<EMAIL_ADDRESS>2015-01-08T09:23:48.114057+00:00 heroku[web.1]: State changed from crashed to starting
2015-01-08T09:23:58.055221+00:00 heroku[web.1]: Starting process with command `.meteor/heroku_build/bin/node .meteor/heroku_build/app/main.js`
2015-01-08T09:23:59.770127+00:00 app[web.1]: bash: .meteor/heroku_build/bin/node: No such file or directory
2015-01-08T09:24:00.555113+00:00 heroku[web.1]: Process exited with status 127
2015-01-08T09:24:00.575553+00:00 heroku[web.1]: State changed from starting to crashed
2015-01-08T09:24:11.657902+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=salty-tundra-1782.herokuapp.com request_id=4eae4ec1-c01c-4e4b-8ce0-6de788820ed7 fwd="<IP_ADDRESS>" dyno= connect= service= status=503 bytes=
2015-01-08T09:24:12.202303+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=salty-tundra-1782.herokuapp.com request_id=9baa3c58-ad0e-4b43-adf0-673cd663d7c3 fwd="<IP_ADDRESS>" dyno= connect= service= status=503 bytes=
2015-01-08T09:24:30.819388+00:00 heroku[web.1]: State changed from crashed to starting
2015-01-08T09:24:37.582433+00:00 heroku[web.1]: Starting process with command `.meteor/heroku_build/bin/node .meteor/heroku_build/app/main.js`
2015-01-08T09:24:40.481135+00:00 app[web.1]: bash: .meteor/heroku_build/bin/node: No such file or directory
2015-01-08T09:24:41.332962+00:00 heroku[web.1]: Process exited with status 127
2015-01-08T09:24:41.340369+00:00 heroku[web.1]: State changed from starting to crashed

@RickvdP I am having the same problem as the first log. How did you add the mongolabs addon?

Hi @nspangler, I added the addon by simply running
heroku addons:add mongolab

Have you gone through Heroku, to the MongoLabs add on config page and configured a user and password for the database?
Then set the MongoURL with the db user and password?

On Jan 8, 2015, at 9:30 AM, RickvdP<EMAIL_ADDRESS>wrote:
Hi @nspangler, I added the addon by simply running
heroku addons:add mongolab
—
Reply to this email directly or view it on GitHub.

Hi @hvtor, no I haven't done that as a 'heroku_app33102xxx' user and password where automatically created and a MongoDB connection string was already inserted in the MONGOLAB_URI env variable.

I'm having a similar problem to @RickvdP. I'm on Meteor <IP_ADDRESS>, I've added mongolab, and MONGOLAB_URI is set, but I still get this:
Initializing repository, done.
Counting objects: 204, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (146/146), done.
Writing objects: 100% (204/204), 28.01 KiB | 0 bytes/s, done.
Total 204 (delta 51), reused 159 (delta 40)

-----> Fetching custom git buildpack... done
-----> Node.js app detected
-----> Installing node
-----> Installing meteor
Downloading Meteor distribution
######################################################################## 100.0%

Meteor <IP_ADDRESS> has been installed in your home directory (~/.meteor).

Now you need to do one of the following:

  (1) Add "$HOME/.meteor" to your path, or
  (2) Run this command as root:
        cp "/tmp/buildpack_4679c59dc34866638a0b1d6c8da2c424/meteor-YANI/.meteor/packages/meteor-tool/1.0.40/meteor-tool-os.linux.x86_64/scripts/admin/launch-meteor" /usr/bin/meteor

Then to get started, take a look at 'meteor --help' or see the docs at
docs.meteor.com.
-----> Bundling bundle
ios: platform is not in this project
android: platform is not in this project
npm WARN package.json<EMAIL_ADDRESS>No description
npm WARN package.json<EMAIL_ADDRESS>No repository field.
npm WARN package.json<EMAIL_ADDRESS>No README data

><EMAIL_ADDRESS>install /tmp/build_4679c59dc34866638a0b1d6c8da2c424/.meteor/heroku_build/app/programs/server/node_modules/fibers
> node ./build.js

`linux-x64-v8-3.14` exists; testing
Binary is fine; exiting
<EMAIL_ADDRESS>node_modules/underscore

<EMAIL_ADDRESS>node_modules/semver

<EMAIL_ADDRESS>node_modules/eachline
└──<EMAIL_ADDRESS>
<EMAIL_ADDRESS>node_modules/source-map-support
└──<EMAIL_ADDRESS><EMAIL_ADDRESS>
<EMAIL_ADDRESS>node_modules/fibers

<EMAIL_ADDRESS>node_modules/chalk
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS><EMAIL_ADDRESS>└──<EMAIL_ADDRESS><EMAIL_ADDRESS>-----> Adding PATH environment
-----> Running extras
-----> Adding MONGOHQ_URL -> MONGO_URL env
-----> Adding MONGOLAB_URI -> MONGO_URL env
-----> Installing phantomjs.
-----> Discovering process types
       Procfile declares types   -> (none)
       Default types for Node.js -> web

-----> Compressing... done, 22.8MB
-----> Launching...
 !     Push rejected, failure creating release

To git@heroku.com:example.git
 ! [remote rejected] master -> master (pre-receive hook declined)

@jacksondc can confirm I get the same error when pushing a fresh repo

i was getting the same error when pushing to Heroku, changed to this buildpack https://github.com/jordansissel/heroku-buildpack-meteor.git and it worked

@nickbw I literally just used that package, can confirm, works great.

@nickbw but it doesn't have horse in the name... :cry:

that's true but at least it works

Sorry for the delay, folks: I've documented the step requiring mongolab.  Thanks @RickvdP for pointing that out.
@jacksondc it sounds like you might have a separate issue, if you've added mongolab via heroku addons:add mongolab and it still doesn't work.  I've just tried the following which works for me.  Can you tell me more about the steps you're trying which resulted in the failure you're seeing?
This works:
meteor create --example todos
cd todos
git init .
git add .
git commit -a -m "First commit"
# Create an app on heroku
heroku git remote -a <appname>
heroku config:set BUILDPACK_URL=https://github.com/AdmitHub/meteor-buildpack-horse.git
heroku config:set ROOT_URL=http://<appname>.herokuapp.com
heroku addons:add mongolab
git push heroku master

I don't think this issue is related to MongoLab vs Compose. It should work with either. (BTW @yourcelf the README says you need to use a branch for MongoHQ/Compose, that should not be necessary since 804aea232494d11de603825a958a77637a30cbb3).

@pauldowman I think the issue people were having in this thread is not having added mongolab via heroku addons:add mongolab for new projects that were using mongolab, though @nickbw and @jacksondc seemed to have another problem.
As to whether a different branch is necessary for mongohq/compose: the release file for master asserts that mongolab addon is used.  This will work fine for existing apps that use mongohq/compose, as the addons section of the release file only runs or the first deploy, but it could mess up a first run of a project that is using mongohq/compose.  I'm not sure why the release file isn't adding mongolab for first deployers in this thread -- if anyone has a clue for that we could remove that step from the README.
https://github.com/AdmitHub/meteor-buildpack-horse/commit/804aea232494d11de603825a958a77637a30cbb3 is great for making sure people who were using this buildpack before don't break their production apps, but if you're going to use something other than mongolab it's probably best to use the branch or a fork so that mongolab in release doesn't trip you up.

@yourcelf yes, the release file adds the mongolab add-on only the first time an app is deployed. So you're saying the issue could be that you manually added Compose first? Right that could be an issue. But if you have an existing app that uses Compose which was installed by this buildpack there's no problem since 804aea232494d11de603825a958a77637a30cbb3 ensures that MONGO_URL is set to either MONGOHQ_URL or MONGOLAB_URI.
So I think the documentation should just warn that mongolab is installed on the first deploy, so remove it if you've manually added Compose? I assume you don't want to maintain a branch. :smile:
I just tested deploying a Meteor <IP_ADDRESS> app for the each of the following:

Existing app with MongoLab
Existing app with Compose
New app with neither added

All worked.
I hadn't noticed that ROOT_URL isn't automatically set, this is an annoying gotcha that should be fixed (I'll try to find time for it soon).

Can someone who's having this problem describe their app?

Is it a new app?
Does it have Compose or MongoLab?
Did you add the Mongo service yourself or did the build back add it?
Meteor version
git push log
heroku log (heroku logs --tail before you deploy)

I created a new app using this build pack and followed the instructions and confirm that I got no errors

Thanks @nickbw -- I'm going to close this issue now.  If you, @jacksondc, or others see problems again, please open a new issue with more info.


Restricted Characters in Imported Commands

Hi! First, I just wanted to thank you for this... I Was looking for an Oh-my-zsh approach for PowerShell since forever! but, despite I followed all install instructions that were on the readme, I still get this after importing the oh-my-posh module in my profile, also... the first to lines only adds the same first lines redundantly over and over, is this supposed to be like that?

That message read exactly like this in english
WARNING: Some imported command names contain one or more of the following restricted characters:
#, () {{ }} [] & - / \ $ ^; : "'<> |? @` *% + = ~

currently my profile looks like this:
if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }
notepad $PROFILE
Import-Module posh-git
Import-Module oh-my-posh

I hope its just me missing something. Thanks in advance!

I managed to solve my problem, I had to erase everything related to PowerShell plugins in my home directory, then reinstall everything and everything was showing as advertised, all but some powerline icons that are refusing to show, but that's another thing entirely.


Private lobbies

This pull request adds support for private lobbies.

For join lobby?

For join lobby?


Add ppc64le binaries

Little-endian 64 bit PowerPC (ppc64le) is the "normal" PowerPC architecture supported by standard Linux distributions (RedHat, SUSE, Ubuntu, etc.).
Add support for this architecture in the install script, and add binary builds for it as well.

Thanks, I'm going to merge this when I release a new version.

Merged as de0da86. Thanks.


Add rate limiter or fail2ban on /api/login

otherwise LDAP admin is just one bruteforce away
readily available middleware:
https://github.com/didip/tollbooth_httprouter
https://github.com/didip/tollbooth

implemented in https://github.com/fs-geofs/UserManager/commit/9c3966834a0d33a9762054a0374e0fd8874b31a5

@noerw wrote:

implemented in fs-geofs@9c39668

Then this issue can be closed?

idk, depends on how we want to track issues and the code on this project.
The code in this repo doesn't include this change (yet).
Proposal to clean this up:

I submit a pull from fs-geofs to SpeckiJ
Once merged i delete fs-geofs/UserManager
@SpeckiJ transfers repo ownership to fs-geofs

@noerw As I would like to keep this repository in my personal GitHub Repository, I would propose this:

All development will take place on fs-geofs/UserManager
All deployment will be based on fs-geofs/UserManager
We transfer all Issues to fs-geofs (or just close them by implementing them)
I can keep my branch up-to-date by doing PR's from the fs-geofs/UserManager Repository

Which would lead to the following tasks:

[ ] Transfer the 3 remaining Issues to fs-geofs/UserManager

lol, I just deleted the fork :D
but i'm fine with either way

I don't fully understand what you guys now did to the repos, but what I see is a lot of notifications and a confusing state of this project's issues 👎

Why do we now have two issue trackers?!

@christophfriedrich:
The repository status is described here: https://github.com/SpeckiJ/UserManager/issues/10#issuecomment-487164339
tldr: fs-geofs will be the active fork that is actually used/maintained/developed against


Bump lodash version to pick up security fix

Same issue as https://github.com/UNC-Libraries/Carolina-Digital-Repository/pull/1048

Same as https://github.com/UNC-Libraries/Carolina-Digital-Repository/pull/1052


File not found: VBA_TOOLS.DLL

I have been using this DLL on different PC/laptop but when I installed on a Windows 10 64bit OS, I'm getting this error on loading the dll I have double checked the location and I can not see anywhere where to unblock the dll.
Would I need to install .net framework and if so what version.
Thanks
Matt

File not found could be something else but to answer your question, the project uses .NET 4.6

Ok I have checked the .net framework and 4.7.2 is installed do you know if there are any other issues around the file not found.

Is the file really on the location you say it is?
Within the DLL function, LoadLibrary (System.GetBasePath & "VBA_TOOLS.dll") is the System.GetBasePath or whatever funciton that returns the application path returning correct path?

yes, double check the dll / bin folder location some code works on other PCs.

Are you using the 64bit dll and 64bit dlls for bin folder? It also could be that dependency dlls from bin path are being blocked
you can get the x64 version from here: (beware functions may have changed from your version)
Dll and bin

I'm using the 32bit version and I have checked the dll in the bin folder and none are being blocked, moving over to the 64bit version would take some time and then might cause issues with other install.
I just need to understand why the file is not loading, thanks you for your help.
Matt

Ah okay, you are on 64bit but using 32bit dlls? I don't think the current setup would work because usually 64bits cannot load 32bit dlls. how about having both 64 and 32 bit dlls and your vba code
 #if Win64 then  load 64bit dll #else load 32bit dll #endif
would that be an option?

yes it is 64bit os but 64bit dll do not work when running the 64bit dll I get run-time error '91', commenting out the on error resume next the error changes to run-time error '438' object doesn't support this property or method.

64 bit os, 64bit office, you have tried 32 and 64bit dll and you are having issue with both dlls?
64bit office using 32bit dlls won't work
64bit office using 64bit dll should work. Please check this with the current sample file.
32bit office with 32bit dll should work too.
32bit office with 64bit dll won't work.

64 bit os and 64 bit office and 32bit dll or 64bit dll not working using the sample code.

has this been sorted matt?

Hi
No, I never worked out why this did not work and had to move on to a different project so if you have any updates that would be great.
Thanks
Matt

Interesting. You said same code works on other PC.   Any chance you can share a sample project from you? Either dropbox or onedrive download link? or would it be possible to share your screen (any remote or skype rDP tool) so I can have a look to understand the problem?

I have just moved to a new PC and using the same code the dll is not working now as the ShowDialogforfilearray is missing from the x64 dll, can you let me know what I can use instead to return the files string.
Thanks, Matt

Latest changes are published. Please have a look


Keywords are unnecessarily escaped

Source line: https://github.com/dotnet/roslyn/blob/c0a1d1ec94efc2b4fcc2334580c84741e10e45ef/src/EditorFeatures/CSharpTest/SimplifyInterpolation/SimplifyInterpolationTests.cs#L44
Expected:
                diagnostics.Select(Function(d) (d.Descriptor.Id, d.Severity)))

Actual:
                diagnostics.[Select](AddressOf Function(d) (d.Descriptor.Id, d.Severity)))

Fixed in latest commit. Please provide any other examples.


[Feature] Ship to NPM and other registries with flag?

Is this crate set to be the center to take the shipping process for other package registries with the correct way to start the binaries?
If so, there is this project rust-to-npm that has the option to handle Rust/cargo -> Node/npm. I think adding this could benefit CLIs.

this is how i've done it in the past: https://github.com/rustwasm/wasm-pack/tree/master/npm which is sorta similar to rust-to-npm. definitely on the roadmap!

rust-to-npm relies on the user building the binary, which is a lot to ask. Another way of doing it, which as far as I know was pioneered by esbuild, is to publish a separate package for each supported platform/architecture, and then a package which relies on each of those packages with optionalDependencies and which has a small shim which finds and executes the appropriate one. npm will pick the appropriate package from the optionalDependencies and install only that one.
There's a writeup of the approach here. I've used it myself in this project so people with node already installed can send/receive files with npx magic-wormhole, and can confirm the experience is quite nice.
A nice touch is to have the main package have a postinstall script which replaces the shim with the actual binary, so that subsequent invocations can skip the shim. You could also put that code in the shim itself and do without the postinstall, I imagine.
People do a similar trick in Python, though Python wheels let you specify different files for different platforms directly instead of needing separate packages.

@bakkot I agree on the above, I think Rust-to-npm is still a valid entry for certain groups on security aspects requiring the files to compile instead of trusting a binary.

The version ashley proposed will be shipping in 0.0.6 ~today

#210
#228
#224
https://opensource.axo.dev/cargo-dist/book/installers.html#npm (docs will only go live when we cut the release)

@Gankra looks good! I noticed theres not a uninstall file set for removing the binary.

Do you have examples/requirements for that? I don't think I've ever seen someone use uninstall.

@Gankra the uninstall script is triggered when a package is removed like npm uninstall package_name. It is useful for removing extra deps or in this case the bin. The example for rust-to-npm project can show the usage.

@j-mendez the implementation we went with (which i've used before) handles the clean up :) you can test yourself using the @axodotdev/cargodist pkg or here's a log from my terminal:
ag_dubs@Ashleys-MBP-2 npmtest % npm install @axodotdev/cargodisttest

added 34 packages, and audited 35 packages in 2s

4 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
ag_dubs@Ashleys-MBP-2 npmtest % ls node_modules/.bin
cargodisttest
ag_dubs@Ashleys-MBP-2 npmtest % npm uninstall @axodotdev/cargodisttest

removed 34 packages, and audited 1 package in 132ms

found 0 vulnerabilities
ag_dubs@Ashleys-MBP-2 npmtest % ls node_modules/.bin
ag_dubs@Ashleys-MBP-2 npmtest %

@ashleygwilliams lovely! I am about to add a section towards the other project highlighting the differences so people can be directed to the right project. Big fan of having the option to execute from node simply from the binary installation without having to rebuild on the machine. Thanks again!

@j-mendez that's rad! thanks so much and of course- if you run into anything please don't hesitate to open up a new issue, even if its just a question :)


fix: (issue #2528) Unexpected behaviour useRowSelect while selecting subRows

Fix issue #2528
Codesandox to check the issue

Will create PR after writing tests


ID all language that must be present under law

Beyond the text of the form itself. What disclaimers are required?

I think that the only text that's required is the text that appears before the signature checkbox:

I swear/affirm, under felony penalty for making willfully false material statements, that by pressing the Submit button and submitting this information that (1) the information I have provided on this form is true, (2) I am not requesting a ballot or voting in any other jurisdiction in the U.S., except the jurisdiction to which this application relates, and (3) that I am the person named in this absentee application.

I'm not sure about what text needs to appear prior to the "Assistant’s Statement/Info" signature checkbox. Of course, we can't use the same language as for the applicant signature, because that text doesn't apply. But I don't think it's as simple as just changing it—we only have that language because the VA State Board of Elections has specifically authorized it.


enum has no attribute

I'm having trouble running the mnist and genomics examples.  The issues arise when using NonlinearMxtsMode and any specified mode.  I get attribute errors no matter what method is specified.  Any suggestions?

Hi Greg, are you running an updated version of deeplift?

Hi Avanti,
Turns out I was using an older version of DeepLift and managed to get everything working.  I had to do a fair amount of installing and uninstalling specific versions of various packages to get it going.  You might want to include a requirements file in the future.
Thanks for you help.
Greg

Good point, thanks.


leoProfanity.check('.') throws an error

Usage is probably not likely to happen, but on rare cases when it does, this error might mess with the code flow.

I try to replicate it but everything seems to be ok.
I would help me a lot if we can reproduce it.
Thanks for reporting.

Forgot to mention that it happens on nodejs.
Try https://npm.runkit.com/leo-profanity and add leoProfanity.check('.')

:tada: This issue has been resolved in version 1.2.5 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add HttpHostName segment to IIS URL rewrite.

Addresses #9713

I'm still evaluating whether we should be adding this behavior.

Triage decision: we're going to decline this change. We support the IIS rule format in URL rewrite for compatibility and IIS doesn't support this variable. If you need to rewrite based on this value, you can write a rule using the native support in the rewrite middleware:
var options = new RewriteOptions()
	.AddIISUrlRewrite(... your IIS rewrite rules...)
	.Add(... other rules that use things IIS rewrite doesn't support ...)


Maintain the CI passing status

Looks like your CI is failing for the past couple of commits. CI should be kept passing at all times or else it defeats the purpose of having CI. Consider 'protecting' your master branch to prevent any PR that fails CI from merging.

Issue has been fixed! Thanks for the notification. I ticked the 'Require status checks to pass before merging' option without realizing that I had to specify which CIs I wanted passed before being able to merge. This has been addressed and our CI is now passing.


How to AutoScroll

How to auto scroll the tab.
Example
i have 10 tabs but on screen 4 tabs showing at a time. What I need, when in tapped last visible tab, it should auto scroll to left so that another tab visible.
similarly when I reach to 2nd tab then it should auto scroll 1st tab to visible.

Hi @ErAshu ,
Currently the library has no functionality for showing invisible tab.


Aml version - [merged]

In GitLab by @perarnau on Mar 21, 2019, 10:44
Merges aml-version -> master
Add function and macros for version checking/query + doc in README.markdown

In GitLab by @perarnau on Mar 21, 2019, 11:20
added 1 commit
f41a6039 - fix strtok on constant string
Compare with previous version
By Nicolas Denoyelle on 2019-03-21T16:20:28 (imported from GitLab project)

In GitLab by @perarnau on Mar 21, 2019, 13:00
merged
By Nicolas Denoyelle on 2019-03-21T18:00:12 (imported from GitLab project)

In GitLab by @perarnau on Mar 21, 2019, 10:46
added 1 commit
d8ce7667 - fail library initialization if header is not compatible
Compare with previous version
By Nicolas Denoyelle on 2019-03-21T15:46:35 (imported from GitLab project)

In GitLab by @perarnau on Mar 21, 2019, 13:00
mentioned in commit 42528fdd5707600751fb39863e8c085ccef58a7e
By Nicolas Denoyelle on 2019-03-21T18:00:12 (imported from GitLab project)


fix(forge init): making sure ds-test is pulled while using --no-git flag

Motivation
ds-test wasn't being pulled as a submodule of forge-std while using forge init project --no-git
To reproduce: forge init project --no-git  and forge build

Solution
While installing forge-std as a dependency, adding a command to pull it's submodules.

You can just pass --recursive to the clone command above smile

🤦🏽 TIL, ty made the change


Fix test failures with NumPy 1.11.0.

As reported by Chris Lamb in Debian Bug #824794, snuggs fails to build due to test failures:
  ../../../test_snuggs.py ..........................F.F.F.

=================================== FAILURES ===================================
__________________________ test_missing_closing_paren __________________________

    def test_missing_closing_paren():
        with pytest.raises(SyntaxError) as excinfo:
            result = snuggs.eval("(+ 1 2")
        assert excinfo.value.lineno == 1
        assert excinfo.value.offset == 7
>       assert str(excinfo.value) == 'Expected ")"'
E       assert 'Expected {Fo...Forward: ...}' == 'Expected ")"'
E         - Expected {Forward: ... | Forward: ...}
E         + Expected ")"

../../../test_snuggs.py:154: AssertionError
______________________________ test_missing_func2 ______________________________

    def test_missing_func2():
        with pytest.raises(SyntaxError) as excinfo:
            result = snuggs.eval("(# 1 2)")
        assert excinfo.value.lineno == 1
        assert excinfo.value.offset == 2
>       assert str(excinfo.value) == "expected a function or operator"
E       assert 'Expected {Fo...Forward: ...}' == 'expected a fu...n or operator'
E         - Expected {Forward: ... | Forward: ...}
E         + expected a function or operator

../../../test_snuggs.py:170: AssertionError
_________________________ test_bogus_higher_order_func _________________________

    def test_bogus_higher_order_func():
        with pytest.raises(SyntaxError) as excinfo:
            result = snuggs.eval("((bogus * 2) 2)")
        assert excinfo.value.lineno == 1
        assert excinfo.value.offset == 3
>       assert str(excinfo.value) == "expected a function or operator"
E       assert 'Expected {Fo...Forward: ...}' == 'expected a fu...n or operator'
E         - Expected {Forward: ... | Forward: ...}
E         + expected a function or operator

../../../test_snuggs.py:186: AssertionError
===================== 3 failed, 29 passed in 0.16 seconds ======================

NumPy was recently updated to 1.11.0 in Debian, which seems to be the cause of the changed exception.
This PR changes the tests to also accept the new exception raised with NumPy 1.11.0.

Coverage decreased (-0.9%) to 99.074% when pulling 414d359fc7da9b3a00e1314668bd9e7a6674cfb5 on sebastic:test-failures into da0c30de9f64801eaeec96f0cbfd57ae35522bab on mapbox:master.

Coverage decreased (-0.9%) to 99.074% when pulling 5484ddd2c675bdf2d80e98b52c061b16eb76c5c4 on sebastic:test-failures into da0c30de9f64801eaeec96f0cbfd57ae35522bab on mapbox:master.


Added static and dynamic feedforward constants to the pivot

Maybe we should consider having a GlobalHardware class/singleton that holds stuff like the pivot encoders because it's being used in two places now
Sorry for the noise in the diff, I think I ran a format. I'll open a PR once this gets merged that formats the entire project

You're right, it should be sine

Okay I fixed it 🤦


dashboard: "No resource selected" on the providers tab

Hi,
suddenly, when I want to visit the providers tab (MySQL etc.), I just get the message "No resource selected". Firebug has shown this JS error:

Maybe a missing env var somewhere?

Do you have a mongodb provider in your cluster? I wonder if this is #3198.

No, mongodb is not used and also doesn't show up on the health page.

That might be the problem, can you try the suggested workaround in #3198?

This workaround seems to work. Wheras I now have this dummy application. :) As soon as I delete it, the providers page falls back in the above mentioned state.
-> So this ticket could be a duplicate to #3198


Add fake RX time option

[x] I have searched the issues of this repository and believe that this is not a duplicate.

Summary
Add an option to set the RX time to the system time if there is no time set from the GPS.
What is the use-case?
This option exists in the Gateway Bridge's Semtech UDP backend. Adding this feature to the concentratord would make the Concentratord + CSGB a replacement for Semtech UDP Packet Forwarder + CSGB when this feature is needed.
Implementation description
Technically speaking it could be implemented in the CSGB instead, but I think this is more hardware related and therefore belong to the concentratord.
Can you implement this by yourself and make a pull request?
I don't know where it belongs and the implication of the implementation of this for the different HAL implementations.

Hi @mullerch, sorry for the delay. I had quite a full backlog...
I agree this is useful and I'm looking at this right now. What do you think if the Concentratord would always fallback on system-time in case there is no GPS (fix)?
We have the rx_info.time and rx_info.time_since_gps_epoch. Currently, I believe both fields are empty in case no GPS time is available and both are set if there is a GPS time available.
What if we always set the time field regardless of GPS time availability?

HI @brocaar, thanks for taking some time for this!
I think, always having the time is a good idea. We just need to make sure the protocol defines which data comes from which source in which scenario to avoid confusion (or maybe have a time_source field?).
The only downside of this change is usage of more bandwidth if forwarded as is. However, I think this should be solved in the UDP/MQTT forwarder if needed as it's network related.


User feedback fix

There was an error in printing feedback to the user:
Status: merging intervals

Status: done!

Merged intervals:
[[5, 9], [12, 18], [30, 62]]

Instead of:
Status: merging intervals

Merged intervals:
[[5, 9], [12, 18], [30, 62]]

Status: done!

Code fix works as intended.
Further documention was includes.


Pre-RFC: Unchecked arithmetic

On IRC, we recently discussed the speed of addition. I think Rust currently has no way to say “I know this cannot overflow, so just optimize and UB if it actually can”.
Hence the idea of adding unchecked_add, etc., that would be unsafe functions. (addition of an Unchecked<u*> type is left to later assessment)
Specific list of functions that'd be available as unchecked_* is the same set of functions that are currently available as checked_*, overflowing_* and wrapping_* forms:

unchecked_add
unchecked_sub
unchecked_mul
unchecked_div
unchecked_div_euc
unchecked_rem
unchecked_mod_euc
unchecked_neg
unchecked_shl
unchecked_shr
unchecked_pow

Is there any major roadblock/risks that you think I should be aware of before starting to write this RFC? Do you like this idea or not?
For the potential for improvement, even though it's hard to pinpoint the exact reason why, using signed arithmetic instead of unsigned arithmetic in C here made the code run 10% faster -- this is likely an equivalent gain we could have using unchecked variants instead of overflowing (or equivalent) ones. :) (not even counting debug builds, where most of the huge gain could already be had by using eg. overflowing_*, even though it wouldn't really be semantically correct)
Note: this is the same idea as https://github.com/rust-lang/rust/pull/52205 , except it'd be available to user code

I don’t know how much context you reviewed when discussing this matter, but it would be a good thing for any RFC here to start by reviewing the text of RFC 560, PR: https://github.com/rust-lang/rfcs/pull/560 and the discussion thread linked on its PR, and perhaps the other discussions that preceded it

Notably #146 was an important predecessor to #560 that I think tried to incorporate more allowance of undefined behavior, in a scoped manner.

Thank you for the pointers! I must say I didn't read in detail all the discussions, but looking at everything that mentions “unsafe” (assuming this would lead to the messages relevant for the current discussion, given I can't imagine such primitives not being “unsafe” and noone mentioning it) and reading about half the other posts to try not to miss any extended discussion, I think that:

#540 looks very centered around what the default operating mode should be, and having wrapping be the default or not.
#540 also debated about returning undefined results in release (instead of the current wrapping behaviour), that were rejected (naturally, can I say a few years later, as that'd be like using mem::undefined() without unsafe)
The ML thread discussed basically the same things as #540 (and also went to discussing “what is Rust trying to do”, and a bit of scoping the arithmetic type, and then a swift vs rust discussion, considerations on the optimizability of bounds checks… eclectic thread)
#146 was proposing undefined results in release. That's more or less what I'm putting forward now again, except now I'm proposing having it be unsafe (to match mem::uninitialized()).

Overall, I think the possibility of having unsafe helper functions to have performance-optimized has not really been discussed yet, even though surrounding discussions (and especially questions about which behaviour should be the default one) have been numerous :) Then, again, I didn't read everything, so maybe I missed something.
However, these discussions do me feel better about the unchecked_* functions being unsafe.

That said, reading these discussions also makes me wonder which should be the behaviour for preconditions not matched in unchecked_*:

Undefined result
Undefined behaviour

Undefined behaviour is much more violent, and not required for LLVM's add nuw (which only requires undefined result). However, it will likely be required for divisions (to allow reception of SIGFPE as a valid outcome of unchecked division-by-0), or weird architectures where an overflowing addition traps.
Overall, given these functions would be defined as unsafe, I think it'd be better to just have undefined behaviour straightaway, so that all possible optimizations could be done. What do you think about it?
BTW, I've edited the topmost post according to feedback received over IRC, basically removing the parts about a Unchecked<u*> type and adding in a link to a benchmark in C to reduce bikeshed-likelihood.

I think Rust currently has no way to say “I know this cannot overflow, so just optimize and UB if it actually can”.

Was
let (result, overflowed) = a.overflowing_add(b);
if overflowed {
    unsafe { unreachable_unchecked() }
} else {
    result
}

discussed or tried?

Not yet, what has been tried is this:
pub unsafe fn foo(a: u32, b: u32) -> u32 {
    a.checked_add(b).unwrap_or(std::mem::uninitialized())
}

(playground)
and this
pub unsafe fn foo(a: u32, b: u32) -> u32 {
    if let Some(x) = a.checked_add(b) {
        x
    } else {
        std::hint::unreachable_unchecked()
    }
}

(playground)
Both of which fail to generate add nuw in LLVM IR, and generate add instead.
I can now confirm the same result with
pub unsafe fn foo(a: u32, b: u32) -> u32 {
    let (result, overflowed) = a.overflowing_add(b);
    if overflowed {
        std::hint::unreachable_unchecked();
    } else {
        result
    }
}

(playground)
That said, the example you're giving does look like a reasonable “default cross-platform” implementation for unchecked_* (though I'd likely have used the trick with checked_* instead, given it'd also work nicely with unchecked_div being UB on division-by-0)
BTW, rustc appears to generate most-likely optimal IR for the example using checked_div and unreachable_unchecked (but not the other examples, due to the jump to panic for the overflowing_add example, and I don't really know why for the mem::uninitialized case), apart from maybe questions about idivl / divl as per the linked stackoverflow answer above, which could be investigated further during implementation (but I'd guess idivl couldn't be used here anyway due to the semantics of unsigned division)

add nuw

Why not add nuw nsw ?

AFAIK we can't currently generate the appropriate LLVM-IR in any way, so whether these could actually make a performance difference or not in some situations is basically just speculation unless one modifies rustc to try it out, and those who want to reproduce modify and recompile rustc themselves to do so.
I think we could add these to core::intrinsics as a step 0 first (this needs to be done anyways to implement the integer methods). That way we could all try this out on nightly in godbolt and see how much of an impact do these have.
Once we have more information we can reconsider adding the methods to the integers, the Unchecked wrapper (I'd call it UnsafeArithmetic<T> though), etc.
Worst case these will just hang in core::intrinsics forever, but these might still be useful while debugging code-gen / hacking on rustc / hacking on LLVM, so I'd start there.

Indeed, it's all speculative for Rust, but in C, this StackOverflow question appears to state that integer arithmetic (ie. something similar to the unchecked arithmetic proposed here) does perform 10% faster in at least one benchmark :)
Then, I agree with you that having intrinsics first would likely be first step. Let's wait for the follow-up of https://github.com/rust-lang/rust/pull/52205 for the time being, then, and the result of the Range optimization could also answer the question of whether that's a useful optimization :) (“could”, because if it's a good optimization then it'll have answered the question, but if it optimizes nothing, unchecked multiplications / divisions, esp. on ARM targets, appear like much more optimize-able operations to me)

Why not add nuw nsw ?

@gnzlbg Because there's no obvious type for which to have the methods do that.  My PR does nowrap_add::<u32> as add nuw and nowrap_add::<i32> as add nsw.  Do you have a situation in which you were wanting the combination of both overflow flags?

I've written a note about this topic:
https://users.rust-lang.org/t/high-performance-operations/19739/2

The intrinsics for unchecked_add, unchecked_sub and unchecked_mul are now on nightly.

Also for unchecked_shl and unchecked_shr.

Sounds like this was closed by https://github.com/rust-lang/rust/pull/59148

Actually, I guess this still makes sense as a request for it being exposed stable-y in the library.

any plans to migrate those to stable ?

What about unchecked_neg?

@A1-Triard There's no neg instruction in llvm, so unchecked_neg(x) is just unchecked_sub(0, x).

Still, I think, it is not a reason to not having unchecked_neg

@A1-Triard It's a reason not to have it as an intrinsic, which are the only things that exist right now.
Whether there should be an unchecked_neg in whatever gets stabilized is a different conversation, but since there's no stabilization-track APIs for this right now, that's now what's happened.
Last I heard there was potential concern with stabilizing things here, so anyone wanting to see further movement will need to do some experimentation in nightly to prove the value of these in real code.

From my perspective, the main use of this would be in code that is generated from tools like EverParse, which provide formal proofs that overflow indeed cannot occur.

There is already a.checked_add(b).unwrap_unchecked(), etc.
If this doesn't optimize as well as unchecked_add(), wouldn't a better solution be to add an optimization pass rather than add these functions to stable API?
Optimization can always be improved, but core API is forever.

I think the API is pretty clear cut though. If we have checked_add, unchecked_add looks quite natural. Especially if we get the full complement of other variants: panicking_add, wrapping_add, checked_add, overflowing_add, unchecked_add.


Update metrics exporter image tag and increase requests on the memory and CPU

This needs to be merged after https://github.com/openshift-pipelines/pipeline-service-exporter/pull/6 as the tag is the commit ID of that merge.

/lgtm


What is the actual block size when using read/write commands and blocksize=0?

Hello,
According to the documentation, setting blocksize=0 in a stream is preferable, and may result in a variable block size. But then, the docstring for Stream.read says: high performance applications will want to match this parameter to the blocksize parameter sed when opening the stream. If I set blocksize to 0 as recommended, what am I supposed to use as an argument for Stream.read()?
Here is a minimal example that directs the mic input directly to the output:
import numpy as np
import sounddevice as sd
import time
duration = 10 # in seconds
t_end = time.time() + duration
blocksize = 512 # I guess this is arbitrary
samplerate = sd.query_devices(0, 'output')['default_samplerate']
s = sd.Stream(channels=(1,2), blocksize=0)
s.start()
while time.time() < t_end:
    indata,of = s.read(blocksize) # Input from mic
    volume = np.linalg.norm(indata) # Volume from mic
    left = indata
    right = indata
    outdata = np.hstack([left,right])
    uf = s.write(np.float32(outdata))
s.stop()

I couldn't find clear examples of read() and write() being used for live audio processing, so I'd like to know if I'm doing something wrong. The code above definitely produces some sound artifacts.

I couldn't find clear examples of read() and write() being used for live audio processing

Me neither. I think there are none.
I don't know how to use those methods either, I normally prefer to use a callback function.
I've just copied the help text from the PortAudio docs, see http://www.portaudio.com/docs/v19-doxydocs/portaudio_8h.html#a0b62d4b74b5d3d88368e9e4c0b8b2dc7.
Please ask at the PortAudio mailing list (http://portaudio.com/contacts.html) and let me know what they recommend!


Custom header in HttpRequest get

Hi all,
I don't be able to add a custom headers to HttpRequest.
I tried with:
HttpRequest.get(url).basic(username,password);
req.header("myCustomHeader", "true");
...

but no custom header is added to http request.
How can I solve it? What's the problem?
Thanks.

As described in the documentation, you need to set the headers while creating the HttpRequest:
String contentType = HttpRequest.get("http://google.com")
                                .accept("application/json") //Sets request header
                                .contentType(); //Gets response header

afterwards is too late.

Thanks for the reply.
I have another little problem, with:
HttpRequest req = HttpRequest.get(url).basic(user.getUsername(), user.getPassword()).header("myCustomHeader", "true");
it doesn't work, but with:
HttpRequest req = HttpRequest.get(url).header("Authorization", "Basic dasadjosjdajsodiajiosd").header("myCustomHeader", "true");
it works fine.
Why?
Thanks a lot.

Not work how? What error are you seeing?

I'm sorry, it was my mistake.
Your solution works fine.
Thanks a lot.
I'm going to close this issue.