Confusion around failed build when using apt

Hi,
I noticed this problem when I tried using autovalue. The code below worked fine with autoValue added as CompileOnly Dependency (regardless of whether the net.ltgt.apt plugin was applied or not.
However, when I added an annotation processor as apt dependency (forgetting autoValue), like commenting out in the pasted example below, the project would not build anymore:
...
error: cannot find symbol
                return new AutoValue_Car

Adding auto_value as apt dependency as well fixed this. Not sure if that is the intended behavior, I found it mighty confusing. Even if this is intended behavior, it might be nice to provide somethin like maybe and AptAndCompileOnly dependency scope for all the libraries that bundle an annotation processor and annotations in the same jar.
To reproduce, using Gradle 3.3, Java 8, Ubuntu Linux
// build.gradle:
plugins {
	id "net.ltgt.apt" version "0.9"
}

apply plugin: 'java'

repositories {
  jcenter()
}

dependencies {
//  apt 'org.immutables:value:2.4.2'    // using this as only apt dependency breaks auto-value
  compileOnly 'com.google.auto.value:auto-value:1.3'
// apt 'com.google.auto.value:auto-value:1.3'   // need this only when using any other apt

  compile 'com.google.code.findbugs:jsr305:2.0.3'
  compile 'com.google.guava:guava:19.0'

  testCompile 'junit:junit:4.11'
  testCompile 'org.mutabilitydetector:MutabilityDetector:0.9.2'
}

// Java source
import com.google.auto.value.AutoValue;

@AutoValue
public abstract class Car {

	public abstract String model();
	public abstract int numWheels();

	public static Car create(String model) {
		return new AutoValue_Car(model, 4);
	}
}

This is indeed the intended behavior.
Actually, if you read the README closely, you'll find this:

Note that up until version 0.7, if [the apt and testApt] configurations were empty, an empty processor path (-processorpath :) would be passed to javac; this was a breaking change compared to the normal behavior of Gradle, as it meant annotation processors wouldn't be looked up in the tasks' classpath. Starting with version 0.8, no -processorpath will be passed if the <sourceSet>Apt configuration is empty; this is to follow the proposal to add first-class support for annotation processing to Gradle proper

So, with versions up to 0.7, your current configuration (with only compileOnly actually wouldn't have worked, and the behavior changed in 0.8. I suggest you read the JavaC documentation about how -processorpath is used and how annotation processors are looked up:

The search path can be specified with the -processorpath option. If no path is specified, then the user class path is used.

This plugin does not intend to hide that as there'd inevitably be leaky abstractions.
So, without apt dependency, no -processorpath is passed to JavaC, which means the search path for annotation processors would be the compilation classpath (in Gradle terms, the JavaCompile task's classpath; which itself defaults to being the main source set's compileClasspath, that's by default the compileClasspath configuration –the Gradle doc seems outdated–, that extends the compileOnly configuration, itself extending the compile configuration — phew!).
One thing you might not realize, is that the <sourceSet>Apt configurations are totally distinct from the <sourceSet>CompileOnly ones; which means you can have, say, Guava 21 in your apt (brought transitively by an annotation processor dependency) and Guava 19 in your compile, and they wouldn't conflict (by putting them in compileOnly, the Guava dependency would be "resolved" to Guava 21, so you'd compile against Guava 21, but would declare a "runtime dependency" of Guava 19 –from the compile configuration–, and that could lead to runtime errors because something you didn't expect to compile actually compiled –a Guava 21-only API– or other oddities)

BTW, if you want an aptAndCompileOnly configuration, you can use:
configurations {
  aptAndCompileOnly
}
configurations.compileOnly.extends configurations.aptAndCompileOnly
configurations.apt.extends configurations.aptAndCompileOnly

But that's unnecessary complication IMO to just save you one line in your dependency declarations.
Also note that the example in the README explicitly adds AutoFactory to both compileOnly and apt. AutoValue works the same (for now at least: https://github.com/google/auto/issues/268)

Thanks for the explanation. One thing I could imagine that might be useful is that if any apt-dependency is given, the gradle javaCompile task could make an info message about the path that is being used (given it is not the default classpath anymore). That would have helped me (I would have realized: "Oh, something non-default is going on, and the autoValue processor is not mentioned"). Not sure if your plugin would be involved in that logging, though.

You should have the exact arguments passed to JavaC in the --debug output (grep for "Compiler arguments" or -classpath); something like:
16:32:06.243 [DEBUG] [org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler] Compiler arguments: -source 1.7 -target 1.7 -d /…/gradle-errorprone-plugin/build/classes/main -g -sourcepath /…/gradle-errorprone-plugin/build/tmp/compileJava/emptySourcePathRef -classpath /…/.gradle/caches/3.3/generated-gradle-jars/gradle-api-3.3.jar:/…/.gradle/wrapper/dists/gradle-3.3-bin/64bhckfm0iuu9gap9hg3r7ev2/gradle-3.3/lib/groovy-all-2.4.7.jar:/…/.gradle/wrapper/dists/gradle-3.3-bin/64bhckfm0iuu9gap9hg3r7ev2/gradle-3.3/lib/gradle-installation-beacon-3.3.jar /…/gradle-errorprone-plugin/src/main/java/net/ltgt/gradle/errorprone/ErrorProneCompiler.java /…/gradle-errorprone-plugin/src/main/java/net/ltgt/gradle/errorprone/ErrorProneBasePlugin.java /…/gradle-errorprone-plugin/src/main/java/net/ltgt/gradle/errorprone/ErrorProneToolChain.java /…/gradle-errorprone-plugin/src/main/java/net/ltgt/gradle/errorprone/ErrorPronePlugin.java -XDuseUnsharedTable=true
(from my gradle-errorprone-plugin, that one does not use annotation processors)


ERROR astart is not int

Hello I'm looking to determine variants between to homologous chromosomes by mapping a whole genome sequence to a reference chromosome via minimap2 and fixchr:
$ minimap2 -x asm20 --eqx Chrom24_CM040141_Aggsing.fa Agt_singleline.mfa >> Chr24_Chr10GST_AggxAgt_20.paf

fixchr -c Chr24_Chr10GST_AggxAgt_20.paf -r Chrom24_CM040141_Aggsing.fa -q Agt_singleline.mfa

but I keep getting an error with the paf, do the files need to be compressed?
Reading Coords - ERROR - astart is not int

Thank you

you need to define input file type as using -F P


Select2 multiple not removing selected options from drop down when selected if they contain certain chars in IE11 (ex. é)

Select2 multiple not removing selected options from drop down when selected if they contain certain chars in IE11 (ex. é)

Can you expand upon the issue you are facing by adding a few more pieces of information to your bug report?

What steps can be used to reproduce the issue?
What is the bug and what is the expected outcome?
What browser(s) and Operating System have you tested with?
Does the bug happen consistently across all tested browsers?
What version of jQuery are you using? And what version of Select2?
Are you using Select2 with other plugins?

The contributing guide contains a useful section with a few questions which can help us track down the bug and speed up the process of finding a fix for it.  The creation of an isolated test case would also be useful.

Sorry I am using an out of date version. I will look into it further.


Remote storage size threshold window keeps popping up after start-up as of 0.23.17

Abstract
Remote storage size threshold window keeps popping up after start-up as of 0.23.17
Expected behaviour

Window pops up once and never again

Actually happened

Window keeps popping up on all devices after start-up

Reproducing procedure

Update to 0.23.17
Restart Obsidian
Wait

I confirm this issue too
Obsidian v1.6.7
Livesync plugin 0.23.18
Windows

Do you have "Notification" set?

Sorry for being absent!
This can be configurable as disabled by setting 0 to the Remote configuration  -> Notification  like this:

However, I recommend that configuration to some sizes and using the Enlarge the limit button each time to avoid unexpected database corruption or storage running out.
When pressing the Enlarge the limit button, enlarge the detection threshold to the current usage + 100MB.

Then the bug would be that the popup does not adjust the setting, it keeps on -1, no matter if I choose "no limit", "800mb" or "2GB".
A hint to the actual configuration in the settings would be great as well so that users know they can adjust the setting without limiting it to the pre-selected values.

I have the same issue since the latest update, it doesn't matter which limit I choose the window keeps popping up after every new start of the app. So now I have disabled the notification as noticed above. (The popup window was quite large and annoying!

Thank you for your patience!
There were things which I had not noticed yet. So sorry for the wrong explanation.
The actual problem was indeed as you mentioned; our decision had not been saved.
This has been fixed at v0.23.20. Would you mind if I ask you to check the behaviour, please?

@vrtmrz solved, thanks!

@vrtmrz solved, thank you!


Update the gax/nodejs template.

the new codegen relies on gax-nodejs 0.7.0 --
updating the package version
arguejs is not used anymore in the new codegen.

Could you check test failures?

Sorry, did not mean to close.

Current coverage is 91.23% (diff: 100%)

Merging #138 into master will not change coverage

@@             master       #138   diff @@
==========================================
  Files             3          3
  Lines           719        719
  Methods         150        150
  Messages          0          0
  Branches        116        116
==========================================
  Hits            656        656
  Misses           63         63
  Partials          0          0

Powered by Codecov. Last update 3f7107d...cdb422f


Config updates should fail if no localpref is set

When updating bgp speakers config if no localpref is explicitly declared in the pool config
advertisements:
      - localpref: 100

the configuration is applied but when a new loadbalanced service is created the advertisement will be empty:
https://github.com/google/metallb/blob/6d7a06f095d0a429e551d10fc610919bf8da2398/bgp-speaker/main.go#L111
which makes bgpspeaker simply ignore that advertisement with the message
<servicename>: announcable, making 0 advertisements

So ip is assigned from the pool but it never gets announced.
There should be a default for localpref or else such a config should trigger an error.

I think the problem here is not the lack of localpref, but a confusing aspect of the configuration.
The correct way to request an advertisement with everything set to the defaults is:
  advertisements:
  -

That creates a list of 1 advertisement, with no settings. If you don't have the -, the configuration means "you should make 0 BGP advertisements for this IP range.
This is an unfortunate consequence of how I structured the config file originally. I think we'll change this in 0.3, when @miekg adds ARP announcing support, we'll need a way to explicitly say "I want you to make BGP advertisements", separately from "here's some BGP settings".

Oh I see, i didn't look at it close enough. I guess if you are going to change it anyway it is fine. From an end user perspective it would be weird that the configuration is accepted but no announcements are being made.

Yeah, that was a thing I realized while I was writing the prototype, and then decided that we were going to refactor/change the configuration anyway for ARP and RIP support, so I would just fix it then.
In future, I think the address-pool section will look something like:
  name: my-pool
  cidr:
  - <IP_ADDRESS>/8
  advertise-bgp: true # If you say only this, we do something reasonable: advertise individual /32s, localpref=0, no communities.
  bgp-config: # If you want something different than the default, you must specify >=1 element in this section.
  - localpref: 42
    aggregation-length: 24

And then when we have arp and rip support, we can add advertise-arp: true, advertise-rip: true, and arp-config and rip-config sections if we need them. WDYT? Does that config structure make more sense to you?

Yeah, I think that would be definitely easier to get right. Just out of curiosity, in which cases do you think an arp proxy would be needed for services?

Will be fixed in 0.3.0: if a pool does not specify any BGP advertisements, we use a default that advertises a /32 with no other attributes. That way, there is no way to enable BGP advertising, but accidentally configure zero advertisements.


Looks like redis.Cmdable interface does not support Pipeline() method.

Should it?

I am not sure. It probably depends on context... so I would not touch without more details ;)

OK, thanks for thinking about it :)
The nice thing about Cmdable interface is that a user can switch between client implementations:

redis.Client

redis.ClusterClient

redis.Ring

This approach works for all commands but Pipeline() which is not a big deal since user can cast to the concrete type to call that method. It's just less convenient, that's all.

Okay, I added Pipeline in v4.1.11. Hopefully it does not break anything :)


[tcgc] always have a serverUrl for easier code usage

All changed packages have been documented.

You can try these changes at https://cadlplayground.z22.web.core.windows.net/typespec-azure/prs/538/
Check the website changes at https://tspwebsitepr.z22.web.core.windows.net/typespec-azure/prs/538/


Next Release - v0.5.2

If you haven't already, please read through our contributing guidelines before opening your PR
What is the purpose of this PR?
Changes needed for a new release. Also, an opportunity to test the release workflow, and find any straggling issues.
How did you implement your changes
Added the CI workflow in the README.md
Remaining issues

[ ] Update Develop Docs

Will you also update the developer docs section? I think some of the stuff about M1 macs is no longer relevant. The instructions for installing also still assumes there's a requirements.txt file, which I think now is gone in favor of the setup file. Finally, will you remove the section about making a new release, since all of that is in the comp wiki?

@ngreenwald do we want this to be the release that Candace can show to the reviewers? If so, we'll need to wait until we've merged in her requested fixes before merging this PR in.

Nope, we still have more changes for her project that need to get in before we can make a release for the paper

Nope, we still have more changes for her project that need to get in before we can make a release for the paper

Sounds good, just checking.


Ohm online visualizer is not the same when using uppercase and lowercase id

Using
Test {
    Exp
      = Tst

    Tst
      = alldigits

    alldigits
      = digit+
}

is not the same as using
Test {
    Exp
      = Tst

    Tst
      = Alldigits

    Alldigits
      = digit+
}

It should be the same, I've just changed "alldigits" to "Alldigits"
Test yourself on https://ohmlang.github.io/editor/# with these examples:

11
1 1

I haven't tested without the online editor

Found why it was bugged, in fact it's not a bug but a feature, see Here
Could you add it in the README.md file or somewhere to avoid another dev having the same problem?
Thanks


Jetifier is deprecated. Future versions of react-native CLI may not run it by default.

What's going on?

init project fails with
No patch files found
Jetifier is deprecated. Future versions of react-native CLI may not run it by default.
Jetifier: propose an AndroidX conversion PR to this repository: node_modules/.pnpm/detox@19.7.1_jest<EMAIL_ADDRESS>Jetifier: propose an AndroidX conversion PR to this repository: node_modules/.pnpm/detox@19.7.1_jest<EMAIL_ADDRESS>Jetifier: propose an AndroidX conversion PR to this repository: node_modules/.pnpm/detox@19.7.1_jest<EMAIL_ADDRESS>./bin/postInstall failed on command:
  if [ -d "ios" ]; then cd ios && pod install && cd -; fi

(Use `node --trace-uncaught ...` to show where the exception was thrown)

Steps to reproduce

npx ignite-cli new PizzaApp --bundle=com.infinitered.pizzaapp

npx ignite-cli doctor results:
System
  platform           darwin
  arch               arm64
  cpu                8 cores             Apple M1
  directory          zeta_chat_project   /Volumes/T7Touch/zeta_chat_project

JavaScript (and globally-installed packages)
  node               16.15.1                                   /Users/truongnguyen/.nvm/versions/node/v16.15.1/bin/node
  npm                8.13.2                                    /Users/truongnguyen/.nvm/versions/node/v16.15.1/bin/npm
    corepack         0.12.0
    dooboo-cli       7.7.1
    eas-cli          0.55.1
    expo-cli         5.5.1
    ignite-cli       7.14.1
    npm              8.13.2
    sharp-cli        2.1.1
    yarn             1.22.19
  yarn               1.22.19                                   /Users/truongnguyen/.nvm/versions/node/v16.15.1/bin/yarn
  pnpm               7.5.0                                     /Users/truongnguyen/.nvm/versions/node/v16.15.1/bin/pnpm
                     <no pnpm global package info available>
  expo               -                                         not installed

Ignite
  ignite-cli         7.14.1       /Users/truongnguyen/.nvm/versions/node/v16.15.1/bin/ignite
  ignite src         build        /Users/truongnguyen/.nvm/versions/node/v16.15.1/lib/node_modules/ignite-cli/build

Android
  java               17.0.3       /usr/bin/java
  android home       -            /Users/truongnguyen/Library/Android/sdk

iOS
  xcode              14.0
  cocoapods          1.11.3       /opt/homebrew/bin/pod

I was getting a similar error.
Downgraded pnpm to 6.33.1 (It was at 7.5.2) and the error went away.

same

Jetifier has been removed in v8, I'm closing this issue but feel free to reopen if still having issues after upgrading to the latest version.


matplotlib fix

@Dsantra92 saw the changes, since you are anyway making more plots , why not add these stuff as well:

Draw a vector field (see @ucalyptus readme)
an example of increasing thickness of the plot window. needs manipulating with the plot object and stuff.

@Dsantra92 file a new PR maybe?


[opengoal] Allow more than two inputs for + and * operators

Afaik this is a standard thing in most other lisp implementations, and it could be used to make some of our code look a bit nicer.

It should work correctly in the compiler already.
We already have some stuff in the decompiler that nests automatically, like the -> operator, that part isn't hard.  The annoying part is getting the casts right. I do want to clean that up a lot to hopefully make features like this much easier to implement.  Now that we have lots of test cases, I think this should be easier.

It was added for + for integers.
I will add + and * for floats soon.


Reject invalid overriding of class methods with interface arguments

Suggestion
The following code does compile (tested with TypeScript 4.4.2), but I would except it to not compile:
interface IA {
  a: string
}

interface IB extends IA {
  b: string // b cannot be undefined
}

class A {
  public do(i: IA) {
    console.log('i.a', i.a)
  }
}

class B extends A {
  // The compiler does not raise an error on B::do() prototype
  public do(i: IB) {
    // i.b is expected to be defined according to IB
    console.log('i.b cannot be undefined:', i.b)
  }
}

const a: A = new B()
// But here B::do(i: IB) is called with undefined i.b
a.do({ a: '' })

The execution result of this code is:
"i.b cannot be undefined:",  undefined

Hence, B::do(i: IB) method can be called with an IA argument, which means that i.b can be undefined.
The suggestion is to add a compilation error on B::do(i: IB) prototype.
I've hesitated to submit this as a bug since compiler does report an error for the same kind of design error using arguments such as string. For example, the compiler correctly reject the following code:
class A {
  public do() {}
}

class B extends A {
  // Property 'do' in type 'B' is not assignable to the same property in base type 'A'.
  // Type '(s: string) => void' is not assignable to type '() => void'.(2416)
  public do(s: string) {
    console.log(s)
  }
}

🔍 Search Terms

class method override interface argument
✅ Viability Checklist

My suggestion meets these guidelines:

[X] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[X] This wouldn't change the runtime behavior of existing JavaScript code
[X] This could be implemented without emitting different JS based on the types of the expressions
[X] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
[X] This feature would agree with the rest of TypeScript's Design Goals.

⭐ Suggestion

I would suggest to make the compiler to check that in the overriding prototype, interface arguments do not require anything more than what the overridden argument initially provides.
📃 Motivating Example

The code provided as illustration is a motivation example: since the compiler does not report any error, a programmer would consider he will always deal with an IB argument with a defined b property in B:do(i: IB) while it actually can be undefined since the method can be called with an IA argument. In such a situation, unexpected behavior/bugs are possible at run time.
💻 Use Cases

The current workaround is human code review to avoid such programming design error.

This is intentional.
https://github.com/Microsoft/TypeScript/wiki/FAQ#why-are-function-parameters-bivariant

Hi @MartinJohns and @andrewbranch
Thank you for your prompt responses!
Actually I was expecting to have an error like this one:
interface IA {
    a: string
}

interface IB extends IA {
    b: string
}

function doB(i: IB) {}

// Type '(i: IB) => void' is not assignable to type '(i: IA) => void'.
//  Types of parameters 'i' and 'i' are incompatible.
//    Property 'b' is missing in type 'IA' but required in type 'IB'.(2322)
const doA: (i: IA) => void = doB

But I get your point.
Thanks

I’m sure there’s a comment or release notes snippet that does somewhere.

It's mentioned in the PR that implemented the flag. See #18654, specifically:

Methods are excluded specifically to ensure generic classes and interfaces (such as Array<T>) continue to mostly relate covariantly. The impact of strictly checking methods would be a much bigger breaking change as a large number of generic types would become invariant (even so, we may continue to explore this stricter mode).

Which is also mentioned in the release notes for TS 2.6:
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-6.html#strict-function-types


Update log function to match read-installed's callback signature

The relevant details of the only error message read-installed actually sends via this function are in the second argument:
https://github.com/npm/read-installed/blob/master/read-installed.js#L311-L314

Sorry for the delay..... I somehow missed it


Bug: Eye does not always treat the empty list as rdf:nil

For the following data.n3
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix : <https://example.org/ns/1/> .

rdf:nil :p :o .

{
  () ?p ?o .
} => {
  :s ?p ?o .
} .

There are no derivations
$ npx eyereasoner --nope --quiet --pass-only-new ./listTest.n3
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix : <https://example.org/ns/1/>.

I would expect :s :p :o to be derived as rdf:nil ?p ?o matches the pattern () ?p ?o.

Thanks for the observation and EYE v3.3.1 now gives :s :p :o.


[API] not using core/v1 pod spec

https://github.com/aenix-io/etcd-operator/blob/main/api/v1alpha1/etcdcluster_types.go#L140
etcd cluster pod template has  a member: "PodSpec".
I seems like this field has same values as<EMAIL_ADDRESS>Why doesn't use official package's struct, you defined by original?
If there is no specific reason, I think should import and use official package's struct

Initially, the spec was inspired by the Victoriametrics operator and highly changed by the maintainers team.
Our type gives us the ability to disable the propagation of some fields. Also, we can make sure that podSpec will work correctly in all K8s versions that the operator should support.
If you need some fields that are now not presented in our podSpec, please rise an issue and we will add it.

I figured out your background, thank you.
The cluster controller create or update etcd pods from above PodSpec, so it should replace spec type to k8s core v1.
By doing so, you can notice new pod spec feature and deprecated it when update k8s dependencies.
I will contribute about this!

Thanks for your suggestion. The maintainers are divided in opinions on this matter. I would encourage you to offer your viewpoint under #172.

This is completed by #175. Let us know what you think and feel free to comment or open a new issue if you feel that there's more work to be done in this direction.


CPS-0009? | Coin Selection Including Native Tokens

This seems a long withstanding issue #232  where most offline library we got now still using sub-optimal coin selection strategy which might lead to inefficiency transaction building process.
Raising this CPS in an attempt to attract community's attraction to solve this issue with combined intelligence.

Recreating the PR #609

(rendered proposal in branch)

I love the concept of this CPS and think it is a great candidate to house and centralize conversation around the topic of coin selection algorithms in general. I would like to also suggest that we include research and solutions into better change creation algorithms as well as this is a large part of my focus on my own UnFrack.it dApp microservice and the library I intend to create utilizing it.
I would love to see this CPS serve as a rallying point for any/all new CIPs that may suggest a new, purpose-built/targeted coin selection or changing algorithm so that those interested parties have an easy path to discovering what conversations, tools, and algorithms may already exist to solve their unique situational problems.

The document seems like a very good statement of the issue. The point is that the most used libraries should come with a coin selection that follows a set of high quality standards that work within the current eUTxO ecosystem with native tokens and NFTs. :)
I think that the cardano-wallet explanation of the algorithms of Jonathan Knowles was very good and could be takes as a basis for updates in serialization librairies.

