"reply-to" feature (enabled by default) breaks RFC1122 section <IP_ADDRESS> (local/remote decision)

Connections from WAN network IP to WAN interface IP don't work when an allow rule is created and the reply-to option is not disabled.
In my scenario, I was testing OPNsense in a lab environment. After a lot of beating my head against the wall and forum searching and then back and forth in the forum, I discovered that this behavior actually breaks RFC1122 section <IP_ADDRESS>. It has been mentioned that this is potentially an upstream bug, but there has been no evidence given that it is an upstream bug. This topic was discussed on the forum here:
https://forum.opnsense.org/index.php?topic=15900.0
In my my test case (as shown in Wireshark screenshots) other computer has IP <IP_ADDRESS> and OPNsense WAN interface has IP <IP_ADDRESS>.
To Reproduce
Steps to reproduce the behavior:

Fresh install of OPNsense
WAN network has other IPs that will access the WAN interface (ie. SSH)
In my test setup WAN interface receives a private IP via DHCP
If WAN has private IP, allow Private IPs and Bogons
Gateway is stateful firewall (ie. OPNsense)
Create rule allowing something (ie, SSH,) from WAN network to WAN interface.
For my test... Enable SSH access.
Run tcpdump on WAN interface collecting for port 22 and write to file.
From another computer on WAN network SSH to WAN interface. This will time out.
In packet capture, you should see a SYN from other computer to WAN interface
The SYN ACK that the WAN interface responds with, sends to the gateway MAC address instead of the MAC address of the other computer.

NOTE: disabling reply-to on the firewall rule allows a computer on the WAN network to connect. However, since this behavior breaks RFC, it is my opinion that this needs to be addressed despite a checkbox work-around.
Expected behavior
Even with reply-to enabled (which is default), the test scenario should be functional instead of timing out.
Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
The version below was the only one tested.
Environment
Software version used and hardware type if relevant.
e.g.:
OPNsense 20.1.1-amd64
FreeBSD 11.2-RELEASE-p16-HBSD
OpenSSL 1.1.1d 10 Sep 2019

The problem is not that reply-to breaks  RFC, the problem is that reply-to is default on.
But turning it off (checkbox enabled) will break more setups than it will help people fighting with this problem. If counted right you were the third guy asking about it and the support time this will produce when changing a default may not worth it, or better invested somewhere else (like API enabled firewall rules way more ppl ask for).
Just my personal opinion.

Just my two cents:
This is not an upstream bug. FreeBSD is doing exactly that the pf rule says. The rule says to send the reply traffic to the gateway, and that's exactly what's happening. You might argue that reply-to is a misfeature, but it's certainly not a bug.
If this is a behaviour that should change, that change should happen in what pf rules are generated by OPNsense, not in how pf itself acts.

Misfeature, maybe, maybe not as the use case has been established many years ago.
To make this discussion somewhat useful, I would like to make an actual suggestion:
If we only have at most one gateway-capable interface (that includes user-created gateways) we disable reply-to as we don’t have a multi-wan setup anyway.
I have no idea if this is feasible, but it’s certainly more useful than arguing do and don’t.

On 27. Feb 2020, at 13:04, pv2b<EMAIL_ADDRESS>wrote:

Just my two cents:
This is not an upstream bug. FreeBSD is doing exactly that the pf rule says. The rule says to send the reply traffic to the gateway, and that's exactly what's happening. You might argue that reply-to is a misfeature, but it's certainly not a bug.
If this is a behaviour that should change, that change should happen in what pf rules are generated by OPNsense, not in how pf itself acts.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

If it doesn't touch existing installs and only new ones, why not. Maybe need some small documentation updates.
I think the most clean way would be to negate the WAN net described here, but I have no idea if this is possible with pf:
https://forum.opnsense.org/index.php?topic=15900.msg73203#msg73203

I think it's good to talk about solutions, @fitchner. My suggestion is to change OPNsense rule generator to apply reply-to for packets only coming from different subnets. Something like this.
Before change:
pass in quick on igb1 reply-to { igb1 <IP_ADDRESS> } inet proto tcp from {any}            to {{self}} port {443} keep state

After change:
pass in quick on igb1                             inet proto tcp from {{igb1:network}} to {{self}} port {443} keep state
pass in quick on igb1 reply-to { igb1 <IP_ADDRESS> } inet proto tcp from {any}            to {{self}} port {443} keep state

This would not break any reasonable setups, while still doing what the feature is intended to do in the first place.
If you're still afraid of breaking existing setups, make it an optional checkbox only checked by default in new installs, not on existing ones.
I don't like the solution of enabling it only on multi-WAN, because it's really already really not obvious or transparent how this feature works. By making how it works even more complex and convoluted you're just making this feature more obscure.

Another possible option is to simply disable this poorly designed feature from the start, and disable it by default for all new setups. If someone wants multi-WAN and actually want to use reply-to, they can use the "gateway" feature to configure the rules in this way themselves to do the exact same thing without opnsense secretly doing a bad job of half-fixing the problem.

Can we please stop with this? We're not planning to expand the problem by generating more rules auto-magically than what it already does (error-prone and has other visibility issues) and we're not changing the defaults now, maybe in time, you never know, but certainly not now.
How it works is documented behaviour on our end, as stated multiple times, we would have done it differently if we would have designed it from the start, but looking at our support desk, the number of questions flowing in regarding this is very low and would certainly be way more when changing the current behaviour.

I was able to confirm this behavior does indeed exist in FreeBSD 11.3. So, I opened a bug report there as well.
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244514
I will say that I totally understand that there are only a handful of use cases that will be affected by this. So, when determining where to invest DEV time, this probably falls to the bottom of the list. And now that I know about this issue and its work around, I am OK with with that. Especially since I am also a person who would love to see API enabled firewall rules.
During this whole thing I have had 2 major issues with this:

Just because this is the way it has worked for a decade+, doesn't mean it is right or should stay that way. Especially since that RFC was written in 1989.
I understand that Multi-WAN is an advanced configuration and since "reply-to" is meant for those scenarios, that is where the option is (in the advanced section in a firewall rule) and why the documentation for reply-to is in the Policy Based Routing section of the documentation. However, I was NOT doing any advanced setup NOR does routing come into play for a connection between 2 IPs on the subnet (or shouldn't).  Especially since networking is what I do for a living.

So @AdSchellevis, when I have the time, I will do a PR to update the help dialog for the reply-to option. I will also see if I can come up with something for the OPNsense documentation as well. So that way, I am making "useful additions" instead of just complaining.

The bug report at freebsd got closed almost immediately saying "works as intended" I have re-opened it requesting that it be left open for at least a week for commenters.
@pv2b @fichtner @AdSchellevis @mimugmail , it would be great if each of you could comment either for or against.
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244514

I'm most definitely not going to comment on a this report, for reasons explained earlier.
Let's go back one step, if you (all) check "Disable force gateway" in Firewall --> Settings --> Advanced, is the behaviour as you would expect it to be? (Which has been my assumption)

This issue has been automatically timed-out (after 180 days of inactivity).
For more information about the policies for this repository,
please read https://github.com/opnsense/core/blob/master/CONTRIBUTING.md for further details.
If someone wants to step up and work on this issue,
just let us know, so we can reopen the issue and assign an owner to it.

I would like just to mention a real problem introduced by this behavior:
https://forum.opnsense.org/index.php?topic=23144.0
I don't think that the problem is at FreeBSD level as pf rules are created by OPNsense. The fact that FreeBSD permits to overcome the 'standard' behavior is just a 'feature' of the OS. The fact that OPNsense generates the pf ruleset that uses this feature by default is the bug in OPNsense.
IMHO, this feature should be disabled by default and should be better commented in OPNsense web interface.

@Peter2121 If I'm not mistaken, user-specific rules come before the auto-generated IPsec rules. So just add a rule like this:
Interface: WAN
From: WAN Network
To: WAN Address
Protocol: UDP
Port: 4500
Reply-to: Disabled
Repeat for IKE traffic
This should then override the default WAN rule and get your stuff working... I've not tested this myself, but this should work around this bug.

@pv2b
That's the type of rules I've tried to use. I created two rules like this - for IKE and for NAT-T.
Unfortunately, there was no effect.

Can you please post a copy of your /tmp/rules.debug here?
Make sure to redact any private information you don't want shared on a public forum.

@pv2b
I found the difference between the rule you proposed and my ones - I used 'Floating' section and 'Any' source/dest.
Changing the rules to describe exactly the traffic, I could get up the tunnel.
@pv2b, thanks a lot for your assistance!

Please, somebody, reopen this bug!

not planning to, no, https://github.com/opnsense/core/issues/3952#issuecomment-595085398
Whatever we do with reply-to/route-to, it will almost always lead to someones functional setup ending in a non functional state. If there's anything new / a proposed solution that would make sense, just open a new issue containing relevant details.

@AdSchellevis
I don't know if you've correctly read my posts, but disabling reply-to in advanced settings of 'Firewall' section has no effect on implicit rules for IKE/NAT-T.
Once again, the option does not work as expected. So it is a bug.
If you consider that this option should not affect implicit rules - OK, so we need another option, just for implicit rules.
In the actual state we have OPNsense that breaks RFC, and there is no evident option to workaround this behavior. I perfectly understand that changing defaults can break working installations, and this is NOT a way to go. We just need a option (maybe unchecked by default) to get things worked as 99.9% of network engineers are expecting.

?
In which case it's this ticket https://github.com/opnsense/core/issues/4942

OK, indeed, https://github.com/opnsense/core/issues/4942 makes sense.

just try to remember for next time, first check the tickets and read previous comments before shouting a ticket should be reopened....

not planning to, no, #3952 (comment)
Whatever we do with reply-to/route-to, it will almost always lead to someones functional setup ending in a non functional state. If there's anything new / a proposed solution that would make sense, just open a new issue containing relevant details.

If you're interested in solving this, I think you should reconsider my proposed solution at https://github.com/opnsense/core/issues/3952#issuecomment-591945537 - it's been over a year since we talked about this, and perhaps your perspective now is different than then. I hear your suggestion about opening a new ticket, but since I'm not really bringing a new solution to the table, I thought it's better to keep it here so we don't clutter the issue system.
I agree: This solution may be slightly hacky in terms of creating multiple rules on the back-end, but it has the advantage of actually doing what the feature is actually intended to do, which is to make sure reply traffic egresses on the same interface it comes in, and works properly even for same-subnet traffic.
So from the perspective of it being a solution to the actual problem, it is valid. I don't think you'll find another solution, unless somehow you add more functionality to FreeBSD's pf, which I really doubt will happen.
As for the argument about "magic" behind the scenes, it's IMO normal for an abstraction layer like OPNsense to hide some of the underlying complexity of pf.
If you're worried about breaking existing setups, it could perhaps be gated behind a configuration bit that would, once you're confident the solution makes sense, defaults to on on new installs, but defaults to off on importing/upgrading a configuration. I really don't think it's neccessary. Given my proposed change in behaviour it's very unlikely to break anything, but if you have a different perspective, that's a way to do it with no chance of breaking anything for anyone.
If you still think my proposed solution isn't worth doing, that's OK. You don't have to explain yourself if you still disagree for the same reasons as before.
But if you change your mind on this, I'm willing to put a few hours into getting a PR done for this issue, but not if the proposed approach is dismissed outright ahead of time, that would just be a waste of everyone's time.

sorry, my perspective hasn't changed. I do however think we should offer reply-to as an option in rules so one could create any variation they would like to (as suggested https://github.com/opnsense/core/issues/4905#issuecomment-824585654).

I would like to know in what scenario would enforcing RFC1122, WITH with Reply-To checked, would break an existing OPNsense implementation? I personally can't think of anything.


use pyarrow format as the default (fast and includes metadata)

See https://github.com/pandichef/buffettology/blob/main/sip/get_sip_data.py

already partially implemented in save.py...


chore: install HiGHs solver on macOS for developers

Description
We installed it when they ran make install-for-test, but missed it with make install-for-dev
Look & Feel
Running make install-for-dev on macOS should install HiGHS

This seems to be a clean install, Is this part supposed to show as well?
if [ "Linux" = "Darwin" ]; then \ 	make install-highs-macos; \ fi

No. Does that appear with install-for-test as well?
Then maybe something is wrong here with our Makefile syntax (which can be a bitch, e.g. it requires tabs I believe)

install-for-test

it show for install-for-test as well
These the commands I ran
make  install-for-test  make install-for-test

Actually, I was wrong. Make prints out all statements by default.
So this seems to be what we should have expected this to do.


Automatic detection of shapefiles.

run:
python load_pre10.py ../../pre-10-bundles/converted/civicsd.org-neighborhoods/civicsd.org-neighborhoods.yaml

error:
Starting import ../../pre-10-bundles/converted/civicsd.org-neighborhoods/civicsd.org-neighborhoods.yaml...
Loading bundle: civicsd.org-neighborhoods-0.0.2~d035002
INFO civicsd.org-neighborhoods ---- Synchronized ----
Starting ingest...
INFO civicsd.org-neighborhoods Ingesting: neighborhoods from http://ds.civicknowledge.org/civicsd.com/neighborhood.zip
Traceback (most recent call last):
  File "load_pre10.py", line 253, in <module>
    main()
  File "load_pre10.py", line 222, in main
    _ingest(b)
  File "load_pre10.py", line 179, in _ingest
    b.ingest(force=force, clean_files=clean_files)
  File "/home/nmb10/projects/ambry_project/ambry/bundle/bundle.py", line 873, in ingest
    clean=force, account_accessor=account_accessor)
  File "/home/nmb10/.virtualenvs/ambry/local/lib/python2.7/site-packages/ambry_sources/download.py", line 76, in get_source
    .format(spec.name, file_type))
