utils: avoid caching in 'paths' method

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes?
[x] Have you successfully run brew tests with your changes locally?

Description
Because paths is a global method, the instance variable used for the cache gets attached to whatever happens to be the receiver at the call site. This causes the creation of multiple caches and can additionally lead to inconsistent results if the environment is modified between calls to paths.
Fix by eliminating the cache as paths is not performance critical and is used in only two places throughout Homebrew:

Homebrew.external_commands
Homebrew::Diagnostic::Checks (by multiple methods of this class)

Discussion
To my knowledge, the issue addressed here doesn't currently affect any Homebrew code. However, it revealed itself while working on some yet-to-be-published improvements to Homebrew. The selected fix is the simplest and most effective while also giving what I believe to be the desired behavior.
An alternative is sketched in UniqMartin/brew@1e82bbf4982de2fa32327402614f5614c6b7a86c (paths-fix-cache branch). By moving paths to a module we get consistent behavior, but the cache is never invalidated, which breaks the test suite as it currently relies on the broken caching behavior. (Addendum: Getting this right will require some form of cache invalidation, either manually or by checking whether ENV["PATH"] has changed.)
Demonstration
The current (undesired) behavior as well as the behavior of the proposed fix and the alternative sketched above can be demonstrated with a short external command brew-paths.rb:
class Paths
  def dump; paths; end
  def self.dump; paths; end
end

ENV["PATH"] = "/usr/bin:/bin"
puts "PATH = #{ENV["PATH"]}"
puts "  fun: #{paths.inspect}"

ENV["PATH"] += "#{File::PATH_SEPARATOR}/usr/local/bin"
puts "PATH = #{ENV["PATH"]}"
puts "  fun: #{paths.inspect}"
puts "  cls: #{Paths.dump.inspect}"
puts "  obj: #{Paths.new.dump.inspect}"

ENV["PATH"] += "#{File::PATH_SEPARATOR}/sbin"
puts "PATH = #{ENV["PATH"]}"
puts "  fun: #{paths.inspect}"
puts "  cls: #{Paths.dump.inspect}"
puts "  obj: #{Paths.new.dump.inspect}"

Current situation (inconsistent and partially stale):
$ brew paths
PATH = /usr/bin:/bin
  fun: ["/usr/bin", "/bin"]
PATH = /usr/bin:/bin:/usr/local/bin
  fun: ["/usr/bin", "/bin"]
  cls: ["/usr/bin", "/bin", "/usr/local/bin"]
  obj: ["/usr/bin", "/bin", "/usr/local/bin"]
PATH = /usr/bin:/bin:/usr/local/bin:/sbin
  fun: ["/usr/bin", "/bin"]
  cls: ["/usr/bin", "/bin", "/usr/local/bin"]
  obj: ["/usr/bin", "/bin", "/usr/local/bin", "/sbin"]

Proposed fix (no caching, consistent and always up-to-date):
$ brew paths
PATH = /usr/bin:/bin
  fun: ["/usr/bin", "/bin"]
PATH = /usr/bin:/bin:/usr/local/bin
  fun: ["/usr/bin", "/bin", "/usr/local/bin"]
  cls: ["/usr/bin", "/bin", "/usr/local/bin"]
  obj: ["/usr/bin", "/bin", "/usr/local/bin"]
PATH = /usr/bin:/bin:/usr/local/bin:/sbin
  fun: ["/usr/bin", "/bin", "/usr/local/bin", "/sbin"]
  cls: ["/usr/bin", "/bin", "/usr/local/bin", "/sbin"]
  obj: ["/usr/bin", "/bin", "/usr/local/bin", "/sbin"]

Alternative fix (fixed caching, consistent but almost always stale):
$ brew paths
PATH = /usr/bin:/bin
  fun: ["/usr/bin", "/bin"]
PATH = /usr/bin:/bin:/usr/local/bin
  fun: ["/usr/bin", "/bin"]
  cls: ["/usr/bin", "/bin"]
  obj: ["/usr/bin", "/bin"]
PATH = /usr/bin:/bin:/usr/local/bin:/sbin
  fun: ["/usr/bin", "/bin"]
  cls: ["/usr/bin", "/bin"]
  obj: ["/usr/bin", "/bin"]

If possible, I hope we could rename this method. paths as a variable name has been used extensively throughout out the codebase. Therefore, it's confusing to have it as a global method.

If possible, I hope we could rename this method. paths as a variable name has been used extensively throughout out the codebase. Therefore, it's confusing to have it as a global method.