I'm unsure what a solution to this problem would look like. Are we looking for:

A specification of an implemention-independent coin-selection algorithm that everyone can implement?
One or more implementations of the algorithm?

A specification of an implemention-independent coin-selection algorithm that everyone can implement?

I think the outcome could be something like an informative CIP like the existing CIP-2, which it clearly suggests best practices. It could include specific algorithm implementation or just outlining the logic of the desired algorithm.

One or more implementations of the algorithm?
Yea it could be, just like currently we have both the largest coin comes first & random selection. Multiple algorithms could be a solution. At the end it is up to the off-chain code builders to choose which to rely on / implementing both.

a note from today's Wallet Connectors Workshop (more meetings to follow; announced on CIP Editors' Discord): the matter of coin selection was identified during the meeting as an important issue.

From meeting, 2 followups for my side:

Including change utxo as scope on this CPS
Add a short session documenting all existing implementation, so that everyone could add on the list & reduce research time for potential CIP proposers

@SIDANWhatever noting from our meeting today that we believe this will be ready to mark Last Check before merge once we have your inventory that you are working on as per https://github.com/cardano-foundation/CIPs/pull/611#issuecomment-1830284384 and https://github.com/cardano-foundation/CIPs/pull/611#discussion_r1408280288.

@SIDANWhatever noting from our meeting today that we believe this is ready to mark Last Check pending your inventory that you are working on as per #611 (comment) and #611 (comment).

