Crash on git gem in Gemfile

Description
ruby-lsp 0.21.0 crashes if you have a git gem in your Gemfile with the following format:
gem "gem_name", git: "git@git.example.com:username/repo.git", branch: "master"
This bug appears to have been introduced here: https://github.com/Shopify/ruby-lsp/commit/eadd4314fdee47ca1d5cfe88a14f220ba4f59977#diff-f6924adc23e6f34611ac67f8365789f93c0a71d7ccf25c626582755d85204eafR304
Ruby LSP Information
VS Code Version
1.94.2
Ruby LSP Extension Version
0.8.12
Ruby LSP Server Version
Unknown
Ruby LSP Addons
Ruby Version
3.3.5
Ruby Version Manager
custom
Installed Extensions

Click to expand

amx-netlinx (0.6.1)
better-toml (0.3.2)
copy-text (0.4.9)
cpptools (1.22.10)
csharp (2.50.27)
elixir-ls (0.24.2)
gitlens (15.6.2)
go (0.42.1)
haml (1.4.1)
isort (2023.10.1)
material-icon-theme (5.12.0)
platformio-ide (3.3.3)
postcss (2.0.0)
python (2024.16.1)
ruby-lsp (0.8.12)
rust-analyzer (0.3.2162)
vscode-dotnet-runtime (2.2.2)
vscode-eslint (3.0.10)
vscode-npm-script (0.3.29)
vscode-projects-plus (1.24.0)
vscode-zipfs (3.0.0)

Ruby LSP Settings

Click to expand
Workspace
{}

User
{
  "enableExperimentalFeatures": false,
  "enabledFeatures": {
    "codeActions": true,
    "diagnostics": true,
    "documentHighlights": true,
    "documentLink": true,
    "documentSymbols": true,
    "foldingRanges": true,
    "formatting": true,
    "hover": true,
    "inlayHint": true,
    "onTypeFormatting": true,
    "selectionRanges": true,
    "semanticHighlighting": true,
    "completion": true,
    "codeLens": true,
    "definition": true,
    "workspaceSymbol": true,
    "signatureHelp": true,
    "typeHierarchy": true
  },
  "featuresConfiguration": {},
  "addonSettings": {},
  "rubyVersionManager": {
    "identifier": "custom"
  },
  "customRubyCommand": "rbenv init - fish | source",
  "formatter": "auto",
  "linters": null,
  "bundleGemfile": "",
  "testTimeout": 30,
  "branch": "",
  "pullDiagnosticsOn": "both",
  "useBundlerCompose": false,
  "bypassTypechecker": false,
  "rubyExecutablePath": "",
  "indexing": {},
  "erbSupport": true,
  "useLauncher": false
}