I agree and had to filter though a lot of uses as a variable to find the few callers of this method. I'm happy to extend this PR to include a rename of the method, if there's no objection to the PRs main change. (And I'd be glad to receive naming suggestions for that; the only passable names I can currently come up with are binary_paths or search_paths, but they are not really satisfying.)

I wonder whether it makes more sense to make it ENV.paths.

To my knowledge, the issue addressed here doesn't currently affect any Homebrew code. However, it revealed itself while working on some yet-to-be-published improvements to Homebrew.

I'd like to see these improvements before including this. As mentioned before, I don't really believe in speculative bugfixing and if the "yet-to-be-published improvements" don't get merged then this could break e.g. an external command or formula with no actual benefit to us.

FWIW, I don't believe uncache something will break anything. And I think avoid caching on a dynamic variable is a good call.

FWIW, I don't believe uncache something will break anything. And I think avoid caching on a dynamic variable is a good call.

@xu-cheng As you state yourself, you "don't believe" and @UniqMartin has this "to [his] knowledge". That makes this change alone not worthwhile to me but it may become worthwhile in the context of a larger change that requires it.
We're dealing with a legacy codebase here. Unless it's required for new functionality/features we need to be careful about changing the way code behaves (as opposed to just style).

I'd like to see these improvements before including this.

I'll submit them in due time, but they are not ready for public consumption yet. The bug fixed here was merely discovered while working on them, but has merit on its own and I'd rather not conflate a bug fix with a feature/refactoring, as this makes the latter harder to review.

As mentioned before, I don't really believe in speculative bugfixing and if the "yet-to-be-published improvements" don't get merged then this could break e.g. an external command or formula with no actual benefit to us.

I'm well aware of your views, but I disagree. This is not speculative, but an actual bug that doesn't seem to affect users out of sheer luck (and frankly because of the brokenness of the code). I went to great lengths to both describe and demonstrate the problem. If you don't agree that the current behavior is flat out wrong, then I don't know what to say.
This is an internal and undocumented API. If an external command or formula relies on it and relies on the current broken behavior, then it is most likely broken anyway. The benefit to us is that we'll have one less function in our code base that behaves unpredictably.

We're dealing with a legacy codebase here. Unless it's required for new functionality/features we need to be careful about changing the way code behaves (as opposed to just style).

I have carefully reviewed all uses of paths in the Homebrew/brew code base and tested this fix without observing any regression. Yes, this is a behavioral change, but if anything relied on this particular behavior it's broken for sure. (If you disagree, please provide an example where the current behavior does make sense and is desirable!)

I'll submit them in due time, but they are not ready for public consumption yet.

Would you care to tell us what they are?

The bug fixed here was merely discovered while working on them, but has merit on its own and I'd rather not conflate a bug fix with a feature/refactoring, as this makes the latter harder to review.

I don't think a single-line change of a few characters makes it harder to review.

I'm well aware of your views, but I disagree. This is not speculative, but an actual bug that doesn't seem to affect users out of sheer luck (and frankly because of the brokenness of the code). I went to great lengths to both describe and demonstrate the problem. If you don't agree that the current behavior is flat out wrong, then I don't know what to say.

When a bug does not affect users, again as I've said before, I think there's a lot of other things that do affect users that I honestly wish people would spend time working on but ultimately that's up to you.

An alternative is sketched in UniqMartin/brew@1e82bbf (paths-fix-cache branch). By moving paths to a module we get consistent behavior, but the cache is never invalidated, which breaks the test suite as it currently relies on the broken caching behavior. (Addendum: Getting this right will require some form of cache invalidation, either manually or by checking whether ENV["PATH"] has changed.)

I'd rather see a version that retains a cache and has manual invalidation. It may be worth putting in a new file rather than an inline module, though.

Would you care to tell us what they are?

If you prefer to be spoiled, sure. :wink: It's a refactoring of the command lookup/dispatch code. It centralizes the logic and eliminates several pieces of  duplicated code between brew.sh, brew.rb, cmd/command.rb, cmd/commands.rb, cmd/help.rb, and cmd/man.rb (all of which have to look up or list commands to some extent or perform other command-related tasks). This work was additionally motivated by:

https://github.com/Homebrew/brew/pull/10#discussion_r59028717
https://github.com/Homebrew/brew/pull/10#discussion_r59029578
https://github.com/Homebrew/legacy-homebrew/pull/49184#discussion_r52888206
https://github.com/Homebrew/legacy-homebrew/pull/44999#issuecomment-148464043

I don't think a single-line change of a few characters makes it harder to review.

I think it does, because it would be a refactoring vs. a loosely related bug fix. And if this PR has taught me anything, then there's no single-line change, even if carefully executed, explained, and demonstrated that doesn't have the potential to become controversial and distract from the main objective.

When a bug does not affect users, again as I've said before, I think there's a lot of other things that do affect users that I honestly wish people would spend time working on but ultimately that's up to you.

Indeed, up to me. Please correct me if I'm wrong, but despite not being among the more high-throughput maintainers I do my share of formula PR and bug wrangling and then also allow myself to work on things I'm passionate about, though they might not be immediately prompted by the needs of our users.

I'd rather see a version that retains a cache and has manual invalidation. It may be worth putting in a new file rather than an inline module, though.

That's definitely not my favorite solution because of the added complexity that doesn't seem to be warranted and feels like an act of premature optimization, particularly given that the function is currently only used by two of brew's sub-commands, both of which are not performance critical. That said, I can live with a caching alternative and the code I linked to was really just a rough sketch of this.

If you prefer to be spoiled, sure. 😉 It's a refactoring of the command lookup/dispatch code. It centralizes the logic and eliminates several pieces of duplicated code between brew.sh, brew.rb, cmd/command.rb, cmd/commands.rb, cmd/help.rb, and cmd/man.rb (all of which have to look up or list commands to some extent or perform other command-related tasks).

Ok, thanks, that sounds useful.

Please correct me if I'm wrong, but despite not being among the more high-throughput maintainers I do my share of formula PR and bug wrangling and then also allow myself to work on things I'm passionate about, though they might not be immediately prompted by the needs of our users.

Yes, that's true and fine.


Might be worth mentioning to check the status of your DNS in Health Check

URL to the Wiki page
https://github.com/qdm12/gluetun-wiki/blob/main/faq/healthcheck.md
What's missing?
After spending a couple of hours poking at the Health Check page, and not really having any love with getting my container fixed, I happened to notice that DNS resolution was not working in any containers.  A recent upgrade to my docker had caused my custom DNS settings to disappear, which caused DNS resolution to fail, which ... the only obvious thing blowing up was that my gluetun container kept failing healthcheck with cryptic errors.
Since no other containers were outwardly failing, the only thing I had to go on was that gluetun wasn't able to get to anything.  Dropping into a terminal, I was able to use the gluetun container to reach things by IP but not by DNS... so.. yeah.   Might be a tip worthy of passing on.

I don't have anything specifically configured.  DNS does not work in any of my containers unless I specify a dns server setting in the docker config.  Gluetun is the only piece of my stack that actually needs outbound DNS to function, though, as everything else mostly just talks internally using the built in network host names.
Since Gluetun was just continuously telling me to look at the healthcheck page, and the healthcheck page doesn't say anything about DNS, I thought I'd recommend adding something along the lines of "Check to make sure that DNS resolution inside the container actually works", since it's an easily overlookable problem that could fix the healthcheck.

I doubt this was the problem. Gluetun uses Unbound (for now) which goes through the tunnel. Even if, for example, your host or router would block DNS traffic, Gluetun's DNS would still work fine.

100% if I remove the dns setting in my docker config, none of my containers, including gluetun, can access DNS, and the gluetun healthcheck fails.  And none of the advice in the wiki page helps because the problem is completely external to gluetun.
As to why it works that way, I don't know, I configure the DNS in my docker config, then all my containers work correctly.  Perhaps it is something to do with running in WSL?  I don't know.  Just making a suggestion for a way to improve the docs, in that when I got name resolution working in docker, then the health check started working, so maybe it would be something to test for, that might save someone else from going through a couple of hours checking everything in the Wiki and being frustrated.


Laravel 5.4 support

Share method no longer exists in Laravel 5.4 application container
We should use singleton instead.

Any update on this? This is really needed.

There are no tests for this and I no longer work with PHP so can't confirm if this is correct or not.
I'm happy to merge if it doesn't conflict with anything and it can be confirmed as working inside a Laravel 5.4 app.

I can confirm that this is the right approach as seen in the docs here: https://laravel.com/docs/5.4/container#binding-basics

Thanks for the clarification @tomschlick

@marcqualie when you get a chance, can we get a 1.5 tag?


Did  you try put your layer on top a FCN？

Hi，
Did  you try put your layer on top a FCN？  I want to know will it works when connected to fcn.
Thanks

Hello, may I ask if you have implemented CRFasRNNLayer in FCN, how is it implemented? Thank you. @youguai @gyheart @MiguelMonteiro


Add concurrency, sort order flags

Adds two flags, concurrency and sort order, that gometalinter supports but flycheck-gometalinter doesn't (yet).
-j, --concurrency=16      Number of concurrent linters to run.
    --sort=none ...       Sort output by any of none, path, line, column, severity, message, linter.

Not sure if this PR is still relevant.


Doesn't Respect Base Tags.

After the page is loaded, only the BODY, and the TITLE tags are replaced. This breaks websites that use the BASE tag.

I’ve never really used the base tag.
Could you (or someone else) explain what’s wrong with the way InstantClick works related to base tags?
Disclaimer: The base tag isn’t used much, so InstantClick may never be adapted for it.


does not build on wsl2

if you build gardenlinux under windows -> wsl2 you get the following error
#### building diskimage
  found new fstab in base
  building rawfile
Error connecting to audit system.
make: *** [Makefile:175: metal] Error 1

seems to have problems with apparmor and maybe auditd.
since we are able to build under any linux, macos (are we?). the problems for wsl2 should be minimal

since we are able to build under any linux, macos (are we?).

yes, we are.

if you build gardenlinux under windows -> wsl2 you get the following error. the problems for wsl2 should be minimal

I can take a look if you wish. But this might take some time. Unfortunately, I do not have any Windows based systems. Therefore, I need to create one I initially to take a further look. Just let me know if this is fine for you.


Add Apptainer documentation

Link failures unrelated, merging

Are we at the point where we should add this to the table of contents by adding a line to mkdocs.yml and removing the Singularity doc from the table of contents with a note at the top pointing to the upgrading from Singularity section of this doc?

I didn't notice this question before.  No I think we should wait until Apptainer is released to update the table of contents.  Also at that time I plan to replace the singularity document with just a bunch of links to the corresponding apptainer document.

If you want to keep the page that sounds good, otherwise we can do entire page redirects: https://github.com/osg-htc/docs/blob/master/mkdocs.yml#L112-L115

I want to redirect individual sections, and the names aren't always the same between the two, so I think a page of manual forwards is better.


next version support backup&restore cmd

Hi chengshiwen
em, im curious about that, the next version plan，when could cluster instance support backup&restore command？its really useful to migrate the oss node to cluster node，about the export&import cmd，im afraid it would last huge time, whatever, im trying to test this way, hope this cmd would release soon in the future，thanks for your greatest contribution for opensource.

Please refer to Development Plans. The v1.10.5-c1.2.0 will be released shortly after v1.8.10-c1.2.0 is released, and the estimated date is at the end of this year. Additionally, there is a high probability that v1.9.13-c1.2.0 will be skipped directly.


Issue setting up with Linux for Windows: "AttributeError: 'NoneType' object has no attribute 'recv'"

Hi, I'm trying to set up hubcommander so I can do a PR. I've got Debian Wheezy on Linux Subsystem. I've done the following from scratch:

installed everything required
set up python-venv
run the basic_install without issues
set up rtmconf, activated the virtualenv, set up the exports
run rtmbot

I get the following stack trace when running the rtmbot command:
(venv) dylmye-debian@DYLMYE-HOME-PC:~/hacktober/python-rtmbot-0.4.0$ rtmbot
[-->] Enabling Auth Plugins
[✔] Completed enabling auth plugins plugins.
[-->] Enabling Command Plugins
[ ] Enabling Command Plugin: repeat
        [+] Adding command: '!Repeat'
        [+] Adding command: '!RepeatThread'
[+] Successfully enabled command plugin "repeat"
[ ] Enabling Command Plugin: github
        [+] Adding command: '!ListOrgs'
        [+] Adding command: '!DeleteRepo'
        [+] Adding command: '!AddCollab'
        [+] Adding command: '!SetDefaultBranch'
        [+] Adding command: '!SetTopics'
        [+] Adding command: '!ListPRs'
        [+] Adding command: '!GetKey'
        [+] Adding command: '!CreateRepo'
        [+] Adding command: '!SetRepoPermissions'
        [+] Adding command: '!ListKeys'
        [+] Adding command: '!SetHomepage'
        [+] Adding command: '!AddKey'
        [+] Adding command: '!DeleteKey'
        [+] Adding command: '!SetDescription'
        [+] Adding command: '!SetBranchProtection'
        [+] Adding command: '!AddUserToTeam'
[+] Successfully enabled command plugin "github"
[✔] Completed enabling command plugins.
Traceback (most recent call last):
  File "/usr/local/bin/rtmbot", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.5/dist-packages/rtmbot/bin/run_rtmbot.py", line 31, in main
    bot.start()
  File "/usr/local/lib/python3.5/dist-packages/rtmbot/core.py", line 99, in start
    self._start()
  File "/usr/local/lib/python3.5/dist-packages/rtmbot/core.py", line 86, in _start
    for reply in self.slack_client.rtm_read():
  File "/usr/local/lib/python3.5/dist-packages/slackclient/client.py", line 235, in rtm_read
    json_data = self.server.websocket_safe_read()
  File "/usr/local/lib/python3.5/dist-packages/slackclient/server.py", line 278, in websocket_safe_read
    data += "{0}\n".format(self.websocket.recv())
AttributeError: 'NoneType' object has no attribute 'recv'

Anything I'm missing out? Any additional information I can provide to help? Thank you!!

I have sometimes seen this error before, and it's a bit of a hair puller to debug.
I think it could be related to the system clock in the Docker not being set properly.

I'm not using Docker but this sounds like a clue - perhaps something to do with Debian on Linux Subsystem and system clocks.
As this stems from this function from python-slackclient is it worth raising an issue there or pinging someone from their team? :)

Can you verify that the system time on your Linux container is correct when you see this?
I believe users have brought that up to their attention, but nothing was patched AFAIK.

Not so familiar with checking this but running date provides the right date for my timezone

Looking at this issue from a product using the same library, perhaps we're missing some logs? Any log levels I can change in case I am actually getting slack login errors? :/

Oh interesting. IIRC, there is a DEBUG flag in the rtm conf file, which may help.

Found this in rtmbot.log:
2018-10-08 01:08:09,716 Initialized in: /usr/local/bin
2018-10-08 01:08:09,795 Starting new HTTPS connection (1): slack.com:443
2018-10-08 01:08:10,004 https://slack.com:443 "POST /api/rtm.start HTTP/1.1" 200 131
2018-10-08 01:08:10,007 Failed RTM connect
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/slackclient/client.py", line 140, in rtm_connect
    self.server.rtm_connect(use_rtm_start=with_team_state, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/slackclient/server.py", line 163, in rtm_connect
    raise SlackLoginError(reply=reply)
slackclient.server.SlackLoginError
2018-10-08 01:08:10,009 Loading plugins
2018-10-08 01:08:10,009 Importing hubcommander.hubcommander.HubCommander
2018-10-08 01:08:10,237 Plugin registered: <hubcommander.hubcommander.HubCommander object at 0x7f53672e9668>
2018-10-08 01:08:10,237 Registering jobs for HubCommander
2018-10-08 01:08:10,237 No jobs registered for HubCommander

I'm pretty sure that the token is correct but I'll have a deeper dig. Other than that, perhaps it would be useful to catch SlackLoginErrors if possible :) Possibly related to this issue


VCAP Services Credentials Null