The 2 followups are performed. Please check if there is other things to supplement. I think we could proceed with the final check.

@SIDANWhatever we had a window to approve this at Last Check in the meeting today but could not do so without a response yet to @Ryun1's https://github.com/cardano-foundation/CIPs/pull/611#pullrequestreview-1761329538 which will require at least one change to the text.
Our next CIP meeting isn't for another 4 weeks, so in my opinion we should be able to merge this if you make those responses / updates and then with editor unanimity we can merge it on GitHub in the meantime without requiring another meeting (there was a call for "objections" at today's meeting & there were none).

@rphair The replies and those final checks are done. After final review from our side, we also added useful change outputs consideration into the CPS (which exists on CIP2). Let me know if there is any further follow-ups!

@fallen-icarus I would agree with your hindsight that this problem can only be properly addressed at the dApp level, but also wonder why (and if) wallets don't have a user preference selectable for "Leave my NFTs [or all native tokens] at the UTxOs where they currently reside unless they're being sent outside my wallet" which could be set for wallets sensitive to this scenario.
If the use of NFTs for ID / tagging in general, or Beacon Tokens specifically, become more wide I think the community would welcome a CPS about this particular issue, and then in turn could reference this CPS and how current coin selection algorithms might be exploited.  cc @SIDANWhatever