Code snippet or error message (anonymized)
2024-10-31 08:48:03.930 [info] (project) /home/dan/.rbenv/versions/3.3.5/lib/ruby/3.3.0/uri/rfc3986_parser.rb:130:in `split': bad URI(is not URI?): "git@git.example.com:username/repo.git" (URI::InvalidURIError)
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/3.3.0/uri/rfc3986_parser.rb:135:in `parse'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/3.3.0/uri/common.rb:187:in `parse'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/3.3.0/uri/common.rb:848:in `URI'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/ruby-lsp-0.21.0/lib/ruby_lsp/setup_bundler.rb:357:in `block in correct_relative_remote_paths'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/ruby-lsp-0.21.0/lib/ruby_lsp/setup_bundler.rb:352:in `gsub!'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/ruby-lsp-0.21.0/lib/ruby_lsp/setup_bundler.rb:352:in `correct_relative_remote_paths'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/sorbet-runtime-0.5.11577/lib/types/private/methods/call_validation.rb:270:in `bind_call'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/sorbet-runtime-0.5.11577/lib/types/private/methods/call_validation.rb:270:in `validate_call'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/sorbet-runtime-0.5.11577/lib/types/private/methods/_methods.rb:277:in `block in _on_method_added'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/ruby-lsp-0.21.0/lib/ruby_lsp/setup_bundler.rb:105:in `setup!'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/sorbet-runtime-0.5.11577/lib/types/private/methods/call_validation.rb:270:in `bind_call'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/sorbet-runtime-0.5.11577/lib/types/private/methods/call_validation.rb:270:in `validate_call'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/sorbet-runtime-0.5.11577/lib/types/private/methods/_methods.rb:277:in `block in _on_method_added'
	from /home/dan/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/ruby-lsp-0.21.0/exe/ruby-lsp:75:in `<top (required)>'
	from /home/dan/.rbenv/versions/3.3/bin/ruby-lsp:25:in `load'
	from /home/dan/.rbenv/versions/3.3/bin/ruby-lsp:25:in `<main>'

Just cut v0.21.1 with the fix. Please update the global installation of the gem so that you're using the version with the fix gem update ruby-lsp.


add vim checktime cmd to refresh buffers on lazygit exit

This command will check for any changed buffers and refresh them, useful when we switch branches, stash or discard changes ( #53 )

Wow! Thanks for making the PR!

np, thanks for the plugin !


Add support for configuration-time constants

We currently have const values which must be hardcoded.
For values which can't be hardcoded, or are subject to change, we have storage.
Configuration-time constants (in Solidity these are immutable variables) give us a third option which fits nicely in between the existing 2.
These are variables which are like const values in that they can't be changed once set, but their value is set at configuration time. In Solidity this is done via the constructor.
We don't have a concept of constructor in Sway, so this might be done in an init function (just a normal abi function which must be made to be callable only once) or perhaps via some other mechanism.

so this might be done in an init function (just a normal abi function which must be made to be callable only once) or perhaps via some other mechanism.

This is how you'd do it today. That doesn't really work if you want configuration-time constants to be baked into the bytecode, which you do.
A simple proposal is a section in the Forc manifest, e.g. [immutables], where the user can list configuration-time constants that are then inserted into the code as literals. Type and value could be specified as
[immutables]
MY_CONSTANT = "u64:420"

The compiler would then replace any identifiers with the name MY_CONSTANT with the literal 420 with type u64.

Could you clarify what "configuration time" means and how it differs from compile-time?
IIRC, this is about being able to more easily change between certain constants like addresses or IDs so you can easily test with different values to what you end up deploying, and similar scenarios right?
@adlerjohn I remember us discussing this on another issue but can't think of where :thinking:

Configuration-time here means known at compile time but not the same across instantiations of the contract. Examples would be parameters of a contract that don't change after a contract is deployed, e.g. the two asset IDs of a pool contract, or some timeout parameter for an auction.


ModuleNotFoundError: No module named 'distutils.spawn'

Just after install:
root@scw:~# systemctl start prometheus-tor-exporter
root@scw:~# systemctl status prometheus-tor-exporter
● prometheus-tor-exporter.service - Prometheus exporter for Tor
   Loaded: loaded (/lib/systemd/system/prometheus-tor-exporter.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Sat 2019-09-07 02:16:13 MSK; 4s ago
  Process: 6715 ExecStart=/usr/bin/prometheus-tor-exporter.py $ARGS (code=exited, status=1/FAILURE)
 Main PID: 6715 (code=exited, status=1/FAILURE)

Sep 07 02:16:13 scw systemd[1]: prometheus-tor-exporter.service: Failed with result 'exit-code'.
Sep 07 02:16:13 scw systemd[1]: prometheus-tor-exporter.service: Service hold-off time over, scheduling restart.
Sep 07 02:16:13 scw systemd[1]: prometheus-tor-exporter.service: Scheduled restart job, restart counter is at 5.
Sep 07 02:16:13 scw systemd[1]: Stopped Prometheus exporter for Tor.
Sep 07 02:16:13 scw systemd[1]: prometheus-tor-exporter.service: Start request repeated too quickly.
Sep 07 02:16:13 scw systemd[1]: prometheus-tor-exporter.service: Failed with result 'exit-code'.
Sep 07 02:16:13 scw systemd[1]: Failed to start Prometheus exporter for Tor.
root@scw:~# prometheus-tor-exporter.py -h
Traceback (most recent call last):
  File "/usr/bin/prometheus-tor-exporter.py", line 6, in <module>
    import stem.control
  File "/usr/lib/python3/dist-packages/stem/control.py", line 265, in <module>
    import stem.descriptor.microdescriptor
  File "/usr/lib/python3/dist-packages/stem/descriptor/__init__.py", line 55, in <module>
    import stem.util.system
  File "/usr/lib/python3/dist-packages/stem/util/system.py", line 70, in <module>
    import distutils.spawn
ModuleNotFoundError: No module named 'distutils.spawn'

Fixed by apt-get install python3-distutils. Add it to package dependencies?
root@scw:~# uname -a
Linux scw 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
root@scw:~# lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.3 LTS
Release:	18.04
Codename:	bionic

Hmm, this seems to be python3-stem issue. It looks like I'ts fixed in cosmic but not in bionic. Report this to the Ubuntu bugtracker.


Implement support for UNIX sockets

The common use-case for Kestrel in production will be behind a reverse proxy such as Nginx. In cases where the reverse proxy is located on the same machine as the application, connecting via a UNIX socket is more efficient than a TCP socket, as it avoids going through the network layer. Accessing <IP_ADDRESS> through TCP still needs to initiate a TCP connection and perform handshaking, checksumming, etc, all of which is avoided by using UNIX sockets.

Moved TCP-specific stuff from Listener into new TcpListener class (same with ListenerPrimary and ListenerSecondary)
Made Listener abstract
Created new PipeListener. Note that while the use case is for UNIX sockets, this is called "Pipe" in uv, so I've called this "PipeListener" so the terminology is consistant
Uses "unix" URL scheme to determine whether to use socket. "http://<IP_ADDRESS>:5000" is for listening via TCP while "unix:///var/run/kestrel-test.sock" is for listening via UNIX socket

Example Nginx configuration for proxying to a UNIX socket:
server {
  server_name kestreltest.localhost;
  root /var/www/dan.cx/net5test/wwwroot;

  location / {
    # Serve static files directly; proxy everything else to Kestrel
    try_files $uri @aspnet;
  }

  location @aspnet {
    proxy_pass http://unix:/tmp/kestrel-test.sock;
    proxy_set_header Host $host;
  }
}

#156

Hi @Daniel15, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla2.dotnetfoundation.org.

TTYL, DNFBOT;

@Daniel15, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, DNFBOT;

Thanks for the PR. Have you tested Nginx proxying to a UNIX socket with IKestrelServerInformation.ThreadCount > 1? It looks like you probably made the necessary changes for this to work, but I want to make sure you tried it out. You can get at the IKestrelServerInformation object in your app startup code by casting IApplicationBuilder.Server.
Testing this should ensure that our logic to load balance across multiple libuv event loops works with UNIX sockets.

Have you tested Nginx proxying to a UNIX socket with IKestrelServerInformation.ThreadCount > 1

I believe I did test this, I'll test it out again tonight and confirm though. Unfortunately I forgot to include my test plan in my commit message.

Have you done a performance comparison between running an Nginx reverse-proxy over the Unix socket vs a TCP socket? If not I'm happy to do it myself and share the results; I just don't want to spend time if you've got numbers already.

@markrendle I haven't done any perf testing.

@halter73 - I just tested it again on Debian Linux + Mono 4.0.2 and it worked fine. These were the changes I made when testing:
diff --git a/samples/SampleApp/Startup.cs b/samples/SampleApp/Startup.cs
index 5f81cbe..fddd1c9 100644
--- a/samples/SampleApp/Startup.cs
+++ b/samples/SampleApp/Startup.cs
@@ -2,6 +2,8 @@
 // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.

 using System;
+using Kestrel;
 using Microsoft.AspNet.Builder;
 using Microsoft.AspNet.Http;

@@ -11,6 +13,10 @@ public class Startup
     {
         public void Configure(IApplicationBuilder app)
         {
+	        var server = (IKestrelServerInformation) app.Server;
+	        server.ThreadCount = 10;
+			Console.WriteLine("Threads: {0}", server.ThreadCount);
+
             app.Run(async context =>
             {
                 Console.WriteLine("{0} {1}{2}{3}",

I also tested on Mac OS, where it seems broken even without my changes (I get "Unknown system error"). I'll submit a separate issue for that.

I just rebased and rebuilt and now it works on Mac OS X for me. Strange.

@markrendle Are you still planning to do the performance comparison between this and proxying via a TCP socket? It would be nice to know since the main benefit of using a UNIX socket seems to be efficiency. Thanks!

The changes look weird now. I see a bunch of unrelated commits. Can you clean up the PR and make sure the diff only shows your changes?

Oops, looks like something weird happened when I was merging master into my branch. This commit looks like the right one: https://github.com/Daniel15/KestrelHttpServer/commit/0bb837c4019d861b41daa3f092bf53815673aee3. I'm not very experienced with Git merging so I'll see if I can figure out how to clean it up tomorrow.

@davidfowl  - It should be fixed now, let me know if it still looks weird for you :)

@halter73 I am still planning to do the perf testing. I'm literally just finishing up on porting a monolithic ASP.NET MVC 5 application to Docker-hosted DNX MVC 6 microservices, then I'll have some time to set up a test environment with Nginx proxying to Kestrel over both TCP and a Socket. I'll post the results when I have them.

Thanks! :smile:


Promote volume drivers from experimental to master.

Remove volume stubs and use the experimental path as the only path.
Part of #14214.
/cc @cpuguy83, @icecrime
Signed-off-by: David Calavera<EMAIL_ADDRESS>

LGTM pending janky.

@cpuguy83 I think we can do it after. It will be easier for everyone if we land this first, so we don't have to think about experimental/non-experimental.

Two questions:

I'm assuming we chose not to make #14242 a prerequisite, but are we still considering it for the near future?
Why are we mentioned passing the container ID down to the plugin? I don't see what additional use it would make of it as long as we guarantee a unique (user-provided) name for the volume.

I'm assuming we chose not to make #14242 a prerequisite, but are we still considering it for the near future?

@icecrime at the end, moving this out of experimental is a pre-requisite of #14242. Otherwise @cpuguy83 needs to put the api/cli in experimental and then move them out.

Why are we mentioned passing the container ID down to the plugin? I don't see what additional use it would make of it as long as we guarantee a unique (user-provided) name for the volume.

It's a different topic, we've talked about sending some extra information to the plugins, like the container id. I don't think it's related to this PR.

Sounds good, thanks.

Code LGTM.
Ping @lukemarsden FYI.
Spoiler alert: we're gonna need to promote the docs too.

Spoiler alert: we're gonna need to promote the docs too.

moving the docs too.

ouch, I might wait to move the docs until #1395 is merged, which should happen soon-ish.

@thaJeztah I moved the volume and plugin documents from experimental to docs in this PR. Let me know what you think.

One issue with docs here is that I believe they aren't linked to anywhere? (cc @moxiegirl)

yeah, I'm wondering if we should have a Extend docker section:

@calavera IIUC, only the volume plugins will be promoted from experimental, but the network plugins still are (experimental)? In that case, shouldn't the docs in the experimental directory stay intact for the network plugins?
And, yes, we need to find a good location inside the navigation :-)

I personally like "extend docker" as a title

@thaJeztah the networking docs are still in the experimental folder.

@calavera yes, but the plugins.md file contained the description for both the network and volume plugins, not sure if that's still needed in the "experimental" directory?

@thaJeztah not anymore. I changed the plugins document to reflect what we have that's not experimental.

@calavera Since Extend Docker seems like a good title to me too. The position is important --- I think it should come after Manage Image Repositories at the very least. Since it contains API information it really belongs under Command and API References  --- WDYT?

sounds great, I'll make the change.

I moved the docs to docs/plugins and they should show up under the Extend Docker menu when docker/docs-base#114 is merged.

um. don't kill me but I renamed plugins to extend to fit the menu.  After all, plugin isn't the only way a product could be extended.

I'm pretty much LGTM on the docs, and while I'd love to have ID and userid passed to the plugin, I can do quite a bit without :)

@moxiegirl I've applied your patch and moved the docs to extend, thank you!
@SvenDowideit I'm confident we can iterate on that in future releases.

Thanks @calavera LGTM

docs LGTM, thanks @calavera
Just to confirm; @cpuguy83 your LGTM is for design and code review?
if it is: press da button!

@icecrime thanks for the heads up!
I have tested flocker and the flocker docker plugin with docker master from today (4ed3e3a5b26a365e9b270011b0ba2b772fb98ab9) and, after changing the plugins path, it appears to be working in basic manual testing.
Thanks!


[Release] Bump vizro-core to 0.1.13

Description
Screenshot
Notice

[x] I acknowledge and agree that, by checking this box and clicking "Submit Pull Request":

I submit this contribution under the Apache 2.0 license and represent that I am entitled to do so on behalf of myself, my employer, or relevant third parties, as applicable.
I certify that (a) this contribution is my original creation and / or (b) to the extent it is not my original creation, I am authorized to submit this contribution on behalf of the original creator(s) or their licensees.
I certify that the use of this contribution as authorized by the Apache 2.0 license does not violate the intellectual property rights of anyone else.
I have not referenced individuals, products or companies in any commits, directly or indirectly.
I have not added data or restricted code in any commits, directly or indirectly.

The automatic bump commit to main didn't work then?

Seems like it 😄


Add doAfterVisit(UnnecessaryParentheses) to generated recipes

What's your motivation?
Until we update the JavaTemplate to detect and insert parentheses around for instance binary expressions, we need a quick way to move along https://github.com/openrewrite/rewrite-migrate-java/pull/271 ; With this change we're able to add parentheses to the templates defined there, which are then cleaned up through UnnecessaryParentheses.
Have you considered any alternatives or workarounds?
We could always add parentheses in the JavaTemplate Strings produced by TemplateProcessor here; that might be a bit excessive, but would prevent us from having to add those parentheses to rewrite-migrate-java.
Any additional context

https://github.com/openrewrite/rewrite-migrate-java/pull/271

Another alternative would be for us to determine whether expressions are required or not at "insertion time"; i.e. we could add some kind of maybeParenthesize(Expression, Cursor) utility method. I imagine this could be useful in other recipes as well. But generating a doAfterVisit() is simpler of course.
My only worry with doAfterVisit() is that if a lot of modifications are made, then for each such modification we schedule one of these visitors. I wonder if we should either add an overload or another method (like doOnceAfterVisit()) or add a marker interface to visitors. For maybeAddImport() and maybeRemoveImport() we hand-coded this logic.


No issue just weird

Hey, add the Animation default game because if without animation so weird
and Drop location Thumper / Spider still False Location ( no fix )
i hope u listen this is :)

Yeah, if there's a way to make it so that you can still see the dying animation, before they drop, or even better, if there was the option choose if we want to see the animation, it would be really cool.
Why the option to choose ? For comedic purposes. Imagine all enemies dies normally and you and your team play as if nothing's wrong, until you need a bit of extra cash for the quota before leaving.

Then your teamate says, with a old timer's voice : "what a price we got'here. The hunt has been generous this season".
This would be perfect to get everyone confused in the ship.


PXP-466: [Wukong CLI] Refactor the configuration logic

Summary

Previously, when the config file format is updated with breaking changes, all the wukong commands are not able to run. The user have to manually remove the old config file and run wukong init to re-initialize. With this PR, user can now run wukong init to re-initialize it without manually remove the old config file. 1 step saving!

Ticket: PXP-466
What's Changed

Changed

[x] update dependencies

Fixed

[x] wukong init now can be used when the config file broken

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: jk-gan
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: jk-gan, onimsha
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Compiler warning (level 2) CS0108 in HelloMVC based projects

Running kpm build in HelloMvc based projects results in the following warning:
/Users/piotrblazejewicz/projects/RetrogamesWeb/Controllers/HomeController.cs(13,21):
warning   CS0108: 'HomeController.User()' hides inherited member 'Controller.User'.
Use the new keyword if hiding was intended.
[...]
Build succeeded.
    1 Warnings(s)
    0 Error(s)

The culprit line:
https://github.com/aspnet/Home/blob/master/samples/HelloMvc/Controllers/HomeController.cs#L13
I think it would be better to refactor this particular method to use other established C# convention removing that error along the lines:
https://github.com/aspnet/Mvc/blob/dev/samples/MvcSample.Web/HomeController.cs#L129-L150
that is:
public IActionResult Index()
{
    return View(CreateUser());
}

public User CreateUser()
{
    User user = new User()
    {
        Name = "My name",
        Address = "My address"
    };

    return user;
}

Fixed


How to differentiate inbox vs sent items email item?

How can we differentiate the selected email item as inbox or sent folder or deleted folder item? Can we read using office.context.mailbox.item

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 4943751d-68bf-a98f-960e-779ae54b7970
Version Independent ID: 838ccf75-d8bf-587c-a954-47e564afef28
Content: Get and set item data in a compose form in Outlook - Outlook Developer
Content Source: docs/add-ins/get-and-set-item-data-in-a-compose-form.md
Product: outlook
Technology: add-ins
GitHub Login: @o365devx
Microsoft Alias: o365devx

@harshamaddineni Thanks for asking about this. However, I don't believe we have an API that returns the current folder for the item.
@exextoc Can you take a look at this?
Thanks.

Currently, Office.context.mailbox.item does not have information about the item's folder. We track Outlook add-in feature requests on our user-voice page. Please add your request there. Feature requests on user-voice are considered, when we go through our planning process.
A possible workaround would be to use REST API, described in this post here.

@harshamaddineni Can you let us know if the suggested workaround was useful?
Thanks.


💡[FEATURE]: Market Making and Liquidity Provision Using RL

Is your feature request related to a problem? Please describe.
Develop an RL agent to act as a market maker, providing liquidity and optimizing bid-ask spreads in financial markets.
Describe the solution you'd like
Steps:
Environment Design: Create a simulation of market making with order book dynamics.
State Representation: Include order book data, trade volumes, and market trends.
Reward Function: Reward for maintaining liquidity, minimizing inventory risk, and earning spreads.
Training the Model: Train the RL agent to manage bid-ask spreads and inventory effectively.

pls @Akshat111111 assign it me

the work should be innovative


Add renewal documentation for Traefik

We currently don't show content on renewals, but when we do (a large project), we should add an ACME renewal flow for Traefik:

Traefik is a modern reverse-proxy with integrated support for ACME. It's easy to get a certificate from Let's Encrypt andy other ACME compatible CAs like step-ca in Traefik, using the tls-alpn-01 ACME challenge type.
Most importantly, Traefik will need to trust your root CA certificate. Either use the LEGO_CA_CERTIFICATES environment variable to provide the full path to your {{ ca_cert }} when running Traefik, or install your root certificate in your system's trust store.
In your Traefik static configuration, you'll need to add a certificatesResolvers block:
[certificatesResolvers]
  [certificatesResolvers.myresolver]
    [certificatesResolvers.myresolver.acme]
      caServer = "https://step-ca.internal/acme/acme/directory"
      email =<EMAIL_ADDRESS>      storage = "acme.json"
      tlsChallenge = true

Then, when you add routers to your dynamic configuration for HTTPS traffic, you need to set tls and tls.certResolver:
## Dynamic configuration
[http]
  [http.routers]
    [http.routers.router1]
      ...
      [http.routers.router1.tls]
        certResolver = "myresolver"

cc @tashian

Nvm, going to wire up a simple version for now.


Shadowrun Sixth World v.81 - 1 bugfix, 2 new features

[x] The pull request title clearly contains the name of the sheet I am editing.

[x] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).

[x] The pull request makes changes to files in only one sub-folder.

[x] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

[x] I have followed the Character Sheets Standards when building this sheet.

Changes / Description
Bugfix - More weapon dicepool tweaks
New Feature - NPC->Spirits made spirits awakened and now display the spells section for them.  Dicepool does not auto-update when spirit force changes, that is an exercise for the user.
New Feature - Added Critter Powers drag and drop from the compendium for spirits and grunts.

Character Sheet Info Roll20 Internal Use only.


UI should expose entity ids

Is your feature request related to a problem? Please describe.
If you want to use the Dockstore API against a workflow, tool, etc. that you are viewing in the UI, it's a mild pain; you have to open the browser developer tools to see what the ids are.
Describe the solution you'd like
The UI should surface ids somehow. Maybe by themselves, maybe even sample curls using the ids, or maybe links to the OpenAPI method with parameters filled in (is that last one possible?).
For example, if on a workflow, the workflow id should be visible somehow. The version ids should be visible on the versions table, etc.
Describe alternatives you've considered
Leave it as is. Maybe this is something only the Dockstore engineers need this and we shouldn't pollute the UI with it.
┆Issue is synchronized with this Jira Story
┆Issue Type: Story
┆Sprint: Backlog
┆Issue Number: DOCK-1617

Is this related to https://github.com/dockstore/dockstore/issues/3666 ?

I think the difference is one's a TRS ID (with #workflow/) and one is a Dockstore ID

The database ID?

Yes, or whatever the ID something like https://dev.dockstore.net/api/static/swagger-ui/index.html#/containers/getContainer is using

Yeah, then possibly some for curator/admin role in lieu of a developer role


Update ramda-comparison.md

Changed links which references fp-ts-std where it should be fp-ts.
Removed links to functions that does not exist.
anyPass : refers to anyPass. No such function anywhere.
allPass : refers to all	Pass. No such function anywhere.
either : refers to boolean::either. No such function.

Thanks again! anyPass and allPass have moved to Predicate. either can now point to or.

added documentation for pick.
Pick returns undefined on missing values. This behavior differs from the ramda implementation and should be clear to the user.

The example you provided doesn't typecheck:
pipe({ a: 1, b: 'two' }, pick(['a', 'c']))

Type '"c"' is not assignable to type '"a" | "b"'.

Ok, do you know why i'm not getting the error on my stackblitz application?

Your import should be from fp-ts-std/Record.

Ah yes wonderful, now i see the type error!
However, this doesn't allow the code to run on stackblitz because of conditional imports not working.
Shouldn't #7 be open or is there something that I'm missing?

That website doesn't work in my browser so I can't offer very specific advice, but per the README:

fp-ts-std is published with both ESM and CJS modules. The import paths in either case needn't change and the appropriate module resolution should be picked up by Node and your bundler, however if your environment doesn't support conditional exports you'll need to import directly from a dist/(cjs|esm)/ subdirectory. Given ESM modules the library should tree shake well.

We use the library at work with Webpack (ESM), and it runs okay in Node for me locally (CJS):
> R = require('fp-ts-std/Record')
> R.pick.name
'pick'

Thanks for this, mostly incorporated in https://github.com/samhh/fp-ts-std/commit/3ffee45ac9c528ca6616896104a76605f0346229.


Contribute Solution for LeetCode October Day 20

Day 20:
Contribute a solution for this day's LeetCode problem.
Rules:

Comment on this issue if you're willing to contribute.
Each user can contribute a maximum of 1 solution in Java, C++, or Python.
Each user can contribute a maximum of 2 solutions in other languages like JavaScript, Go, Ruby, etc.
Please ensure that no one has already commented for the language you're planning to contribute in.

Good luck and happy coding! :tada: :rocket:

Kindly assign me this task @arya2004 I want to try this out in javascript!

Hi @arya2004  , I would like to contribute in Python assign me

Hey @arya2004 I would like to try contributing to this issue in Java ,please assign this task to me.Thank You.

Hi @arya2004 I would like to try contributing to this issue in Java ,please assign this task to me.Thank You.


Add eq operator to lv_obj wrappers

This is required for comparing obj instances.
The binding code should compare the underlying pointers to the lv_obj instances.
See: https://github.com/lvgl/lvgl/issues/1763#issuecomment-850638625

Fixed by https://github.com/lvgl/lv_binding_micropython/commit/53f94a20f66fa49a22bc7feec6a2283137f7ee35


Fix issue mono/mono#16435, by improving behavior of FileSystem.Unix File.Move

Fix issue https://github.com/mono/mono/issues/16435, by improving behavior of FileSystem.Unix File.Move on file systems that do not support hard links, such as FAT (use rename instead of Copy / Delete)

Looks like mainline corefx has been working on this?
https://github.com/dotnet/corefx/pull/33054
and that they call Rename more often?

Thanks for pointing that out, @jaykrell.  @mandawah, if we update our corefx fork, then I think what they have should be acceptable.

@jaykrell @steveisok : Thanks for pointing this work on mainline corefx, indeed. I had a look at it, but those changes do not address this issue.
As far as I can tell looking at https://github.com/dotnet/corefx/blob/master/src/System.IO.FileSystem/src/System/IO/FileSystem.Unix.cs#L141-L196 changes are only related to what to do when overwrite == true, in which case, indeed, Rename is used ("// If overwrite is allowed then just call rename").
Standard File.Move doesn't have an overwrite parameter (the overload that has it is a new addition in mainline) and anyway, default behavior is not overwrite. In this case, new mainline code behaves exactly as the one here.
I thus think this issue is still relevant, and my PR still relevant as well. I might make it against mainline corefx however...
Please advise, thanks!

Hello @steveisok,
just created the PR on mainline: https://github.com/dotnet/corefx/pull/40611/files

Sorry, this doesn't work as expected, I need to find another way

@mandawah I see you re-opened.  Are you pushing any additional updates?

@steveisok Yes, I just pushed a new commit. This one seems to work as expected.

I think this is included with https://github.com/mono/corefx/pull/395 now.


k8s 1.30 support for vSphere CSI

Add k8s 1.30 support for vSphere CSI

This is unblocked as of earlier this week by https://github.com/kubernetes-sigs/vsphere-csi-driver/releases/tag/v3.3.0 that adds official support for K8s 1.30.

blocked by:
https://github.com/rancher/rancher/issues/46132

bumping out to next milestone, as this issue is no longer targeted for v2.9.0

blocked by https://github.com/rancher/rke2/issues/6334;

Should be ready to test once https://github.com/rancher/kontainer-driver-metadata/pull/1450 is merged

Ticket #45747 - Test Results - ✅
Verified on Rancher v2.9-419f7169084aaf1cceaeae2d6df5d4c227bd8a77-head:

Scenario
Test Case
Result

1.
Provision a downstream RKE2 Vsphere Cloud Provider enabled cluster w/ k8s v1.30.3+rke2r1
✅

2.
Provision a downstream RKE1 Vsphere Cloud Provider enabled cluster w/ k8s v1.30.3-rancher1-1
✅

Scenario 1 - ✅

Fresh install of Rancher v2.9-head
Provision a downstream RKE2 Vsphere Cloud provider cluster w/ k8s v1.30.3+rke2r1
Verified - cluster successfully provisions; all pods active; CSI in use rancher-vsphere-csi:3.3.0-rancher100

Scenario 2 - ✅

Fresh install of Rancher v2.9-head
Provision a downstream RKE1 Vsphere Cloud provider cluster w/ k8s v1.30.3-rancher1-1
Verified - cluster successfully provisions; all pods active; CSI in use rancher-vsphere-csi:104.0.1+up3.3.0-rancher2


Bootstrap

👷 Deploy Preview for 11th-test processing.

Name
Link

🔨 Latest commit
f07f66e60480c1b7a9957d4e995e63ecd16952b1

🔍 Latest deploy log
https://app.netlify.com/sites/11th-test/deploys/653e96b1bdb651000882c7c5


[BUG] Getting unexpected error with example plugin

Hi, I don't actually think it is related to the specific plugin (was trying to make example from Hello World Plugin) but getting:
[Error] An unexpected error occurred during code generation.
System.InvalidOperationException: No instances of MSBuild could be detected.
Try calling RegisterInstance or RegisterMSBuildPath to manually register one.

after clicking [Generate] or pasting the command directly in the command console.
I have 2 VS installations used daily with Unity - 2019 and 2022 Preview so maybe that is causing the problem?
btw: plugin example code from the wiki has a bug:
public string Name => nameof(ExamplePlugin);

produces error as the actual class name is ExampleCodeGeneratorPlugin  and not ExamplePlugin

Hi @slimshader .
I'd make sure that the .Net Core 3.1 SDK is installed and that it can be found in your terminal path. See here for more info.
https://github.com/jeffcampbellmakesgames/Genesis/wiki/FAQ#im-getting-an-error-that-the-dotnet-file-does-not-exist-or-that-instances-of-msbuild-could-be-detected

btw: plugin example code from the wiki has a bug:

Thanks, I've updated the wiki to use the class name.


osbuild ci: fedora_32-x86_64-vmdk-boot.json: Fedora 32 is EOL and thus not on the mirrors anymore

[2021-06-01T09:49:59.110Z] stdout:
[2021-06-01T09:49:59.111Z]
[2021-06-01T09:49:59.111Z] stderr:
[2021-06-01T09:49:59.111Z] Traceback (most recent call last):
[2021-06-01T09:49:59.111Z]   File "/usr/bin/osbuild", line 11, in <module>
[2021-06-01T09:49:59.111Z]     load_entry_point('osbuild==28', 'console_scripts', 'osbuild')()
[2021-06-01T09:49:59.111Z]   File "/usr/lib/python3.8/site-packages/osbuild/main_cli.py", line 137, in osbuild_cli
[2021-06-01T09:49:59.111Z]     r = manifest.build(
[2021-06-01T09:49:59.111Z]   File "/usr/lib/python3.8/site-packages/osbuild/pipeline.py", line 275, in build
[2021-06-01T09:49:59.111Z]     source.download(store, libdir)
[2021-06-01T09:49:59.111Z]   File "/usr/lib/python3.8/site-packages/osbuild/sources.py", line 54, in download
[2021-06-01T09:49:59.111Z]     raise RuntimeError(f"{source}: " + reply["error"])
[2021-06-01T09:49:59.111Z] RuntimeError: org.osbuild.curl: curl: error downloading {'url': 'http://mirrors.kernel.org/fedora/releases/32/Everything/x86_64/os/Packages/l/linux-firmware-20200316-106.fc32.noarch.rpm'}: error code 28
[2021-06-01T09:49:59.111Z]     main_test.go:479:
[2021-06-01T09:49:59.111Z]         	Error Trace:	main_test.go:479
[2021-06-01T09:49:59.111Z]         	            				main_test.go:533
[2021-06-01T09:49:59.111Z]         	Error:      	Received unexpected error:
[2021-06-01T09:49:59.111Z]         	            	running osbuild failed: exit status 1
[2021-06-01T09:49:59.111Z]         	Test:       	TestImages/fedora_32-x86_64-vmdk-boot.json
[2021-06-01T09:49:59.111Z] --- FAIL: TestImages (359.35s)
[2021-06-01T09:49:59.111Z]     --- FAIL: TestImages/fedora_32-x86_64-vmdk-boot.json (359.31s)
[2021-06-01T09:49:59.111Z] FAIL

Actually, it seems the files are still on the server, they just failed to download during the CI run.


Fixes #9017

--formula is now required for brew list, otherwise an error message is printed.

Failing because of a Formula?

Fixed in https://github.com/Homebrew/brew/pull/9020
Rerunning CI

Honest question: this only changes 1 line which is most likely not covered by tests, since the missing parameter did not show up as a problem on previous runs. Why waste time/resources running those tests? I'm really curious why, since it does not make sense to me.

Why waste time/resources running those tests? I'm really curious why, since it does not make sense to me.

We require CI passes on PRs before merging on this repository.

CI is now failing with the same issue we've seen (intermittently) before: https://github.com/Homebrew/brew/issues/8979
Error: brew update didn't update master!
Start commit:        6a2331b7e Merge pull request #9020 from jonchang/fdroidserver-versioned-conflicts
Expected end commit: c63063646 (origin/master, origin/HEAD) Merge 0ed9ff12d095b9f656f9814024f6d9cb30014a65 into ac8cc16b9e7a7e8da9d1a180ff549a28dd96b64a
Actual end commit:   633f6cbdc (HEAD -> master) audit: fdroidserver can have mixed python versions

Thanks so much for your first contribution!  You rock, @acristoffers!


tim bot chassis calibration

all four corners turn and drive. wheels don't spin to the correct orientation or direction. code is able to identify the robot and serial #.  can bus 26 27 22  and 23 are giving an error.

CAN frame not received/too-stale. Check the CAN bus wiring,
CAN bus utilization, and power to the device.
Module FrontLeft: Set Offset=-175.6.
Initial CANCODER absolute angle=0.0 rotations,
Initial CANCODER angle=0.0 rotations
Module FrontLeft: CANCODER Angle after offset programmed=0.0 rotations
[CAN SPARK] IDs: 20, 21, Received parameter invalid error parameter id 17
FrontLeft passed reality checks.
Module FrontLeft: NEO post-calibrate angle=0.0
Could not transmit CAN Frame.
CAN frame not received/too-stale.
Check the CAN bus wiring, CAN bus utilization, and power to the device.
Module FrontRight: Set Offset=-162.15.
Initial CANCODER absolute angle=0.0 rotations,
Initial CANCODER angle=0.0 rotations
Module FrontRight: CANCODER Angle after offset programmed=0.0 rotations
Could not transmit CAN Frame.
CAN frame not received/too-stale. Check the CAN bus wiring,
CAN bus utilization, and power to the device.
Module FrontRight: Set Offset=-162.15.
Initial CANCODER absolute angle=0.0 rotations,
Initial CANCODER angle=0.0 rotations
Module FrontRight: CANCODER Angle after offset programmed=0.0 rotations
FrontRight passed reality checks.
Module FrontRight: NEO post-calibrate angle=0.0
Could not transmit CAN Frame.
CAN frame not received/too-stale.
Check the CAN bus wiring, CAN bus utilization, and power to the device.
Module BackLeft: Set Offset=-115.4.
Initial CANCODER absolute angle=0.0 rotations,
Initial CANCODER angle=0.0 rotations
Module BackLeft: CANCODER Angle after offset programmed=0.0 rotations
Skipped burning flash.
BackLeft passed reality checks.
Module BackLeft: NEO post-calibrate angle=0.0
CAN frame not received/too-stale.
Check the CAN bus wiring,
CAN bus utilization, and power to the device.
Could not transmit CAN Frame.
[CAN SPARK] IDs: 22, 23, 26, 27, Received parameter invalid error parameter id 17
CAN frame not received/too-stale.
Check the CAN bus wiring, CAN bus utilization, and power to the device.
Module BackRight: Set Offset=158.81.
Initial CANCODER absolute angle=0.0 rotations,
Initial CANCODER angle=0.0 rotations
Module BackRight: CANCODER Angle after offset programmed=0.0 rotations
Skipped burning flash.
BackRight passed reality checks.
Module BackRight: NEO post-calibrate angle=0.0
[phoenix-diagnostics] Server 2024.1.0 (Apr 30 2024, 17:31:56) running on port: 1250
================Offsets==================
FrontLeft: offset -175.6, measured 0.0, should be -175.6
FrontRight: offset -162.15, measured 0.0, should be -162.15
BackLeft: offset -115.4, measured 0.0, should be -115.4
BackRight: offset 158.81, measured 0.0, should be 158.81
============Offsets Done==============

Looks like a may have copied from a different bot's setting.  Possible fix pushed.

New offsets didn't work. debugging the cancoder didn't show values changing while debugging. Next steps: talk to it with Phoenix Tuner and manually check offsets, step 2: confirm we are using new library correctly!

================Offsets==================
FrontLeft: offset 0.0, measured 0.0 m2 = 0.0, should be 0.0
FrontRight: offset 0.0, measured 0.0 m2 = 0.0, should be 0.0
BackLeft: offset 0.0, measured 0.0 m2 = 0.0, should be 0.0
BackRight: offset 0.0, measured 0.0 m2 = 0.0, should be 0.0
============Offsets Done==============

Found we were initializing the cancoder in two places.  Cleaned up so it is done once in SwerveDrivetrain so by the time it's passed into the sub-module it will have it's offset.  Cleans up the sub-module constructor a bit.
Add statusCode checking on the config application with messages if things go wrong.
we can test at next meeting.

================OffsetDebug==================
 FrontLeft: offset=97.382, internal=-0.087890625 cancoder_measured=0.0, if wheel zero aligned adjust offset by 97.469890625
 FrontRight: offset=176.7479, internal=-0.17578125 cancoder_measured=-0.17578125, if wheel zero aligned adjust offset by<PHONE_NUMBER>5
 BackLeft: offset=-93.515, internal=0.0 cancoder_measured=-0.087890625, if wheel zero aligned adjust offset by -93.515
 BackRight: offset=28.7217, internal=0.0 cancoder_measured=0.0, if wheel zero aligned adjust offset by 28.7217
 ============OffsetDebug Done==============


Improve C++ source generation

Description
C++ source generation currently relies on existing anchors in the source file to replace. This is weird and dangerous.
Proposed Change

[ ] Move generated source code to a .gen.cpp file
[ ] Generate multiple .gen.cpp files to make #6 possible

Priority has been lowered a bit, because the FullReflection strategy for RPCs and the reflection-only approach for replication already provide a good developer experience with regards to code generation (i.e. making it unnecessary).
This topic will be revisited in the future.


adds correct url to dropzone

This pull request fixes the following issues:

updates fil eupload styles
adds correct url

LGTM


Adds UAVCAN Support for NXPhlite V3

Test data / coverage
Vetted against px4esc1.6

@dagar commits af59d00..825e6d0 could just go to master. The remainder have to stay on the leitwert-nxphlite-serial-dma until I get all the Nuttx changes upstreamed.

@mcsauder - yep - I missed that, thank you!
We are going to have to do a major pass on the tunes.
For instance:The tune control is blocking. Some of the code is calling tone alarm, Some of the sequences do not emit tones. tune_control play -m MNBG on my HW (but I need to check V5)

@dagar commits af59d00..825e6d0 could just go to master.

Can you open a separate PR? This one can be rebased later.

@dagar commits af59d00..825e6d0 could just go to master.

Can you open a separate PR? This one can be rebased later.

Done!
@dagar Now that this has passed CI Let's merge this to leitwert-nxphlite-serial-dma to consolidate
I will fix the TUNE_ERR issue that @mcsauder pointed out there


many false positives in AWS018 non-empty description

Hi!
In a lot of description fields, I am joining strings, e.g.
description = join(" ", [var.application_name, "ec2", "egress HTTP"])
This yields to many false positive since the newest version
(I guess https://github.com/tfsec/tfsec/commit/5ac30379899ab159ded2ec3141ad49381b41a1e3#diff-82e1fc6c5b3ecfa3083f4f2c9532e1a33c03c516630474130ed0f40b31451029)
[AWS018][ERROR] Resource 'aws_security_group_rule.sg_ec2_outbound_http' should include a non-empty description for auditing purposes.
Expected behavior
AWS0018 not throwing an error.
Additional context
Using macOS, with tfsec installed using brew<EMAIL_ADDRESS>

Same here! Both on mac osx and linux I'm experiencing this issue (version v0.39.6)

Same here :-(
We get round it by using "${var.application_name} ec2 egress HTTP"
I'll leave this open to look into a fix

Actually, I had a look at this again - it was working by fluke in the commit change you sent through, I've updated in #648 for IsEmpty to handle function calls.

Thanks so much for the fast fix! :) 👍


Dynamic Contexts don't register for Hot Module Replacement

The following code won't hot reload (it will log [HMR] Cannot apply update. Need to do a full reload!)
var context = require.context("../../", true, /\.viewtest$/);
var s = context("../../app/screens/categories/view.jsx.viewtest");

if (module.hot) {
  module.hot.accept(["../../app/screens/categories/view.jsx.viewtest"], function (updatedDependencies) {
    console.log("Module reloaded!");
    s = context("../../app/screens/categories/view.jsx.viewtest");
  });
}

but the following code will
var context = require.context("../../", true, /\.viewtest$/); //just to make sure the dynamic context itself isn't what disturbs the HMR

var test = require("../../app/screens/categories/view.jsx.viewtest");

if (module.hot) {
  module.hot.accept(["../../app/screens/categories/view.jsx.viewtest"], function (updatedDependencies) {
    console.log("Module reloaded!");
    require("../../app/screens/categories/view.jsx.viewtest");
  });
}

which means that I have a working HMR setup.
The code seems to be compiled okay:
    var context = __webpack_require__(3);
    var s = context("./app/screens/categories/view.jsx.viewtest");

    if (true) {
      module.hot.accept([5], function (updatedDependencies) {
        console.log("Module reloaded!");
        s = context("./app/screens/categories/view.jsx.viewtest");
      });
    }

It looks like a require going through the context module isn't hooked into the hot module code. Based on what I understand of HMR this is because the the context module is marked as the parent of the to-be-reloaded module and since it doesn't accept the reload the module that creates the context must accept it. However, there is no way to say hot.module.accept("dynamic context", cb); or something like that.
Is this a bug or a design choice? If it is a bug: do you have tips for fixing it?

Only directly required modules can be accepted. A context is like a module so your tree is like this
module  -->  context /\.viewtest$/  -->  ./app/screens/categories/view.jsx.viewtest

So you need to accept the context module:
var context = require.context("../../", true, /\.viewtest$/);
if (module.hot) {
  module.hot.accept(context.id, function() {
    console.log("Module reloaded!");
    context = require.context("../../", true, /\.viewtest$/)
  });
}

Ah, I couldn't think of a way to accept the context module.
Is there a way to determine which of the modules inside the context module were changed?

Is there a way to determine which of the modules inside the context module were changed?

no, but you can rerequire them and compare the exports.

I've read this thread & #1790 repeatedly and still can't seem to get this to console.log:
const fixtures = require.context("./test", true, /\/fixtures\/.+\.js$/);

export default class Components extends React.Component {
  // Going the nuclear-route trying to accept _everything_, since nothing worked :(
  componentDidMount() {
    module.hot.accept(fixtures, function() {
      console.log("o", arguments);
    });

    module.hot.accept(fixtures.id, function() {
      console.log("id", arguments);
    });

    module.hot.accept(fixtures.keys(), function() {
      console.log("keys", arguments);
    });

    module.hot.accept(fixtures.keys()[0], function() {
      console.log("key", arguments);
    });
  }

  render() {
    return (
      <JSONPreview currentFixture={fixtures[0]} />
    );
  }
}

For anyone else who comes along, I had to effectively run this:
// This was the key to it all
fixtures.keys().map((path) => fixtures(path));
module.hot.accept(fixtures.id, () => { ... });

What does that exactly do? I think I'm struggling with the same problem:
https://github.com/webpack/webpack/issues/2237

for those of you who end up at this issue because you can't get HMR and require.context to work. I've uploaded a minimal working version here: https://github.com/jauco/webpack-hot-module-reload-with-context-example

@jauco What would I do if I wanted to export the modules object from hmr_example.js to be made available to another file? When I tried to do this, I got the console.log that a particular file in ./filesToLoad changed, but then I do not see the changes propagated in the application itself.

Can you fork the repo and push the code that isn't working?

Alright. Check this out: https://github.com/AlexLeung/webpack-hot-module-reload-with-context-example
I have entry.js requiring hmr_example.js, but it seems that entry.js is not aware of the exported modules object from hmr_example.js changing, even though I explicitly tell hmr to watch that resource.

I think that a670b83c8918c60dd6a1eaedea5b2d71fab7ee8d makes it more clear what is happening. A way to get the behaviour you seem to want is shown in 448b5f503c0a8922032f8449ef3e19dd33be3d03

I tried module.hot.accept(context.id, callback) at<EMAIL_ADDRESS>but didn't work. ☹

@Cap32 can fork  jauco/webpack-hot-module-reload-with-context-example and reproduce your failure? It will help me understand what goes wrong.

I just upgraded "webpack": "^1.12.14" to "webpack": "^v2.1.0-beta.22" from your webpack-hot-module-reload-with-context-example repo, and then hot reload no longer works. ☹

@Cap32 it works fine for me. Be sure to upgrade webpack-dev-server as well:
    "webpack": "2.1.0-beta.25",
    "webpack-dev-server": "2.1.0-beta.5"

Hi @jauco, In my case, I want to import a react modules
import A from 'a'; ReactDOM.render(<A/>, document.getElementById('hello'))
then a.js hot reload won't work, b.js and c.js is normal. I have not idea how to solve it.
here is my fork https://github.com/flik930/webpack-hot-module-reload-with-context-example

I'm trying the same method with webpack v5,
I've added an another entry point with this
const context = require.context('./src', true, /\.liquid$/);

const modules = {};

context.keys().forEach(function (key) {
    modules[key] = context(key);
});

if (module.hot) {
    module.hot.accept(context.id, function () {
        debugger;
        console.log('Module reloaded!');
        const newContext = require.context('./src', true, /\.liquid$/);
        newContext.keys().forEach(function (key) {
            console.log(context(key));
        });
    });
}

Starting dev-server with hmr enabled, see all the HMR related logs in the console.
When I'm changing one of the .liquid files i do see some logs regarding the changed file, but my hot callback is not called.

Any pointers?


Bug: not a nice animation when going back to the previous activity

Looks like this:

Also, BTW, Android-Studio refused to import the project normally, so I had to clone it and only then import it.

@AndroidDeveloperLB Yes. Have to use onAnimationUpdate and use the animation factor and set padding accordingly.

Can you please fix it?

So it got fixed?

Yes. Check this the new demo gif in the README.md
On Nov 30, 2015 17:46, "AndroidDeveloperLB"<EMAIL_ADDRESS>wrote:

So it got fixed?
—
Reply to this email directly or view it on GitHub
https://github.com/sahildave/Search-View-Layout/issues/3#issuecomment-160613279
.

@sahildave Nice ! Thank you !


MP GO:0004810	tRNA adenylyltransferase activity

GO:0004810  tRNA adenylyltransferase activity
and possibly other siblings
should be housed under the new term:
id: GO:1990817
name: RNA adenylyltransferase activity

Hi Val,
I was going to add the missing parent when I noticed this definition comment:
“This term represents a deleted EC activity and is scheduled for obsoletion.”
The EC is <IP_ADDRESS>, moved to ‘CCA tRNA nucleotidyltransferase’ (http://enzyme.expasy.org/EC/<IP_ADDRESS>)
I couldn’t find any mention of GO:0004810 in obsoletion emails or in the go mailing list archive. A search for ‘scheduled for obsoletion’ among existing terms retrieves 13, all enzyme activities. Would you or @mah11 or maybe @rebeccafoulger have any memory of such a plan please, so I may follow up?
Thanks,
Paola

Sorry, I'm pretty sure the "scheduled for obsoletion" flag post-dates my GO stint (and I did fairly little work on the EC-xref'd catalytic activity terms when I was there).

Thanks @mah11 !

I have no memory either...but it sounds as though a merge with "CCA tRNA nucleotidyltransferase" might be more appropriate (and this term should be a descendent of  RNA adenylyltransferase activity?
Val
(note, if my response times on tickets are slow I am away for most of the time right up to the GO meeting, but I will check e-mail occasionally Val

OK there are 4 EXP annotations to
GO:0004810 tRNA adenylyltransferase activity
it seems that they should all be to
CCA tRNA nucleotidyltransferase
so  first revise to match this change and then add the correct parent.
Thanks,
Val

There was a related item that I can'f find; I remember that in some organisms the addition of the CC can be a different enzyme from the addition of the final A.
Will continue searching

found it
ne might want to look at:PMID:18523015
Evolution of tRNA nucleotidyltransferases: a small deletion generated CC-adding enzymes.
" In some organisms, CCA synthesis is accomplished by the collaboration of evolutionary closely related enzymes with partial activities (CC and A addition). These enzymes carry all known motifs of the catalytic core found in CCA-adding enzymes. Therefore, it is a mystery why these polymerases are restricted in their activity and do not synthesize a complete CCA terminus. "
In some organisms ONE enzyme can add the whole CCA; In some bacteria, however, it appears TWO enzymes, one to add CC, a separate one to add the final A.
Also note that in eukaryotes, CCA is not encoded and always has to be added after removal of 3' trailer, but in bacteria, CCA is encoded; 3' end maturation stops at the CCA.
However, bacteria still do have CCA adding enzymes to maintain the CCA
Original comment by: hdrabkin

Hi @ValWood  and @hdrabkin ,
This is getting a bit confused. Could you please make a summary of suggested changes for ‘tRNA adenylyltransferase activity’ and ‘tRNA 3'-terminal CCA addition’? That is, please provide suggested defs etc. so this really becomes a quick fix ;-)
Thanks.

I just checked the exisiting EXP annotions to GO:0004810 tRNA adenylyltransferase activity are all describing CCA enzyme, so I think this change holds for the existing term
term should be called
CCA tRNA nucleotidyltransferase
and then add the correct parent (whatever that may be)
GO:0009022 tRNA nucleotidyltransferase activity?

There should be two tRNA 3' nucleotidyltransferases.
One that can add CCA as well as the A;
Note that THIS enyzme adds a C, then another C, then an A.
Another that just adds the CC.
THIS enzyme adds a C, then a C.

@hdrabkin , I’ll assign this ticket to you if you don’t mind. Thanks in advance!
Please note that there is an existing term, GO:0001680 tRNA 3'-terminal CCA addition, with (broad) synonym tRNA-nucleotidyltransferase activity and def “Post-transcriptional addition of the terminal 3' CCA sequence to a tRNA which does not encode this sequence within the primary transcript. CCA addition proceeds by the sequential addition of CTP, CTP, and then ATP to the 3' end of the tRNA, yielding a diphosphate with each nucleotide addition.” which seems to correspond exactly to Harold’s suggested first activity.

GO:0004810 appears to just denote the addition of A.
It is using an ec number, EC <IP_ADDRESS>, that appears to have been removed from EC on 2010
The current ec is EC <IP_ADDRESS>; but again is capable fo just adding the A, then this EC is not correct for it.
Then there is a child GO:0052929, which is the enzyme that just adds A to a tRNA that has the CC.This should not be a child of the above.
Then there should be a third one capable of adding C, C, and A sequentially. THIS is the term that corresponds  to the process term GO:0001680 .
Accepted name: CCA tRNA nucleotidyltransferase
Reaction: (1) a tRNA precursor + 2 CTP + ATP = a tRNA with a 3' CCA end + 3 diphosphate (overall EC <IP_ADDRESS>
(1a) a tRNA precursor + CTP = a tRNA with a 3' cytidine end + diphosphate
(1b) a tRNA with a 3' cytidine + CTP = a tRNA with a 3' CC end + diphosphate
(1c) a tRNA with a 3' CC end + ATP = a tRNA with a 3' CCA end + diphosphate
The point is that if in fact all annotations are to the + 2C + A, then the easiest thing to do is to change the def to reflect this, and use the correct dbxref/xref.
THEN create a new activity for the enzyme that can just add an A for that bacteria where the addition of CCA is a two enzyme process.
The GO:0001680 having part GO:0052929 might be putting an unneeded relationship.
Otherwise,

Hi HArold,
Isn't the correct way to do this t have to terms.
One for adding a "C"
One for adding an "A"
If you are annotating the enzyme that has both activities you use both MF terms.
I think we should keep  GO:0001680 tRNA 3'-terminal CCA addition as the process term, as this seems to be correct, based on what you have said. However, it has a lot of narrow synonyms which are confusing as they are likely to be exact synonyms of real MF terms. It would also be useful to add a comment describing the 2 mechanisms, and how to annotate the activities.
This might be what you are suggesting, but I'm not sure...
Val

yes, I just thought myself into a corner and have modified my blathering to the discussion.

Harold,
what do you suggest we do to close this one?

ACTION
add
GO:1990817    RNA adenylyltransferase activity
as a parent of
GO:0004810 tRNA adenylyltransferase activity
Question, shouldn't logical definitions add this parent? @cmungall
This solves my original request.
I think we can live with the rest for now.

Ok, this is done and I removed the (now) redundant parent (Adenyytrnasferase activity).


It takes a long time before the stream is loaded

Hi, first my apologize for my English (i'm from holland)
I had successfully installed Homebridge on my Synology Nas and i'm very happy with the ffmpeg plugin.
My Foscam camera's works both fine.  However, I have two questions.

It takes a long time before the stream is loaded on my iPhone.  Sometimes 30 secs. Is there a trick to get this better? with the OWLR or Foscam app I have picture after two seconds. My upload speed from my cable company is 40 Mbps. What can i do?
My config:
{
"name": "Woonkamer",
"videoConfig": {
"source": "-rtsp_transport tcp -re -i rtsp://jobbes:password@<IP_ADDRESS>:8220/videoMain",
"stillImageSource": "-i http://<IP_ADDRESS>:8220/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=jobbes&pwd=password",
"maxStreams": 3,
"maxWidth": 1280,
"maxHeight": 720,
"maxFPS": 20
}
}

How can i get also audio from my camera's in the Home app?

Hello,

I have observed that part of the slowness to begin the video stream is in the delay launching FFMpeg as an external process. Since Homebridge is written in NodeJS, it would be faster (in theory) if NodeJS could talk to FFMpeg directly through a library. This is not a trivial fix, but certainly possible with the right developer skills in N-API. A suggestion for interested parties here: https://github.com/TruthBean/ffmpeg-nodejs

To the best of my knowledge, audio is not as well supported as video, so it may not be an easy fix depending on your camera and settings.

Okay, thanks for your reply


adding more query samples

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

adding more query samples


Add middle name to instructor profile update form

This form https://amy.software-carpentry.org/workshops/update_profile/
does not have a middle name field but our database does.
This means that if a person wants to use their middle name they have to append it to their first or last name,  resulting in a match not being found.

Training request form doesn't have a middle name field too.


Use axum-core,async-trait,http instead of axum

This pr uses axum-core, async-trait, http dependencies instead of axum to reduce dependency count and improve compile times.
Before:
$ time cargo build
________________________________________________________
Executed in   16.97 secs    fish           external
   usr time   42.60 secs    0.00 millis   42.60 secs
   sys time    3.55 secs    1.73 millis    3.55 secs

$ cargo tree | wc -l
67

After:
$ time cargo build
________________________________________________________
Executed in    9.81 secs    fish           external
   usr time   23.97 secs    0.00 millis   23.97 secs
   sys time    2.18 secs    1.36 millis    2.18 secs

$ cargo tree | wc -l
39

This also looks great, thank you!


require(...) is not a function

Hello, when using bytenode. Compiling seems to be fully fine. However, when I use the require() function for Node.Js it returns;
require(`./updatemanager.jsc`)(app, connection, bot, itemVersion, faxstore);
                                  ^
TypeError: require(...) is not a function

The updatemanager.jsc file is a bunch of SQL queries. But it pretty much looks like
const config = require('../config.json');
const fs = require("fs");
const axios = require('axios');
module.exports = async function(app, connection, bot, itemVersion, faxstore) {
    // SQL checks
    connection.ping(function (err) {
        if(err) {
            console.log(`\x1b[31mSQL connection failed. Ensure the login details are correct.\x1b[0m`);
            process.exit();
        }
    });
}

It is called via
require('./updatemanager.jsc')(app, connection, bot, paypal, stripe, sgMail, faxstore);

Wondering what could case this issue and if there's any resolution.

Turned out to be a syntax error inside the update manager file.

Other potential reasons for this kind of error is compiling directly, without compileAsModule: true parameter.


EVP_aes_256_cfb8 NULL pointer dereference if key is empty

This is a reproduction of https://oss-fuzz.com/testcase-detail/5732082979962880
Segfault appears to occur in assembly -- this is Intel 64 bit.
#include <openssl/evp.h>
#define CF_CHECK_EQ(expr, res) if ( (expr) != (res) ) { goto end; }
#define CF_CHECK_NE(expr, res) if ( (expr) == (res) ) { goto end; }
#define CF_CHECK_GT(expr, res) if ( (expr) <= (res) ) { goto end; }
#define CF_CHECK_GTE(expr, res) if ( (expr) < (res) ) { goto end; }
#define CF_CHECK_LT(expr, res) if ( (expr) >= (res) ) { goto end; }
#define CF_CHECK_LTE(expr, res) if ( (expr) > (res) ) { goto end; }
int main(void)
{
    int len = -1;
    unsigned char iv[16] = {0};
    unsigned char in[16] = {0};
    unsigned char out[1024];
    EVP_CIPHER_CTX* ctx = EVP_CIPHER_CTX_new();
    const EVP_CIPHER* cipher = EVP_aes_256_cfb8();
    CF_CHECK_EQ(EVP_EncryptInit_ex(ctx, cipher, nullptr, nullptr, nullptr), 1);
    CF_CHECK_EQ(EVP_CIPHER_CTX_set_key_length(ctx, 0), 1);
    CF_CHECK_EQ(EVP_EncryptInit_ex(ctx, nullptr, nullptr, nullptr, iv), 1);
    CF_CHECK_EQ(EVP_EncryptUpdate(ctx, out, &len, in, 16), 1);
end:
    return 0;
}

Seems to have been caused by #9328.
AES-256-CFB8 does not support variable length keys, and yet after that PR calls to EVP_CIPHER_CTX_set_key_length succeed.
Ping @levitte.

@mattcaswell / others: Just wondering: do you consider Cryptofuzz and its findings beneficial to OpenSSL? Is there anything you would like to see changed or improved?

It's not always clear in which project the problem is.

@mattcaswell / others: Just wondering: do you consider Cryptofuzz and its findings beneficial to OpenSSL? Is there anything you would like to see changed or improved?

Finding stuff like this is very useful. We're making lots of changes at the moment and it is helpful to find stuff that might otherwise slip through unnoticed. I do agree with @kroeckx though - I tend to ignore the notifications because there's too many of them and its not always clear which project is the cause (or whether it is a problem with cryptofuzz itself). I wait until you raise issues before looking at them.

Right. If it is a memory bug or undefined behavior, the affected projected can usually be inferred from the stack trace, which you can see on the oss-fuzz.com page for that bug. In case you have doubts whether it concerns OpenSSL master, OpenSSL 1.1.0, OpenSSL 1.0.2, LibreSSL or BoringSSL, you can tell this from the fuzzer name (eg. libFuzzer_cryptofuzz_cryptofuzz-openssl-110-noasm).
If it concerns a different result between two libraries (or two different results from the same library), you can know the involved libraries from the crash name.
Eg. The crash name of https://oss-fuzz.com/testcase-detail/5746833189502976 is OpenSSL-OpenSSL-SymmetricDecrypt-CHACHA20_POLYNUMBER-difference, which means that OpenSSL decrypted into two different plaintexts for CHACHA20-POLY1305 (apparently oss-fuzz changes 1305 into NUMBER).
Another example could be OpenSSL-libgcrypt-SymmetricEncrypt-AES-difference which would mean that OpenSSL and libgcrypt encrypted into a different ciphertext using the AES cipher (with the same plaintext, key, iv).
Furthermore, you can download both the build and the testcase from the oss-fuzz issue page, and run it like this:
<binary> --debug <testcase>

and it will print some information like parameters (key, iv, ...) and module name (eg. OpenSSL) before running.
But I'll always be stand-by and create Github issues for whatever OSS-Fuzz finds if I have time.

I've tried clicking through to the link in the email notification a couple of times but I don't have permissions.

@paulidale do you have an email address linked to a Google account? Please give me that and I'll add you.

Email sent, thanks.

Reminder that this bug is still actual. This new crash: https://oss-fuzz.com/testcase-detail/5696809090940928 probably has the same root cause.

Does #9562 solve this?

Does #9562 solve this?

Nope -- PoC (see first post in this thread) still crashes.

Several new crashes at OSS-Fuzz like this one
https://oss-fuzz.com/testcase-detail/5181934937833472
Reports OOB read at
https://github.com/openssl/openssl/blob/c85d5e025797f4e77c2166150bbf8745e9d00696/crypto/aria/aria.c#L561
Inputs:
operation name: SymmetricDecrypt
ciphertext: {0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, 0x20, 0x20} (16 bytes)
tag: nullopt
aad: nullopt
cipher iv: {0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20} (8 bytes)
cipher key: {0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20} (8 bytes)
cipher: ARIA_192_CCM
cleartextSize: 8224

Might be related

This should have been fixed by #10449. @guidovranken can you confirm?

Yes, fixed.


Dashboard local cache blocks dashboard datasets tab if they're imported through import API

Create an empty account.
Open the datasets dashboard. It takes you to Data Library because you haven't got datasets.
Import a file with the import API. Wait for the import to finish ok.
Click "Datasets" tab. Instead of taking you to the datasets tab, now that you have one, it goes back to the Data Library. Datasets count is updated, though. Importing more files with the Import API doesn't fix the issue: count keeps growing, but navigation keeps blocked.

cc @xavijam

ha! ok, I'll take care of it.
cc @javisantana

PD: relevant detail I forgot: reloading doesn't fix it. Cleaning local storage does, that's why I'm pretty sure it's related to the local cache.

There has been no activity on this issue for more several months. We are closing it. If you think this still needs to be addressed please open a new issue.


[Feature] I want to override the schema/database my unit test temp tables are built into

Is this your first time submitting a feature request?

[X] I have read the expectations for open source contributors
[X] I have searched the existing issues, and I could not find an existing issue for this feature
[X] I am requesting a straightforward extension of existing dbt functionality, rather than a Big Idea better suited to a discussion

Describe the feature
Some folks have strict access requirements that prevent developers from creating tables in the schemas/databases used for their dbt models.
This prevents them from creating a unit test for that type of model, because dbt attempts to build a temp table in that schema/database.
We should provide the ability to override the schema/database used for the temp unit testing tables, so that folks can configure their unit test definitions to use a sandbox location (separate from their actual tables).

@graciegoheen, @jtcohen6 and myself discussed this, and we'd rather if the instigating use-cases can be solved via an implementation detail rather than via a configurable option.
A couple options we discussed briefly:

Build the temporary objects in the same database + schema as the model being tested
Build the temporary objects in the target.database + target.schema from the connection profile

Two edge-cases we've seen in the wild to take into account:

The dbt process doesn't have permission to write to the schema for model being tested

for example, because there's a separate team that has responsibility for the DDL for the incremental model

The configured target.schema is a dummy that is always overridden within the project

We're gonna close this as "won't do", but if anyone really wants this, please reach out and describe your scenario and we can consider re-opening it.

Hi @dbeatty10 + @graciegoheen -
We have a scenario that could be addressed by overriding the schema/DB where the unit test temp tables are built. But, I think a better solution would be to allow unit tests to create custom schemas (consistent with dbt's approach to building models in custom schemas).
We're running dbt run and dbt test in a slim-CI pipeline. When a developer opens a MR, their changed models are built and tested in a transient, MR-linked custom schema.
We're now migrating to dbt>1.7, and we want to be able to add unit tests to our legacy models.
Unfortunately, when developers open new MRs contributing just unit tests, the tested models aren't rebuilt in the MR-linked custom schema --since the model hasn't changed. As a result, dbt isn't creating transient, MR-linked schema. So, when dbt test  runs unit_tests, they are failing on create {DB}.{MR_LINKED_SCHEMA}.{UNIT_TEST}__dbt_tmp since the custom MR-linked schema {MR_LINKED_SCHEMA} doesn't exist.
Since dbt behavior already includes creating custom schemas where needed, it seems reasonable for dbt to create custom schemas for unit test tmp tables.
Let me know if that's unclear -- happy to try to provide a MRE, and thanks for all your work on dbt 🙂


Extension issue

Issue Type: Bug
Extension Name: python
Extension Version: 2021.9.1191016588
OS Version: Windows_NT x64 10.0.19043
VS Code version: 1.60.0

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

Thanks for the bug report, but unfortunately we need some more information from you in order to triage this issue appropriately. Please create a new bug by providing a filled-in copy of our issue template.


ElastoDyn vs SubDyn: Different behavior in floating systems

Bug description
I commented this issue in the past offline, but I leave it here for traceability.
When modeling a rigid platform in SubDyn (e.g., defining a rigid link and one lumped mass and inertia), the response is different than when a rigid platform in ElastoDyn is defined. This difference seems to show up when there is a modulation in the system response (e.g., two natural frequencies that are relatively close between them).
To illustrate this issue, the system has been simplified significantly:

Only three OpenFAST modules are used in this comparison: ElastoDyn, SubDyn and HydroDyn. HydroDyn is used to include the vertical force (equivalent to the buoyancy force) and a stiffness matrix (equivalent to the hydrostatic restoring). Below you can find the comparison between the platform being modeled in ElastoDyn vs the platform modeled in SubDyn vs the system simulated in HOTINT (EXUDYN).

As it can be observed, the agreement between ElastoDyn and HOTINT is excellent and SubDyn behaves differently.
The tests have been performed with the current OpenFAST dev branch (e39453a).
This may be a good test case to run with the tight coupling (#PR1850) and check if the SubDyn response improves.

The discrepancy observed between the ElastoDyn model and the rigid SubDyn model is a consequence of the linearized equations of motion of the Guyan modes (rigid-body motion for floating) in SubDyn. This issue will be resolved as part of PR #2203.


default value for Boolean is NOT undefined, it is false, which is inconsistent with other types

Version
2.2.6
Reproduction link
https://jsfiddle.net/15ku6ck7/1/
Steps to reproduce
Just run the jsfiddle, it will output: "b is not undefined, it is: false; s is undefined"
b is of Boolean type, s is of String type
What is expected?
b is also undefined if not provided
What is actually happening?
b is false

This is a feature, not a bug. I can't think of a case where undefined is more useful - and changing it would be a breaking change for little gain.

Sometimes i want to know whether a prop is provided by parent component, so i check if is undefined

@yyx990803 +1


Add pagination for user dashboard feeds

Gogs version (or commit ref): try.gogs.io
Git version: try.gogs.io
Operating system: try.gogs.io
Database (use [x]):

[ ] PostgreSQL
[ ] MySQL
[ ] SQLite

Can you reproduce the bug at https://try.gogs.io:

[x] Yes   https://try.gogs.io (after login, the user dashboard)
[ ] No
[ ] Not relevant

Log gist:

Description
In the user dashboard where all recent updates are displayed, there is no pagination to see the older updates. Only the first 20 are shown.

duplicate of #2511

Thanks @henkjan !


Disable Download CSV option

Is there any way to disable download CSV option or remove 'Export as CSV' from toolbar download Menu??

As far I know there is no such property in the toolbar settings, but it can be done in a pragmatic way via CSS.
.apexcharts-menu-item.exportCSV {     display: none; }


[Deploy] Recipe for Roam Research

Service

This recipe is for Roam Research.
Roam Research
A note-taking tool for networked thought.
As easy to use as a document. As powerful as a graph database.
Roam helps you organize your research for the long haul.
Link to your repository
https://github.com/gurrinder/franz-roam
Additional Information

How do I upvote this...


MXNet Tracer

This is a tracer for profiling time consuming of MXNet operations, whose purpose is to find and analysis MXNet performance issues.
There are two samples below:

This is a matrix multiplication sample where both operators' shape is (4096, 4096).

After zooming it on, We can see that each matrix multiplication consuming about 25ms, and the scheduling time between two multiplications is about 0.1ms.

This is a five iteration trace of executing a five layers MLP model.

Similarly, You can see more detail by zooming it on, clicking it.
Sample code:
test_tracer_matmul.py
test_tracer_symbolic.py
Sample trace files:
trace_matmul_20iter.json
trace_symbolic_5iter_executor
(just load the trace file at chrome://tracing in your Chrome browser, then enjoy it:D)
I would appreciate it if anyone can review the code, thanks!

cc @jermainewang

good job. I think one main goal is we wan to make sure that the tracer is limited to the enough code, without changing other parts.

Is it possible to remove need_tracer args in the executor, so it is all up to the engine
Put the op name in the last argument of engine and make it optional as const char*, so when it is turned off, there is no overhead except for the names.

Put the op name in the last argument of engine and make it optional as const char*, so when it is turned off, there is no overhead except for the names.
Sounds good.

Is it possible to remove need_tracer args in the executor, so it is all up to the engine
This is a problem Minjie and I have discussed before. There exists a problem if we just depend on a state variable to decide whether to record (as the current implementation of TurnTracer/Off). The tracer may only record the end of operation execution because the execution is asynchronous. (Missed Record Start => TurnOnTracer => Record End) or (Record Start => TurnOffTracer => Miss Record End).

But need_tracer can solve this problem, it's a variable to indicate engine whether to record this operation execution. We encourage users to use TurnOnTracer only when they ensure the execution synchronization.

Besides, need_tracer is only used to record symbolic operation (fc, relu, conv... passed by executor), but when you do TurnOnTracer, all operations including NDArray operation will be recorded. This is another difference.

I think we can solve this in a different way. Something like
SetTracerMode(SymbolicOnly)
Where these states can be queried by executor. This enables us to not breach the executor interface

I see... good idea. I'll try it tonight.

Control Tracer with env variable sounds better to me, since usually you would want it on for the entire script.
Also Profiler is a more straight forward name.

@piiswrong
Cool, Profiler seems a better name indeed.
Uh, I have thought to use env variable to control tracer, but it will raise some problems:

we usually first do some dry run to boot device, then the real execution round we want to record, as you can see in test_symbolic.py.
It's ok to record all symbolic operation for the entire script. But if you try to record overall operation including NDArray operation, the trace file will be very large like hundreds of MB.

Out of the reasons above, I think it's perhaps necessary to manually control in the execution code.

@ZihengJiang Can we have two env variable? One for turn on NDArray recording, another for symbolic executor recording.

OK, let's discuss what kind of API do we want.  @tqchen @piiswrong
Goal

Choose to record symbolic operations or all operations.
Record certain rounds of execution in the middle of running procedure to exclude some deviation like booting device time and avoid large trace file.

Why symbolic operation is special from other operation?

symbolic operation is those core operations we intend to focus on. Too much operations will make the trace a mess and large trace file.
symbolic operation can be separated out. it's only passed by graph_executor.
symbolic operation have the concept of round or iteration obviously by executor.forward/backward. As for other operations, you don't know which iteration it belong to because of asynchronisation of operation execution.

API Design
Env Variables
MXNET_PROFILER_SYMBOLIC: profiler will be turned on to record only symbolic operation.
MXNET_PROFILER_ALL: profiler will be turned on to record all operation.
But if we only have these two env variables, we cannot achieve the second goal. So we need to point out which execution round we want to record explicitly.
Python APIs
turn_tracer_on()/turn_tracer_off()

Turn on/off the profiler to record execution during the interval.
model.fit(...num_iterations=None,
		      begin_tracing_iteration=None,
		      end_tracing_iteration=None,...)

It indicates profiler to record execution from the begin iteration to the end iteration.
need_tracer acts as the same role to tell engine which execution round should be recorded. It can be removed from executor api as Tianqi said.
Beside, maybe you want to specify the output filename as an env variable too, right? like MXNET_PROFILER_FILENAME

OK, let's discuss what kind of API do we want.  @tqchen @piiswrong
Goal

Choose to record symbolic operations or all operations.
Record certain rounds of execution in the middle of running procedure to exclude some deviation like booting device time and avoid large trace file.

Why symbolic operation is special from other operation?

symbolic operation is those core operations we intend to focus on. Too much operations will make the trace a mess and large trace file.
symbolic operation can be separated out. it's only passed by graph_executor.
symbolic operation have the concept of round or iteration obviously by executor.forward/backward. As for other operations, you don't know which iteration it belong to because of asynchronisation of operation execution.

API Design
Env Variables
MXNET_PROFILER_SYMBOLIC: profiler will be turned on to record only symbolic operation.
MXNET_PROFILER_ALL: profiler will be turned on to record all operation.
But if we only have these two env variables, we cannot achieve the second goal. So we need to point out which execution round we want to record explicitly.
Python APIs
turn_tracer_on()/turn_tracer_off()

Turn on/off the profiler to record execution during the interval.
model.fit(...num_iterations=None,
		      begin_tracing_iteration=None,
		      end_tracing_iteration=None,...)

It indicates profiler to record execution from the begin iteration to the end iteration.
need_tracer acts as the same role to tell engine which execution round should be recorded. It can be removed from executor api as Tianqi said.
Beside, maybe you want to specify the output filename as an env variable too, right? like MXNET_PROFILER_FILENAME

Activation with python command also makes sense. But please use a separate on/off switch api instead of modifying existing interface.

@piiswrong No problem
I'll move opr_name at last and add some comments tonight

great job!
I heard that tensorflow has tools to visualize on which gpu each operator is evaluated, and also show the communication between gpus. such information is often useful when users want to check everything is fine.

@mli Cool, the context information is available in the Engine during runtime indeed, maybe we can use it to do more work.

A couple suggestions:

Add a compiler flag USE_PROFILER
wrap profiler message in macro that returns nullptr when USE_PROFILER=false
use macro stringification to include more detail like op name in message

Could you rebase this on the nnvm branch? It is mostly stable

@phunterlau OK, no problem

Just finished, could you do a review please @piiswrong

So what's your decision? Are you going to change opr_name back to std:string or are you going to fix the memory leak issue in some other way?

@piiswrong Sorry for the late update, I fixed the memory leak by using op->name. The result seems okay and there are the samples.

Is this ready for merging? Please fix lint and we can merge

Alright, pass lint test now. It should be sufficiently prepared for merging.

Merged! Thanks.
I just learned that people at HB also worked on a profiler. You can talk to them and see if they have any extra features we can add.
@gengyifeng

Thank you for your kind assistance!
Got it. I'll contact with him. And just like Mu said, maybe we can try to add device/memory information in the future.

@ZihengJiang nice work about the profiler!
One main usage of profiler is finding the bottleneck of the program. I have done some work about it. The code is quite similar, which adding opr_name when pushing an operation and recording the time when executing the operation. I focused on measuring the statistics of running time for each operation. I believe I can also get such statistics from your trace file. But I'm a little curious about the name field in your trace file. Why the name looks like "data-fc1_weight-fc1_bias-fc1-relu1-fc2_weight-fc2_bias-fc2-relu2-fc3_weight-fc3_bias"?

@gengyifeng oh, sorry that I haven't updated the sample trace files before. You can try the new files. The name looks like this due to MXNet master branch use some optimization to create subgraph and treat it as one operator, removing sync time (https://github.com/dmlc/mxnet/pull/2496)

@ZihengJiang Could you try adding some tests for profiler?

@ZihengJiang I got your new files. Yes, names are more meaningful, but more information should be better. For operator, which layers it belongs to. For ndarray operation, the type or the shape of the ndarray also helps.
Here is a profiler log I used to understand the performance of mxnet (bulk exec disabled) for a specified network. You can have a look at it.
timer.txt

@gengyifeng Okay, I see. Pretty cool. It provides us the straight information like which operator consumed the most time. Yes, I think we can add some analysis like this to the profiler. How do you get the name like NDArray_gpu_ScalarOp_mxnet::ndarray::Mul? Do you want to create a pull request by yourself or let me add this feature?
@piiswrong got it.Besides the profiler python api, Is there anything else we need to test?

name = "NDArray_gpu_ScalarOp_" + OperationTimer::demangle(typeid(OP).name());
It's better u can add it in your PR as u are more familiar with your changes.
btw: demangle function
#ifdef GNUG
std::string OperationTimer::demangle(const char* name) {
int status = -4; // some arbitrary value to eliminate warning
std::unique_ptr<char, void(*)(void )> res {
abi::__cxa_demangle(name, NULL, NULL, &status),
std::free
};
return (status == 0) ? res.get() : name ;
}
#else
// does nothing if not g++
std::string OperationTimer::demangle(const char name) {
return name;
}
#endif

@gengyifeng Could you post your profiler (doesn't need to be runnable or mergable, just for reference) so we can combine the virtue of both?

Here is a diff for previous mxnet.
profiler.diff.txt
The profiler is quite light-weight, as it does not record the timeline but the running time for each operation. The info is kept and updated in a map during running and dump to a file when the program finishes.

@gengyifeng got it, thanks!

@ZihengJiang  thanks for bring in profiler to MXNet.
Would you add some docs about profiler design and using in MXNet?
i just run example/profiler/profiler_executor.py, and it saved one file profile_executor_5iter.json, but i don't konw how to use and analyze this json file if not read the corresponding code.
thanks.


Vulnerability roundup 111: keycloak-15.1.0: 1 advisory [8.8]

search, files

[ ] CVE-2021-4133 CVSSv3=8.8 (nixos-unstable)

CVE details
CVE-2021-4133
A flaw was found in Keycloak in versions from 12.0.0 and before 15.1.1 which allows an attacker with any existing user account to create new default user accounts via the administrative REST API even when new user registration is disabled.

Scanned versions: nixos-unstable: 5aaed40d22f.
Cc @ngerstle
Cc @talyz

Fixed:

nixos-22.05: keycloak-18.0.0
nixos-unstable: keycloak-19.0.2


Don't ask for permissions immediately after installation

I use DuckDuckGo, but not Google.
And yet, you are forced to ask for Google permissions.
Like DuckDuckGo and Startpage, I'd like to see the system allow it manually.

I think it reasonable to require Google permissions on install, because most users use Google and are not familiar with permissions.

Do not invade the privacy of the minority. :(

I think it's important to remain neutral in creating software, not favoring any particular service.
Firefox's default search engine is Google. But it can be removed or changed.
Such neutrality is now required of uBlacklist.


update mocha to version 3.4.1

https://greenkeeper.io/

Coverage remained the same at 100.0% when pulling e83feccde36fe453501b8d4945ba39988f53fead on greenkeeper-mocha-3.4.1 into ea3247b311f485c994cad9febc44f5e39c34563a on master.


No way to have both, assignments with sections and assignments with no sections

This is a fairly big deal. Once somebody creates an assignments which uses sections, all other assignments use sections as well. I doubt this is something we want. Have a look at the demo server and try creating an assignment which does not use sections.

See #566 for more info on this issue.

To my uninformed eye, this seems like it's related but not identical to #566: in my course, we did not create any section-based assignment to start with.  We simply populated the student list with section information, and then were unable to create any assignment that was not section-based.
So the problem seems to be, not that creating one section-based assignment forces all others to also be section-based, but rather that simply having section information included in the student list forces all assignments to be section-based (right from the start).

Thanks for the clarification. I did file this ticket because of your problem though. Now I see that the problem has two aspects to it. It is easiest to tackle both problems at once, though. Therefore one ticket.

Luke says that the fix for #569 also fixes this one. Danesh, could you have a look and confirm? Thanks!

Just to clarify, reproducing it is by

Creating/updating an assignment with the box checked.
Creating another assignment - the box enabled permanently.

I reset my branch to 92f3f90fb0a^ (one pull request before 92f3f90fb0a). While creating the second assignment I could still toggle the box but the section name and due date fields did not appear at all.
I also tested this on master's HEAD and got the same results as the demo online. Is that what the expected result is meant to be? If so then this is good to close.

The problem was that once an assignment with section due dates was set up, there was no way to set up another one with section due dates unchecked. What demo are you referring to? If it is http://demo.markusproject.org that you are referring to then, I'm afraid, that one has the bug as well.

This seems to be fixed now on master, due to #569. Danesh did you manage to verify?

I just tested this on master:

Create an assignment with section due dates.
Then click on "new" assignment. Section due dates box isn't checked (correct). Check box, list of sections shows up (correct).

I think this is fixed.

Ok, closing (will be in the next release). Thanks for checking Luke.


singelplayer

I cant find the config file from my singelplayer world.
is there another option were i can change the value of backpack slots ?

Hi
The config file is located here:
<your .minecraft folder/instance folder when using a custom loader>/config/backpackattribute/server.json
The server config also applies to singleplayer worlds.
(Singleplayer worlds basically run on a local server)


TestWatcherWaypoints fails after TestMatmulSingleCores on n300 remote device

Steps to reproduce:

Re-enable TestMatmulSingleCore on device 1
Run TT_METAL_SLOW_DISPATCH_MODE=1 ./build/test/tt_metal/unit_tests --gtest_filter=*TestWatcherWaypoints:*PrintFromAllHarts
Result is that the WatcherWaypoints test hangs waiting on one of the remote eth kernels to run

Seems to only happen on CI machines, can't reproduce locally.

Suspect related to #5604

Fixed by FD2.0, PR to re-enable mergedL https://github.com/tenstorrent/tt-metal/pull/8325


Commit Status builds with Branch regex

Changes

The Plan object now has a commit_status_regex field. The regex field is tested against the branch for all trigger types, while commit_status_regex is tested against the commit status only. A migration moves existing values of regex to commit_status_regex for Plans with the trigger type "status".

Migration tested locally, but haven't run builds.


Migrate Travis -> Github Actions

Travis will be limited open source projects build time soon, so we need to transition to github actions.
Take a look at how we did it open discussions or bootcamps or micromasters

moot now


Backend setup

Setup backend folder, move make file to the main directory instead of ./frontend.
Dune files too.

done this, added a library dune file to a folder called backend, all "main" files moved to root


Error in file normalization?

https://github.com/AudioKit/AudioKit/blob/9ae8641551bc5f7b4c9b4c887aa327155fac83b5/AudioKit/Common/Internals/Audio File/AKAudioFile.swift#L294

OK maybe that was too terse.  Aren't audio file samples root-power or field quantities since they are amplitudes?  If so, the conversions between decibels and gain would be: gain = 10^(dB/20) and db = 20 x log10(gain/ref).
I've only gotten into audio processing since a few months ago so if I'm missing something, forgive me (and tell me what I'm missing).  Thanks!

I think you're right, can you make a pull request with the change?


Land on ospath

See for more

directory-<IP_ADDRESS> package based on Cabal-3.8 which not released in stackage.

Stackage Nightly 2022-10-07:
<IP_ADDRESS>

Latest on Hackage:
<IP_ADDRESS>

path based on filepath now. The last one is rather good now.


Login page validation

Describe the bug
On Sign Up page in Name fields ,numbers are also getting accepted. I would like to build a solution where there will be alerts for wrong input in Name fields.
@QAZIMAAZARSHAD Pls assign this issue to me.

@mrunmayee9601 issue name should be short and descriptive.

@mrunmayee9601 issue name should be short and descriptive.

Okay understood

@mrunmayee9601  any updates.........?

I want to apply for login page validation.
I have done a similar project, check here:
https://mayuribotre15.github.io/validation-form.github.io/

@mayuribotre15 sign-up is already fine.
The login page can be improved.
But don't do like you have shown in that link. Generate a sweet alert for every warning and submission.

@mayuribotre15 I will assign you this issue once you resolve the other assigned issue.

can i work on login page validation?

Re: Can you please let me know what all validations Are to be added other than on the signUp page username field?
@Riya123-code

Correct emails should be accepted in the mail field, like<EMAIL_ADDRESS>or<EMAIL_ADDRESS>But entries like<EMAIL_ADDRESS>are also getting accepted.
And the password requires only 6 characters right now, add a few more constraints like the range should be 6-18 characters, at least 1 capital letter, at least 1 small letter, at least 1 special character, etc.
Also, every time user makes a wrong entry all inputs vanish due to refresh, this should not happen.
Also, a specific warning pop-up should appear for wrong entries like a special character is missing in the password or @fwwfff.kj is not the correct email format, etc.
Forgot password hyperlink should redirect to forgot password page.

Do the required changes in the login.html page only for now.


Drupal 8 instructions don’t support inserting embed into the head

The key issue is it's really not easy for an end user to manually insert an embed code into the head of a Drupal site.  For Drupal 7 we instruct them to install an Add to Head module, but even that is not compatible with Drupal 8.  On Joomla they have to edit their theme, but at least it provides an editor inside the admin interface.  The only thing we could reasonably tell a Drupal user would be 'figure out where your files are stored, find the right theme, and edit the right template or php file'.
The absolute best option might be to make it so we could take an embed code and package up a quick Drupal 8 plugin the user could just install.  Of course, that's kinda what we're already doing with Eager, so perhaps the solution is to just tell developers to use that.

@zackbloom, @adamschwartz
We could extend the supports attribute to signify if a target supports insertInHead.
Thoughts?

wfm

Yea, it might be better in the long run to do like insertInto: ['body'].


[Package Request]: Easy Context Menu (zip)

Package Requested

[X] I would like someone else to build the manifest.
[ ] I would like help so I can submit the manifest.
[X] I have performed a search and couldn't find this package.
[ ] I have checked that the installer for this package is not contained in a .zip file
[ ] I think there is a new version available and I have provided the URL.

Please provide the following information
Publisher: Sordum
Publisher Url: https://www.sordum.org/7615/easy-context-menu-v1-6/
Package Name: Sordum.EasyContextMenu
Description: Easy Context Menu (ECM) lets you add a variety of useful commands and tweaks to the Desktop, My Computer, Drives, File and Folder right-click context menus.
Package Version: 1.6
Installer URL: https://www.sordum.org/files/downloads.php?easy-context-menu

@msftbot zip


Display text attachments inline

Not planned.
Also, this is the fourth time you're reminded to not suggest features (#90 was the first time). A fifth time will cause a block on your account from the organization.


Chrome Crashes

Chrome crashes when we invoke
// to sync audio/video playbacks in browser!
videoRecorder.initRecorder(function() {
audioRecorder.initRecorder(function() {
audioRecorder.startRecording();
videoRecorder.startRecording();
});
});
Please help.

@muaz-khan I'm seeing the same crash on Firefox as well, this is probably related to one of the latest commits?

For example, in MRecordRTC
self.videoRecorder.initRecorder(function() {
    self.audioRecorder.initRecorder(function() {
        // Both recorders are ready to record things accurately
        self.videoRecorder.startRecording();
        self.audioRecorder.startRecording();
    });
});

will call the initCallback twice, because of this in MediaStreamRecorder:
if (config.initCallback) {
    config.initCallback();
}

which drives it into an infinite loop, eventually throwing an OutOfMemory exception.