I created an autoscaler service instance and bound my app to it.
When I execute cf env < MY APP> , I cannot find any the autoscaler service credentials.
 "VCAP_SERVICES": {
  "autoscaler": [
   {
    "credentials": null,
    "label": "autoscaler",
    "name": "portal-autoscaler",
    "plan": "autoscaler-free-plan",
    "provider": null,
    "syslog_drain_url": null,
    "tags": [],
    "volume_mounts": []
   }
  ]

Here is the link of the API document:
https://github.com/cloudfoundry-incubator/app-autoscaler/blob/develop/docs/API_usage.rst#api-endpoint
Any help would be appreciated!

which one did you deployed? the one on master branch (v1) that is a total Java Impl, or the one in app-autoscaler-release project which is a v2 rewriting?
If it is the latter, the public API is still in development... and it  will use the UAA oauth-token so you don't need credentials in VCAP_SERVICES any more.


[Documentation]  Missing documentation for security features.

Add documentation for below security features.

Audit logging configuration is hot reloadable and there are APIs and UI both available.
SSL certificates (for rest endpoint and N2N communication) are also hot reloadable and there are APIs available for same.
CRUD APIs for default configurations. (Default roles, users and role-mapping can be updated by super admin now).
Hot reloadable certificate domain names. (Now super admin can hot update certificate domain names for cross cluster use-case)
Separate certificate for a client and server for inter node communication. (Initiative and PR from twitter)

@hardik-k-shah: Do you have more infromation beyond subjects?

Any internal notes about how to perform each tasks?
A way to list or a list of API endpoints for audit logging, and CRUD configurations?
Example certificates for domains and inter-node communication?

Below PRs has a description about how to use these APIs.

Hot reloading SSL certificates: https://github.com/opensearch-project/security/pull/238
Hot re-loadable Audit logging: https://github.com/opensearch-project/security/pull/710 , https://github.com/opensearch-project/security/pull/409
Hot re-loadable nodes_dn/ certificate domain name: https://github.com/opensearch-project/security/pull/362
CRUD for default/reserved configuration: https://github.com/opensearch-project/security/pull/242
Separate Client and Server Cert configuration: https://github.com/opensearch-project/security/pull/493 https://github.com/opensearch-project/security/issues/474

Let me know if these helps.

Hi Chris, with all of the progress we've mad with security, can you check to see if we've covered any of these points? Thanks.

Hi @hardik-k-shah, Do you now if these items have been documented?

Security has been moved to a new team. I'll follow up with them and get this prioritized.

I can pick this one up with @leanneeliatra

Two PRs submitted:
Hot reloading TLS certs: https://github.com/opensearch-project/documentation-website/pull/6875
Separate client and server certificates: https://github.com/opensearch-project/documentation-website/pull/6881

I'm taking care of
3) Hot re-loadable Audit logging: https://github.com/opensearch-project/security/pull/710 , https://github.com/opensearch-project/security/pull/409
4) CRUD for default/reserved configuration: https://github.com/opensearch-project/security/pull/242
From the second list on this page, where the associated PRs are listed.

Thanks, @AntonEliatra! Here are the doc PRs:

[ ] 1) Hot reloading SSL certificates: https://github.com/opensearch-project/documentation-website/pull/6875
[ ] 2) Hot re-loadable Audit logging: in progress
[ ] 3) Hot re-loadable nodes_dn/ certificate domain name: in progress
[ ] 4) CRUD for default/reserved configuration: https://github.com/opensearch-project/documentation-website/pull/6927
[ ] 5) Separate Client and Server Cert configuration: https://github.com/opensearch-project/documentation-website/pull/6881

Please let me know if something is missing.

"Hot re-loadable nodes_dn/ certificate domain name" is already documented here
I spoke with @natebower and we don't think there is anything further needed here, but we can discuss further if you feel additional details are necessary

Hi Heather,
That's it! All correct thank you for the update. I'm working on no 2 and no 3 is resolved in another body of work. Perhaps you can link that PR/issue where the work was completed Anton and I'll be sending the PR for #2 Hot re-loadable Audit logging.
Thanks,
Leanne.

On 15-04-2024 18:05 IST Heather Halter @.***> wrote:
Thanks, @AntonEliatra https://github.com/AntonEliatra! Here are the doc PRs:

Hot reloading SSL certificates: #6875 https://github.com/opensearch-project/documentation-website/pull/6875

Hot re-loadable Audit logging: in progress

Hot re-loadable nodes_dn/ certificate domain name: in progress

CRUD for default/reserved configuration: #6927 https://github.com/opensearch-project/documentation-website/pull/6927

Separate Client and Server Cert configuration: #6881 https://github.com/opensearch-project/documentation-website/pull/6881

Please let me know if something is missing.
—
Reply to this email directly, view it on GitHub https://github.com/opensearch-project/documentation-website/issues/433#issuecomment-2057409007, or unsubscribe https://github.com/notifications/unsubscribe-auth/A7NMWXQTDN2C4TVIZJZKVTDY5QCEVAVCNFSM5QFBJVEKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMBVG42DAOJQGA3Q.
You are receiving this because you were mentioned.Message ID: @.***>

Kind Regards,
Leanne Lacey-Byrne
--
Eliatra
77 Lower Camden Street
D02 XE80 Dublin
Ireland
M: +353 89 976 4144
E: @.*** @.***
W:http://www.eliatra.com/

Thanks Anton you already did it! Super.

On 15-04-2024 18:09 IST AntonEliatra @.***> wrote:
"Hot re-loadable nodes_dn/ certificate domain name" is already documented here https://opensearch.org/docs/latest/security/access-control/api/#distinguished-names
I spoke with @natebower https://github.com/natebower and we don't think there is anything further needed here, but we can discuss further if you feel additional details are necessary
—
Reply to this email directly, view it on GitHub https://github.com/opensearch-project/documentation-website/issues/433#issuecomment-2057419338, or unsubscribe https://github.com/notifications/unsubscribe-auth/A7NMWXSLUGRFF4VU524FV73Y5QCV3AVCNFSM5QFBJVEKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMBVG42DCOJTGM4A.
You are receiving this because you were mentioned.Message ID: @.***>

Kind Regards,
Leanne Lacey-Byrne
--
Eliatra
77 Lower Camden Street
D02 XE80 Dublin
Ireland
M: +353 89 976 4144
E: @.*** @.***
W:http://www.eliatra.com/

For this part of this ticket: Audit logging configuration is hot reloadable and there are APIs and UI both available.
These changes seem to be added to the docs already.
The 2 PRs linked are:

Provide default audit.yml to enable hot reloading of audit configuration #710
Hot reloading audit configuration #409

To display where this work was documented: "Audit logging configuration is hot reloadable and there are APIs and UI both available."
This line was added 8 months ago to the docs: After this initial setup, you can use OpenSearch Dashboards to manage your audit log categories and other settings. In OpenSearch Dashboards, select Security and then Audit logs., which covers the request to add in documentation for accessing the audit logging via the UI made in 2022.
For the documentation to cover the ability to update audit logs via the API, this was added to the docs 11 months ago and details the steps with examples given. See this section on audit logs examples

Hi Heather,
I have some updates for this issue and the final 2 remaining items in my name.

Hot re-loadable Audit logging.
After investigation, I have found this is already documented in the docs with new additions to the documentation 8 months and 11 months ago. I have added a comment https://github.com/opensearch-project/documentation-website/issues/433#issuecomment-2061236538 on the ticket showing where the updates to the docs can be found.

CRUD for default/reserved configuration: #6927 https://github.com/opensearch-project/documentation-website/pull/6927
The changes related to this PR were quite heavy, I have an idea of what was carried out but I had been hoping to speak to an original reviewer of the work to discuss and ensure I had the right picture. I will proceed with what I understand of the changes and we can hopefully get the opinion of Hardik Shaw or another original contributor once my updates to the documentation is ready.
Thank you,

Leanne.

On 15-04-2024 18:05 IST Heather Halter @.***> wrote:
Thanks, @AntonEliatra https://github.com/AntonEliatra! Here are the doc PRs:

Hot reloading SSL certificates: #6875 https://github.com/opensearch-project/documentation-website/pull/6875

Hot re-loadable Audit logging: in progress

Hot re-loadable nodes_dn/ certificate domain name: in progress

CRUD for default/reserved configuration: #6927 https://github.com/opensearch-project/documentation-website/pull/6927

Separate Client and Server Cert configuration: #6881 https://github.com/opensearch-project/documentation-website/pull/6881

Please let me know if something is missing.
—
Reply to this email directly, view it on GitHub https://github.com/opensearch-project/documentation-website/issues/433#issuecomment-2057409007, or unsubscribe https://github.com/notifications/unsubscribe-auth/A7NMWXQTDN2C4TVIZJZKVTDY5QCEVAVCNFSM5QFBJVEKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMBVG42DAOJQGA3Q.
You are receiving this because you were mentioned.Message ID: @.***>

Kind Regards,
Leanne Lacey-Byrne
--
Eliatra
77 Lower Camden Street
D02 XE80 Dublin
Ireland
M: +353 89 976 4144
E: @.*** @.***
W:http://www.eliatra.com/

Everything has been addressed except admin/superadmin roles  which is being addressed in https://github.com/opensearch-project/documentation-website/pull/7069 and has a separate issue assigned https://github.com/opensearch-project/documentation-website/issues/4646. Thanks, @leanneeliatra !


Enhance the unit test for GET_CERTIFICATE.

Add test_spdm_requester_get_certificate_case19 to verify that expiration certificates are detected and rejected.
Signed-off-by: Zhao, Zhiqiang<EMAIL_ADDRESS>

Looks good to me.


fix(trading): trading view localise time

Related issues 🔗
Closes #6913

I also cant test this because we dont have TV in previews.  So .... YOLO time.


fix: let vite handle resolving the config file