ambry_sources.sources.exceptions.SourceError: Failed to determine file type for source 'neighborhoods'; unknown type 'dbf'

The file, http://ds.civicknowledge.org/civicsd.com/neighborhood.zip is a shapefile, but since that isn't noted in the sources, ambry reads the first file, which is a .dbf.

See also: CivicKnowledge/pre-10-bundles#6

Actually, don't auto detect; just mark this particular source as a shapefile. Moved to: CivicKnowledge/pre-10-bundles#6


Invalid suggestions for lang lib function calls

Refer to the screen grab below:

As it can be seen above, when you press Ctrl+space after typing the function, it shows the receiver in the suggestions, instead of showing the actual parameter (which is a function pointer). I'm guessing the plugin is simply picking the first param in the param list. In this particular case, the actual parameter the user is concerned about is the second param in the param list.

Checked this in the master. Now it doesn't give arr and the imports list. But now it gives the lang lib functions set.


New version with undefined type error

Hello!
I tried to update to the new version v2.4.0 and came across an undefined type error.
https://github.com/phrase/phrase-go/blob/master/model_invitation.go#L22
This Items type seems it's not implemented or at least does not exist in this package.
Also, the CI failed here:
https://github.com/phrase/phrase-go/commit/09d6741d7924f68aa8f264db038fe4bd867a705e#diff-d5cbbd461f33220c20c9a3c799392fd37a8ad2c88802b7ff32ffbf4512d497e8R22
If more information is needed let me know, glad to help!
Thanks!

Hi @WeNeedThePoh, thanks for reporting this. We've also noticed this and are currently looking into it for a fix

Hi @WeNeedThePoh, we released a new fixed version v2.5.0.


How do you change the size of the in-game Alphabet

What is your question?
So I want to edit the size of the Alphabet in the freeplay menu to be a little bit smaller through the source code. I know that it isn't a normal font and I have a feeling that I'm gonna have to edit the flas(although I just want to edit the size for one menu). I I'm just curious if it's even possible tbh.

i think you need some haxe code
but I'm not a pro so someone else has to give you an awnser
maybe like find the letter sprite in the code and use "yourspritehere.width = float" and "yourspritehere.height = float"
float is a type of number that has decimal digits don't let that confuse you


ntuple(n, identity) becomes tuple(collect(1:n)...)

This came up as a fix to the deprecation warning of ntuple(n::Integer, f::Function) — see https://github.com/JuliaLang/julia/pull/11486, in favor of ntuple(f, n). But actually, in the special case of f being the identity (i.e. we merely want to build (1, 2, .... n)), calling tuple(collect(1:n)...) has the same result and runs always faster on my MacBook. It allocates 2x-4x less memory and runs 1.5x-10x faster. Also, the LLVM code has 2 lines instead of 20.
What do you think ? Is there are reason why ntuple(identity, n) should be preferred over tuple(collect(1:n)...)?

Thanks!


When is the Setu-transliterate pipeline scheduled for release?

The current implementation of IndicXlit is really slow! Do you have an expected timeline for when the transliterate pipeline will be pushed?

just pinging to know if there is any update on this ?

Hi @StephennFernandes, I realized you are quite actively exploring a lot of indic models across modalities. Would love to connect with you on LinkedIn: https://linkedin.com/in/kdcyberdude


Cannot Find "SoftwareSerial" Library for Arduino

Hello,
We purchased (3) of this GROVE 125KHZ RFID READER from DigiKey, installed this library, and we are
trying to simply run the example INO project, however, it requires another library, "SoftwareSerial.h"  and
we cannot find or download that library to resolve the compiler error below.
C:\Users\MB\AppData\Local\Temp.arduinoIDE-unsaved2023513-7008-qedy82.cm54\RFID_UART\RFID_UART.ino:3:10: fatal error: SoftwareSerial.h: No such file or directory
#include <SoftwareSerial.h>
^~~~~~~~~~~~~~~~~~
compilation terminated.
exit status 1
Compilation error: SoftwareSerial.h: No such file or directory

SoftwareSerial is an official library file for Arduino. If you encounter the error "No such file or directory," you need to check your Arduino IDE.

Hello,
I'm going to close this issue, feel free to re-open it if you have any other questions.
[Autocommentary]


Bump dependencies & node versions

Needing release with web-resource-inliner v7 which fixes warning in Node 21+
Straight forward bumps
Dropped support for Node 16-
I wanted to bump cheerio too to their 1.0 release published two weeks ago, but it had some regressions with doctype & meta tags that I didn't want to dig into.
Still could be handled in another go with a minor release.

I wanted to bump cheerio too to their 1.0 release published two weeks ago, but it had some regressions with doctype & meta tags that I didn't want to dig into.

They changed the way you enable.configure htmlparser2 which is what we use, it's now done through the xml property:
https://cheerio.js.org/docs/advanced/configuring-cheerio#using-htmlparser2-for-html
Might be enough to just enable it instead of through useHtmlParser2: true which is what we do now:
https://github.com/Automattic/juice/blob/8caaf8fe4972af200a2abd5bd4a183897afe3b0f/lib/cheerio.js#L10

Alright I bumped it. It looks like it was that simple swap. The tests are failing with minor closing tags changes. Wanted to confirm this is expected/good before updating assertions.

Looking for workflow approval to see test failures.
Difference examples:
- <meta name="viewport" content="width=device-width">
+ <meta name="viewport" content="width=device-width"/>

-

+

There have been some users in the past that did not like the tag rewriting and needed the self closing tags preserved. I think if the behavior is changed there as least needs to be an option for the existing self closing tags or it'll get flagged as a bug by someone that needs it the other way. Keep in mind that some people are legit not rewriting html and are in other markup languages where it actually matters.

will go as a major version bump due to the node version requirement change


Adding support for nullable type upper bounds considering Library models

The below line previously reported an error considering the upperbound of the generic type parameter couldn't be Nullable, adding it into library models to allow it to be Nullable passes the test case.
Function<String,@Nullable String> removeA = a -> a.replace("a","");