@Ryun1 do you feel you have enough of an answer to these two questions (https://github.com/cardano-foundation/CIPs/pull/611#discussion_r1413171931, https://github.com/cardano-foundation/CIPs/pull/611#discussion_r1413177871) unanswered in the dialogue at this time?  I've approved it at an earlier stage but won't merge it until you confirm & I'll give @Crypto2099 a change to acknowledge the last round of commits as well.

After mulling over this CPS for a bit, there is also a small missing problem statement. CIP-2 also doesn't care about minUTxOValues in change outputs, because if there isn't enough, you can just increase the fees paid to balance the transaction. Which doesn't work at all when tokens are involved. I'll add this to this CPS for consideration also.

@Crypto2099 it looks like your https://github.com/cardano-foundation/CIPs/pull/611#issuecomment-1802293473 has been taken care of... what do you think of merging this?

Merging since discussion already concluded 2 months ago with no reservations & we now have another potential solution to this CPS (https://github.com/cardano-foundation/CIPs/pull/785) so need to have this document as in the repository baseline.


Allow for configuring costs per WebAssembly opcode

This is not meant to merged, as we maintain this crate slightly differently, but it is important enough functionality to require review.
If the commits in this PR are included, the user of dusk-wasmtime will be able to configure the fuel costs of each WebAssembly opcode, in much the same way as we could before. This paves the way for making storage cost more than other opcodes, as required by https://github.com/dusk-network/piecrust/issues/359

If I understand correctly, with this change we could set the amount of "fuel units" for the call of a single op-code individually to any value we like?

If I understand correctly, with this change we could set the amount of "fuel units" for the call of a single op-code individually to any value we like?

That's right. If you look at the last line in tunables, it calls the for_each_operator! macro from wasmparser, and applies the define_operator_cost macro to it, which uses the default_cost macro.
It iterates over all the operators that wasmparser recognizes and assigns the default fuel cost of 0 for the defined ops and 1 for others. In the default_cost macro we can define custom gas cost for specific ops.

As said, this won't be merged, but I'm happy you like the implementation


Release Botkube 0.18

Overview
This task aggregates all the to-dos which should be done when it comes to the release.
AC

[ ] Go through the release process instruction and release new Botkube (https://docs.botkube.io/community/contribute/release)
[ ] Describe any breaking changes in the GitHub release
[ ] Test the release candidate. Include:

Manual tests for Slack interactivity
Test telemetry
Aggregate and coordinate the manual testing described previously (e.g. https://github.com/kubeshop/botkube/issues/904)

[ ] Schedule all community activities - blog post, sharing the news in social media, livestream, etc. (@brampling)

Release activities

[ ] Ensure that all security vulnerabilities are fixed or mitigated

assignee: @mszostok

[ ] Cut initial release candidate  forv0.18.0

assignee: @mszostok

[ ] Finalize release the v0.18.0

assignee: @mszostok

[x] Test Slack  (RTM)

assignee: CI
it's tested as a part of CI.

[ ]  Test Slack  (Socket)

test all interactive buttons/modals
assignee:

[ ]  Test Mattermost

assignee:

[ ]  Test Discord

assignee:

[ ]  Test MS Teams

assignee:

[ ]  Test Elasticsearch

assignee:

[ ]  Test Webhook

assignee:

[ ]  Test Telemetry

assignee: @pkosiec

[ ] Check if we described all breaking changes in the release summary and if it's rendered correctly.

assignee: team

[ ] Test helm plugin docs

assignee: @mszostok

Other:

:white_check_mark: Prepare the release notes

assignee: @brampling

:hourglass_flowing_sand: Create a blog post and cross-post it (e.g. Medium, Dev.to)

assignee: @brampling

:hourglass_flowing_sand: Share the news on social media (e.g. Reddit, Hacker News, LinkedIn, Twitter, Slack)

assignee: @brampling


Shortcut help overlay + popularity

Issue Type: Feature Request
Suggestions :

Holding eg CTRL down for x seconds shows a keyboard overlay with all binded combinations highlighted, if user hovers a key, show what it does

@mtrelis Keybindings Editor has this feature.

Open Keybindings Editor
Enter into recording mode by pressing the Record Keys action in the input box
Now press Ctrl
It shows all keybindings

Please check out this feature.


Actions bound to mouse wheel up/down not being picked up from Input

Godot version
v4.0.beta6.official [7f8ecffa5]
System information
Windows 10, Nvidia GTX 1070
Issue description
When setting up actions with mouse wheel up/down bound to it, I'm not able to get the action pressed value from the Input class when moving the wheel.
I've tried different Input methods with the same result (is_action_pressed, is_action_just_pressed and get_axis)
I've also attempted to add other keyboard buttons to the same action and that has worked properly
Steps to reproduce

On any project, create a new action bound to Mouse Wheel Up or Mouse Wheel Down
Add print(Input.is_action_pressed("your_action")) to any running script
Run the project and attempt to move the mouse wheel

Minimal reproduction project
N/A

This was also the case back in Godot 4 alpha 11, I just didn't report it then

Sounds like a duplicate of #38326

Mouse wheel buttons are the only buttons that are both pressed and released at the same time. This is likely not handled well by is_action_pressed(). That said, I remember it working in 3.5.1 – can you test it there?

Sounds like a duplicate of https://github.com/godotengine/godot/issues/38326

This is a different issue, as that issue is about editor shortcuts only.

func _input(_event):
	var zoom := Input.get_axis("zoom_in", "zoom_out")
	if zoom > 0.0:
		print("zoom out")
	elif zoom < 0.0:
		print("zoom in")

works, but if I put the same code in a _process method, then nothing is printed

I encountered this issue in Godot 4.0.3 on Linux. Scroll wheel up and down actions are not detected by Input.get_axis
In this code the axis is always zero:
	var axis = Input.get_axis("up", "down")

I am using this code as a  workaround:
	var up = -1 if Input.is_action_just_released("up") else 0
	var down = 1 if Input.is_action_just_released("down") else 0
	var axis = up + down

Here is minimal reproduction project: scroll_issue.zip


Closing this repo

@bspellio you okay with shutting this down? :)

RIP: https://youtu.be/D3YbpC_mDRY


Musket, Crossbow and Blunderbust's duration is way too low for the resources used.

Title.
They dont do enough damage to justify their construction either since a vanilla bow does 6-10 damage in a more quick succession.

This part for the musket (also includes the blunderbuss) in the configuration file is confusing...
# Damage of the Musket [range: 1.0 ~ 50.0, default: 10.0]
S:"Musket Damage"=10.0

Set to the default of 10.0, you must be at least 11 blocks away from an animal/monster in order for your shots to hit it.  In order to hit an animal/monster at a closer distance you have to lower the number (example: change 10.0 to 5.0). Now you can hit animals/monsters from 6+ blocks away, but your damage is reduced (it takes more shots to kill).  If you change the default from 10.0 to say 25.0 so your shots do more damage, you now must be a minimum of 26 blocks from the animal/monster in order to hit it.  This reveals that both hitting distance and damage are combined into this one setting.  That doesn't make sense. Please make it so we can change both hitting distance and damage separately.
Thank you.

As @thibeinn said, you can change the damage in the config


Use 'participant' everywhere instead of 'subject'

Per discussion with @chrisfilo, the next major (i.e., backwards-incompatible) release of BIDS is likely to standardize on the term "participant" rather than "subject". Given that we already have participants.tsv defined in the spec, we can probably anticipate this change now and replace all internal uses of 'subject' with 'participant'. This shouldn't affect the user-facing API much if at all.

I got trigger-happy: after further discussion with @chrisfilo, we've decided to stick with 'subject' for now.


Unable to find a  c.Definitions.Services[0].Ports[0].SoapAddresses[0].Location

Thanks for this lib. I am getting the following error. Please help me.
Code:
soap, err := gosoap.SoapClient(https://svn.apache.org/repos/asf/airavata/sandbox/xbaya-web/test/Calculator.wsdl)
if err != nil {
fmt.Println("error not expected: %s", err)
}
fmt.Println("response :", soap)
err = soap.Call("NaradaApiService", gosoap.Params{})
if err != nil {
fmt.Errorf("error in soap call: %s", err)
}
Error :
goroutine 1 [running]:
github.com/tiaguinho/gosoap.(*Client).Call(0xc4204441c0, 0x6cceca, 0x10, 0xc420468510, 0x0, 0x0)
/home/vivek/go/src/github.com/tiaguinho/gosoap/soap.go:90 +0x5e6

@vivekkrazybee we have changed a lot of the package, can you test and tell me if this still happens with the newest version?


Rework core and API to use non-terminated strings

Signed-off-by: Sean Kelly<EMAIL_ADDRESS>

Retest this please

Please retest this


Add more metrics to in_monitor_agent

Which issue(s) this PR fixes:
no
What this PR does / why we need it:
I added metrics which output and buffer have to the response of in_monitor_agent plugin to fetch the fluentd's inner stats.
Docs Changes:
Need to revise examples https://docs.fluentd.org/input/monitor_agent#output-example
Release Note:
Same as the title

👋Semi-related question: do you think it would make sense to add flush_time metric as well, that'd answer "how long it takes for Output to perform write/try_write"?

do you think it would make sense to add flush_time metric as well

Looks neat for me.  I added flush_time_count and slow_flush_count https://github.com/fluent/fluentd/pull/2450/commits/63c006e31a8dd301e42c3f076e069d010eccca84 !

Fantastic, thank you.

flush_time_count

Is this useful? This value seems the total of flush time. How to use this value in monitoring?

I think it is useful for getting the value which is like average flush_time in 5 mins.
(in promql query is like increase(flush_time_count[5m] / write_count[5m]) )

I think it is useful for getting the value which is like average flush_time in 5 mins.
(in promql query is like increase(flush_time_count[5m] / write_count[5m]) )

This is exactly what I've meant 👍 🎉

Okay, I understood. elapsed_time is Float type. How to handle overflow? Reset to 0?
Some fluentd users many flush thread and it increases flush_time_count quickly.

elapsed_time is Float type.

Good catch… Since flush_time_count is counter, I think this value should increase monotonically. I think it's good to use Integer type (to calling #to_i before adding elapsed_time to flush_time ) since most of flush_time is smaller than 1.

@ganmacs Do we need to multiply elapsed_time by 1000 before calling to_i to get millisecond precision?

Thx!


CI - Change Environment for Linux CI

This PR changes the environment in which the Linux CI is run. Instead of using the github action environment, it is now run into a minimal docker container.
For more info, please see https://github.com/stack-of-tasks/pinocchio/issues/2253

CI fail because of https://github.com/conda-forge/qhull-feedstock/pull/19

Close #2253

While here, maybe 24.04 could be added

@nim65s Oops, too late.
@MegMll Can you open a new PR with 24.04 ?


Feat: Improve Contact Us Page

Describe the feature
The contact us page looks kind of boring . Would make the UI even more interesting and responsive. Assign it to me for SWOC
Add ScreenShots

Kind of this for the UI of the Contact page
Record

[X] I agree to follow this project's Contributing.md
[X] I'm a SWOC contributor
[X] I want to work on this issue

@kanak227 Issue Assigned to you and Star the repository. Also make sure that the colour coding of the Contact Page matches the color of the website and page is Responsive.

Sure @Ojas-Arora


Jazzz/add reg

Adds Registration mechanic

Currently hung up on a Dependency conflict between Vodezomac and ethers

Exciting! I'll take a quick look at the dependency issue too later

If we're okay with downgrading to ethers=0.6.0, it'll accept zeroize 1.3.0 which is what vodozemac 0.3.0 wants. However, ethers=0.6.0 drags in k256=0.9.6 which pulls in sha2 v0.9.9 and finallysha2-asm v0.6.2 which is not wasm-unknown-unknown compatible.
Diff here: https://github.com/xmtp/libxmtp/compare/jazzz/add_reg...michaelx-add_reg_version_finagle?expand=1


Drive train update

Modifs:

modif acc curve to non linear
fix tank turn
modif comm arb to can

modif done


Web -  Add new payment method popover overlaps button after deleting PayPal id

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

Action Performed:

Go to settings -> payments
Add a paypal payment method.
Click on the paypal method.
Position the cursor over the add payment method button
Press enter to delete
Immediately, click on add new payment button (within 2 seconds)

Expected Result:
The add payment method list should be displayed above the button.
Actual Result:
The add payment method lost overlaps with the button due to paypal option.
Workaround:
Unknown
Platforms:

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

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

Version Number: <IP_ADDRESS>
Reproducible in staging?: n/a
Reproducible in production?: n/a
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/38e21852-da8c-473c-b0f7-ebf775748090
Expensify/Expensify Issue URL:
Issue reported by: @esh-g
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1690648417605749
View all open jobs on GitHub

Proposal
Please re-state the problem that we are trying to solve in this issue.
The add new payment method popover overlaps when the confirm delete dialog is shown for the PayPal payment method.
What is the root cause of that problem?
There is no logic to either block the payment method list from showing, or to hide the confirm dialog after clicking the add payment method button.
What changes do you think we should make in order to solve the problem?
Two options.
Solution 1
Hide the confirm delete dialog if the user clicks the add payment method button.
Solution 2
Do not display the payment methods list if the confirm delete dialog is visible when a user clicks on the add payment method button.
What alternative solutions did you explore? (Optional)
None.

Proposal
Please re-state the problem that we are trying to solve in this issue.
Web - Add new payment method popover overlaps button after deleting PayPal id
What is the root cause of that problem?
We are facing a similar issue as we did before, the reason this is happening is react-native's onLayout which is a great thing to use for certain areas but it doesn't handle updates to components well as it's pretty slow, so what is happening here is that it's not updating the popoverHeight quickly enough for the position of the popover to be calculated correctly. essentially the calculation is happening using the popoverHeight that was calculated before paypal option was added back into the list.
https://github.com/Expensify/App/blob/08c2f5dc656674cdf62bff467edccf49238e277e/src/components/PopoverWithMeasuredContent.js#L151-L153
What changes do you think we should make in order to solve the problem?
What we can do is adding a fallback calculation code in case onLayout doesn't update quickly enough to avoid having these issues.
We can add ref to keep track of updates in the popoverHeight and the length of the list.
const prevPopoverHeightRef = useRef(popoverHeight);
const prevChildrenLengthRef = useRef(lodashGet(props, 'children.props.children[1].length', 0));

We then can implement the manual fallback calculation and ref updating in the adjustedAnchorPosition function.
const childrenLength = lodashGet(props, 'children.props.children[1].length', 0);
if (prevPopoverHeightRef.current === popoverHeight && childrenLength !== prevChildrenLengthRef.current) {
    if(props.anchorRef.current){
        const fallbackMargin = lodashGet(props, 'anchorRef.current.attributeStyleMap.size', 0);
        const childHeight = lodashGet(props, 'anchorRef.current.offsetHeight', 0);;
        const fallbackHeight = (childHeight + fallbackMargin) * childrenLength + fallbackMargin;
        setPopoverHeight(fallbackHeight);
    }
}
prevPopoverHeightRef.current = popoverHeight;
prevChildrenLengthRef.current = childrenLength;

Result
https://github.com/Expensify/App/assets/74202751/d8d00edf-4282-454d-89d3-19fbeb6dc645

I'm either not able to reproduce this, or it's only occurring at certain browser dimensions.
But also:

Position the cursor over the add payment method button
Press enter to delete
Immediately, click on add new payment button (within 2 seconds)

This portion feels extremely edge-case. Realistically, no one is going to be adding and deleting payment methods in rapid succession like that, and especially so considering it's PayPal (which is hardly used in Expensify, so much so that it was sunsetted on olddot). So gonna close this, I don't think it's worth prioritizing at this time.


[Component]: Calendar component

Figma Design Document
https://www.figma.com/file/RrcLH0mWpIUy4vwuTlDeKN/Baklava-Design-Guide?type=design&node-id=118-3469&mode=design&t=QqSZY4PDQY4PYWXh-0
General Usage Example
<bl-calendar></bl-calendar>
Rules

Calendar will be a generic component which can use either in a date picker component or a different ui element.
By default, the current date and year appear in the calendar.
It will have two mode such as single and range.
In a single date picker a user select one specific date from the menu calendar. It requires a day, month, and year to be selected.
The date range picker functions much like the single date picker but instead of choosing just one date the user can choose a start and end date.  Each point requires a day, month, and year to be selected.
If user defines a min-date or max-date property, calendar will disable all dates before min-date property or will disable all dates after max-date property.
If user defines value, calendar will be shown with those Dates as selected.
User can define locale string to change language of the calendar. Also it will help calendar to choose first day of week.

Attributes

Attribute
Description
Default Value

type(string)
Enables to select dates single, multiple or range
single

min-date(Date,string)
All dates before the given date will be disabled
null

max-date(Date,string)
All dates after the given date will be disabled
null

value (Date,Date[])
Initially selected date
null

start-of-week (number)
number 0-6, 0 – Sunday, 6 – Saturday, defaults to 1 – Monday
1

allowDeselect (boolean)
Determines whether user can deselect the date by clicking on selected item, applicable only when range-picker="false"
false

disabledDates (Date,Date[])
Defines disabled dates
null

Events

Event
Description
Return Value

bl-calendar-change
Event will pass selected date to the parent component
Date,Date[]

References
https://mantine.dev/dates/date-picker/
https://github.com/Hacker0x01/react-datepicker
https://mui.com/x/react-date-pickers/date-time-picker/

Rules section "It will have two mode such as single and range." but type "Enables to select dates single, multiple or range"

In rules, there is User can define locale string to change language of the calendar sentence. So, I thought there might be a property like locale or something like that to set language.

In rules, there is User can define locale string to change language of the calendar sentence. So, I thought there might be a property like locale or something like that to set language.

As far as I recall, we discussed using our localization module for this purpose. We shouldn’t need to retrieve any additional properties for it.


Add UMD configuration for vanilla demo

Looks good. A few more changes:

Add unpkg, jsdelivr fields to package.json, so these CDNs can identify it
Specify UMD feature in vanilla's README and in vanilla.mdx in docs

@PuruVJ
Done

Add fields for unpg and jsdelivr
Specify UMD in vanilla's README and mdx


PR: Implement support for "Gamut Compress" operator.

Initial support for the aces-dev Gamut Compress operator based on @remia PR: https://github.com/AcademySoftwareFoundation/OpenColorIO/issues/1402
Reference Config: https://gist.github.com/KelSolaar/1e2b054080e074e7f3529439470ee643/f9ba901652884b07a733cc784b362b95328d4880

@KelSolaar, the new string for the BuiltinTransform is "ACES-LMT - ACES 1.3 Reference Gamut Compression".

@doug-walker : Reference config updated with latest string: https://gist.github.com/KelSolaar/1e2b054080e074e7f3529439470ee643/2dce906715aae31d373ebd7a5570cfd46b59289d

Config name was updated!
Reference Config: https://gist.github.com/KelSolaar/1e2b054080e074e7f3529439470ee643/392e787e415a131f190724e6693ba42b3699376c


Add Support for CancelCommand

Add support for a CancelCommand with default bind to the Escape Key.
The command resets the buffer to the initial Text and when presses the key ends the editor and returns the original text (if any) or empty string if there was none.

Addressed in: https://github.com/spectreconsole/radline/pull/8


File object is missing status and status_details fields

It seems these fields are missing from the File java object.
status
string
The current status of the file, which can be either uploaded, processed, pending, error, deleting or deleted.
status_details
string or null
Additional details about the status of the file. If the file is in the error state, this will include a message describing the error.

I also encountered the same problem, without status, I don't know when to create a 3.5 fine-tuning task

I also encountered the same issue.

This will be in the next release 👍


Re-requesting cargo-platform 0.1.2 to be published

Duping #9758 to request publishing cargo-platform, now that my patch #9762 landed, and it doesn't look like cargo-platform 0.1.2 has been published yet.
(I shouldn't have automatically closed #9762, and it seems I don't have permission to reopen #9758).

0.1.2 should be published now.
Just for the future, you can comment on closed issues, there's no need to open a new one.  Also, the publish needed to be done manually, so it just takes time since we are volunteers.


Don't Merge! PR real time test for target branch full build

Docs Build status updates of commit acfafbf:
:clock10: Full build: the average full build time is 7 min(s) 25 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit acfafbf:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/testing.md
:white_check_mark:Succeeded
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)

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


test all postgresql versions, test server restart (#1735)

Motivation for this change
#8451, #1735, probably all supported versions of the software should be tested with service module.
Things done

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

[x] NixOS
[ ] macOS
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

I've raised this concern before, but do we really need all those versions lying around? I think it's good to test whichever versions we do have around, but are there compelling reasons for folks to use older versions of postgres? The usual policy is to not keep older versions of packages around unless we have other packages in nixpkgs with strict dependencies on the older stuff.

postgresql91 should probably be removed now, but other than that all of those releases are marked as stable on https://www.postgresql.org/, so I think we should be supporting them.

@copumpkin, @ocharles - I'm for example using 91. I don't have what policies we have to abandon such releases but there is quite a lot of similar discussions on email list recently. Year ago or so, somebody suggested that would be good to check binary cache usage in such cases to see if people are using it or not. Also I think this is not the best place to discuss it, I suggest opening another PR and remove it or using mailing list.

@basvandijk , sure, this was my first question in this PR, I just didn't know the correct way how to do it. I'll look at what you suggested and try to refactor, thanks!

btw, looks like travis failed due to some unrelated issue (is that right?). What we usually do with that?

What's the status of this? I see @fpletz added the merge conflict label.  Does this mean it just needs to be rebased on the current master? @spinus could you try that and force-push your change? It would be nice to have your good work merged!

I'll try over the weekend

actually, change was tiny so I resolved conflict.
@ocharles could you review please, is it ok to merge now?

It looks like there's still a merge conflict here, but other than that, we should get this merged.

Never mind, I had my merge strategy set to rebase.

Good work @spinus! Thanks for the merge @ocharles.

Agreed! Kudos @spinus, i just clicked some buttons ;)
On Fri, 7 Apr 2017, 3:09 pm Bas van Dijk<EMAIL_ADDRESS>wrote:

Good work @spinus https://github.com/spinus! Thanks for the merge
@ocharles https://github.com/ocharles.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NixOS/nixpkgs/pull/22655#issuecomment-292546639, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AABRjvkQQfpmHRVxJYPZ7AChEyZBsEa_ks5rtkOfgaJpZM4L-FJA
.

great stuff, thanks for pushing it forward people


Compiling SCSS via command line

Hi,
for my build process I am using django-compressor, which let me define compilers for different extensions.
I am trying to compile bootstrap v4 scss'es via:
/usr/lib/node_modules/node-sass/bin/node-sass {infile} {outfile} && \
/usr/lib/node_modules/postcss-cli/bin/postcss --use autoprefixer \
--autoprefixer.browsers "Android 2.3,Android >= 4,Chrome >= 20,Firefox >= 24,Explorer >= 8,iOS >= 6,Opera >= 12,Safari >= 6" {outfile} -o {outfile}

But when I am using these styles, then whole page looks different than using ones from CDN.
Any ideas what am I missing?

What version/revision are you compiling?

The latest one

We use node-sass --output-style expanded --source-map --precision 6 scss/bootstrap.scss dist/css/bootstrap.css to compile our SCSS. You'll need to provide more information as to what "looks different", preferably screenshots and a copy of the CSS being generated.

Ok, so trying to compile v4 beta5:
{% compress css %}
    <link rel="stylesheet" type="text/scss" href="{% static 'bower_components/bootstrap/scss/bootstrap-flex.scss' %}">
{% endcompress %}

It goes through this command:
  COMPRESS_PRECOMPILERS = (
      ('text/scss',
       '/usr/lib/node_modules/node-sass/bin/node-sass --output-style expanded --precision 6 {infile} {outfile}'),
  )

Tools are installed via Docker:
RUN npm install -g node-sass bower postcss-cli autoprefixer

The resulting CSS:
a2d50978e671.css.zip
The website when including bootstrap css via CDN:

Exactly same website after removing Bootstrap css CDN:

I see that my compiler cannot compile inline-svg's properly:

.has-danger .form-control-danger {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg xmlns=' http://www.w3.org/2000/svg ' fill=' #d9534f ' viewBox=' -2 -2 7 7 '%3E%3Cpath stroke=' %23d9534f ' d=' M0 0l3 3m0-3L0 3 '/%3E%3Ccircle r=' .5 '/%3E%3Ccircle cx=' 3 ' r=' .5 '/%3E%3Ccircle cy=' 3 ' r=' .5 '/%3E%3Ccircle cx=' 3 ' cy=' 3 ' r=' .5 '/%3E%3C/svg%3E')
}

just to check, you absolutely sure you using the latest version of the files from the repo? those # should be encoded to %23, and it should be double quotes for url("...")

I am sure, just got latest bower package and it looks fine in .scss from bootstrap:
$form-icon-danger: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$form-icon-danger-color}' viewBox='-2 -2 7 7'%3E%3Cpath stroke='%23d9534f' d='M0 0l3 3m0-3L0 3'/%3E%3Ccircle r='.5'/%3E%3Ccircle cx='3' r='.5'/%3E%3Ccircle cy='3' r='.5'/%3E%3Ccircle cx='3' cy='3' r='.5'/%3E%3C/svg%3E") !default;

I think I have old libsass installed, trying to use the newest one.

I fixed the issue in the end. The problem was django-compressor filter, that was destroying inline-svg's ( I guess v3 bootstrap did not use this?)
Thanks a lot!
#### COMPRESS ####
COMPRESS_CSS_FILTERS = [
    # 'compressor.filters.css_default.CssAbsoluteFilter', <- That is the problem
    'compressor.filters.cssmin.CSSMinFilter'
]

I am sure, just got latest bower package

clearly that's not the latest code, as it doesn't include this https://github.com/twbs/bootstrap/pull/20962/files#diff-d8ee409a461718bfb6240710c8c73382R463


Support for multiple messages for Toast

Feature Request
Ionic version:

[x] 4.x
Describe the Feature Request
Competing messages are displayed one on top of the other. This is very inconvenient.
Describe Preferred Solution
Add a new message underneath by pushing the previous message up. Each message has a duration until it disappears.
Describe Alternatives

Related Code

Additional Context
It can be done with a simple array that is displayed when it contains a message.

Hi there,
Thanks for the feature request. Stacked toast notifications are not consistent with the Material Design spec (called "Snackbars" in this case) for showing multiple notifications: https://material.io/design/components/snackbars.html#behavior. We try to stay within the Material Design/iOS specs as much as possible in order to give users a "native" set of UI Components.
That being said, existing behavior for toast could possibly benefit from an update that only shows notifications one at a time (rather than overlaying) in order to bring it back in line with the spec. I will bring this up with the team.
Thanks for using Ionic!


feat: add govukFileUpload() component

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

155 of 159 (97.48%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.1%) to 98.232%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

components/file-upload/file-upload.js
153
157
97.45%

Totals

Change from base Build<PHONE_NUMBER>:
-0.1%

Covered Lines:
3141

Relevant Lines:
3169

💛  - Coveralls


[API Feature Request] Permissions

Describe the feature and the current behavior/state.
Extensions could potentially wish to do things that would require the user to give Raycast more permissions. For example, if I wanted to create an extension that needs to query all of a user's text messages in iMessage, they'd need file system access. Currently, my only recourse is to show a UI to the user instructing them they need to do this.
I would like to request that permissions requests are somehow made into a more 1st-class experience. Both for extension authors and for Raycast users.
Will this change the current API? How?
Potentially! I could see a future where any Mac permission error simply triggers a permissions request; however, imperatively using a "Permissions API" through Raycast could enable things like fallback behavior specific to that extension.
Who will benefit with this feature?

Extension authors who wish to create extensions that require more permissions than the user has initially provided Raycast
Users who want to continue enjoying Raycast's 1st-class experience surrounding permissions requests.

I'm getting this error when trying to use your Extension, or any that tries ti access Safari Bookmarks.
Recently update to Sonoma.
Thanks!
Error: maxObjectCount exceeded
We.parseBuffer:bplistParser.js:92:10

89:   }
90:
91:   if (numObjects > exports.maxObjectCount) {
92:     throw new Error("maxObjectCount exceeded");
93:   }
94:
95:   // Handle offset table
Ty:search-bookmarks.js:51:24532
search-bookmarks.js:51:25074
FSReqCallback.readFileAfterClose:read_file_context:68:3


How to process JRDB dataset

Hello,
I want to run PiFeNet on the JRDB dataset, but I am running into an error when I run create_data.py:
(pifenet) anthony@galapagos:~/Documents/PiFeNet/second$ python create_data.py jrdb22_data_prep --root_path=/home/anthony/Documents/JRDB
[Warning] Since Open3D 0.15, installing Open3D via conda is deprecated. Please re-install Open3D via: `pip install open3d -U`./home/anthony/Documents/PiFeNet/second/data/ImageSets_jrdb22/train.txt
/home/anthony/Documents/PiFeNet/second/data/ImageSets_jrdb22/val.txt
Generate info. this may take several minutes.Traceback (most recent call last):
  File "create_data.py", line 37, in <module>
    fire.Fire()  File "/home/anthony/anaconda3/envs/pifenet/lib/python3.8/site-packages/fire/core.py", line 141, in Fire
    component_trace = _Fire(component, args, parsed_flag_args, context, name)
  File "/home/anthony/anaconda3/envs/pifenet/lib/python3.8/site-packages/fire/core.py", line 466, in _Fire
    component, remaining_args = _CallAndUpdateTrace(
  File "/home/anthony/anaconda3/envs/pifenet/lib/python3.8/site-packages/fire/core.py", line 681, in _CallAndUpdateTrace
    component = fn(*varargs, **kwargs)
  File "create_data.py", line 24, in jrdb22_data_prep
    kitti_ds.create_kitti_info_file(root_path, dataset='jrdb22', calib=False)
  File "/home/anthony/Documents/PiFeNet/second/data/kitti_dataset.py", line 385, in create_kitti_info_file
    kitti_infos_train = kitti.get_kitti_image_info(
  File "/home/anthony/Documents/PiFeNet/second/data/kitti_common.py", line 284, in get_kitti_image_info
    return list(image_infos)
  File "/home/anthony/anaconda3/envs/pifenet/lib/python3.8/concurrent/futures/_base.py", line 611, in result_iterator
    yield fs.pop().result()
  File "/home/anthony/anaconda3/envs/pifenet/lib/python3.8/concurrent/futures/_base.py", line 432, in result
    return self.__get_result()
  File "/home/anthony/anaconda3/envs/pifenet/lib/python3.8/concurrent/futures/_base.py", line 388, in __get_result
    raise self._exception
  File "/home/anthony/anaconda3/envs/pifenet/lib/python3.8/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/home/anthony/Documents/PiFeNet/second/data/kitti_common.py", line 210, in map_func
    pc_info['velodyne_path'] = get_velodyne_path(
  File "/home/anthony/Documents/PiFeNet/second/data/kitti_common.py", line 116, in get_velodyne_path
    return get_kitti_info_path(idx, prefix, 'velodyne', tail, training,
  File "/home/anthony/Documents/PiFeNet/second/data/kitti_common.py", line 97, in get_kitti_info_path
    raise ValueError("file not exist: {}".format(file_path))
ValueError: file not exist: training/velodyne/000000.bin

I set up my folder directory following the README. Should I rename my "train_dataset_with_activity" directory to "training"? Which velodyne is the code looking for (the upper or lower)? And why is the code looking for a bin file when the JRDB dataset provides pcd files?
Thank you.

I guess you haven't converted the dataset to KITTI format
You can do it by running the convert_dataset_to_KITTI.py

Thanks!


Documentation for older versions of Flask is missing

https://flask.palletsprojects.com/en/0.12.x/deploying/wsgi-standalone/#proxy-setups used to be a valid link and no longer is.
@davidism is this intended? I can probably fix it in rtd.

as far as I can tell renaming 0.12-maintenance to 0.12.x and enabling the build in rtd would fix it

I might need to port some docs fixes back to 0.12.x, but I don't mind re-enabling it.

0.12.x docs are now available here: https://flask.palletsprojects.com/en/0.12.x/

thank you very much
On September 24, 2019 3:53:25 PM GMT+02:00, David Lord<EMAIL_ADDRESS>wrote:

0.12.x docs are now available here:
https://flask.palletsprojects.com/en/0.12.x/
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/pallets/flask/issues/3350#issuecomment-534566926


[SILGen]: extend uninhabited parameter checks to self param

SILGenProlog contains logic to emit an unreachable location if a function contains a structurally uninhabited parameter. This change extends this logic to include the self parameter, so instance members of structurally uninhabited types will produce the same diagnostics and have the same SIL emission behavior.

@jckarter when (if?) you have time, do you have any thoughts on the approach taken here?

@jckarter – any chance you've had time to consider this? if not, is there someone else you'd recommend i try to involve for a review?


chore: Add unittests

This library should not just be tested by its users but also by unittests using PHPUnit.

With 3.0.0 beta 1 we have all important code unit tested


Unfork from 18F/handbook to enable search from Github UI

Not a huge deal, but we can't perform searches on forked repos from the github UI.
Known workarounds:

search in gitlab
search in RTD

@grugnog looks like the virtual assistant in GitHub will do this for you according to stackoverflow https://stackoverflow.com/questions/38831301/how-to-un-fork-the-github-repository/66470086#66470086
Original solution is a destructive solution but maybe the virtual assistant is not? Do this 👍🏾  or 👎🏾 ?

Nice find @dmundra! I submitted this as a request through the virtual assistant

Thanks @grugnog. Search works now: https://github.com/CivicActions/handbook/search?q=security


hide method error

I encountered the problem of hide () method error reporting in the process of using it.
My code like this：
           pr.show();
           UserDao.login( _userName,_password).then((res) {
              pr.hide();
              if (res != null) {
                LocalStorage.save(Config.USER_NAME_KEY, _userName);
                LocalStorage.save(Config.PW_KEY, _password);
                NavigatorUtils.goHome(context);
             }
          });

But the error is as follows
E/flutter (32311): At this point the state of the widget's element tree is no longer stable. To safely refer to a widget's ancestor in its dispose() method, save a reference to the ancestor by calling inheritFromWidgetOfExactType() in the widget's didChangeDependencies() method.

please check if the progress dialog is in showing state or hidden state
if(pr.isShowing())
  pr.hide();

First of all, the above suggestions didn't help, and I found that isShowing is always false by printing logs and viewing source code.
Now I have found the reason for the problem, because every network request I will first determine whether the network is available, if not cancel the request, because this is not a time-consuming operation, which led to the error, you can reproduce this error with the following code：
           Future.delayed(Duration(seconds: 0)).then((onValue){
              print("pr show? ${pr.isShowing()}");
              pr.hide();
             }
           );

1.Whether seconds is 0 or 5, isshowing is false, which is a bug.
2.When seconds is 5, it is normal, but when seconds is 0, it will report an error. It is suggested to add a rendering completion identifier, cancel the rendering if no rendering is completed when calling hide, and call isShowing in hide for judgment.

@fg2q1q3q I have got the bug, acutally the isShowing is remaining unchanged on any operation, thanks for reporting. I have fixed the issue, soon I will update the library soon :)

fixed in the latest version  progress_dialog: ^1.1.0+1

Thank you. I've tried. Everything's OK.

@fg2q1q3q :)


Mark a HelloRequest record as read

Checklist

[x] CLA is signed

Description of change

Otherwise the client will try to process it again. The second time around
it will try and move the record data into handshake fragment storage and
realise that there is no data left. At that point it marks it as read
anyway. However, it is a bug that we go around the loop a second time, so
we prevent that.

Pushed. Thanks.


Bump Dart SDK to 1.17.0-dev.2.0.

cc @devoncarew @abarth @Hixie.

Latest boasts fixes (notably for us in strong mode) and a continuing host of perf improvements.

👍


High concurrent connections to rooms cause service unavailability

Describe the bug
When many rooms exist (for example, 1000 rooms), using the server-sdk-go loop to connect each room will cause all rooms to fail to connect, and repeated reconnections will make the service unavailable.
Other SDKS can also cause the same problems as above when connecting a large number of rooms concurrently
Server

Version: [1.6.2]
Environment: docker
Specs: 16C32G200MB

Client

SDK: [go]
Version: [v2.1.2]

this shouldn't be a problem, we've done extensive load testing with the service. please ensure you've increased the number of file handles on the machine of the server as well as the load tester. Docs here: https://github.com/livekit/livekit-cli?tab=readme-ov-file#configuring-system-settings


nonce is too high which results in pending transaction until nonce number is reached

using web wallet from the Chrome store (2.9.0)
I don't have a video of this, and it doesn't seem to happen consistently, but can try to replicate this in a video if needed. This happens relatively often though. For instance just right now:
When signing a transaction, the TX got assigned a nonce of 5 with v2.9.0. It would be stuck in pending so the TX would not be picked up by my local mocknet miner. I then installed the web wallet v2.0.7 (a local build I still had) and did 4 or 5 transactions (nonce 0 to 4), after which my nonce was correct and the initial TX would be picked up and correctly mined.
Is this a known issue? It seems to happen every now and then. Sometimes when I reinstall the wallet, it disappears, but often appears again.. seems like the nonce is picked up wrong.
fyi: v2.0.7 seems to always send the correct nonce, while the Chrome published wallet doesn't.. did the nonce calculation change?

I was able to replicate in a video, file is too bug to upload here, so put it on WeTransfer (expires in 1 week): https://we.tl/t-7CYtobpTr2

Might this be the same as reported with https://github.com/blockstack/stacks-wallet-web/issues/1197? If so, mind trying the build here in QA to see if it resolves it? https://github.com/blockstack/stacks-wallet-web/pull/1208
cc @aulneau

@markmhx @aulneau
just tested the build from #1208, that one works! I'll use that build and monitor.
fyi - it seems to round down the tx fee to 0

shows up correctly in explorer

I'm glad to hear it! I'll modify this issue title to reflect the fee rounding error, which doesn't appear tracked yet. 🙏

The fee rounding issue should be resolved by #1221


Real logging in xi-core (+ core RPC logging)

Currently xi-core's only logging mechanism is printing to stderr. We will eventually want to move to a proper logging solution; a good example of this is available in the xi-tui repo.
In addition to this, a small thing we've talked about in the past is adding complete logging of RPC messages, which would be a useful tool for debugging.

I am working on this.

@betterclever awesome, I'd really love to see this land; a goal should be to replace every use of eprintln! a log call.

@cmyr I tried using the log4rs module. The problem with it is that , as you pointed, stdout is use for rpc so it leads a panic. We need to direct the logging output to a file probably. Or we first need to fix this, https://github.com/google/xi-editor/issues/434 so that system ignores the unrecognized RPC (log messages) and prints it to console instead.
What is your take?

@betterclever there must be some way to use stderr instead of stdout for logging. That this works for xi-tui means it must be possible, since they would have the same problem.
We definitely don't want to be using stdout for anything but RPC traffic.

In xi-tui I use log4rs to have multiple loggers logging in multiple files.

One file contains the regular logs
One file contains only the RPC calls

That way, I can easily debug xi-core issues by copy-pasting RPC requests from the rpc log file, and I don't pollute my actual log file with all the RPC logs.
Here is for instance what my regular log file looks like:
 2018-03-12T22:07:34.116785526+01:00 INFO xi_term - starting the event loop
2018-03-12T22:07:34.116924558+01:00 INFO xi_term - starting xi-core
2018-03-12T22:07:34.117583209+01:00 INFO xi_term - starting logging xi-core errors
2018-03-12T22:07:34.117629007+01:00 INFO xi_term - initializing the TUI
2018-03-12T22:07:34.117705815+01:00 INFO xrl::client - >>> notification: method=client_started, params={"config_dir":"/home/corentih/.config/xi/"}
2018-03-12T22:07:34.117911420+01:00 INFO xrl::client - >>> request : method=new_view, params={"file_path":"README.md"}
2018-03-12T22:07:34.118002252+01:00 INFO xrl::client - >>> notification: method=set_theme, params={"theme_name":"base16-eighties.dark"}
2018-03-12T22:07:34.118088613+01:00 INFO xi_term - spawning the TUI on the event loop
2018-03-12T22:07:34.118140978+01:00 INFO xi_term::tui - process pending open requests
2018-03-12T22:07:34.120630167+01:00 INFO xi_term::terminal - waiting for input events
2018-03-12T22:07:34.120774720+01:00 INFO xi_term::terminal - waiting for resize events
2018-03-12T22:07:34.120866658+01:00 INFO xi_term::terminal - terminal resized (from (0, 0) to (126, 32))
2018-03-12T22:07:34.121989031+01:00 INFO xi_term::tui - process pending open requests
2018-03-12T22:07:34.122060217+01:00 INFO xi_term::tui - setting new terminal size
2018-03-12T22:07:34.122093877+01:00 WARN xi_term::tui - view view-id-0 not found

And here is the corresponding RPC log file:
2018-03-12T22:07:34.120983198+01:00 TRACE xrl::protocol::codec - >>> {"id":1,"method":"new_view","params":{"file_path":"README.md"}}
2018-03-12T22:07:34.121129869+01:00 TRACE xrl::protocol::codec - >>> {"method":"client_started","params":{"config_dir":"/home/corentih/.config/xi/"}}
2018-03-12T22:07:34.121202733+01:00 TRACE xrl::protocol::codec - >>> {"method":"set_theme","params":{"theme_name":"base16-eighties.dark"}}

The RPC calls are logged by xrl: https://github.com/xi-frontend/xrl/blob/dd0737152b3b1b690c8a934e7f30d10c93a18d3f/src/protocol/codec.rs#L38

@betterclever there must be some way to use stderr instead of stdout for logging

Yeah log4rs allows that: https://docs.rs/log4rs/0.8.0/log4rs/append/console/struct.ConsoleAppenderBuilder.html#method.target
You can specify whether the target of an appender is stdout or stderr.


Move caret index to end when open keyboard

Overview
It just a minor change in "MixedRealityKeyboardBase.cs"
In most cases, the caret index needs to be at the end of the string.
So when open the keyboard with non-empty text, it should put caret index to the end.
Changes

Add: "MixedRealityKeyboardBase.cs" -> "ShowKeyboard" -> Add "MovePreviewCaretToEnd()" at the end

And also I found that if I open keyboard with different text.
it doesn't clear or reset the caret index, so if last string is smaller than previous string, its caret index may exceed the string.

/azp run

@MaxWang-MS This looks related to #9038

@MaxWang-MS This looks related to #9038

Thanks for the contribution @hansenwuwu! This fix has already been proposed and will get merged with #9038 so I am closing this PR.

Thanks for the contribution @hansenwuwu! This fix has already been proposed and will get merged with #9038 so I am closing this PR.

@keveleigh @MaxWang-MS
Sorry for the duplication PR, this is kind of my first PR, and I'm sorry for not checking duplicate PR carefully.
Thank you guys for review my PR !!! 😊

@keveleigh @MaxWang-MS
Sorry for the duplication PR, this is kind of my first PR, and I'm sorry for not checking duplicate PR carefully.
Thank you guys for review my PR !!! 😊


Cannot expose port for flist

I deployed a custom flist solution and tried to expose a port.

Can you please add which network you are connected to testnet, mainnet, devnet?
and which currency you used to create the flist (network which flist is connected to) TFT or FreeTFT?

Indeed there was no gw deployed then on testnet.


[Bug] [API] When complement data with startup parameter, an error will occuer, that is "java.lang.IllegalArgumentException: The date must not be null", version is 2.0.7

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
An error will occur, that is "org.apache.dolphinscheduler.server.master.runner.MasterSchedulerService:[226] - scan command error
java.lang.IllegalArgumentException: The date must not be null" when complement data with startup parameter.

What you expected to happen
launch complement data with startup parameter is as shown below:

How to reproduce
1，Create process definition and set global parameters，as shown below:

2，Start complement data ，as shown below:

3，An error will occur, that is "org.apache.dolphinscheduler.server.master.runner.MasterSchedulerService:[226] - scan command error
java.lang.IllegalArgumentException: The date must not be null" when complement data with startup parameter.
Anything else
No response
Version
2.0.x
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

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

I think this bug exists in version 2.0.7, but it has been fixed in #13005.

I close this issue, if someone has other point, reopen it


Add two more tips for Mac OS users

Please provide a description of this PR:
To help us figure out who should review this PR, please put an X in all the areas that this PR affects.

[ x ] Ambient
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

Please check any characteristics that apply to this pull request.

[ ] Does not have any user-facing changes. This may include CLI changes, API changes, behavior changes, performance improvements, etc.

@linsun: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio_exp
a9883eaa7595a799e9ca2306e3e4ea4493e98973
link
true
/test lint

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


ModernFlyouts opens when click MB4 or MB5 when playing LoL

Hi! I just found that issue when playing LoL and is a little bit annoying. Every time I click MB4 or MB5, the volume slider opens like clicking the volume keys. In other games like Halo: MCC or other apps didn't happen. Hope you can solve it because I really love your app. Thanks for make Windows a better place ❤

Weird 🤔. I'll try to fix this

Continuing from #98, after I casting the lParam to long it "works" now.
From my observation, mouse side buttons (and maybe some other keyboard keys, inferring from the doc) also generates a shell message.
And it slipped through the check here:
https://github.com/ShankarBUS/ModernFlyouts/blob/1063dd4f27318ec0b913a5340ee86b19182b1e71/ModernFlyouts/Flyout Helpers/AudioFlyoutHelper.cs#L147-L149
where isMediaKey is false and device is not null. I don't understand why you inverted the isMediaKey here.

Thanks @yume-chan,
I didn't have time to debug and proper devices to test this. I am genuinely happy that you did the work for me 😄.

I don't understand why you inverted the isMediaKey here.

It's to check what the pressed key was (if it is not a media key i.e. it is a volume key, then check if the default audio device is present)

Would you like to contribute? 😁😅


Malware detections in pre-built Windows binary

Upon downloading the binary for Windows, Microsoft Defender flagged it as a "Severe" threat. A few others on VirusTotal also flag it as malware. Interestingly, there are less detections for a binary I built myself, which strike me more as false positives. This leads me to wonder whether the provided Windows binary is compromised in some way. Any insight on this would be appreciated.

Hm, quite peculiar indeed. For what it's worth, the release was built and published off GitHub Actions, and you can verify this by checking the MD5/SHA256 checksums reported in the job:
https://github.com/chowder/duck-gen/actions/runs/6532353809/job/17735367011
++ md5sum duck-gen-v0.4-windows-amd64.exe
+ MD5_SUM=f4765e6ab8b0833a24b9161af92b42c3
++ cut -d ' ' -f 1
++ sha256sum duck-gen-v0.4-windows-amd64.exe
+ SHA256_SUM=3646ed70d39429110bd7ac4ce6b0d896b4cd7eeb7e82164617bafa5d12f6e3de

Looking at the logs, it's not obvious to me that the build process has been compromised either.

I think that statement is being made in regard to the go toolchain in specificity, and not any/all golang projects in general.
Be that as it may, I believe that the duck-gen project is being built reproducibly since it consumes only golang source code.

I think that statement is being made in regard to the go toolchain in specificity

Yeah you're right.
In any case, with #5, building with CGO_ENABLED=0 go build -trimpath ... gives me the exact same binary as the one produced by GHA.
Build Details

On my machine:

$ CGO_ENABLED=0 GOAMD64=v1 GOOS=windows GOARCH=amd64 go build -trimpath -ldflags "-s -w"
$ sha256sum duck-gen.exe
066bc01519b739f23a4f49b6e63284231396792b47083c1d662d8a242fd3eedf  duck-gen.exe

On GHA:

++ sha256sum duck-gen-v0.5-windows-amd64.exe
++ cut -d ' ' -f 1
+ SHA256_SUM=066bc01519b739f23a4f49b6e63284231396792b47083c1d662d8a[242](https://github.com/chowder/duck-gen/actions/runs/6763929128/job/18381623022#step:4:243)fd3eedf

https://github.com/chowder/duck-gen/actions/runs/6763929128/job/18381623022

The Windows binary no longer trips (as many) malware checks - but I've also updated the toolchain & dependency versions while I was at it, so I'm also not too surprised.
https://www.virustotal.com/gui/file/066bc01519b739f23a4f49b6e63284231396792b47083c1d662d8a242fd3eedf/detection
In any case while I'm still not quite convinced that the binaries were compromised - just to be safe, I'll yank the v0.4 binaries from the release page, a roll a new release with reproducible ones.


Make OptionalField child changes be keyed on input register id

Description
Converts OptionalField's format to refer to child node changes using the RegisterId that the node occupies in the input context of the change rather than the output context.
This makes it consistent with the delta format (which is not necessary, but convenient) and generally simplifies some of the ChangeRebaser logic.
Breaking Changes
This is a breaking change to OptionalField's format semantics, since child changes refer to the node occupied by a register in the input context rather than the output context. I was mildly disturbed that this didn't already result in snapshot test failure, so I added a snapshot scenario which exercises most of optional-field's interesting scenarios from the edit manager perspective (this snapshot test would have been broken had it existed before this change). As usual, no back-compat attempt was made as the format is not yet stable.

Don't forget to update the doc comment on childChanges in src\feature-libraries\optional-field\optionalFieldChangeTypes.ts


refactor bluespace crystals, fix scram implant

About the PR
reverts the changes #569 makes to the scram implant and actually fixes it by porting https://github.com/space-wizards/space-station-14/pull/31482
nukes the bluespace crystal system and component and makes them more generic, also makes the bluespace implant use that
Why / Balance
see wiz PR
Technical details
see wiz PR; TLDR the solution which this reverts is straight up worse than what was before it, aka what i am reverting to, from testing this gives you much better teleports (less often into space, whereas the current solution will teleport you into space every time) and runs 20 to 50 times faster (and the current solution can take milliseconds to run at the full intended radius)
makes a new RandomTeleportComponent to store the teleportation data to deduplicate it, makes bluespace crystals and scram implants use it
Media
tested, works
Requirements

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

Breaking changes
ScramImplantComponent is no more, BluespaceCrystal-anything is gone as well
Changelog

:cl:

fix: Scram implant will now properly randomly teleport you over long distances, and less often into space.

Summary by CodeRabbit
Summary by CodeRabbit

New Features

Introduced a new property for teleportation attempts, allowing up to 20 attempts to find a valid teleportation tile.
Added new components for random teleportation, including RandomTeleportComponent and RandomTeleportOnUseComponent, enhancing user interaction.
Added teleportation behavior to the MaterialBSCrystal entity.

Improvements

Reduced the teleportation radius from 500 to 100, enhancing gameplay balance.
Streamlined teleportation logic for more reliable positioning and interaction handling during teleportation events.
Removed outdated teleportation components, simplifying the system.

ok not done with this yet i can just nuke BluespaceCrystal-anything and be fine apparently, making this into also a refactor

but the infinite scram :goberserk:

but the infinite scram :goberserk:

yes.
can be made not infinite again if we want to, but i think it's okay; however yeah we could consider increasing its cooldown if we keep it as infinite

anyway this is ready, i tested it and it works as intended for both bluespace crystals and scram implant
the scram implant is no longer a scam implant

yes. can be made not infinite again if we want to, but i think it's okay; however yeah we could consider increasing its cooldown if we keep it as infinite

oh, so it's still infinite, great

@Ilya246 Can you please remove ability to use it when cuffed if it's still infinite?

@Ilya246 Can you please remove ability to use it when cuffed if it's still infinite?

would maybe be a better idea to just make it take like 5 minutes to recharge

make the 5 minute recharge @Ilya246

make the 5 minute recharge @Ilya246

done, now 300s recharge

make the 5 minute recharge @Ilya246

done, now 300s recharge

:goberserk: make it 60

@Piras314 5 minute cooldown is crazy. 60-90 seconds is more acceptable than the 30 seconds we have now, but not 5 minutes :goberserk:

@Piras314 5 minute cooldown is crazy. 60-90 seconds is more acceptable than the 30 seconds we have now, but not 5 minutes :goberserk:

it's a teleport to anywhere on the grid, you will be literally uncatchable if you have an EVA

@Piras314 5 minute cooldown is crazy. 60-90 seconds is more acceptable than the 30 seconds we have now, but not 5 minutes :goberserk:

Implant removing only takes 60 seconds. So there is two options: 60 seconds CD, but you won't be able to use it when cuffed or 300 seconds cd


Information for the log file

At the beginning of the collector run, in the console, I get the information shown below, related to filters and modules versions:
 INFO  [AbstractCrawlerConfig] Reference filter loaded: com.norconex.collector.co
 re.filter.impl.RegexReferenceFilter@12405818[onMatch=EXCLUDE,caseSensitive=false
 ,pattern=.*year=.*,regex=.*year=.*]
 INFO  [AbstractCrawlerConfig] Reference filter loaded: com.norconex.collector.co
 re.filter.impl.RegexReferenceFilter@453da22c[onMatch=EXCLUDE,caseSensitive=false
 ,pattern=.*fecha=.*,regex=.*fecha=.*]
 INFO  [AbstractCollectorConfig] Configuration loaded: id=url-juventudextremadura
 .gobex.es_(collector); logsDir=C:/CRAWLER-xxxxxxx/collectors/url-juventudextrema
 dura.gobex.es/work//log; progressDir=C:/CRAWLER-xxxxxxx/collectors/url-juventude
 xtremadura.gobex.es/work//progress
 INFO  [AbstractCollector] Version: Norconex HTTP Collector 2.3.0-SNAPSHOT (Norco
 nex Inc.)
 INFO  [AbstractCollector] Version: Norconex Collector Core 1.3.0-SNAPSHOT (Norco
 nex Inc.)
 INFO  [AbstractCollector] Version: Norconex Importer 2.4.0-SNAPSHOT (Norconex In
 c.)
 INFO  [AbstractCollector] Version: Norconex JEF 4.0.7-SNAPSHOT (Norconex Inc.)
 INFO  [AbstractCollector] Version: Norconex Committer Core 2.0.2 (Norconex Inc.)

Is there a way of get this information written to the log file?

Some of that info cannot be stored in the log file since the log file location is defined in the collector configuration file, and those log entries are printed before (or while) the configuration file is parsed.
The version information is not tied to the configuration file so I made the change and they are now written to file as well (in the latest snapshot).


[ADDITION] GIMP (Complete)

Category
Creativity
Listing Name
Gnu Image Manipulation Program (GIMP)
Listing URL
https://www.gimp.org/
Listing Icon
https://www.gimp.org/images/wilber32.png
Listing Description
GIMP (GNU Image Manipulation Program) is a leading open-source software for graphic design and image editing. With a user-friendly interface and a wide range of features, it offers powerful editing capabilities for both beginners and professionals. GIMP prioritizes user privacy by being transparent with its source code, ensuring that user data remains secure. As a free and continually evolving platform, GIMP provides a creative sanctuary where users can express themselves without compromising their privacy.
GitHub repository
https://gitlab.gnome.org/GNOME/gimp
ToS;DR ID
No response
Is Open Source?

[X] Yes, it's open source

Security Audited?

[ ] Yes, it's been security audited

Accepts Anon Payment?

[ ] Yes, accept anonymous payment

Justification and Further Info
Supports donation to be marked as anonymous, liberapay is supported, funded by GNU.
Final Checklist

[X] I confirm that I've read and followed the Contributing Guide
[X] I agree to follow the Code of Conduct
[X] I have clearly declared any affiliation I may have with this service

Good shout, I'll add that - love Gimp :)

Thanks again, have added Gimp in afc1bdd

Have also completed the rest of the Image Editors section:
-Website: https://awesome-privacy.xyz/creativity/image-editors
-Readme: https://github.com/Lissy93/awesome-privacy#image-editors
https://github.com/Lissy93/awesome-privacy/blob/7f53ea4ed0dcebfedb6a11b990df6d775be9e325/awesome-privacy.yml#L4806-L4889

Looks very good!
Thanks!
Yeah, love open-source as well.


#20 Cleaning exception messages with weird chars

Greeting @joescii, any chance to get a new build soon including this change? Thanks!!

Sorry for my slow response to your PR. Had a busy couple of weeks. Once I merge #19, I'll be able to test and merge. Thanks.

Well last night I published 0.9.4, but thanks to a midnight-piloting error I somehow didn't successfully pull your changes locally after I branched. I'm guessing it failed and I didn't notice, lol. I'll try to get this out later today as 0.9.5.

After running some tests, I think we're cleaning up too much. You can see the white space is removed in this test failure:
[info] - should convert a failed Future[String] to a satisfied LAFuture(Failure[String]) *** FAILED ***
[info]   Full(Failure(thefuturefailed,Full(java.lang.Exception: the future failed),Empty)) was not equal to Failure(the future failed,Full(java.lang.Exception: the future failed),Empty) (FutureConversionsSpecs_2.10.scala:28)

Instead of "the future failed" we're getting `"thefuturefailed"'.
Based on our email discussion, the concern is newline characters breaking the JSON response. I'm sure there are plenty of other characters which could do this. Take a look at this commit. I'm going to post it on the Lift forum to see if it's our best option.

Got it worked out and released as 0.9.5!

Thanks!


Fixed the bottom footer. Made it fixed on scrolling.

Please review if this is what you want for #3331 @techtonik

I am still struggling to get my working environment at #3165, so I can't test ATM.

No problem

There is still a scrollbar even when there is no content.

What browser are you using. I may have to test it on all (or as much as I possibly can)

I have only Chrome and Firefox, and I believe that was Chrome. In any case it seems that the issue is caused by the way the header is added to the page, because the height of scrolled area looks equal to header height.

Also, fixed border may eat up precious space on mobile devices. So it would be nice to just fix the screen height calculation to avoid the margin / padding / whatever makes this taller than it is,

Found a way to fix our layout http://stackoverflow.com/questions/8257311/modern-way-to-markup-100-height-layout-in-html5-and-css3

!m @techtonik I wil try it

@kaguillera, go ahead! =)
I played a bit with CSS table layout in Google Chrome dev tools, but I am not sure how it will work in other browsers. I gave  a  display:table, moved fixed size  and  out of #wrapper (I don't know why as extra #wrapper is needed there), and set display:table-row on them. Then I have to wrap central #main into additional , because #main should be a display:table for managing central columns height to 100%, and top level needs display:table-row to redistribute its height among children.
I also used border-collapse: collapse on body table, because border became invisible. And then there was something to do with bottom footer to fix content alignment due to changed model from div to table row.

Obsolete with #3718 .


System administrator view of Project Details page

User Story
As a System Administrator, I need to review all of the details of a pending project, so that I can make a correct decision about whether to approve it.
Context
In this preliminary phase, we can simply display the title and the main contents of the existing Project Details page, but only change the action buttons at the bottom for System Administrators:

Completion Criteria

[ ] When a System Administrator clicks the title of a project from their dashboard, they see all of the submitted metadata on the Project Details page

[ ] If the project is currently pending, the project title displays with "(pending)" appended
[ ] The Roles, Description, Automatic Settings, and Provenance sections display the same way as they would for a Data User (no edit buttons)

[ ] The System Administrator version of the Project Details page has three action buttons at the bottom:

[ ] "Approve Project" takes the user to the "Project Approval" page (see #574)
[ ] "Deny Project" does nothing yet (or we can just leave it out for now)
[ ] "Return to Dashboard" takes the user back to their dashboard without making any changes

Hey team! Please add your planning poker estimate with Zenhub @carolyncole @hectorcorrea @JaymeeH @jrgriffiniii @leefaisonr


Rename main.swift to MarkdownCommand.swift and add @main

Bug/issue #, if applicable: Close #78
Summary

Rename main.swift to MarkdownCommand.swift to better reflect the file's content.
Adopt the @main feature of Swift.

Dependencies
It depends on min swift version to "5.4" to use executableTarget.
(When the time is appropriate/5.4 [released on April 26, 2021] is widely adopted, will convert it from draft PR into PR)
Checklist
Make sure you check off the following items. If they cannot be completed, provide a reason.

[x] Ran the ./bin/test script and it succeeded

@swift-ci please test

@swift-ci please test