Vite provides its own config loading mechanism in build()(https://vitejs.dev/guide/api-javascript.html#build). It is possible to provide a configFile (https://vitejs.dev/guide/api-javascript.html#inlineconfig).
When configFile is undefined, it tries to resolve the default vite config paths.
There is no more need for a custom config loader.
Fixes<EMAIL_ADDRESS>breaks cypress-vite" #5

@DrJume Thanks for contribution.


Template saved when app closed.

Fixes issue #425
@opticod
Please review

Will soon start reviewing and merging the PRs. Thanks.


Opaque zero / opaque one idea: dot operator

For two vectors, v1 and v2 of the same length:

If v1[i] != 0 <=> v1[i] = 0 then dot(v1, v2) = 0.  This requires all non-zero components are finite (no infinities, no NaNs).  So we could simplify things to construct vectors that are 0 or 1 everywhere, and never 1 in the same place.

If v1[i] = v2[i] = 0 for all i different from some single index j, and if v[j] = v[i] = 1, then dot(v1, v2) = 1.

Fixed by #642.


Use of Array.prototype.includes breaks unit tests in browsers that do not support this.

Version
1.0.0-beta.16
Reproduction link
https://codesandbox.io/s/7ykvrxrw0
Steps to reproduce

Download codesandbox codes.
Run tests on IE11 with karma.

What is expected?
Tests should pass or fail, but not be terminated.
What is actually happening?
Test is terminated due to "TypeError: Object doesn't support property or method 'includes"

Same as https://github.com/vuejs/vue-test-utils/issues/499 which reports use of 'Array.prototype.find'.
The specific line is:
https://github.com/vuejs/vue-test-utils/blob/v1.0.0-beta.16/packages/test-utils/src/wrapper.js#L519
Array.prototype.includes supported browsers:
https://caniuse.com/#search=Array.prototype.includes

Thanks for the issue.
Would you like to make a PR replacing includes with an alternative?

@eddyerburgh Sure I will.
I found findIndex too that is not supported in IE..

We can't run tests against ie11 on CircleCI.
One solution would be to use eslint-compat to check for methods that aren't supported in ie11.

I think it resolve this issue to use babel instead of buble.
It uses Runtime transform.
It sets the targets is ie == 11.

The decision to use buble was because it generates more readable output.
We could revisit and compare the output to seen if babel output is readable enough.

This issue is fixed and will be in the next release.
I think we should keep buble for now, although we can reinvestigate when we move the repo to typescript.


Using T-Beam V1.1: How to select the right board

Hi,
I have compiled and installed the software on a T-Beam V1.1 without display. The monitoring shows:
"Board TTGO_LORA32_V1 loaded", but I would have expected a "TTGO_T_Beam_V1_0" instead.
The quick start guide mentions, that I have to select the right board in the status bar at the bottom, but the required "env:ttgo-t-beam-v1" is not listed as an option (and also not in the platformio.ini). So I am a little bit lost currently.
Thanks,
Peter

After stepping through the source code, I found that I have to add
"board": "TTGO_T_Beam_V1_0"
into the file is-cfg.json to enable the device. I also addeAfter stepping through the source code, I found that I have to add
"board": "TTGO_T_Beam_V1_0"
into the file is-cfg.json to enable the device. I also included
[env:ttgo-t-beam-v1] board = ttgo-t-beam build_flags = -Werror -Wall
into the file platformio.ini (not sure whether this is really needed.
Please let me know there is a better way to solve it.

do you have an oled attached to the board? if not, the firmware has issues to find the correct board sometimes. In this case it is totally okay to add the mentioned line to the json config.
you do not need to change something in the ini-file as the firmware will try to find the correct board configuration for you.


traverse run in reverse order

I tried to do: given a list of functions which return tasks, run given tasks sequentially, and return  the task of a list of returned values.
For the following case, I expected to output: 1 2 3, but it outputted: 3 2 1.
const {task, of} = require('folktale/concurrency/task') // using folktale 2.x
const buildTask = (n, ms) => task(({resolve}) => setTimeout( ()=> {
		console.log(n)
		resolve(n)
	}, ms
))

test('sequentially', async () => {
	const {List} = require('immutable-ext')

	await List.of(
		() => buildTask(1, 500),
 	      	() => buildTask(2, 0),
		() => buildTask(3, 1000)
	)
	.traverse(of, f => f())
	.map(x=>x.toArray())
	.run()
	.promise()
})

if I change the following code, it gave me 1 2 3, which is what I expected.
List.prototype.traverse = function(point, f) {
	return this.reduce((ys, x) =>
		// f(x).map(x => y => y.concat([x])).ap(ys), point(this.empty))
		ys.map(x => y => x.concat([y])).ap(f(x)), point(this.empty))
}

Not sure it is a issue, or by design.

Hrmm, this is interesting. Would you mind making a pr? Also, i've never seen run() or promise() yet. Is that part of immutable?

I will make a pr soon. The run() and promise() are part of folktale 2, the next version.of data.task. check their homepage.


AMBARI-24412. Unit tests for federation step 4 controller

What changes were proposed in this pull request?
Unit tests for federation step 4 controller
How was this patch tested?
manually, unit
Please review Ambari Contributing Guide before opening a pull request.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/3479/
Test PASSed.


Text Webparts: Automatic conversion of CK4 pages to CK5 pages screws up table formatting

Target SharePoint environment
SharePoint Online
What SharePoint development model, framework, SDK or API is this about?
SharePoint CSOM
Developer environment
Windows
What browser(s) / client(s) have you tested

[ ] 💥 Internet Explorer
[ ] 💥 Microsoft Edge
[X] 💥 Google Chrome
[ ] 💥 FireFox
[ ] 💥 Safari
[ ] mobile (iOS/iPadOS)
[ ] mobile (Android)
[ ] not applicable
[ ] other (enter in the "Additional environment details" area below)

Additional environment details

Chrome Version 116.0.5845.97 (Official Build) (64-bit)

Describe the bug / error
What's this about?
This report is about (automatically created) modern pages that are stored in the Site Pages library and that are showing tables with screwed up layout when going into edit mode.
How are those tables created?
The pages in my case are created using the PnP Provisioning engine and contain a variety of content, and also tables.
How does SharePoint render those pages in the browser? And what changed?
SharePoint uses the CKEditor to display its text web parts in the browser.
Up until recently the CKEditor version 4 (CK4) has been used. This seems to be slowly transitioning to version CKEditor version 5 (CK5). There have been changes to the pnpcore repo as well (by @jansenbe), allowing to choose whether to create CK4 or CK5 pages.
Note: Looking at the HTML for tables there has been a change from using a div as wrapper element (in CK4) to using a figure as wrapper element (in CK5).
How is the transition from CK4 to CK5 performed?
The question how pages are transitioned from version CK4 to CK5 so far has been unanswered, until today. I played with the page versions and noticed the following:
When a CK4 page is going into edit mode, the page flickers more than usual.  Digging into the network traffic shows that those pages were "upgraded" from CK4 to CK5.
Proof of table screwage
I captured two videos, showing the effect.
Here is a CK4 page, with a table, entering edit mode:
https://github.com/SharePoint/sp-dev-docs/assets/3469970/6d136883-d94b-4463-927f-240cd740956d
Notice how the table looks in the end. This used to work properly with CK4.
To emphasize the effect, I reverted the page and throttled the browser to "fast 3g". Same page.
Here's the surprising result:
https://github.com/SharePoint/sp-dev-docs/assets/3469970/8fd8d25d-0bd3-400c-9198-54339c299c0d
After entering edit mode, you can see something clearing the page. The table is there for a moment, then gone. Then reappears, formatted badly. But what happened then surprised me because in the last moment - the table snapped into place. So this is not the video restarting - it's the table making "plop" and looking good again. Not sure if my mouse movement over the table triggered something.
This is on a developer tenant.
Edit: After pressing F5 on the converted, saved page, the table looks like this:

How to know those pages have been converted to CK5?
Looking at the network traffic there are calls to the SavePage endpoint. The payload carries the content version, which indicates CK5.
I double checked with pages on another tenant where pages live that have been created the same way as our page here. Those pages behaved well when being edited. The tables stayed put, no change. Looking at the network traffic showed that the content version for those pages stayed at 4, indicating CK4.
So there is a difference in behavior between tenants.
Interpretation
I see (so far) well-behaved pages that get mangled when being transitioned from CK4 to CK5 format. Furthermore the videos above show that this might be a timing issue in the (JavaScript-based?) converter, since slowing down things created a well-behaved table on the CK5 page as well.
Note that "so far well-behaved" means that they could be edited properly without the tables being altered in such a way as seen in the videos.
I'd really like some input here.
Steps to reproduce
The effort to reproduce this is quite high. I'd have to create a PnP PowerShell that provisions a page that behaves as shown. And you would have to use two tenants with different behaviors to show the regression. I can do that (well, the first part) but hope to get some input before on the issue, from somebody saying "yeah, we're still fiddling around".
Edit: I assume the HTML structure of the text web part might be helpful.
Here's the HTML copied from Chrome when displaying the table before being converted, in view mode:

                            First
                            Second (manually widened)
                            Third

Here's the HTML copied from Chrome when displaying the table after being converted, in view mode, with table layout mangled:

                <colgroup>
                    <col style="width:12.24%;">
                    <col style="width:85.72%;">
                    <col style="width:2.04%;">
                </colgroup>

                        First
                        Second (manually widened)
                        Third

Edit edit: looking at the figure - the width:98px does not seem right...
Expected behavior
I expect the pages that worked well in CK4 mode (when being viewed, AND edited) to also behave well in CK5 mode.
My test was about tables. But who knows what else lurks there.

Note: the div-based tables are created by the PnP modernization library as well, so modernized SharePoint on-prem pages might be affected, too:
https://github.com/pnp/pnpcore/blob/cb4f31c3cb5918ac2f74be95b4635894ae32338b/src/sdk/PnP.Core.Transformation.SharePoint/Services/HtmlTransformator.cs#L296-L303
https://github.com/pnp/pnpcore/blob/cb4f31c3cb5918ac2f74be95b4635894ae32338b/src/sdk/PnP.Core.Transformation.SharePoint/MappingProviders/SharePointHtmlMappingProvider.cs#L241-L248

Hi @heinrich-ulbricht , we are currently aware of this issue and the product group is taking a look at it. It sounds like this is an issue with the CK5 upgrade, rather than PnP, per se, so this isn't necessarily the best place for this ticket. We appreciate the report, though.


Early stopping

Implemented early stopping, according to relative tolerance. Nothing sophisticated here -- it just compares the absolute relative difference between the current and last GLL to the threshold value. Also added a test.
Hopefully the formatting is correct; I attempted to make a pull request but it failed continuous integration. I'm not sure how to ensure this prior to making the pull request, though.

@cunningjames Awesome! I'll do a review of this tomorrow. It's passing CI but needs a review to be mergable.


[F] The lobby creator should be allowed to kick people out of the lobby before the game starts

#65

Kick feature implementation is temporary fix, might have to be changed if changes in backend occur
https://github.com/sopra-fs23-group-13/meme-it-client/commit/00b216dc0b65033d5fb56fb0124f35f09d41f906


How to change the default workspace on windows?

change file jupyter_lab_config.json? it doesn't work
many thanks.

@dahaiaqsw each new session comes with its own workspace now. does that work for your use case?

closing since no response for long time.


Improve error when ledger is connected but Oasis app not open

If user has ledger open on main menu, and tries to open wallet from ledger:
Unknown ledger error : Unknown Status Code: undefined

we're working on improving this here:
https://github.com/oasisprotocol/ledger-js/pull/270/commits/19b4212d79e8beca115e7bcc463913f2495562f0

@lukaw3d, can you re-check if this is still an issue with @oasisprotocol/ledger 0.2.1?

@tjanez : @lukaw3d, can you re-check if this is still an issue with @oasisprotocol/ledger 0.2.1?

https://wallet.oasisprotocol.org/: Unknown ledger error : Unknown Status Code: undefined
https://wallet.stg.oasisprotocol.org/: Unknown ledger error : Unknown Status Code: undefined
http://localhost:3000/: Received : "Ledger App Version not supported", this can be a false positive, retry the operation, if the error persists, update the Oasis App on your Ledger.
(I have 1.8.2 installed)
(if I open the app, there's no error)

* (if I open the app, there's no error)

I think I have the same thing, where it doesn't work if you don't have the app open, and I have thought this was normal. didn't know that it comes as an app version issue.

same behavior on localhost with oasis app 2.3.1 installed

testing in the ledger-js example directly gives this:

from the common.js in that repo:
const ERROR_DESCRIPTION = {
...
  0x6e00: "Oasis app does not seem to be open",
  0x6f00: "Unknown error",
...
};

oh ok the error handling code (error-disregarding, I should say) in serializePath is wildly twisting the facts

This works well after newest ledger app update without "Pending Ledger review" step


Task outputs are wrongly detected in conjunction with filtered file trees

Under some circumstances, the outputs of a task may be detected as being empty. The circumstances are:

task A produces some output at a location.
task B has the parent of that location as an input in a filtered tree, excluding the location of the outputs of task A.
when task B reads the parent of the location, no files exist which are filtered out, especially the output of task A does not exist, yet.
the input snapshotting of B reads the parent of the output of A while the output of A doesn't exist, yet.
the input snapshotting of B finishes after A broadcasted the output locations it is going to change.
the input snapshotting of B finishes before A snapshots its outputs after running its action.

As a concrete example, we ran into this in our build in #20366.
The above situation existed for a longer time, though the problem becomes much frequent because of https://github.com/gradle/gradle/pull/19365, which causes Gradle to store intermediate complete snapshots in the VFS while it continues snapshotting a directory.

cc: @gradle/execution

Fixed via #20421.


feat: add check compatible func for primitive type

This PR is separated from  https://github.com/apache/iceberg-rust/pull/349, we need to check whether the partition value(Struct) is compatible(same) as the partition spec. https://github.com/apache/iceberg-rust/blob/e5c330478e05b1e7f9c371024fc70269aab34dc5/crates/iceberg/src/transaction.rs#L277
This PR adds the function to check compatibility for PrimitiveType.

It gives me a reflection that do we need the literal type like PrimitiveLiteral::Timestamp. Or we can just use PrimitiveLiteral::Long.🤔

cc @liurenjie1024 @Xuanwo @Fokko

Or we can just use PrimitiveLiteral::Long.🤔

Do we always need a specific type to represent logical types? If we convert Timestamp to Long, we still need to assign a type to ensure the entire pipeline recognizes it as a timestamp instead of just a plain Long.

Or we can just use PrimitiveLiteral::Long.🤔

Do we always need a specific type to represent logical types? If we convert Timestamp to Long, we still need to assign a type to ensure the entire pipeline recognizes it as a timestamp instead of just a plain Long.

Yes. I think that's why we introduce Datum.

Yes. I think that's why we introduce Datum.

Thank you for the reminder! It makes sense for me to remove it now.


Don't reconnect to an exited pane

A silly client (https://github.com/tuzig/terminal7/issues/71) can try and reconnect to a pane where the process already exited. Instead of honouring the request webexec should close the data connection.

There seems to be a deeper bug here. We're using ProcessState to figure out the if the process is alive. The problem is it's always nil.


g_ is being concealed as a backslash

The line https://github.com/kaarmu/typst.vim/blob/86e4fa8dcddd032f9fdbf04602417a8baac8fed3/syntax/typst-symbols.vim#L829 seems problematic to me because it causes, say, $g_1$ to be concealed as \1 which seems to not be correct.
Was this supposed to be something else? Looking at the nearby lines I have the impression that some of these mappings are nonstandard custom ones, or at least I cannot find them in https://typst.app/docs/reference/symbols/sym/. Of course I don't mind that, but it seems like redefining g_ shouldn't even be possible in math mode.
Sorry if I missed something, and thanks much for your work on this plugin which is great!

Thanks for finding this! Essentially everything in typst-symbols.vim has been autogenerated. It is all a bit messy and related concealment problems are currently more important, though if you go back a few PRs there is scripts for updating the symbols. If you want to, I'd be happy to accept a PR with updated symbols. Otherwise, it'll probably be some time before I get around doing it myself.


tuned build failing with "maximum recursion depth exceeded"

https://sentry.io/organizations/red-hat-0p/issues/1450159324/?project=1767823&query=is%3Aunresolved+recursion&statsPeriod=14d
Affecting: https://github.com/redhat-performance/tuned/pull/176
The logs don't make sense to me:
SRPM is ./tuned-v<IP_ADDRESS>.g73a4c0e-1.fc31.src.rpm
GET https://copr.fedorainfracloud.org/api_3/project?ownername=packit&projectname=redhat-performance-tuned-176 [200]
packit_service.worker.copr_build   There was an error while running a copr build:
maximum recursion depth exceeded while calling a Python object

The whole strack trace would be lovely

Looks like that all the prod builds now fail with this - what happened? how?

The link to the related event in sentry since the issue contains all copr-related problems:
https://sentry.io/organizations/red-hat-0p/issues/1450159324/events/95d65fb39e3245dbb60fdee2c7bbc4ee/

So, the error message was coming from copr, right?
We just need to update our code to make it clear that the error message is not ours.

https://bugzilla.redhat.com/show_bug.cgi?id=1838481

Shall we close this?


Revert "clean up requirements, prep for koa"

Reverts appsembler/tahoe-sites#33
Tox fooled us and we thought that tests are running, but actually, it was crashing and reporting tests as passed!

I've created a fix tests PR instead https://github.com/appsembler/tahoe-sites/pull/38


Control the push timing of xds configuration instead of real-time push in gateway mode

Describe the feature request
We use envoy as our gateway and istio as envoy’s control plane in the production environment.But there are the following problems:

We have made customized development, but once there are small features that are not compatible with envoy, the entire xds configuration will be rejected by envoy.
crd configuration such as virtualservice, destinationrule will be affected in real time if it is misused or deleted, resulting in online service 503 or 404
Pilot OOM is caused when the online endpoint changes on a large scale. At this time, pilot is pushing the xds configuration, and the xds configuration is updated partly, causing envoy to go down

I think The gateway is important and stable, and it should not change configuration frequently. And the problem of the control plane should not affect the data plane, the control plane and the data plane should be isolated.
We are willing to exchange endpoint inconsistencies at certain intervals in exchange for stability.
Therefore, I envisage expanding the functionality of gateway crd and adding configuration synchronization policy fields. It has the following strategies:

Real-time synchronization
Timed interval synchronization
User triggered synchronization

User triggered synchronization can be triggered by an external custom trigger. For example, when changing the production environment, the user can suspend the synchronization of the pilot configuration by implementing a custom trigger. Different logical gateways decide the timing of synchronization configuration according to the strategy.
Describe alternatives you've considered
Affected product area (please put an X in all that apply)
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[x] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Affected features (please put an X in all that apply)
[ ] Multi Cluster
[ ] Virtual Machine
[ ] Multi Control Plane
Additional context

User triggered synchronization

This doesn't make sense to me. If you don't want the Gateway/VirtualService pushed to the proxies, then why did you even create it? Just create it when you want it

Timed interval synchronization

This is already supported to some extent, see PILOT_DEBOUNCE_AFTER


MAINT: fix typo in quadpack.py closes #11448

Reference issue
closes #11448
What does this implement/fix?
add a missing -

Merged, thanks @felixhekhorn


Quarry Suggestion

Make it so that the quarry does not need to mine air blocks and skip directly to where it can mine.
Ps. also make it that it can mine leaves.

There is a limit to how fast I have make the quarry process blocks simply do to performance, though I have considered making the quarry get 'extra mining speed' when passing through air.
You can download the config  and increase the quarries' mining speed directly.

Is it possible check check every layer in each row / column / or check individual blocks every tick to check if the block is Air (could be Lava or Water ¯_(ツ)_/¯). It might not be good for performance, but we can at least make it a feature or smth that is toggleable in configs? It's worth a shot


Cannot read properties of undefined (reading 'seconds') error during execution

Current behavior
I am receiving the following error when executing my tests since today. At this time, I won't be able to put the project on a repo for you to reproduce, but I can help get you any logs if you need so.
Error

Stack Trace
at duration ([node_modules/@badeball/cypress-cucumber-preprocessor/lib/create-tests.js:56:1](https://webstaging4.storymagic.co/__/#))     at Context.eval ([node_modules/@badeball/cypress-cucumber-preprocessor/lib/create-tests.js:395:1](https://webstaging4.storymagic.co/__/#)) From previous event:     at Context.thenFn (https://webstaging4.storymagic.co/__cypress/runner/cypress_runner.js:153485:64)     at Context.then (https://webstaging4.storymagic.co/__cypress/runner/cypress_runner.js:153937:22)     at Context.<anonymous> (https://webstaging4.storymagic.co/__cypress/runner/cypress_runner.js:171678:20)     at <unknown> (https://webstaging4.storymagic.co/__cypress/runner/cypress_runner.js:170365:16) From previous event:     at CommandQueue.runCommand (https://webstaging4.storymagic.co/__cypress/runner/cypress_runner.js:170344:18)     at next (https://webstaging4.storymagic.co/__cypress/runner/cypress_runner.js:170496:20) From previous event:     at next (https://webstaging4.storymagic.co/__cypress/runner/cypress_runner.js:170496:40)     at next (https://webstaging4.storymagic.co/__cypress/runner/cypress_runner.js:170462:17)     at <unknown> (https://webstaging4.storymagic.co/__cypress/runner/cypress_runner.js:170525:17)
Versions

Cypress version: 10.3.0
Preprocessor version: 12.0.0
Node version: 16.16.0

Checklist

[x] I've read the FAQ.
[x] I've read Instructions for logging issues.
[x] I'm not using<EMAIL_ADDRESS>(package name has changed and it is no longer the most recent version, see #689).

No reproducible example = no bueno, this should be pretty clear by now. I can't fix a problem I can't see.

@badeball Here you go https://github.com/kiran-epic/CypressCucumber_ExceptionWithAwait
I was able to find the root cause of the issue. Happens when you use await keyword under certain circumstances.
Let me know if you need additional information

Using async/await isn't supported in Cypress, period. You shouldn't use it at all. There's some heuristic implemented to track this and warn you, but it's flaky at best. You can see that your example (last test), yields different results in run-mode and open-mode.


Error in mimetype file - but it contains right string

I've written a tool, AkashaEPUB, to generate EPUB3's and am using epubcheck as one of the validation tools that I've done the right thing.
The only message being printed is:
$ java -jar /usr/bin/epubcheck guide.epub
Epubcheck Version 3.0.1

ERROR: guide.epub: Mimetype contains wrong type (application/epub+zip expected).
Validating against EPUB version 3.0

Check finished with warnings or errors

Funny thing is the mimetype file contains the expected text.
$ cat out/mimetype
application/epub+zip

The file has ONLY that text - no line feeds etc.  If I add a line feed, there's another message printed about how the file must ONLY have this mimetype text and nothing else.
The file is written with Node.js code like this:
fs.writeFile(path.join(config.root_out, "mimetype"), "application/epub+zip", "utf8", next);

In other words, it's telling the OS to make it a UTF-8 file, in case that makes any difference.

I've been ignoring the issue - but the Apple iTunes book store is rejecting my EPUB because of this Error.

Sounds like you’re probably getting extra headers when you zip the epub. Does the mimetype file name start at byte 30 and the value at byte 38?
Matt
From: David Herron<EMAIL_ADDRESS>Sent: April 28, 2015 9:17 PM
To: IDPF/epubcheck
Subject: [epubcheck] Error in mimetype file - but it contains right string (#530)
I've written a tool, AkashaEPUB, to generate EPUB3's and am using epubcheck as one of the validation tools that I've done the right thing.
The only message being printed is:
$ java -jar /usr/bin/epubcheck guide.epub
Epubcheck Version 3.0.1
ERROR: guide.epub: Mimetype contains wrong type (application/epub+zip expected).
Validating against EPUB version 3.0
Check finished with warnings or errors
Funny thing is the mimetype file contains the expected text.
$ cat out/mimetype
application/epub+zip
The file has ONLY that text - no line feeds etc. If I add a line feed, there's another message printed about how the file must ONLY have this mimetype text and nothing else.
The file is written with Node.js code like this:
fs.writeFile(path.join(config.root_out, "mimetype"), "application/epub+zip", "utf8", next);
In other words, it's telling the OS to make it a UTF-8 file, in case that makes any difference.

—
Reply to this email directly or view it on GitHub https://github.com/IDPF/epubcheck/issues/530 .

No virus found in this message.
Checked by AVG - www.avg.com http://www.avg.com
Version: 2015.0.5941 / Virus Database: 4339/9647 - Release Date: 04/28/15

Ah...  Here's a dump of the start of the the EPUB contents.  The filename is at byte 30, and that 'K' is at byte 38.    So I need to see how to add that file w/o compression, it seems.

Yup, that was it.  Successfully changed my code to not compress that one file and now there are no errors.
SUGGESTION: Mebbe epubcheck could detect this condition and give a more meaningful error?

hi robogeek,
How was you change your code without compress?
Can you please drop the code for me?

It was fine, and I thought this issue had already been closed.


[build][misc] remove nvidia runtime docker base image

try to fix https://github.com/vllm-project/vllm/issues/5635
ideally we don't rely on anything from nvidia runtime image. see how it works.

cc @simon-mo I think this should be doable. I will fix the error later.

Sounds like good plan.

I tested the built image, and it works from my side. the failure might be related with the base image used in ci:
https://github.com/vllm-project/buildkite-ci/blob/8d26857d32c36925e04c17aa717840095326d27f/infra/aws/main.tf#L85
Deeper investigation is required in the future. Let's revisit later. We will deprioritize it now.


This work does not outperform a Vanilla LSTM, given you sample one trajectory ?

Looking at the table 1 of your paper and under the column 1V-1, where you sample one trajectory and your numbers are actually potentially comparable to a Vanilla LSTM, since only in this case it is a fair comparison. This SOCIAL GAN work gets outperformed by a Vanilla LSTM ? Secondly, Alexandre Alahi the last author of your work and the first author of Social LSTM could not reproduce the Social LSTM results himself ? Could you please comment on these aspect ? No disrespect intended.

For the second part, they have mentioned that a synthetic dataset was used in the original Social LSTM paper. This synthetic dataset was generated using a simulation. But the Social GAN paper does not use any synthetic data and trains on real data from scratch.

It's unfair to say that this work gets outperformed by Vanilla LSTM (Ref Table 1 in the paper for the discussion below).
LSTM vs SGAN 1V-1: This is basically LSTM vs Encoder-Decoder made from LSTM trained with adversarial loss. Also we discuss this in the paper: SGAN-1V-1 performs worse than LSTM as each predicted sample can be any of the multiple possible future trajectories. The conditional output generated by the model represents one of many plausible future predictions which might be different from ground truth prediction.
LSTM vs SGAN 1V-20: Just sampling more from the model without variety loss does not ensure good sample variety. Again, as discussed in the paper: GANs face mode collapse problem, where the generator resorts to generating a handful of samples which are assigned high probability by the discriminator.
Both the issues you raise have been addressed in the paper.

@ashar-ali  I have read the paper in some detail, I am well aware of this sentence which makes it a bit more unjustified. The author of Social LSTM[1] is a co author in this work and synthetic data is generated free of cost (automatically). ** The authors of Social GAN generated synthetic data themselves to demonstrate the effectiveness of poolingin Social GAN** (We would like to highlight that even though these scenarios were created synthetically, we used models trained on real world data.), but they did not use it to compare with social LSTM ? There is absolutely no point in not reproducing the results. I mean guys what is going on ?
In this work Social LSTM is inferior to a trivial Vanilla LSTM.  Just go through Social LSTM[1] and have a look at the margin it outperforms LSTM. @agrimgupta92  If you could kindly touch this aspect ? If results reported in Social LSTM are wrong, I am sure you had a discussion with Alahi regarding this aspect?
@agrimgupta92 Not really, the original Vanilla LSTM 1, proposed by your colleague basically sampled the next point through a Gaussian. Where as in the case of your work the Vanila LSTM is directly regressing the point, or at least this is the impression one gets out of reading your work. Now, you are giving more samples to your method to sample from and this advantage is not provided to Vanilla LSTM ? Imagine a case where there are a car is standing at a junction with 20 potential future routes, and relate it to the problem here ? Could you perhaps comment. I mean reading your response one gets the impression that one might stumble upon the parameters by luck but really using of adversarial training in this case is not really motivated in my humble opinion.
Please take it as a fruitful discussion from somebody who is student of the field.
Alahi, Alexandre, et al. "Social lstm: Human trajectory prediction in crowded spaces." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016.

The quoted line is taken out of context (it is possible that on reading the paper it is unclear what we meant by synthetic in that context) . That line was specifically referring to the trajectories in Figure 5 of the paper. If you take a look at Figure 5 the scenarios don't require us to use human trajectory simulators based on Social Forces (it's trivial to make the input shown in Figure 5). The figure shows common "social" scenarios which our model learns.  However, in contrast the Social-LSTM paper states they used a synthetic dataset for training which was generated using a simulation that implemented the social forces model.
Our LSTM baseline does not output gaussian parameters so we can't sample multiple times. Let's assume hypothetically we implement an LSTM baseline like social-LSTM paper. Now, even if you output 20 samples around 68% samples will lie within 1 standard deviation of the mean. But in case of our method we are decoupled from the "mean" trajectory. Training using variety loss ensures that the 20 samples drawn cover all possible scenarios which can happen given the input trajectory. This is strictly better than what you could achieve even if we sample multiple trajectories from a LSTM (like Social LSTM paper).
Finally, this repo is about Social-GAN I welcome critique and comments on the code and the paper. However, if you want clarifications regarding Social-LSTM I am not the best person to do so. You should contact the first authors of that paper.

Its strange to say the least.

You are using ground truth during test time (during prediction interval) (Cardinal sin of trajectory forecasting).  You use ground truth to take the "best" trajectory.  No other approaches (LSTM, Social LSTM, LTA, SF etc.) uses ground truth during test time (prediction interval). Its a complete unfair comparison and you are giving unfair advantage to your approach by using ground truth during test time.
So my argument is the following. Why you are predicting 20 trajectories with SGAN, why not predict 20,000 trajectories with a random regressor and for each next time step use the l2 distance with the ground truth to take the one which gives the lowest error? You will end up either with ground truth trajectory or an extremely as your colleagues say "Social" trajectory, Figure 4 of your own paper illustrate it and still its hard for you to understand why someone is complaining about unfair comparison. I mean I do not want to be overly harsh, I give you the benefit of doubt, probably still there is something I missed or I miss understood. Although, I checked the code as well. There are a few eager students waiting for your response as well.
Regarding the LSTM with the Gaussian, so keep in mind during inference you input the predicted point to the LSTM machine and this dictates your next Gaussian distribution, therefore if you have sampled in the last time step a point that is deviating from the over all direction of the trajectory, you will end up in a extremely high error magnitude. Imagine the classical drifting problem/effect in Machine Learning. Just to give you an estimate (basically qunatifying your hypothesis), you can manage to bring down error roughly ~10-15 % if you run the bivariate gaussian LSTM on your datasets(Zara, UCY etc.) 20 times and take the best one. I am talking about the Vanilla LSTM . Refer to this paper as well [1].

In early 2000s their was a tracker (single object), I do not exactly remember the name and they were doing something running like experiment 100 time and taking the best and comparing it with the one ran single time.

I did not take the lines out of context, I did explicitly mention that you guys used synthetic data for demonstrating pooling approach (which basically at the end of your paper did not perform better than no pooling) . My point was and still is, if you can use synthetic data or you say we created a synthetic situation (hard to understand how one should interpret it), one could kindly request to go a step further to get some synthetic data and make sure other approaches are performing to their ability, I mean you use ground truth data for testing for you own approach, perhaps providing a synthetic data for training would have been less tedious.

Regarding the Social LSTM numbers, I understand you cannot comment, actually we were wondering that you perhaps could comment that what authors responded to you when you asked them, since they are/were at Stanford, in anyways I understand you cannot comment.
[1]Ronny Hug et al. On the reliability of LSTM-MDL models for pedestrian trajectory prediction

The focus of the paper is try to explain why it's beneficial to move away from just predicting ground truth trajectory. With that context I would like to clarify the evaluation concern you raised:
Due to the inherent uncertainty in predicting the future, it might be unreasonable to expect the
model to match the ground-truth trajectory with a single sample. We therefore draw a small number of samples from the model and choose the best fit to the ground-truth; [28] used a similar evaluation strategy. In practice any system which consumes the predictions from our model would not know the future ahead of time and hence would be better off drawing many samples and planning according to the distribution of possible futures; this evaluation caters to such usage. Moreover, even when we select the best trajectory from the samples the goal is to show that the sample set is diverse enough that with high likelihood it contains a trajectory close to GT as quantified by low ADE.

The question remains unanswered. How are your numbers comparable to all the approaches you compare against ? Which other approach beside yours, access the ground truth information during inference time ?  please address this question, I am asking it for the 3rd time.
Regarding [28], you do not compare against it. No other trajectory forecasting method which you cite uses this evaluation protocol.
Yours and your colleagues own TrajNet challenge does not allow this kind of evaluation
Here is a quick test, take a training set, cluster 10 trajectories make a linear model (not even a regressor ), during test time, assign each individual the "best" trajectory. You will see how well Social GAN performs wrt a linear motion model. You will have your answer, if 20 is a small number or not.

@agrimgupta92  Thanks for the efforts of trying social GAN, it's a great work anyway, at least it brought some interesting thoughts. However, I somehow agree with @AyeshaNirma. Although the problem is multi-modal,  when we compare against other methods, we should only produce 1 sample and see if the accuracy is increased.
Or we should a "multi-modal" evaluation tool, something like many acceptable ground truth trajectories, then the results make more sense (at least to me :)).

The Simpler the Better: Constant Velocity for Pedestrian Motion Prediction

@AyeshaNirma Thanks for pointing out the issues, I'm facing the same problems now. Did you find a better way to evaluate the model or a different solution to the problem of trajectory generation and evaluation?

@agrimgupta92 The work of this paper is well done. @AyeshaNirma Good question! I also have the same  confusion that why the author of this paper uses the best trajectory  prediction that is nearest to the ground truth trajectory out of so many prediction results. This is just like when you are doing a multiple choice question which has only one correct answer, other models only choose one answer, but you predict a lot of potential answers which are called "socially-acceptable", and finally when judging right or wrong, you did pick the one that is closest to the real answer in all your potential answers, and then claim that you make the right choice. This is definitely unfair to other models.  I hope the author of this paper can tackle this problem in evaluation.

This paper has some novelty. But publishing test time metrics conditioning on ground truth (which cannot be obtained in production) poses serious question regarding reproducibility and ability to generalize. Seems like the whole multi-modal trajectory prediction community is adopting this practice following this paper. Wonder if any conference reviewer and committee could rethink twice and offer any insight on how they think about this.
Glad that someone is willing to stand out with a comarision to classic time series baseline:
https://github.com/agrimgupta92/sgan/issues/44#issue-437688226
Here again a piece from Stanford adopting this practice:
https://github.com/HarshayuGirase/PECNet/issues/10#issue-718762449


does Sip.js also support react-native ?

willing to know Sip.js supports react-native or not ?
As i can see on the documentation this is not specified anywhere sip.js supports react-native or not,but i found following file link on the source code which is posted around 6 months ago so willing to know is Sip.js really support react-native or there is any way you can suggest if we have to implement on react-native.
https://github.com/onsip/SIP.js/blob/master/src/platform/react/react-native-webrtc.d.ts

Please use our google group for questions, we reserve this space primarily for bugs.


Fix: Do not export coordinate in mm if unavailable + test reader + py2 compatibility

This is a fix for a bug identified with @pwilliams1 and @chrisfilo when uploading the NIDM-Results packs corresponding to fsl_thr_clustfwep05 on NeuroVault.
The turtle file wrongly included a coordinateVector with a value of "null":
<http://iri.nidash.org/0ceaf71a-2ab9-4a57-bec6-478eaef20222> a nidm_Coordinate:,
        prov:Entity ;
    rdfs:label "Coordinate 3_02" ;
    nidm_coordinateVector: "null"^^xsd:string ;
    nidm_coordinateVectorInVoxels: "[39, 9, 2]"^^xsd:string .

This bug happens whenever a FEAT folder include coordinates in voxel space but not in mm. This type of results folder was obtained from a subject-level analysis with registration to standard space being done on an unrecognised template (issue with the path). We would have to check if this is also the case for single-subject analyses that are not transformed into a standard space.

Tests are passing with the SPM and FSL (https://github.com/incf-nidash/nidmresults-fsl/pull/93) exporters.

Now testing that the reader can extract excursion sets and statistic maps in all NIDM-Results packs stored at: http://neurovault.org/collections/1692/.

Tests are passing for the FSL (https://github.com/incf-nidash/nidmresults-fsl/pull/93) and the SPM (https://github.com/incf-nidash/nidmresults-spm/pull/35) exporters.

Released as nidmresults 1.1.0: https://pypi.python.org/pypi/nidmresults/1.1.0.


Map::eq() is not working as expected

This test fails:
let mut m1: Map<u8, i32, 10> = Map::new();
m1.insert(1, 42);
let mut m2: Map<u8, i32, 10> = Map::new();
m2.insert(1, 42);
assert!(m1.eq(&m2));

I believe, it must pass. Let's fix.

@rultor release, tag is 0.0.5

@rultor release, tag is 0.0.5

@yegor256 OK, I will release it now. Please check the progress here

@rultor release, tag is 0.0.5

@yegor256 Done! FYI, the full log is here (took me 3min)


[BUG]  export_tensorflow_model() does not generate config files properly for list columns

Describe the bug
When I run the export_tensorflow_model() func to generate model config files, I get the config files as below.
We can see that outputs do not have __values and __nnsz outputs  for categorical or numerical features (they are list output columns from NVT workflow) as in movielens_nvt config file. This config is not as expected.
name: "tf4rec_nvt"
input {
  name: "day"
  data_type: TYPE_INT64
  dims: -1
  dims: 1
}
input {
  name: "timestamp/age_days"
  data_type: TYPE_FP64
  dims: -1
  dims: 1
}
input {
  name: "timestamp/weekday/sin"
  data_type: TYPE_FP64
  dims: -1
  dims: 1
}
input {
  name: "item_id"
  data_type: TYPE_INT32
  dims: -1
  dims: 1
}
input {
  name: "category"
  data_type: TYPE_INT32
  dims: -1
  dims: 1
}
output {
  name: "category-list_trim"
  data_type: TYPE_INT64
  dims: -1
  dims: 1
}
output {
  name: "item_id-list_trim"
  data_type: TYPE_INT64
  dims: -1
  dims: 1
}
output {
  name: "timestamp/age_days-list_trim"
  data_type: TYPE_FP32
  dims: -1
  dims: 1
}
output {
  name: "timestamp/weekday/sin-list_trim"
  data_type: TYPE_FP32
  dims: -1
  dims: 1
}
parameters {
  key: "output_model"
  value {
  }
}
parameters {
  key: "python_module"
  value {
    string_value: "nvtabular.inference.triton.model"
  }
}
backend: "python"

Steps/Code to reproduce bug
Use Docker merlin-tensorflow-training:21.09. Follow the steps below:
cd /workspace

git clone  https://github.com/NVIDIA-Merlin/Transformers4Rec.git
cd Transformers4Rec
git fetch --all
git checkout tf/fix_graph_mode
pip install -e .
cd examples
jupyter-lab --allow-root --ip='<IP_ADDRESS>' --NotebookApp.token=''

**  launch jupyter lab on the browser then follow the steps:

First Run the getting-started ETL nb: https://github.com/NVIDIA-Merlin/Transformers4Rec/blob/main/examples/getting-started-session-based/01-ETL-with-NVTabular.ipynb
Second run the example TF notebook in this branch PR

if you get a numpy related error, downgrade the numpy to 1.19.5, do pip install numpy==1.19.5, restart the kernel and run the notebook again.

Add the following script at the end of the previous notebook = to save the model and export config files.

import nvtabular as nvt
workflow= nvt.Workflow.load('workflow_etl')
from nvtabular.inference.triton import export_tensorflow_ensemble

export_tensorflow_ensemble(model, workflow, "tf4rec", "/workspace/models/tf4rec", ['item_id-count', 'session_id', 'day-first'])

Expected behavior
Environment details (please complete the following information):

Environment location: [Bare-metal, Docker, Cloud(specify cloud provider)]
Method of NVTabular install: [conda, Docker, or from source]

If method of install is [Docker], provide docker pull & docker run commands used

Docker merlin-tensorflow-training:21.09
Additional context
The movielens NVT config file has _nnzs and __values outputs for the multi-hot categs whereas this does not occur in the workflow above with list column outputs. One potential different between movielens TF KerasSequenceLoader and Transformers4Rec model's KerasSequenceLoader is that in the latter we do have extra args for sparse features like below:
KerasSequenceLoader(
        paths_or_dataset,
        batch_size=batch_size,
        label_names=None,
        cat_names=x_cat_names,
        cont_names=x_cont_names,
        sparse_names=list(sparse_features_max.keys()),
        sparse_max=sparse_features_max,
        sparse_as_dense=True,
    )

This might create a confusion in the  export_tensorflow_model()  func, so it should be updated accordingly.

we can close since this was solved via this PR.


Remove duplicate $ from shell command

Signed-off-by: SADIK KUZU<EMAIL_ADDRESS><Explain your change!>
Remove second $ from shell command:

Did you sign your commit? Instructions
Yes
Have you read Contributing guidelines?
Yes

Hey, thanks for your contribution. This looks good.
I did a quick search in the project and noticed a couple other instances of this. Specifically I searched for “```.*\n$ ” (I used VS Code’s search in regex mode, 14 results). Would you mind removing the unnecessary dollar sign from these instances as well? That’d be great.

Hey, thanks for your contribution. This looks good.
I did a quick search in the project and noticed a couple other instances of this. Specifically I searched for “```.*\n$ ” (I used VS Code’s search in regex mode, 14 results). Would you mind removing the unnecessary dollar sign from these instances as well? That’d be great.

Hey @kleinfreund
Thanks for fast review. My pleasure 🙏🏼
Sure, I can handle all of these unnecessary dollar signs asap.


Suggestion: create an issue template for enhancements

From what I can tell, the GH issue tracker is the place to document requests for enhancements/features. In these requests, the format of the title is usually "As a user/dev/curator, I want blank".
It makes sense to me to have a separate issue template for these requests. This both encourages use of the title style and sets the label to "enhancement" instead of "bug" by default.

Let's mock the template here, perhaps it  should:

[ ] have a default As an X I need Y to do Z format in the title
[ ] encourage users to understand difference b/w this and the bug template?!
[ ] have a link to best practices for telling a "recipe" style story ("when I do a, and I have b, then I see c, and ... etc." )
[ ] include optional section for mockups/screenshots

others?

For feature requests, users should provide their use case so you can avoid the X Y problem

@LordFlashmeow writes:

For feature requests, users should provide their use case so you can avoid the X Y problem

Lovely, thanks for this! Yes, always a critical communication waypoint: important to check with the person to get at exactly their understanding of the issue they are trying to solve or suggest and not jump to an immediate (and potentially erroneous) next step/s.

Note @LordFlashmeow that GitHub permissions make it impossible to give everyone direct access to labels. But we can create additional templates, perhaps "not a bug" as one of them. So, enhancements and feature requests could go this route. (Other versioning software sometimes have more friendly issue-tagging than GitHub. (My favorite so far anyway: Bugzilla). Here's how GBIF presents options to submitters

Yeah, I thought it would be nice to not have all new issues marked as a bugs until someone with permissions fixes it.

Yeah, I thought it would be nice to not have all new issues marked as a bugs until someone with permissions fixes it.

We have done this in taxonworks_doc repository, where we added a template for contributing to the manual.
Do you think "not a bug" would work? (as in everything else, to be further labeled by a developer?)

I've seen some repos make a label like to be triaged to filter for new issues. This way different templates can still add relevant labels, but they also get marked for handling by a dev.

@LordFlashmeow I'd like it if the submitter was empowered :-) at least a little bit. I like the layer that GBIF built on top (it feeds GitHub tickets). That way the tickets are at least somewhat sorted to start out with.

Indeed. I'm pretty sure you can set the issue template to assign multiple labels at once (but I can't verify that)

(Thinking outloud) I do know that you can link a Google Form to GitHub, and code a label into that so that if a user fills out the Google Form, the "new" label is applied. I wonder if this method could be extended (if using javascript) to allow a user to pick labels when creating the issue. (I don't know how Tim did it at GBIF).

According to the docs, you can set multiple default labels for templates, so the enhancement template can get the enhancement label, and the bug template can get the bug label, and so on.

^ Yes, it's easy to setup a workflow in GH whereby any labels are applied to issues created from some template.
Side note, our Issue semantics are fairly well resolved: https://github.com/SpeciesFileGroup/taxonworks/labels.  In general we would like to use less rather than more labels as we move forward, as their use/meaning "drifts" as more are added.


HTTP/2 DefaultHttp2RemoteFlowController Stream writability notificati…

…on broken
Motivation:
DefaultHttp2RemoteFlowController.ListenerWritabilityMonitor no longer reliably detects when a stream's writability change occurs.
Modifications:

Ensure writiability is reliabily reported by DefaultHttp2RemoteFlowController.ListenerWritabilityMonitor
Fix infinite loop issue (https://github.com/netty/netty/issues/4588) detected when consolidating unit tests

Result:
Reliable stream writability change notification, and 1 less infinite loop in UniformStreamByteDistributor.
Fixes https://github.com/netty/netty/issues/4587

@nmittler - FYI

@Scottmitch LGTM

@Scottmitch just a few comments ... looks good!

@nmittler - PTAL. comments have been addressed.

@Scottmitch LGTM ... great work!

Cherry-picked into 4.1 as 9ac430f16fec1d3b0d0e433b953c0197d70dff10.
Thanks @Scottmitch !

Thanks for review @nmittler @normanmaurer !


Issue #360: update links to open in new window. Resolves #360

LGTM, merging...

rebased and merged: b9d64c11f00a777138f5e28027f34fb62096c288


🚧 Dev Task: [EPIC] Implement Sandbox Baking Options

🔗 Epic|Feature Link
No response
🚥 Definition of Done

[X] 🎯 Planning and Design
[ ] 🏎 Dev Implementation (PR merged)
[ ] ✍ Release Notes Added
[ ] 🏆 Product Acceptance

✅ To Do

[x] Meet with Jev and Dan to understand mempool and endpoint options

Implement manual baking task
Develop long-lived task that provides bake-on-demand functionality
Implement custom block time

Options:

Manual baking
Auto baking

⚖ Acceptance Criteria
✨ Functional:

[x] Add a task to bake a block taq bake
[x] Flextesa plugin can have a custom block time specified by the user
[ ] Auto-bake (bake a block as soon as an operation is injected and only when operation injected)

🔭 Scope
🙅♂ Out of Scope:

Work on Taqueria/plugins other than Flextesa

🧰 Work Description
Flextesa needs to support various sandbox baking options such as bake-on-demand, auto-bake, and a configurable block time. This will improve the developer experience
For auto bake, the options are:

mempool pull
proxy

Auto-bake
🦄 Sizing
Code of Conduct

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

Done


[PE-D][Tester D] Delete-appt not specific in usage

no clue how to use patient index

inputting another patient index does not give allow user to execute command/press enter
Not too sure if user should be remembering the patients' index in the patients list before doing any appointment command.

Labels: severity.Medium type.FeatureFlaw
original: weeweh/ped#11

Will add more clear instructions in UG


AMBARI-24966. Start Namenode failing during Move master NN wizard on non-HA cluster with custom hdfs service user

How was this patch tested?
Verified manually on a cluster that had a repro to fix the issue.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/4661/
Test PASSed.

Closed PR as this patch needs to go only in trunk


High scores

The game would be better with a high score table showing the user's previous high scores and highest level numbers reached. These values can be saved in a cookie or something. If the canvas size is too small, we could save the high score without displaying the full table.

This is partially addressed by Rainey Arcade's tokens and prizes.
I'd still like a "highest score" on the Game Over screen, using LocalStorage to store the score like I did in Rodent's Revenge.


Dev/bahl aryan/deep linking

added login redirect to api.reflectionsprojections.org/login/auth/web (have to change to mobile when mobile added to api DeviceRedirect)

Resolved merge conflicts


Update gtk-sys and make some signatures more precise accordingly

Looks good to me. I wait for travis and stuff and then I merge. Thanks for your work !

Whatever happened to appveyor. It might not have gotten the memo when the org was renamed. You may need to readd the repos there.


Disabling a function

I want the bot to not be able to dig or mine any blocks.

https://github.com/PrismarineJS/mineflayer-pathfinder#candig

Look at the movements.js example. It tells you how you can prevent to bot from digging or mining blocks https://github.com/PrismarineJS/mineflayer-pathfinder/blob/master/examples/movements.js


@TODO Update deps

The deps in this are probably getting pretty old, particularly around TypeScript.
List of things to do to update generator to best practices (WIP list)

[x] Replace tsd with typings (issue)
[x] Provide TypeScript defs for non-vanilla D3 abstractions.
[x] Integrate typedefs with testing frameworks (See #3).

Updated in adf6ee24d32fa3b9fda8b90073deee2f and 61df9ad4fd8c1b233c35dfb.


Server and Tranquilizers.

This PR has a bunch of related stuff in it as separate commits.
Tranquilizer is a probably-easier-to-use API than Beam. It does batching and pipelining on its own and exposes two APIs: a future-oriented API where you can get the status of each individual message, and a "simple" API where you get overall stats and overall exceptions but not associated with any individual message.
BeamPacketizer is deprecated now as Tranquilizer is a replacement for it.
Tranquility Server is a server that you can send events to and have them forwarded along to Druid. It's a good way to use tranquility if you don't want to embed it or can't embed it (because you aren't using a JVM language).
Fixes #55

:+1:

Going with single +1s on tranquility until we reach some consensus on how to do reviews for Tranquility

@fjy we should use the same review policy as any other druid repository

@xvrl @nishantmonu51 do either of you have time to review this? some of the things here (like the tranquilizer and the yaml config reading stuff) may also be useful for a tranquility-kafka module we want to add. would also like to look at #56 once this stuff is in master.

@gianm sure, I'll have a look, and hopefully @nishantmonu51 can do too. Do you mind adding an issue about tranquility-kafka so folks know it's being worked on? Thanks!

@xvrl good point. #59

@xvrl not everyone understands scala or cares about reviewing tranquility the same way they do with druid

added some docs to the PR - https://github.com/gianm/tranquility/blob/server/docs/server.md

:+1: looks good to me once scala 2.10 build passes.


Project equality is now hilariously broken when isolated Projects are enabled

Current Behavior
Put this line of code anywhere in any build.gradle.kts:
println(project.rootProject == project.rootProject)
it prints true if isolatedProjects are disabled
it prints false if isolated Projects are enabled
Expected Behavior
That should usually print true right?
Context (optional)
No response
Self-contained Reproducer Project
println(project.rootProject == project.rootProject)
Gradle version
8.10.2
Gradle version that used to work
8.8
Build scan URL (optional)
No response
Your Environment (optional)
No response

I guess the equals of ProblemReportingProject should feature an sameObject check as well as an unwrap...

This issue needs a decision from the team responsible for that area. They have been informed. Response time may vary.

Related:

https://github.com/gradle/gradle/issues/30272

This feature request is in the backlog of the relevant team and is prioritized by them.

While we cannot promise globally identical project references, we'll fix the equals contract.

Yes == was used in this example because its kotlin script style, it gets converted into equals anyway (at least thats my understanding). Idenntically projects references are not needed on my part, but fixing the euals contract would be very helpful :)