We now have library model methods for treating a type as @NullMarked and also for making the upper bound of type variables @Nullable.  We use these new methods to model java.util.function.Function as @NullMarked, in JSpecify mode only.
We fix a related issue with unwanted errors when passing a lambda / method reference to @NullUnmarked code; this was necessary to get NullAway itself to still build with NullAway checking enabled.
(Due to issues with the branch this PR was recreated from the original #893)

Going ahead and merging this one.  Thanks again @akulk022!


Update random.js

Randomized source chain between arbitrum and optimism
Added Logging to display wait time before next transaction
Adjusted destination chains based on the randomly selected source chain
Add check balance in each source chain

LGTM


Feature/corpus doc order

Resolves #1607
Takes the choices of the type field in the backend as canonical order, to make it easy to extend the types at a later stages.
I realize using .index() as key is not the most efficient way to sort, but it's a small amount of pages.

I think the more proper solution would be to make the underlying values of the type field integers instead of strings, but I agree that efficiency isn't relevant given the small number of objects.

I considered making the types a proper Enum, but that would make adding more documentation pages between existing ones more difficult (read: requiring data migrations).


Tag images from PR with branch?

Behaviour
Expected behaviour
When pushing to a PR branch, I expect to have a devops-comedy:<branch> and devops-comedy:pr-<number> tag generated - among others.
Actual behaviour
The devops-comedy:<branch> tag is not generated, and the two SHA tags that should be prefixed with the branch name are not.
Configuration

Repository URL (if public):
Build URL (if public):

name: devops-comedy

on:
  pull_request:

  push:
    branches:
      - master

jobs:
  build:
    runs-on: self-hosted
    steps:
      - name: Checkout
        uses: actions/checkout@v2

      - name: Generate container metadata
        id: meta
        uses: docker/metadata-action@v3
        with:
          images: <my_repo>/devops-comedy
          tags: |
            type=ref,event=branch
            type=ref,event=pr
            type=ref,event=tag
            type=semver,pattern={{version}}
            type=semver,pattern={{major}}.{{minor}}
            type=semver,pattern={{major}}
            type=sha
            type=sha,prefix={{branch}}-
            type=sha,format=long
            type=sha,format=long,prefix={{branch}}-

      - name: Setup Docker Buildx
        uses: docker/setup-buildx-action@v1

      - name: Login to MLB Artifactory
        uses: docker/login-action@v1
        with:
          registry: <mlb_registry>
          username: ${{ secrets.MLB_ARTIFACTORY_USERNAME }}
          password: ${{ secrets.MLB_ARTIFACTORY_PASSWORD }}

      - name: Build & push container image
        id: docker_build
        uses: docker/build-push-action@v2
        with:
          cache-from: type=registry,ref=<my_repo>/devops-comedy:latest
          cache-to: type=inline
          context: .
          labels: ${{ steps.meta.outputs.labels }}
          push: true
          tags: ${{ steps.meta.outputs.tags }}

      - name: Output container image digest
        run: echo ${{ steps.docker_build.outputs.digest }}

Logs
logs_7.zip

@mgoodness

The devops-comedy:<branch> tag is not generated,

type=ref,event=branch is only generated on branch event (aka refs/heads/<branch>). Same goes with type=ref,event=pr on pr/pr_target event (refs/pull/merge/<pr_num>) and type=ref,event=tag on tag event (refs/tags/<tag>).

and the two SHA tags that should be prefixed with the branch name are not.

About the global expression {{branch}} empty on pr event, it's pretty much the same behavior as above but we could set {{branch}} with base branch value.

type=ref,event=branch is only generated on branch event (aka refs/heads/).

I don't understand - AFAIK GitHub doesn't have a "branch" event.

@mgoodness push branch event:
on:
  push:
    branches:
      - master

Gotcha, thanks.


Range Degradation showing excessive miles

Hey @jheredianet
Got the release of the new dashboards. However, the Range Degradation dashboard is showing that Model S at one point had over 600 miles of estimate range. Calculation seems off.

Hi @cwanja
Great catch! You are right, I was missing to convert the units.
It's already fixed now. Please, could you update again?

Looks great now! Thanks @jheredianet


Update draco to fix gcc 11 build

Updates Draco to the latest commit so that Cesium Native can compile in gcc 11. This brings in fixes from https://github.com/google/draco/pull/636 and https://github.com/google/draco/pull/708. The second fix hasn't been included in a tagged release yet which is why we just grabbed the latest commit from master.
In the latest version of draco the target is called draco_static on linux and draco on windows. This is what most of the cmake changes are for.
The only problem now is compile warnings. I haven't had any luck suppressing these warnings in gcc.
In file included from /home/slilley/Code/cesium-native/extern/draco/src/draco/attributes/attribute_octahedron_transform.cc:19:
/home/slilley/Code/cesium-native/extern/draco/src/draco/compression/attributes/normal_compression_utils.h:321:27: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
    const float x = 1.f - abs(y) - abs(z);
                          ^
/home/slilley/Code/cesium-native/extern/draco/src/draco/compression/attributes/normal_compression_utils.h:321:27: note: use function 'std::abs' instead
    const float x = 1.f - abs(y) - abs(z);
                          ^~~
                          std::abs
/home/slilley/Code/cesium-native/extern/draco/src/draco/compression/attributes/normal_compression_utils.h:321:36: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
    const float x = 1.f - abs(y) - abs(z);
                                   ^
/home/slilley/Code/cesium-native/extern/draco/src/draco/compression/attributes/normal_compression_utils.h:321:36: note: use function 'std::abs' instead
    const float x = 1.f - abs(y) - abs(z);
                                   ^~~
                                   std::abs
2 warnings generated.

In decodeDraco.cpp I tried:
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4127 4018 4804)
#endif
#ifdef __GNUC__
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wabsolute-value"
#endif

#include <draco/compression/decode.h>
#include <draco/core/decoder_buffer.h>

#ifdef _MSC_VER
#pragma warning(pop)
#endif
#ifdef __GNUC__
#pragma GCC diagnostic pop
#endif

Thanks @lilleyse. We don't need to worry about compiler warnings while building third-party libraries. If we're getting warnings in our CPP files from including third-party headers, we do have to deal with that, though.


Restrict rake to < 11.0 for compatibility with ruby18

Example of the issue: https://travis-ci.org/intridea/oauth2/jobs/122118341

Coverage decreased (-0.4%) to 96.154% when pulling 438f5fd4802881b712143afe20768ac48f6495e3 on JoshCheek:rake-compatibility-with-ruby18 into e0006cb5099bf392f011eb5c49cbec4f893bbdba on intridea:master.

@JoshCheek thank you for this, I made a PR to update something on Travis and I was wondering how come I had messed up with 1.8 😅

@sferik please merge this one...

👍

Thanks Josh!


mise use creates a new .mise.toml even if mise.toml already exists

Describe the bug
mise use creates a new .mise.toml even if mise.toml already exists.
To Reproduce

Rename .mise.toml to mise.toml in the directory. (Ensure to delete .mise.toml.)
Run mise use python in the same directory.
.mise.toml is newly created.

e.g.
mkdir mise-test
cd mise-test
echo -e "[tools]\nnode = \"latest\"" >> mise.toml
cat mise.toml
# [tools]
# node = "latest"
mise use --verbose python
cat .mise.toml
# [tools]
# python = "latest"

Then, ls -a shows both mise.toml and .mise.toml.
Expected behavior
python is written in already existing mise.toml instead of the new .mise.toml
Cause
mise use seems only to look for MISE_DEFAULT_CONFIG_FILENAME, the env value, or the default .mise.toml.
https://github.com/jdx/mise/blob/9a9924e6473036468176014fdac5e8e49ee8123e/src/cli/use.rs#L180-L196
I don't understand well about the codebase but it seems other commands refer to DEFAULT_CONFIG_FILENAMES in config/mod.rs.
https://github.com/jdx/mise/blob/9a9924e6473036468176014fdac5e8e49ee8123e/src/config/mod.rs#L460-L500
Workaround
Settings MISE_DEFAULT_CONFIG_FILENAME=mise.toml will fix the issue.
mise doctor output
version: 2024.5.23 linux-x64 (2024-05-27)
activated: yes
shims_on_path: yes

build_info:
  Target: x86_64-unknown-linux-gnu
  Features: DEFAULT, NATIVE_TLS
  Built: Mon, 27 May 2024 14:51:00 +0000
  Rust Version: rustc 1.78.0 (9b00956e5 2024-04-29) (Homebrew)
  Profile: release

shell:
  /bin/bash
  GNU bash, version 5.1.16(1)-release (x86_64-pc-linux-gnu)
  Copyright (C) 2020 Free Software Foundation, Inc.
  License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

  This is free software; you are free to change and redistribute it.
  There is NO WARRANTY, to the extent permitted by law.

dirs:
  data: ~/.local/share/mise
  config: ~/.config/mise
  cache: ~/.cache/mise
  state: ~/.local/state/mise
  shims: ~/.local/share/mise/shims

config_files:
  ~/.config/mise/config.toml
  ~/GitHub/mise-test/mise.toml

backends:
  cargo
  core
  go
  npm
  pipx
  ubi

plugins:
  actionlint         https://github.com/crazy-matt/asdf-actionlint.git#f8df3cf
  bun                (core)
  deno               (core)
  erlang             (core)
  go                 (core)
  java               (core)
  markdownlint-cli2  https://github.com/paulo-ferraz-oliveira/asdf-markdownlint-cli2#3b733f6
  node               (core)
  python             (core)
  ruby               (core)
  rust               https://github.com/code-lever/asdf-rust.git#95acf4f
  shellcheck         https://github.com/luizm/asdf-shellcheck.git#780d78d
  shfmt              https://github.com/luizm/asdf-shfmt.git#a42c5ff
  yamlfmt            https://github.com/mise-plugins/asdf-yamlfmt.git#5f36f2e
  yamllint           https://github.com/ericcornelissen/asdf-yamllint.git#e8e1d29
  zig                (core)

toolset:
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>  npm<EMAIL_ADDRESS>
env_vars:
  MISE_SHELL=bash

settings:
  activate_aggressive = false
  all_compile = false
  always_keep_download = false
  always_keep_install = false
  asdf_compat = false
  cargo_binstall = true
  color = true
  disable_default_shorthands = false
  disable_tools = []
  experimental = true
  go_default_packages_file = "~/.default-go-packages"
  go_download_mirror = "https://dl.google.com/go"
  go_repo = "https://github.com/golang/go"
  go_set_gopath = false
  go_set_goroot = true
  go_skip_checksum = false
  jobs = 4
  legacy_version_file = true
  legacy_version_file_disable_tools = []
  node_compile = false
  not_found_auto_install = true
  paranoid = false
  plugin_autoupdate_last_check_duration = "7d"
  python_default_packages_file = "/home/risu/.default-python-packages"
  python_pyenv_repo = "https://github.com/pyenv/pyenv.git"
  raw = false
  trusted_config_paths = []
  quiet = false
  verbose = false
  yes = false
  ci = false
  debug = false
  trace = false
  log_level = "info"
  python_venv_auto_create = false

  [status]
  missing_tools = "if_other_versions_installed"
  show_env = false
  show_tools = false

No warnings found
No problems found

Additional context
[DEBUG] ARGS: mise use --verbose python
[DEBUG] Config {
    Config Files: [
        "~/GitHub/mise-test/mise.toml",
        "~/.config/mise/config.toml",
    ],
}
[DEBUG] Toolset (359.412µs): node@latest, bun@latest, python@latest, rust@latest, npm:@biomejs/biome@latest
[DEBUG] install_versions: python@latest
mise ~/GitHub/mise-test/.mise.toml tools<EMAIL_ADDRESS>

Thanks for fixing the issue and also for the awesome project!


Issues with kubejs and fluid extracting

2 issues:

The KubeJS function event.recipes.createoreexcavation.extracting() doesn't seem to work. I copied and pasted the example code from the KubeJS section on the github and it doesn't create a recipe in the fluid extracting section in JEI. I used event.custom() and got it working so I'm guessing there's an error in the KubeJS extracting() function.

Even though my event.custom() function shows a fluid extracting recipe in JEI it doesn't seem to actually spawn it in world. I looked around with the Ore Vein Finder for a few minutes, didn't find it, increased the weight to 100, didn't find it, increased to 10000, and I still can't find it. I also couldn't find the built-in water vein while searching. The item drilling recipes work perfectly in every way. No issues there.

KubeJS for 1.19.2 changed the syntax see: https://mods.latvian.dev/books/kubejs/page/migrating-to-kubejs-6
With "ServerEvents.recipes(event => {" there's no error, but still not working, so i think that is a CreateOreExcavation problem

The biome whitelist and blacklist tags need to be minecraft:is-{dimention} not forge.

@tom5454


Improve usability of comments in DS requests

What does this PR do?
Improves the usability of viewing comments in DS Requests by showing the comments in the same view
Which TC components are affected by this PR?

[ ] Documentation
[ ] Grove
[ ] Traffic Analytics
[ ] Traffic Monitor
[ ] Traffic Ops
[ ] Traffic Ops ORT
[X] Traffic Portal
[ ] Traffic Router
[ ] Traffic Stats
[ ] Traffic Vault
[ ] Other _________

How to reproduce
Run Traffic Portal locally, add DS, then view the DS request in DS Requests menu. Must enable dsRequests in traffic_portal_properties.json to see DS Requests menu.
Check all that apply

[ ] This PR includes tests
[ ] This PR includes documentation updates
[ ] This PR includes an update to CHANGELOG.md
[ ] This PR includes all required license headers
[X] This PR does NOT fix a serious security flaw. Read more: www.apache.org/security

Can one of the admins verify this patch?

add to whitelist

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2313/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2314/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2338/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2341/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2342/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2343/
Test FAILed.

I found that if the list of comments are long and you try to edit one at the bottom, it appears that nothing happens. This is because the edit is at the top of the screen. Any way you can scroll to top on edit?

Warning nitpick alert: I think most of our buttons use the Update/Create verbs instead of Edit/Add but i could be wrong. You may want to double check on that and stick to the common verbs for consistency.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2346/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2351/
Test PASSed.

I reviewed the new comments functionality with Chad this morning..  It looks good to go.


Cleans up backup artifact for PAS backup

Extends changes made in #51 to the PAS backup task
[#165566594]
Signed-off-by: Glen Rodgers<EMAIL_ADDRESS>

Commits already in master


Update the readme with proper resized screenshots for making it readable

Update the readme with proper resized screenshots for making it readable. Please add the labels "hacktoberfest" to the issue

I am currently working on this @danascape

Fixed in PR (#8) - Updated README.md with resized screenshots and information about contributions & project info


bugfix: pr-guardrails - removed files are included in lint files

Closing as done.

Please ignore latest commit reference.
Wrong issue reference.


ISPN-6377 Include node name in start rebalance event

https://issues.jboss.org/browse/ISPN-6377

master and 8.2.x

Looking..

Integrated in master and 8.2.x. Thanks @tristantarrant !


use Text prompt to get SAM mask

great work!
I see the graph

Does it mean that using a text prompt effectively generates the SAM mask by AlphaCLIP ?
Text prompt? #4

We believe directly using the text from text features from CLIP is not good. Because the explainability of CLIP is bad. Using the text features matched with opposite semantic regions lead to wrong results.

As it shown the original approach of exclusively deriving the SAM mask from the text prompt did not produce desired outcomes.

Hi, sorry for confusing figure. It's only a SUPPER simplified figure to show our annotation pipeline. Actually, We use SAM for auto mask generation (with 16 points per side) to generate tens of mask per image, then we use Alpha-CLIP to score these masks(as masked images with background set to a pure color) with ground truth image level label. in the end we rank these masks and get top scored mask as our pseudo-labeled images.
Alpha-CLIP cannot generate any dense label directly. As SAM doesn't support CLIP feature as condition in their released code either!

I see SAM-CLIP: Merging Vision Foundation Models towards Semantic and Spatial Understanding and Text2Points to guide SAM .  I guess alphaclip  can do better !

Hi, thanks for sharing these frontier works with us! We also believe Alpha-CLIP work better in these scenarios for that patch level feature pooling is too coarse for small object!


You can now add the option writeStream to the reporters.

var reporter = new JSONReporter(inspector, {
  writeStream: customWriteStream
});

This PR resolves #24

Thanks a lot for your work on this! :) Looks really good. Just a coupe small things:

The self._writeStream.end(); logic could be moved to the base reporter, since it's common to all
If writing to a temp file, it'd probably be better to use something like https://www.npmjs.com/package/tmp But we could also avoid writing to disk for the spec. It'd be awesome if it could just something like https://github.com/maxogden/concat-stream

Thanks again. If you squash I'll merge it in :)

squash :heavy_check_mark:

Looks like you still have 3 commits here? Did you forget to force push to this branch after squashing?

squash :heavy_check_mark:

Thanks again! :)

Tagged a new release: https://github.com/danielstjules/jsinspect/releases/tag/0.7.0 :tada:
As a note, I renamed the option to opts.writableStream, to be consistent with the class name


cannot build

Which @angular/* package(s) are the source of the bug?
compiler-cli
Is this a regression?
Yes
Description
I have been show stopped with build issues since the angular 12 release in June
still now cannot build here is the complete output descriptions below any feedback on this would be very much appreciates this is post angular 12 upgrade on the latest nrwl nx all up to date latest revs as of today
thanks in advance
> nx run mobile-app:build
✔ Browser application bundle generation complete.

./node_modules/@angular/compiler-cli/ngcc/src/constants.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/ngcc/src/rendering/ngcc_import_rewriter.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/ngcc/src/rendering/renderer.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/ngcc/src/rendering/rendering_formatter.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/ngcc/src/rendering/source_maps.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/ngcc/src/rendering/utils.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/file_system/index.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/file_system/src/compiler_host.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/file_system/src/helpers.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/file_system/src/invalid_file_system.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/file_system/src/logical.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/file_system/src/node_js_file_system.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/file_system/src/util.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/imports/index.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/imports/src/alias.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/imports/src/core.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/imports/src/default.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/imports/src/emitter.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/imports/src/find_export.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/imports/src/references.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/imports/src/resolver.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/sourcemaps/index.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/sourcemaps/src/content_origin.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/sourcemaps/src/segment_marker.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/sourcemaps/src/source_file.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/sourcemaps/src/source_file_loader.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/translator/index.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/translator/src/context.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/translator/src/import_manager.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/translator/src/translator.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/translator/src/type_translator.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/translator/src/typescript_ast_factory.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/translator/src/typescript_translator.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/util/src/path.js:3:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/@angular/compiler-cli/src/ngtsc/util/src/typescript.js:10:20-27 - Warning: Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

./node_modules/typescript/lib/typescript.js:4733:17-38 - Warning: Module not found: Error: Can't resolve 'perf_hooks' in '/Users/ss/new/starter/node_modules/typescript/lib'

./node_modules/typescript/lib/typescript.js:5029:16-38 - Warning: Critical dependency: the request of a dependency is an expression

./node_modules/typescript/lib/typescript.js:9717:22-41 - Warning: Critical dependency: the request of a dependency is an expression

Warning<EMAIL_ADDRESS>depends on 'convert-source-map'. CommonJS or AMD dependencies can cause optimization bailouts.
For more info see: https://angular.io/guide/build#configuring-commonjs-dependencies

Warning<EMAIL_ADDRESS>depends on 'typescript'. CommonJS or AMD dependencies can cause optimization bailouts.
For more info see: https://angular.io/guide/build#configuring-commonjs-dependencies

<EMAIL_ADDRESS>- Error: Module not found: Error: Can't resolve 'os' in '/Users/ss/new/starter/node_modules/@angular/compiler-cli/src/ngtsc/file_system/src'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "os": require.resolve("os-browserify/browser") }'
	- install 'os-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "os": false }

<EMAIL_ADDRESS>- Error: Module not found: Error: Can't resolve 'fs' in '/Users/ss/new/starter/node_modules/@angular/compiler-cli/src/ngtsc/file_system/src'

<EMAIL_ADDRESS>- Error: Module not found: Error: Can't resolve 'path' in '/Users/ss/new/starter/node_modules/@angular/compiler-cli/src/ngtsc/file_system/src'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "path": require.resolve("path-browserify") }'
	- install 'path-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "path": false }

./node_modules/convert-source-map/index.js:5:11-26 - Error: Module not found: Error: Can't resolve 'path' in '/Users/ss/new/starter/node_modules/convert-source-map'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "path": require.resolve("path-browserify") }'
	- install 'path-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "path": false }

Error: libs/shared-features/src/lib/feature-list/feature-list/feature-list.data.ts:14:39 - error TS2339: Property 'ionic' does not exist on type '{ app: string; angular: string; ngrx: string; material: string; bootstrap: string; rxjs: string; ngxtranslate: string; fontAwesome: string; angularCli: string; typescript: any; cypress: string; eslint: string; }'.

14         version: environment.versions.ionic,
                                         ~~~~~

———————————————————————————————————————————————

>  NX   ERROR  Running target "build" failed

  Failed tasks:

  - mobile-app:build

>  NX   CLOUD  See run details at https://nx.app/runs/bcT0RUWzDqk

ss@admin starter %

Please provide a link to a minimal reproduction of the bug
No response
Please provide the exception or error you saw
No response
Please provide the environment you discovered this bug in
No response
Anything else?
thats it
I would like to build and i cant
I thought there were fittings to put into package.json to mute this like
  "node": {
    "crypto": "empty",
    "fs": "empty",
    "path": "empty",
    "stream": "empty",
    "net": "empty",
    "tls": "empty"
  },
  "browser": {
    "crypto": false,
    "fs": false,
    "path": false,
    "os": false,
    "net": false,
    "stream": false,
    "tls": false
  }

but i tried and they fail
i can get the build to succeed by using the webpack builders with this webpack.config.js
module.exports = {
    target: "node",
    resolve: {
        fallback: {
            "path": false,
            "os": false,
            "fs": false
        }
    },
    plugins: [
        new webpack.DefinePlugin({ "global.GENTLY": false })
    ],
};

but at runtime I get a variety of webpack load stack traces in the console and the bundles cannot even load and I want nothing to do with webpack anyway
I eliminated any uses of require
any help is greatly appreciated
require chunk loading:34 Uncaught ReferenceError: module is not defined
    at runtime.js:200
    at runtime.js:206
    at runtime.js:211
zone.js:2956 Uncaught ReferenceError: require is not defined
    at polyfills.js:3303
    at polyfills.js:3308
vendor.js:1 Uncaught ReferenceError: exports is not defined
    at vendor.js:1
main.js:13856 Uncaught ReferenceError: require is not defined
    at main.js:13856
    at main.js:13861

Indeed as @JoostK pointed out, it does appear that packages which are meant to be used on Node are being included in the browser bundle.  This typically indicates that have an incorrect import or a using Node.JS libraries in your web application.
This doesn't appear to be an issue with Angular itself, but rather something in the application code is causing modules that are meant to build the application to be included as part of the browser bundle.


doc: simplify docs on driver-specific APIs.

This documentation is well-intentioned but not good advice.
The reason why we have a vtable-like API abstraction at the
driver subsystem level is to introduce object orientation.
The subsystem defintions define an abstract class that
specific driver implementations all implement, providing
a common interface for end users. Multiple drivers may be
written for a subsystem that are interchangeable to the end
user.
However, there is no point in introducing a vtable-like
abstraction for APIs which are specific to a single driver.
We are not trying to present an interface abstraction which
could support multiple implementations. There is just one.
Simply declare a function in a header, and implement it in
the driver's C file.
Signed-off-by: Andrew Boie<EMAIL_ADDRESS>

This is fine but to be really helpful to the user it needs more explanation, including how to provide userspace support for these things.

These are like ANY other function. There are no special considerations if they need to be exposed as system calls. Since these are just ordinary functions, the existing documentation we have on system calls applies to them https://docs.zephyrproject.org/latest/reference/usermode/syscalls.html

And I agree the commit comment content needs to be visible in the documentation.

Do we really need to document that vtables are not useful when there is only one implementation? What other completely basic computer science topics would you like to see explained in our documentation?


Add more factories

Adds more factories. My hope with these are to create isolated classes that are easy to understand and test. To do this, I'm attempting to give them as little information as possible, in order to reduce complexity.

At the moment these factories are rather verbose, but I think that's okay, once they're all done it's gonna be much easier to refactor out shared code.


Update fanyi-baidu.ts

Type of change

[x] Bug fix
[ ] New localization
[ ] New feature
[ ] New translation service

Description
Fix #42

As we have talked in #42 ，I don't have the access to language detection API,so I don't know if it's working.

Other features works well, except for one thing, I found that there are still languages that cannot be translated, such as Albanian.  However, I can't get a normal response even when I directly access the API with a browser, so I suspect it's Baidu's problem.I'm trying to get in touch with their customer service, but haven't gotten a response yet.

I'll assume that the Language Detection works for now. And besides, I don't think many people use need to be able to detect languages that often.
Want me to merge this as-is, or do you want to wait for confirmation from the customer service? It would be a bit strange that some languages don't translate.

Just wait for the reply from the customer service, it shouldn't take too long.

I got a reply. Baidu divides the service into several levels. Only the premium level can unlock the translation rights of all supported languages, the beginner level and advanced level (which I am using) can only translate the languages in the common-used language list.
I think the code should be fine, now it can be merged.

Ah, I completely missed that in the documentation too. 😅
I'll merge the PR now, and try to come up with some code to check whether the user has the advanced tier enabled or just the standard tier.
Thank you again for all the help and testing, I really, really appreciate it!


[Bug or extension conflict?]: Staged files "ghosted"

Describe the bug
Thanks for this very useful plugin.
I'm just having a strange behavior: staged files are "ghosted" (see screenshot)

It could definitely be a conflict between plugins I just wanted to check before bisecting that.
Relevant errors (if available) from notifications or console (CTRL+SHIFT+I)
Nope all fine there!

Steps to reproduce

Stage a file

Expected Behavior
Having the filename in the stage list like the changes list
Addition context
No response
Operating system
Windows
Installation Method
Other
Plugin version
2.20.4

Found the conflict, it was the Rainbow Folder option of AnuPpuccin!


recipes-sdk/*: remove condition on BUILD_SHARED_LIBS in cmake files

BUILD_SHARED_LIBS controls how AWS SDK libraries get built and packaged.
Since BUILD_SHARED_LIBS defaults to ON during build, the resulting binary
packages only contain dynamic libraries. That means a condifion on this
variable in the corresponding cmake file in the binary package makes no
sense. Moreover, if another component that uses AWS SDK libraries sets its
BUILD_SHARED_LIBS variable to OFF, it will fail as there are no static
AWS SDK libs provided.
Fixes: https://github.com/aws/meta-aws/issues/178
Signed-off-by: Denys Dmytriyenko<EMAIL_ADDRESS>

Hi @denix0 we are asking that PRs be made to master-next
I am also asking @justinboswell to help look at this so we don't need to do the cmake modifications.  Please stay tuned ok?

@denix0 this is now fixed upstream by the various aws iot libs, by not abusing the BUILD_SHARED_LIBS variable.
Thank you for the patience!


Multiple sets of coverage

I'd like to use NYC to generate several sets of coverage, for different sets of tests, so that I can assert that unit tests have coverage, and also so that stochastic tests have coverage.
I can do this with some monkeying by just running them distinctly, but I was wondering whether NYC had any kind of support for parallel coverage, which might do a better job in reporting as a result

@StoneCypher we do this ourselves in our test suite:
https://github.com/istanbuljs/nyc/blob/master/package.json#L14
You can use --no-clean to run a set of tests without first clearing out the .nyc_output folder.

@StoneCypher did the --no-clean approach work for you?

@StoneCypher feel free to open a new issue if you ran into any problems, I think with some fiddling --no-clean should do the trick for you 👍

oh, i'm sorry, i thought i replied to this
the answer i had meant to give was "yes, thank you very much"
my apologies for having left this unanswered by accident

@StoneCypher no worries, I'm glad you're on your feet.

@bcoe Can we have multiple coverage summaries for different folders? Currently it shows overcall coverage summary. Can we do it for individual folders ?


Support for importing Tab/SemiColon-Seperated CSV files is broken

Tested versions
Godot v4.2.stable.mono
System information
Godot v4.2.stable.mono - Windows 10.0.17763 - Vulkan (Mobile) - dedicated NVIDIA GeForce RTX 4060 Ti (NVIDIA; <IP_ADDRESS>01) - AMD Ryzen 9 5900X 12-Core Processor (24 Threads)
Issue description
Godot supports CSV with Comma, Semi-Colon, and Tab as its delimiter, however, you can only successfully import CSV files with the Comma delimiter format, The other two formats never get imported (so there is no way to change the delimiter from the Import panel), and with the following error printed:
editor/import/resource_importer_csv_translation.cpp:95 - Condition "line.size() <= 1" is true. Returning: ERR_PARSE_ERROR

Steps to reproduce
Try to import the following three files, only CommonPhrasesLang.csv can be successfully imported without manually creating a .import file.
Minimal reproduction project (MRP)
All three files are hand-crafted in a correct encoding (UTF8 without BOM) and are not exported from any form of spreadsheet software.
CSVFiles.zip

Related to https://github.com/godotengine/godot-proposals/issues/4788.

Duplicate of:

https://github.com/godotengine/godot/issues/86491

I'd say

Thanks for the report! Consolidating in https://github.com/godotengine/godot/issues/82002.


GH 61: User defined serializer and deserializer injection

Added feature to inject user defined Serializer and Deserializer implementations of key, value entities for both KafkaConsumer and KafkaProducer API.

Sorry, I still don't see reason and, therefore, don't understand whole the new strategy level of abstraction. The ConsumerFactory and ProducerFactory have been introduced exactly as strategies between target container object and user-specific requirements.
With all those new strategies you eliminate the existing factory purpose and fully delegates its functionality to a new abstraction.
My opinion is still just stay with the Factory abstraction and provide a couple setters for (De)Serializers.
To be honest I would introduce anything, because you always ca implement your own Consumer- ProducerFactory and inject it into the target component :smile:
Let me know if I am missing anything

I tend to agree, why not just inject the (de)serializers into the default factories?

The only reason why I tend to go for strategy instead of injecting (De)Serializer directly into DefaultKafkaConsumerFactory or DefaultKafkaProducerFactory is,
these factories are wrapping or have additional implementation on KafkaConsumer or KafkaProducer  instances respectively.
IMHO In this strategy way user's can inject their own implementation of  KafkaConsumer or KafkaProducer creation instead of implementing complete DefaultKafkaConsumerFactory or DefaultKafkaProducerFactory. In this model user can enjoy/benefit the in-built features of both factories.

OK, @kvmkreddy ,
I appreciate your wish to contribute anything to the project, but let's look at this from the perspective of the reason in face what we have already so far and what you would like to introduce.
(Thanks to the short code we can demonstrate it here in comments :smile: )
public interface ConsumerFactory<K, V> {

	Consumer<K, V> createConsumer();

	boolean isAutoCommit();

}

public interface KafkaConsumerStrategy<K, V> {

	KafkaConsumer<K, V> createKafkaConsumer();

}

So, semantically these two abstraction are fully similar.
I really can reach your API variant with existing one.
public class DefaultKafkaConsumerFactory<K, V> implements ConsumerFactory<K, V> {

	private final Map<String, Object> configs;

	public DefaultKafkaConsumerFactory(Map<String, Object> configs) {
		this.configs = new HashMap<>(configs);
	}

	@Override
	public Consumer<K, V> createConsumer() {
		return new KafkaConsumer<>(this.configs);
	}

	// Omit isAutoCommit() as non-relevant for discussion
}

public class DefaultKafkaConsumerStrategy<K, V> implements KafkaConsumerStrategy<K, V> {

	private final Map<String, Object> configs;

	public DefaultKafkaConsumerStrategy(Map<String, Object> configs) {
		this.configs = new HashMap<>(configs);
	}

	@Override
	public KafkaConsumer<K, V> createKafkaConsumer() {
		return new KafkaConsumer<K, V>(this.configs);
	}

}

Yeah... Your implementation just duplicates an existing one, too.
I understand your argument

user's can inject their own implementation of KafkaConsumer

But that really looks like you always can extend DefaultKafkaConsumerFactory and override its createConsumer() for your target purpose.
The same is fully orthogonal for the Producer part.
So, we still insist that the Framework don't need this extra strategy abstraction and those (De)Serializer options should be present on the Default...Factory. Enough straightforward and intuitive to have.
Any other custom cases can be implemented with the direct ConsumerFactory and ProducerFactory implementations. Or... as extensions of Default ones.

??? You don't need to close the PR.
There is just enough to rework it according the initial requirements:
provide the hooks to inject (De)Serializers. For this purpose the Default factories are good candidates.
There is just no need to provide one more level of abstraction.
Sorry, if my comment mislead you...

Closed in favor of #68


Show query.log in Logs tab

It would be useful to also see and download the query logs if the file exists and/or dbms.logs.query.enabled is set to true.

Closed/fixed by release of v0.10.0


Login timeout error in betaDebug

Summary:
Getting login timeout error in betaDebug
Steps to reproduce:
Perform Login in betaDebug
System logs:
2020-04-12 17:13:11.451 7910-8000/fr.free.nrw.commons.beta D/OkHttp: <-- HTTP FAILED: java.net.SocketTimeoutException: timeout
2020-04-12 17:13:11.456 7910-7910/fr.free.nrw.commons.beta E/LoginActivity: java.net.SocketTimeoutException: timeout
        at okhttp3.internal.http2.Http2Stream$StreamTimeout.newTimeoutException(Http2Stream.kt:662)
        at okhttp3.internal.http2.Http2Stream$StreamTimeout.exitAndThrowIfTimedOut(Http2Stream.kt:671)
        at okhttp3.internal.http2.Http2Stream.takeHeaders(Http2Stream.kt:142)
        at okhttp3.internal.http2.Http2ExchangeCodec.readResponseHeaders(Http2ExchangeCodec.kt:99)
        at okhttp3.internal.connection.Exchange.readResponseHeaders(Exchange.kt:105)
        at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.kt:82)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
        at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:37)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
        at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:82)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
        at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:84)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
        at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:71)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
        at fr.free.nrw.commons.OkHttpConnectionFactory$CommonHeaderRequestInterceptor.intercept(OkHttpConnectionFactory.java:56)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
        at fr.free.nrw.commons.OkHttpConnectionFactory$UnsuccessfulResponseInterceptor.intercept(OkHttpConnectionFactory.java:62)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
        at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.kt:215)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
        at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.kt:184)
        at okhttp3.RealCall$AsyncCall.run(RealCall.kt:136)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:919)
2020-04-12 17:13:11.460 7910-7958/fr.free.nrw.commons.beta D/EGL_emulation: eglMakeCurrent: 0xd31a8660: ver 3 0 (tinfo 0xbed83f60)
2020-04-12 17:13:11.475 7910-7958/fr.free.nrw.commons.beta D/EGL_emulation: eglMakeCurrent: 0xd31a8660: ver 3 0 (tinfo 0xbed83f60)
2020-04-12 17:13:11.483 2049-2850/? E/InputDispatcher: Window handle Window{857f938 u0 Logging in} has no registered input channel
2020-04-12 17:13:11.834 1792-2473/? E/GnssHAL_GnssInterface: gnssSvStatusCb: a: input svInfo.flags is 8

Device and Android version:
Google Pixel 2 Android 10 API Level 29
Commons app version:
2.12.3-debug-master~241b54d00
Screen-shots:

Do you get this error whenever you try to log-in? I get a timeout at times but successive attempts would result in a successful log-in.
Also, I'm doubtful about whether there's anything to be done in the app's side. This would generally happen when the network is not good or when there's a delay in the server's response both of which are out of our control. We could increase the timeout, if possible. But AFAIK it's not a major issue reported by users using the production version of the app, so I think it's not worth doing that.

Do you get this error whenever you try to log-in? I get a timeout at times but successive attempts would result in a successful log-in.

Yes during login, I tried multiple times but didn't worked.

Also, I'm doubtful about whether there's anything to be done in the app's side. This would generally happen when the network is not good or when there's a delay in the server's response both of which are out of our control. We could increase the timeout, if possible. But AFAIK it's not a major issue reported by users using the production version of the app, so I think it's not worth doing that.

Maybe there is some ongoing issue with beta API, I don't think we need to increase the timeout.

Do you get this error whenever you try to log-in? I get a timeout at times but successive attempts would result in a successful log-in.

Yes during login, I tried multiple times but didn't worked.

I just tried building betaDebug from master (2.12.3-debug-HEAD~241b54d00) and I was able to successfully log-in to the beta server.

If you're sure there's no issue with your network, just check after a day or so to see if this changes.

Beta is just a bit unstable at the best of times, use prod when at all possible and beta for only uploading many images, closing


[FEAT] adding a new page to display all contributors✨

I want to add a page to showcase all the contributors of this website. @Vimall03 can you please assign me this issue.

@T-Rahul-prabhu-38, That would look good. How are you planning to implement this ? Will the contributors list update dynamically ?

I have done it for 2 other repos till now , its done by calling an github API key

it will be realtime update as well.

@T-Rahul-prabhu-38 Great, Please make sure that the design of this page matches the color and design elements in this design - https://www.figma.com/design/hbfVm94AuIo6aPujnGOhha/Alimento?node-id=0-1&node-type=canvas

I will push this issue to level 2 based on your PR if necessary

sure ill do that.


Automated parameter selection

In terms of domain, is there a way to automatically detect and assign this for large data sets? i.e. an optimising parameter loop?

*in terms of domain, etc

LCS Tool does not include any code to assist optimized detection in large domains. The results in this publication may be relevant: http://arxiv.org/abs/1404.3109.

I'll look into that. Thank you.


Adding sample of descending property to OrderBy Javadoc

I noticed the class javadoc for @OrderBy doesn't mention or show an example of the descending property. I'm not sure if it's the case for other IDE's but in VSCode, the javadoc shown when hovering over an annotation doesn't include the properties, so without a description in the class javadoc, the availability of the descending property may not be obvious.

The build didn't like the </p> change, but I think I understand what you were trying to fix and corrected it here: 06ffea1


Add support for parameter decorators in typescript

The following does not work and causes issues when attempting to do reflection:
import { Field, ObjectType, ID, Query, Resolver, Arg } from "type-graphql";

import { Resolvers } from "../resolver";

@ObjectType()
class Recipe {
  @Field(type => ID)
  id: string;

  @Field(type => [String])
  ingredients: string[]
}

@Resolver(of => Recipe)
class RecipeResolver {
    @Query(returns => String, { nullable: true })
    recipe(@Arg("title", type => String) title: string): string {
      return "test"
    }
}

It appears to be caused by the parameter decorator 'arg' being ignored.

Closing this because it's old/stale and I don't see us adding support for decorators by itself. However, I'm sure it will be discussed as a part of https://github.com/Azure/azure-functions-nodejs-worker/issues/480


Speech recognition stops after first result

Hello. How can I cycle recognition?
I mean - listen all time

Listening all the time until you explicitly stop it is not possibile. The idle timeout can be set, but nothing more. To add continuous listening you must use Google Cloud Speech API gRPC

thanks)

It's a limitation posed by the android speech recognition APIs


nuget installed package error

Hello, I'm new to this lib and am about to test it due to the fantastic description.
OS: Windows 11
VS: VS 2022
nuget issue
I'm developing some program in C# and installed the library from nuget  package management system.
However, unlike other packages, Visual Studio reports:

I'm not sure if this is due to some configuration of Clipper2 in the nuget system or on my side.
This has never happened to me for other nuget packages....
Cloning the repo and compiling the demo has no problem. Only nuget package has this error.
possible .net dependency issue
Based on a comment here: https://stackoverflow.com/questions/73130417/visual-studio-c-sharp-nuget-package-that-was-installed-cannot-be-found-with-usi
It seems this might be caused by Clipper2 is only depending on .NET 2.0, which is very old.
Perhaps targeting .NET framework 4.5+ or .NET 5+ might solve the issue?
type question
Besides, based on the demo file, it seems there is no PathsD defined, but I need to manually do the:
    using PathsD = List<List<PointD>>;

In my own program:
https://github.com/AngusJohnson/Clipper2/blob/dbc4020503cf80289378bdadd5b01da06ad8c1e5/CSharp/Clipper2Lib.Examples/InflateDemo/Main.cs#L20
May I ask why is so?

Firstlly, thank you for the helpful feedback.
WRT the Nuget error, I'll certainly investigate that.

It seems this might be caused by Clipper2 is only depending on .NET 2.0, which is very old.
Perhaps targeting .NET framework 4.5+ or .NET 5+ might solve the issue?

Please understand that i'm not overly proficient in C# (or C++), so I'm somewhat reliant on others for advice to get things right. And I'm rather bamboozled by the number of C# frameworks - .NET Standard, .NET Core, .NET  Framework, .NET 5, .NET 6 - and deciding which is the best one for Clipper2. Anyhow, from my readings, it seemed to me that NET Standard 2.0 was the safest option for a cross platform library based on Microsoft's published advice here. Now, I'm guessing that MS's advice there needs updating, and I'm certainly open to other advice as to a better framework (and one that supports more than just the most up to date compilers).
WRT your type question, I don't know how you can avoid adding using PathsD = List<List<PointD>> in all your own units. There's no typedef equivalent in C#, and IIRC there are lots of downsides to creating a class to encapsulate this structure. Do you have a suggestion?

I'm not entirely sure it is caused by the dependency, but the settings are a bit messed up.
For instance, you use #nullable enable which is a C#8.0 feature, but based on here, this needs at least .NET Standard 2.1 or .Net Core 3.x.
IMHO, since there're a Clipper v1 exist out there, for the Clipper2 it should target a bit higher, use more modern features and care less about compatibility issue.
In fact, .NET Standard v2 has stopped support and Clipper2 should at least target the lowest of a LTS version.
I would say that .NET Core or .NET framework is quite widely used, and developers are aware of that.

Update.
My issue was resolved, but I don't know how.
I cloned the repo and switched between several framework, build local version of nuget packages and install/uninstall.
During the process, I also installed several framework from VS Installer.
Then amazingly, the issue disappeared.
For the typedef issue, I would recommend creating a separate class for that, since no one is using PointD outside Clipper2.
I don't know what your downside is exactly.
Cost-wise, this should cost almost nothing in modern computers.

Hopefully all fixed now (and using List<List<PointD>> etc should no longer be necessary 😁).

Hopefully all fixed now (and using List<List<PointD>> etc should no longer be necessary 😁).

No, what I mean by creating a separate class is on the library side. If you agree, you should add that to Clipper2 so that we as the users will not need to do the using part.

No, what I mean by creating a separate class is on the library side. If you agree, you should add that to Clipper2 so that we as the users will not need to do the using part.

I'm afraid I don't understand what you're suggesting.

WRT your type question, I don't know how you can avoid adding using PathsD = List<List> in all your own units. There's no typedef equivalent in C#, and IIRC there are lots of downsides to creating a class to encapsulate this structure. Do you have a suggestion?

I'm suggesting to create a class for that. Unless you have really specific downside, which I currently cannot see.

Edit: After reading this page, I'm now wondering if it might be better to change the framework over to .NET 5 (both for the library and for all the support projects)?

I agree.

I'm suggesting to create a class for that.

This  is what I've done, and what I thought you were suggesting:
  public class Path64 : List<Point64>
  {
    public Path64(int reserve = 0) : base(reserve) { }
    public Path64(Path64 path) : base(path) { }
  }
  public class Paths64 : List<Path64>
  {
    public Paths64(int reserve = 0) : base(reserve) { }
    public Paths64(Paths64 paths) : base(paths) { }
  }

Do you have something else in mind?

Edit: After reading this page, I'm now wondering if it might be better to change the framework over to .NET 5 (both for the library and for all the support projects)?

I agree.

I made those changes yesterday 😁.

Edit: After reading this page, I'm now wondering if it might be better to change the framework over to .NET 5 (both for the library and for all the support projects)?

I agree.

I made those changes yesterday 😁.

Hmm, interesting... I'm using .net framework 4.8 for the project that uses Clipper2.
Changing the Clipper2 to net5 dependency makes it incompatible with net48...
Im'not an expert in those frameworks either... need some help from others here.
Perhaps .NET Core rather than .NET? (It seems .NET is for web app, and core is for cross-platformandframeworkis for windows application only.) Or just back toStandard 2.1`...
Is it even possible to do "either/or" multidependency?
Below is a random package I found on nuget:

@AngusJohnson Would it be possible to still target netstandard2.0 as well? I am using Clipper2 in NetFramework4.8 currently in Version 1.0.0 and an update of the Clipper2 package to 1.0.4 is not possible since .NetFramework (any version) does not support netstandard2.1 at all.
There should not be any downside to multiple target frameworks as long as Clipper2 is not using any C# language features that are not included in NetStandard2.0 [Visual Studio will warn you if you try that on multi-target projects]. This target framework gives the library broad compatibility with .Net versions.
The Overview by Microsoft you linked still holds true for older frameworks, .NET Standard 2.0 is not deprecated (yet).
With NetStandard2.0 you are backwards compatible until .NetFramework 4.6.1 and .Net Core 2.0 from 2015, anything older is officially depricated by Microsoft. That is why we use netstandard2.0 in our Open Source Projects.
Just swap <TargetFrameworks>netstandard2.1;net5.0</TargetFrameworks> with <TargetFrameworks>netstandard2.0;netstandard2.1;net5.0</TargetFrameworks>, should be no problem since V1.0.0 worked with NetStandard2.0.
I would recommend dropping support for netstandard2.0 only when Microsoft drops it as well, which has not been anounced to happen yet, to maximize the library reach and portability.
Thanks for the amazing library, clipper is really fast and reliable.

I really need advice from experienced C# developers on the best way to package Clipper2 for Nuget.

@AngusJohnson I'm somewhat experienced in C# (about 5 years) and will try to help.
The .NET versioning was really confusing and inconsistent in the past, with .NET Framework for Windows and .NET Core for everything else. NETStandard was the first (and even more confusing) try by Microsoft to unify that mistake, by creating ANOTHER standard to target.
Starting with .NET5.0 MS finally did the right thing and it is backwards compatible with everything, you can use .NET Framework, Standard or Core assemblies in it. But as always, it will take years for all software and dependencies to update (We ourselves can not yet switch to .NET 5.0 because of an dependency/license).
As long as the older software is still around, libraries that want to be broadly compatible should target the smallest common denominator, which is currently NETStandard2.0 since it works with everything released after 2015, including .NET 5.0 and 6.0.
Regarding the original issue here: There is no way retargeting to .NET5.0 could have fixed xarthurx issue. The critical information missing is what .NET version his project is targeting. The Visual Studio error if the target framework is wrong reads something like "Package XXX is not compatible with netstandard2.0 (.NETStandard,Version=v2.0). Package XXX supports: netstandard2.0 (.NETStandard,Version=v2.0)". Nuget will prevent install of that package in that case.
The file not found exception sound more like a build system hickup, where the Nuget dependency was not copied to the output directory of the command line program correctly.

I believe @SebastianDirks is correct and more experienced than me.
Thank you for the explanation.

Thanks Sebastian. I guess the question is what would you recommend going forward?
Currently Clipper2 supports 2 target frameworks - netstandard2.1 and net5.0,
Should I change this to netstandard2.0 and net5.0, or just chane it back to netstandard2.0?
Or something else? Cheers.

I think I would recommend just going back to NetStandard2.0.
Performance-wise the Just-In-Time Compiler is choosen based on the target of the project that is consuming Clipper2 library and optimization is also performed just in time or in NET6.0 even while running with the new Profile-guided optimization (PGO), C# differs from C++ here.
This means that you can get all the performance upgrades of the .NET6 JIT on NetStandard2.0 libraries as well.
The only solid reason for breaking compatibility in my opinion is if there are C# language features in newer versions that you want to use AND that are important enough to break backwards compatibility. Since your code right now is fully compatibel with NetStandard2.0, I don't think that would be worth it for clipper.
Multi-Targeting is useful if you want to target multiple frameworks that are not compatible and can't use NetStandard.

I think I would recommend just going back to NetStandard2.0.

OK, thanks again Sebastian. I'll revert the library to back to netstandard2.0 in due course .
(It may take me a few days as I'm kind of juggling other things ATM.)

This means that you can get all the performance upgrades of the .NET6 JIT on NetStandard2.0 libraries as well.

Bear in mind however that NetStandard2.0 limits the APIs available to you.
Say for example you wanted to use SIMD somewhere the codebase. You'd need to multitarget to add NET6 (Don't target NET5 as it's out of support)


How to set the progress bar's progressRemainingColor and progressColor through MBProgressHUD class instance

Probably would be more appropriate to ask such questions at StackOverflow and to open an issue when you are reporting an issue. issue != help request
MBProgressHUD *hud = [MBProgressHUD HUDForView:view];
hud.progressRemainingColor = ...
hud.progressColor = ...


Prefer as const with TypeScript 4.9 introduced satisfies operator

https://github.com/microsoft/TypeScript/issues/47920
https://devblogs.microsoft.com/typescript/announcing-typescript-4-9-rc/#satisfies
This is my hope since https://github.com/mobu-of-the-world/mobu/pull/479#discussion_r907975380
NOTE: typescirpt-eslint has issue for false detection.  It is fixed in https://github.com/typescript-eslint/typescript-eslint/pull/6059, but not yer released. However we don't have the pattern. See https://github.com/kachick/renovate-config-asdf/pull/415#issuecomment-1325868529 for further detail.

Hmm... vite or esbuild looks having issue for this feature 🤔

We are using supported esbuild version 🤔
https://github.com/evanw/esbuild/pull/2509
https://github.com/mobu-of-the-world/mobu/blob/77a0693e9e830a804e88113aa895ff922e1a76a8/package.json#L24

esbuild ignores after all of as. npx esbuild src/session/Timer.tsx passes.

Using old babel looks the issue. However updating to latest makes Jest error. This is a dependency hell 🤣

Failed only in netlify integration. Looks using yarn. Replaced yarn with npm in https://github.com/mobu-of-the-world/mobu/pull/435. 🤔
@pankona Do you know the reason? I believe deployment should use as same logics tested in CI. How about to replace with others? An example, firebase can use github actions for the deployment. Looks netlify having similar one https://github.com/marketplace/actions/netlify-actions

Official having actions with few comments
https://github.com/netlify/actions/tree/375963b92b795c7b979927c580dd6f2a65ebcf28/build
They said It is not maintained https://answers.netlify.com/t/guide-for-deploy-using-github-actions/2981/15

Since replaced netlify with firebae, Blocker is gone.
https://github.com/mobu-of-the-world/mobu/pull/727


A tool works with Thanos to make Prometheus horizontal scaleable

Thanos is a awesome project. we use it to monitor our Kubernetes clusters for years.
Recently we shared our solution for large cluster monitoring to anybody need it.
Kvass is a Prometheus horizontal auto-scaling solution, which uses Sidecar to generate special config file only contains part of targets assigned from Coordinator for every Prometheus shard.
We use Thanos to get global data view. 😊
We already use Thanos + Kvass to monitor Kubernetes cluster with following size for moths.
Just with one Prometheus config file as usual, no federal needed and no hash_mod needed.

1k+ Nodes
60k+ Pods
100k+ Containers

Cool, this is quite an amazing user story. (:
We try similar with @domgreen at some point and it sometimes is hard to debug where the scrape target is etc, but for the good use case, that might be extremely helpful.
This issue will get lost, so I would love to see this in form of blog post, so we can link this on our website somewhere OR we could add some new page similar to https://thanos.io/tip/operating/reverse-proxy.md/ but for e.g Use Cases? :thinking:

FWIW Prometheus Operator uses a pretty similar strategy, except it generates a discovery config that distributes the targets via hashmod sharding of the __address__ label and assigns a shard to each Prometheus.
I highly recommend using hashmod sharding, because if you use the coordinator to assign targets, you have no starting point of troubleshooting when something is not discovered, which makes this essentially an unpredictable distributed monitoring system. As a plus, that way you don't need any coordinator, except for distributing the configuration.

@brancz Thanks for your opinion😊. The solution of Prometheus Operator is cool when targets have similar series scale👍.
But that may lead to load imbalance if targets with huge differences series. For example, when cluster size is large, the kube-state-metrics may has more than 3000000 series, we use kube-state-metrics shading, and have 4 or more kube-state-metrics shards. If we use hashmod by __address__, these kube-state-metrics shards may be distributed to the same Prometheus shard and cause OOM, but if we use Coordinator to explore targets scale, and then distribute targets according to real series scale, the load of Prometheus shards are controllable.
On the other hand, all shards will do service discovery if we use hashmod only, and this may causes lots of memory waste especially when cluster is large.Only use Coordinator to do service discovery can save 50% memory usage of Prometheus shards in our case.
If any shard(all replicas) is down, Coordinator can assign targets to health shard immediately.
Coordinator known anything about service discovery and has correct result of /api/v1/targets, it also known the distribution of all targets, we will add some API and expose metrics for debugging in next release.

@bwplotka Thanks! I think add page similar to https://thanos.io/tip/operating/reverse-proxy.md/ is good, could you please tell me where to add it ? (-:

I would add some page use-cases.md in operating menu. WDYT? (:

That sounds good! 👍
Anything i can help?

Of course! You are more than welcome to create PR with such a markdown page with your use case stated as one. Then team & community can add more items for the basic use case and those more advanced :hugs:

Ok👌.

@bwplotka The PR is created ( - :


Extension issue

Issue Type: Bug
Extension Name: python
Extension Version: 2020.8.105045
OS Version: Windows_NT x64 6.1.7601
VSCode version: 1.48.2

:warning: We have written the needed data into your clipboard. Please paste! :warning:

Thanks for the bug report, but unfortunately we need some more information from you in order to triage this issue appropriately. Please edit your opening comment by providing a filled-in copy of our issue template. Once you are done please leave a comment to that effect.


[SPARK-3873] [core] Import ordering fixes.

Build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48688/
Test FAILed.

Test build #48689 has started for PR 10578 at commit c249989.

Test build #48689 has finished for PR 10578 at commit c249989.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48689/
Test PASSed.

Merged build finished. Test PASSed.

Test build #48782 has started for PR 10578 at commit c7bee0a.

Test build #48782 has finished for PR 10578 at commit c7bee0a.

This patch fails from timeout after a configured wait of `250m`.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48782/
Test FAILed.

retest this please

Test build #48799 has started for PR 10578 at commit c7bee0a.

Test build #48799 has finished for PR 10578 at commit c7bee0a.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48799/
Test PASSed.

Merged build finished. Test PASSed.

Yay. I'm gonna merge this before I have to fix more conflicts...


Minor fix in networkpolicy_controller_test.go

The same runtime.Object list cannot be used with both the standard K8s
client and the Antrea CRD client.

Ran into this issue today while writing some tests with @jakesokol1.

/skip-all
(only affects unit tests)


Improve exporter documentation

Adding trace exporter instruction
Added contributors file
Fixes #34

Codecov Report

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

@@           Coverage Diff           @@
##           master      #40   +/-   ##
=======================================
  Coverage   84.56%   84.56%
=======================================
  Files           6        6
  Lines         311      311
  Branches       38       38
=======================================
  Hits          263      263
  Misses         44       44
  Partials        4        4

Continue to review full report at Codecov.

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


Search Documents Samples issues

Section Link:

Suggestion:
Update indexer-hotels to async-indexer-hotels.
@jongio for notification.

Fixed in #14817


add internal load balancer for GKE

Will try to do a first pass by monday

@bprashanth i think this one has been waiting on you for a bit.

Serviceloadbalancer will already run in a pod in your kubecluster and watch the master for endpoint changes (https://github.com/kubernetes/contrib/tree/master/service-loadbalancer). If the vm dies, it gets rescheduled. Can you clarify when one would prefer this setup over just a  pod in the cluster?

recomputing cla status...

I signed it
Sent from my iPhone

On 22 Sep 2016, at 16:18, Kubernetes Submit Queue<EMAIL_ADDRESS>wrote:
[CLA-PING] @rimusz
Thanks for your pull request. It looks like this may be your first contribution to a CNCF open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
📝 Please visit https://identity.linuxfoundation.org/projects/cncf to sign.
Once you've signed, please reply here (e.g. "I signed it!") and we'll verify. Thanks.
If you've already signed a CLA, it's possible we don't have your GitHub username or you're using a different email address. Check your existing CLA data and verify that your email is set on your git commits.
If you signed the CLA as a corporation, please sign in with your organization's credentials at https://identity.linuxfoundation.org/projects/cncf to be authorized.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

[APPROVALNOTIFIER] The Following OWNERS Files Need Approval:

/

We suggest the following people:
cc @bprashanth
You can indicate your approval by writing /approve in a comment
You can cancel your approval by writing /approve cancelin a comment


chore(api): update firebase config for emulators

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


NullDeserializer may only be used to deserialize data that is null

run at example exception:NullDeserializer may only be used to deserialize data that is null
config:
private static Dictionary<string, object> constructConfig(string brokerList, bool enableAutoCommit) =>
new Dictionary<string, object>
{
{ "group.id", "advanced-csharp-consumer" },
{ "enable.auto.commit", enableAutoCommit },
{ "auto.commit.interval.ms", 5000 },
{ "statistics.interval.ms", 60000 },
{ "bootstrap.servers", brokerList },
{ "default.topic.config", new Dictionary<string, object>()
{
{ "auto.offset.reset", "smallest" }
}
}
};
===========
How to reproduce
Checklist
Please provide the following information:

[ ] Confluent.Kafka nuget version:
[ ] Apache Kafka version:
[ ] Client configuration:
[ ] Operating system:
[ ] Provide logs (with "debug" : "..." as necessary in configuration)
[ ] Provide broker log excerpts
[ ] Critical issue

This is not a bug, it's a feature! You would be trying to deserialize a key or value that has data. The null deserializer expects null, and considers it an error if it gets something else.
I plan to add a new deserializer IgnoreDeserializer, which will return null regardless of the data in the message.

IgnoreDeserializer has been added in 0.11.3