Can't get tsserver to work

nvim --version: NVIM v0.5.0-397-g96059d72e
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3
nvim-lsp version: 7c2bc9a
What language server(If the problem is related to a specific language server): tsserver
Operating system/version: Windows 10 1903
Terminal name/version: windows console
$TERM: vtpcon

How to reproduce the problem from neovim startup

After npm install -g typescript-language-server, configure with :lua require('nvim_lsp').setup{}
Then edit a JS file in a folder with a package.json.

Actual behaviour
It gives me this error:
Error detected while processing FileType Autocommands for "javascript":
E5108: Error executing lua ...evPrograms\Neovim\share\nvim\runtime\lua\vim\lsp\rpc.lua:259: attempt to index upvalue 'handle' (a nil value)

and doesn't work.
Expected behaviour
It just works

Does your project's package.json includes typescript?
typescript-language-server needs tsc command.
If not, you should add typescript to your package.json or execute npm install -g typescript.

I tried both installing typescript globally and locally, but it didn't work. I also installed the typescript-language-server and typescript to the folder the automatic installer would install to (from :LspInstallInfo) if it worked but still doesn't work. Same error.

Sorry about the closing, chrome's dark mode made the button text unreadable.

@K1DV5 Would you paste the result of executing :lua print(vim.inspect(vim.lsp.buf_get_clients())) after the error.

Weird, its {}

@h-michael any news yet?

@K1DV5 Can you use other language servers?
Does it occur with only typescript-language-server?

Yes, texlab and pyls work just fine. Only tsserver is not working.

@h-michael I just found the problem. On Windows, the binary for typescript-language-server is not really a binary (.exe file) but a batch file (.cmd). That means it cannot be found with just the name typescript-language-server as a normal binary by nvim/libuv. Simply changing the command to typescript-language-server.cmd solved the problem. Now this change can be made permanent in the config by checking if the platform is win32 and appending .cmd to the command. (I could submit a pull request but I'm on mobile.)

I have also met a similar issue with pyls on Linux. In my case, it is the pyls executable is not properly installed and broken. I uninstalled the old pyls and reinstalled. Everything works now.


Move subcommands from sc-cli to nodes

A follow-up from https://github.com/paritytech/substrate/pull/6894.
polkadot companion: https://github.com/paritytech/polkadot/pull/1635

Please not use rebasing and force pushes.

Please not use rebasing and force pushes.

(Just out of curiosity :grin: Why?)
@expenses  When using squash-merge I think it's easier to use a merge workflow where you update your branch by merging master/main to your own branch. (Squash-merge will squash all those merge commits anyway and make it tidy.)

bot merge


fix(headers): make ConnectionHeader and search for websocket protocol unicase

This makes ConnectionHeader case-insensitive since HTTP header field names are case-insensitive.
RFC6455 requires the Upgrade Protocol to search case-insensitively for "websocket". At the moment only lower-case works (I hit this when trying to get Autobahn to work with my websocket library).
Other protocol values may be case-sensitive, however, so ProtocolExt is still a normal case-sensitive String.

awesome!


user status: Add timeout, and other next steps to modal.

Putting some of the reasoning here, so it doesn't get lost. But some of the goals of the status feature are:

Make it easy to set a status or mark yourself as unavailable for N minutes
Make it hard (but possible) to set a status forever

For that, the user status modal should look like the following:
**Set a status**

[ ] Set yourself as unavailable (unavailable-icon)
[ ] Set status to [text                 ]

Clear after [30 minutes]

[Cancel] [Save]

The options for the dropdown can be:

30 minutes
1 hour
4 hours
Today
This week
Custom date and time

Other related things:

[x] We should also change the modal to use our regular modal styling
[ ] In the user popover, "Set yourself as unavailable" should have a submenu that allows "for 30 minutes", "for 1 hour", etc.

Not sure the right way to handle this on the backend, but possibly it would make sense to just have a ScheduledFunction table that gives a way to schedule arbitrary function calls in the future?

@rishig I was thinking that when the user clicks on "Set yourself as Unavailable" a modal opens, with the UI you mentioned, and in place of [30 minutes] I am thinking of putting of a drop down menu with the time values.
And then I can put a form field in org settings for those time value options.
And in  database we can make table  ScheduledFunction with the columns -> (default (can take Ture or False, False means it's custom) and time ( if default is True then filled via org settings else by the user in the modal while setting himself  unavailable)) and  then ultimately we can work on Make it hard (but possible) to set a status forever part.

@rishig can I work on this?

yup! By [30 minutes] I meant a dropdown with the values 30 minutes, 1 hour, etc.
1 hour can be the default option selected.

In terms of working on it, I'm not sure. I think I wanted to talk to Tim about it before putting a help wanted label.

Sure @rishig but please ping me here in case it's decided to work on it I think it's a great feature!

A first step that would be great to work on is getting this modal to use our regular modal styling. So just
**Set a status**

[text                 ]

[Cancel] [Save]

We can add other features incrementally from there.

@2208Abhinav can I claim this issue if you are not working on this?

@sahil839 thanks for pinging me :) It's weird that I didn't get notification when Rishi mentioned me here. I am working on this issue.

@zulipbot claim

@zulipbot I am working on this issue.

I don't know how I got unassigned 🤔

@zulipbot claim

As the next step on the UI, I think we should make this so that:

We show the five options if the text box is empty (as we do now)
We show the time dropdown if the text box is not empty

Let me know if that doesn't make sense.

Can I work on this issue?

Czo link: https://chat.zulip.org/#narrow/stream/3-backend/topic/status-expire/near/1114757

Great @ligmitz


Fix dashboard disappeared tooltips

Description
All tooltips disappeared from the ui
Changes

fix: condition for disabling input_toolti

Related Issues

https://github.com/threefoldtech/tfgrid-sdk-ts/issues/2000

Checklist

[ ] Tests included
[ ] Build pass
[ ] Documentation
[ ] Code format and docstrings
[ ] Screenshots/Video attached (needed for UI changes)

Will also fix https://github.com/threefoldtech/tfgrid-sdk-ts/issues/1967


[bug or code quality] At most one instance is processed

https://github.com/aws-samples/resource-auto-tagger/blob/8b7f0f5acb6905536dd2e24cc692db11ae970bfa/source/resource-auto-tagger.py#L143-L157
The for has if. The if has return in both branches. The for loop will be executed at most once.
if data_dict['responseElements']['instancesSet']['items'] can contain more than one item, then it's a bug. ( I guess it's the case)
If data_dict['responseElements']['instancesSet']['items'] can contain at most one item, it's code quality - there should not be a for.

Hi,
Thank you for your feedback.  We are reviewing the issue & will address it.

The latest commit now sets resources tags on every Amazon EC2 instance listed in the "instances_set" field of the passed AWS CloudTrail runinstances event message.

Hello @billdry , what I typically see on GitHub, when an issue is resolved/fixed, it is closed by the author of the fix. If the person that opened the issue disagrees or is somehow not satisfied, that person can easily reopen the issue. I think it also makes sense for your projects. You could end up with many open issues otherwise.

Thanks for your guidance & recommendation.  I made the fix for this issue & will now close it.


[zh-cn] sync taint-and-toleration ephemeral-volumes

content/zh-cn/docs/concepts/scheduling-eviction/taint-and-toleration.md
content/zh-cn/docs/concepts/storage/ephemeral-volumes.md

/lgtm

/approve


JavaScript interop calls cannot be issued at this time

It is forbidden to use JSRuntime during pre-rendering.
[Inject]
protected IJSRuntime JS { get; set; }

protected override void OnAfterRender()
{
   JS.InvokeAsync<bool>("paceDone");
   base.OnAfterRender();
}

System.InvalidOperationException: "JavaScript interop calls cannot be issued at this time. This is because the component is being prerendered and the page has not yet loaded in the browser or because the circuit is currently disconnected. Components must wrap any JavaScript interop calls in conditional logic to ensure those interop calls are not attempted during prerendering or while the client is disconnected."

How do I know that JSRuntime is unavailable?
There are some solutions to this problem besides resource-intensive try { } ?
Blazor 0.10

In addition, I cannot figure out how to call IJSRuntime after a user connects to BlazorHub

inject IComponentContect

@kennywangjin IComponentContect not found

call  jsruntime in onafterrender， using componentcontext to determine whether it is prerendering

It's partially covered by the recent updates at Blazor: JavaScript interop: Detect when a Blazor app is prerendering. Although we have an example for IComponentContext, we're bit light on OnAfterRenderAsync with only the remark ...

To delay JavaScript interop calls until after the connection with the browser is established, you can use the OnAfterRenderAsync component lifecycle event. This event is only called after the app is fully rendered and the client connection is established.

I've opened Provide code example of OnAfterRenderAsync in Blazor JSInterop topic (aspnet/AspNetCore.Docs #12087) to expand the coverage.

@guardrex, OnAfterRenderAsync is called several times, which leads to additional checks, but how do I understand this crutch is the only solution?

AFAIK, it's the solution ... the only solution. One or more of the engineers will answer soon and provide more info. Stand-by.

Ideally, a solution to disable pre-rendering would help, so that JSRuntime could be used anywhere, including OnInit without additional switches in OnAfterRenderAsync.

Reshil problemu otklyucheniyem predvaritel'nogo renderinga https://github.com/aspnet/AspNetCore/pull/8911  (on mne ne nuzhen dlya tekushchego proyekta)
142/5000
I solved the problem by disabling the preliminary rendering https://github.com/aspnet/AspNetCore/pull/8911 (I do not need it for the current project)


Bugs found in tree.py and screen.py

When running the command "planner.py --env Alien-v4 --frame-skip 15 --time-budget 0.5 --round 5" I received errors that bprost_lib.bprost was expecting parameters of type (List[int], List[int], bool), but was receiving num_py arrays instead of Lists.  (screen.py lines 64,65,68, and 69)
After applying a temporary fix using ndarray.flatten().tolist(), I received another set of errors that TreeActor.env.step(action) returned five items when line 112 was expecting four.  The results were an ndarray, a float, two booleans, and a dictionary-like object. (tree.py line 112)

Hey conrad
It is because I changed the code to run with the newer v5 from the gym package. Forgot to also make the readme reflect the new change.

Hello Fred,
I am also trying to get this to work on my macbook. I am running the following command: planner.py --env ALE/Adventure-v5 --frame-skip 15 --time-budget 0.5 --round 5  and I am getting the following error:

Any thought on why I am getting this error even though I am using the version 5 of the game?

Another error that is likely related to this one in in tree.py line 157 "img = obs[-1] if type(obs) is list else obs", it appears that obs is  a tuple rather than a list and the condition fails to catch the issue.


Support Expression in Query Api in HTTP Proxy

Also changed http proxy behavior to not output NULL for fields absent in records, to avoid removing suchfields by client.


New-CsTenantNetworkSite allows Identity to have trailing spaces

An Entity created with a String for Identity allows trailing spaces to be configured.
This may lead to issues with querying Sites later with Get-CsTenantNetworkSite (#7989)
Should a note be added to -Identity to state this or is this something that should be trimmed by this CmdLet upon entry?
One for the Devs?
Thanks,
David

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

ID: c6244e0e-8738-3a25-d829-032164a880df
Version Independent ID: 749077d4-5b5e-9c37-4e31-100627b3fac9
Content: New-CsTenantNetworkSite (SkypeForBusiness)
Content Source: skype/skype-ps/skype/New-CsTenantNetworkSite.md
Service: skypeforbusiness-powershell
GitHub Login: @tomkau
Microsoft Alias: tomkau

Hello @DEberhardt David,
I could verify that it accepts trailing spaces as you mention. However, as I verified in https://github.com/MicrosoftDocs/office-docs-powershell/issues/7989 I could successfully filter also with the trailing spaces, and without using *.
Please let me know if I understood you well.
Thanks

Yes, it does work with trailing spaces, both creation and query.
I do think this should be trimmed as it is very prone to issues this way - white-space seems to be my windmill (especially when tired! 😉 )

@get-itips  Thank you very much for the contribution and sharing this explanation. @DEberhardt Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Fix typo in storage.md

mulitple -> multiple

@Abhishek357 Thank you for contacting me.
please re-review.

Thanks!


Run full builds on manifest change

Fixes #85
Signed-off-by: Juraci Paixão Kröhling<EMAIL_ADDRESS>

@mx-psi, would you mind reviewing this one?


Release checklist for clangd 18

Using the Release checklist from the wiki as a template:
Once the release branch is created

[x] https://github.com/llvm/clangd-www/pull/96
[x] https://github.com/llvm/llvm-project/pull/84436
[x] Document any notable new features on the clangd website [none for this release]

Once the LLVM release is out

[ ] Prepare the clangd release on the Github releases page

LLVM 18.0.1 has been released. Can we get corresponding clangd release please?

@kadircet could you help with this?
(And if you could write down the steps needed to do this at https://github.com/clangd/clangd/wiki/Release-checklist for future reference, that would be great!)

I tried to build my own from LLVM source, but certain features like clang-tidy don't seem to work when built in that way.

Note that you can also get binaries from a couple of other sources:

The LLVM release pages (e.g. https://github.com/llvm/llvm-project/releases/tag/llvmorg-18.1.0, https://github.com/llvm/llvm-project/releases/tag/llvmorg-18.1.1) have binary packages that include clangd. They're not uploaded immediately for every architecture/OS combination, but it tends to happen sooner than clangd's Github releases.
For Linux, from https://apt.llvm.org/

What's the holdup here? This is an amazing project, but not being on top of releasing new versions in sync with LLVM is really hurting it IMHO. Don't you have a nightly CI build that just needs to be released?
Like I said, I know the other sources for the binary and I can also build it myself from LLVM repos. But for some reason, they don't work as well, especially wrt to clang-tidy integration. Can anybody explain what the difference is? Are there certain compiler flags that need to be set to fully enable it?

Not trying to come off too strong here, just genuinely curious. I think you guys are doing an amazing job, my life as a C++ developer would be a lot less productive without clangd. Keep up the amazing work!!!

Like I said, I know the other sources for the binary and I can also build it myself from LLVM repos. But for some reason, they don't work as well, especially wrt to clang-tidy integration. Can anybody explain what the difference is? Are there certain compiler flags that need to be set to fully enable it?

I don't have a guess off the top of my head, but if you file an issue with reproduction steps (i.e. where you're getting the build from or how you're building it, and what doesn't work) I'm happy to try and take a look.

[ ]  Document any notable new features on the clangd website

I looked through the release notes to see if anything there should be additionally documented on the clangd website (e.g. on the "Features" page), and nothing jumped out at me. (The Features page could use some general expansion, e.g. having a section on Inlay Hints, but that's an orthogonal issue.)
So I'm going to consider this checklist item done.

Don't you have a nightly CI build that just needs to be released?

We definitely don't have a nightly CI build. We do have a Github Action which runs weekly to produce snapshot releases of trunk.
I'm not sure how the actual release binaries are produced. (It's not just a case of tagging one of the snapshot releases, since the snapshot releases are from trunk and the actual releases are from a release branch.) This is why I asked that we document the steps in the release checklist.

I'm not sure how the binaries for final (non-snapshot) releases are produced. (It's not just a case of tagging one of the snapshot releases, since the snapshot releases are from trunk and the final releases are from a release branch.) This is why I asked that we document the steps in the release checklist.

Based on this comment, it sounds like it's done by a manual invocation of the same Github Action that produces the weekly snapshots. However, I'm not sure how to point that to the LLVM 18.x release branch. (There is a dropdown for selecting the branch, but it selects a branch of this repository, not the llvm-project repository.)

It turns out we do have documentation for this at https://github.com/clangd/clangd/blob/master/releases.md!
I tried to follow that to create https://github.com/clangd/clangd/releases/tag/18.1.2, though at the moment that only has source assets. The docs says "Creating the release will trigger the autobuild workflow", but I'm not seeing that happening.

Any reason why the new release doesn't have binaries :eyes: ?

Any reason why the new release doesn't have binaries 👀 ?

Well, as described in my previous comment, I tried to create a release but it didn't seem to work. Either the instructions I followed are incomplete, or I'm misunderstanding them.
Hopefully @kadircet can let us know what the missing steps are :)

I managed to get release packages for 18.1.3 published at https://github.com/clangd/clangd/releases/tag/18.1.3.
I did it by manually triggering the same Github Action that creates the weekly snapshots, but pointing it at a specific commit on the 18.x branch of llvm-project (the commit tagged as 18.1.3). This is different from what the instructions say (which talk about manually creating a release on the Releases page), but this is what seems to have worked.

I documented the steps that worked at https://github.com/clangd/clangd/wiki/Release-checklist#once-the-llvm-release-is-out.

The release is still marked as a pre-release on GitHub, which causes the clangd VSCode extension to ignore it and still install the 17.0.3 release. Is this intended behavior for the time being, until the release instructions are confirmed?

The release is still marked as a pre-release on GitHub, which causes the clangd VSCode extension to ignore it and still install the 17.0.3 release. Is this intended behavior for the time being, until the release instructions are confirmed?

It was initially intended, but as it's been a week and I haven't come across any issues reported about the 18.1.3, I went ahead an unchecked the "pre-release" checkbox.

And I think with that, the checklist is complete and we can close the issue.

It was initially intended, but as it's been a week and I haven't come across any issues reported about the 18.1.3 release, I went ahead and unchecked the "pre-release" checkbox.

@HighCommander4
Is it intentional that 17.0.3 is still tagged as latest release: https://github.com/clangd/clangd/releases/latest ?

updated https://github.com/clangd/clangd/releases/tag/18.1.3 to be the latest and added some steps to do that in https://github.com/clangd/clangd/wiki/Release-checklist
thanks a lot for taking care of this @HighCommander4, sorry for the mess and not noticing this earlier. I need to fix my gmail filters!


resource-group-linked-templates.md

Fixed a typo.

@sander- : Thanks for your contribution! The author, @tfitzmac, has been notified to review your proposed change.

@sander- - thanks for this fix.

#sign-off


Dashboard borrowed from "sites" - doesn't show 'negative' values

I'm so thrilled with this unifi-poller, it is just what was missing.
I've always wanted to have a quick overview of up/downloads. I was loking enviously at the amplifi series for that, and with this I can get the same displayed here.
So I borrowed the sites up/download graph and created a 'kiosk' dashboard for displaying it on a chromium on a raspberry pi. And the display is a small 7" lcd that's placed on the outside of the rack, with the electronics on the inside, works very well, EXCEPT on the thing :-)
I don't get the RX shown as 'negative' values.
I do have the transform in the panel.
So what did I do wrong? Can the graph be further simplified so that it only shows the aggregated up / download speeds?
The panel looks like this:
{
  "annotations": {
    "list": [
      {
        "builtIn": 1,
        "datasource": "-- Grafana --",
        "enable": true,
        "hide": true,
        "iconColor": "rgba(0, 211, 255, 1)",
        "name": "Annotations & Alerts",
        "type": "dashboard"
      }
    ]
  },
  "description": "Borrowed from unifi-poller sites dashboard.",
  "editable": true,
  "gnetId": 10414,
  "graphTooltip": 1,
  "id": 6,
  "links": [],
  "panels": [
    {
      "collapsed": false,
      "datasource": "unifipoller",
      "gridPos": {
        "h": 1,
        "w": 24,
        "x": 0,
        "y": 0
      },
      "id": 4,
      "panels": [],
      "repeat": "site",
      "scopedVars": {
        "site": {
          "selected": false,
          "text": "Greve (default)",
          "value": "Greve (default)"
        }
      },
      "title": "",
      "type": "row"
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "unifipoller",
      "decimals": null,
      "description": "",
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 0,
      "fillGradient": 0,
      "gridPos": {
        "h": 12,
        "w": 24,
        "x": 0,
        "y": 1
      },
      "hiddenSeries": false,
      "id": 15,
      "legend": {
        "alignAsTable": true,
        "avg": false,
        "current": true,
        "max": true,
        "min": false,
        "rightSide": true,
        "show": false,
        "sort": "max",
        "sortDesc": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 1,
      "links": [],
      "maxPerRow": 2,
      "nullPointMode": "connected",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 2,
      "points": false,
      "renderer": "flot",
      "repeatDirection": "h",
      "scopedVars": {
        "site": {
          "selected": false,
          "text": "Greve (default)",
          "value": "Greve (default)"
        }
      },
      "seriesOverrides": [
        {
          "alias": "/RX$/",
          "transform": "negative-Y"
        }
      ],
      "spaceLength": 10,
      "stack": false,
      "steppedLine": false,
      "targets": [
        {
          "alias": "",
          "groupBy": [
            {
              "params": [
                "$__interval"
              ],
              "type": "time"
            },
            {
              "params": [
                "subsystem"
              ],
              "type": "tag"
            },
            {
              "params": [
                "null"
              ],
              "type": "fill"
            }
          ],
          "measurement": "subsystems",
          "orderByTime": "ASC",
          "policy": "default",
          "query": "SELECT max(\"rx_bytes-r\") AS \"Bytes RX\", max(\"tx_bytes-r\") AS \"Bytes TX\" FROM \"subsystems\" WHERE (\"site_name\" = 'Greve (default)') AND $timeFilter GROUP BY time($__interval), \"subsystem\" fill(null)",
          "rawQuery": true,
          "refId": "A",
          "resultFormat": "time_series",
          "select": [
            [
              {
                "params": [
                  "rx_bytes-r"
                ],
                "type": "field"
              },
              {
                "params": [],
                "type": "max"
              },
              {
                "params": [
                  "Bytes RX"
                ],
                "type": "alias"
              }
            ],
            [
              {
                "params": [
                  "tx_bytes-r"
                ],
                "type": "field"
              },
              {
                "params": [],
                "type": "max"
              },
              {
                "params": [
                  "Bytes TX"
                ],
                "type": "alias"
              }
            ]
          ],
          "tags": [
            {
              "key": "site_name",
              "operator": "=~",
              "value": "/^$site$/"
            }
          ]
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "",
      "tooltip": {
        "shared": true,
        "sort": 2,
        "value_type": "individual"
      },
      "transparent": true,
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "decimals": null,
          "format": "Bps",
          "label": "bytes / second",
          "logBase": 1,
          "max": null,
          "min": null,
          "show": true
        },
        {
          "format": "short",
          "label": null,
          "logBase": 1,
          "max": null,
          "min": null,
          "show": false
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    }
  ],
  "refresh": "5m",
  "schemaVersion": 25,
  "style": "dark",
  "tags": [
    "unifi",
    "unifi-poller"
  ],
  "templating": {
    "list": []
  },
  "time": {
    "from": "now-6h",
    "to": "now-5s"
  },
  "timepicker": {
    "nowDelay": "5s",
    "refresh_intervals": [
      "30s",
      "1m",
      "5m",
      "15m",
      "30m",
      "1h",
      "2h"
    ],
    "time_options": [
      "5m",
      "15m",
      "1h",
      "6h",
      "12h",
      "24h",
      "2d",
      "7d",
      "30d"
    ]
  },
  "timezone": "browser",
  "title": "Kiosk",
  "uid": "5_omrT7Zz",
  "version": 19
}

A screenshot would be a lot easier to look. I can't read Grafana Dashboard JSON very well.

Sorry, I was trying to be as 'precise' as possible
This is the graph as it is now:

I don't have enough data to give you direction.
Can you include a screenshot with the legend turned on so I can see what your data values are? Can you include screenshots of the query, and the expected transformation setting(s)?

I just imported your json and turned on the legend. The legend has extra data after the RX/TX so the regex for /RX$/ doesn't match. The easiest fix is to remove the $ from the transform regex.

I'd recommend making your queries look like this screenshot though.


experiment: Turn off caches.

This obviously won't build correctly, but you can try it out in dev.

Hey, @showell. Have there been any discussions related to this in the CZO?


updating to react 0.15 and some small dep updates

We can't use symlinks for files in rn
We shouldn't point to .desktop outside of a file that's already .desktop
@keybase/react-hackers

@cjb @MarcoPolo bump

:thumbsup:


"new_msg" has not yet been defined

I've followed all the instructions on the README and received this error when trying to start up phoenix.
$ mix phoenix.server
Compiling 13 files (.ex)
web/channels/editor_channel.ex:15: [warning] An intercept for event "new_msg" has not yet been defined in Elixir.ElmBlogger.EditorChannel.handle_out/3. Add "new_msg" to your list of intercepted events with intercept/1
== Compilation error on file web/router.ex ==
** (CompileError) web/router.ex: internal error in v3_core;
crash reason: {case_clause,
    {'EXIT',
        {badarg,
            [{erl_anno,anno_info,[-1],[{file,"erl_anno.erl"},{line,360}]},
             {v3_core,record_anno,2,[{file,"v3_core.erl"},{line,2410}]},
             {v3_core,expr,2,[{file,"v3_core.erl"},{line,539}]},
             {v3_core,safe,2,[{file,"v3_core.erl"},{line,1593}]},
             {v3_core,expr,2,[{file,"v3_core.erl"},{line,528}]},
             {v3_core,safe,2,[{file,"v3_core.erl"},{line,1593}]},
             {v3_core,'-safe_list/2-anonymous-0-',2,
                 [{file,"v3_core.erl"},{line,1608}]},
             {lists,foldr,3,[{file,"lists.erl"},{line,1276}]},
             {v3_core,expr,2,[{file,"v3_core.erl"},{line,538}]},
             {v3_core,safe,2,[{file,"v3_core.erl"},{line,1593}]},
             {v3_core,'-safe_list/2-anonymous-0-',2,
                 [{file,"v3_core.erl"},{line,1608}]},
             {lists,foldr,3,[{file,"lists.erl"},{line,1276}]},
             {v3_core,expr,2,[{file,"v3_core.erl"},{line,538}]},
             {v3_core,safe,2,[{file,"v3_core.erl"},{line,1593}]},
             {v3_core,expr,2,[{file,"v3_core.erl"},{line,528}]},
             {v3_core,safe,2,[{file,"v3_core.erl"},{line,1593}]},
             {v3_core,'-safe_list/2-anonymous-0-',2,
                 [{file,"v3_core.erl"},{line,1608}]},
             {lists,foldr,3,[{file,"lists.erl"},{line,1276}]},
             {v3_core,expr,2,[{file,"v3_core.erl"},{line,652}]},
             {v3_core,exprs,2,[{file,"v3_core.erl"},{line,512}]}]}}}

  in function  compile:'-select_passes/2-anonymous-2-'/2 (compile.erl, line 530)
  in call from compile:'-internal_comp/4-anonymous-1-'/2 (compile.erl, line 315)
  in call from compile:fold_comp/3 (compile.erl, line 341)
  in call from compile:internal_comp/4 (compile.erl, line 325)
  in call from compile:'-do_compile/2-anonymous-0-'/2 (compile.erl, line 175)
    (stdlib) lists.erl:1338: :lists.foreach/2
    (phoenix) expanding macro: Phoenix.Router.__before_compile__/1
    web/router.ex:1: ElmBlogger.Router (module)
    (elixir) lib/kernel/parallel_compiler.ex:116: anonymous fn/4 in Kernel.ParallelCompiler.spawn_compilers/1

The Phoenix 1.2.1 changelog states:

[Channel] handle_out callbacks now require explicit event intercept for callback to be invoked, with Phoenix.Channel.intercept/1

If you add intercept(["new_msg"]) at the top of your channel module it should fix the problem.

@elkelk - Shouldn't this be locked to 1.1.4?

Yeah, sorry. To be clear it is in the CHANGELOG for v0.15.0, so the solution still applies.


Set title to color to inherit

Since dev tools are just an HTML page, inherit the console's default color.
This fixes unreadable text in Chrome DevTools when the Dark theme is selected.

@apostolos, thanks for fixing this.


add Zenodo DOI

Added old releases with some modified code from https://github.com/zenodo/zenodo/issues/1463.


Godot crashes when importing 1x1 pixel JPEG image using YCbCr and 2x2 sampling factor

Godot version:
Godot 3.2.3
OS/device including version:

Device: Acer Aspire A315-33
OS: Windows 10 64-bit
CPU: Intel(R) Celeron(R) N3060 @ 1.60 GHz
GPU: Intel HD Graphics 400
RAM: 4GB

Issue description:
I was following an answer on the Godot forum about making a coloured rectangle, and using Microsoft Paint, I made a white 1x1 pixel JPEG image and placed it in my project's .\Images\ directory. When I opened Godot to rescan for assets, Godot crashed as it was importing .\Images\Background.jpg.
Steps to reproduce:

Create an empty Godot project.
In the small File Explorer view on the bottom left, right-click on res:// and create a folder called Scenes.
Open MS Paint.
Go to File -> Preferences .
Change both width and height to 1 pixel.
Tap on the white colour in the colour palette.
Tap on the single pixel (may need to zoom in).
Go to File -> Save As... -> JPEG image.
Go to the project's directory and make a new folder called Images.
Save the JPEG image as Background.jpeg or Background.jpg.
Open Godot and let Godot scan the project's assets.
The crash occurs when scanning Background.jpeg.

Minimal reproduction project:
I've added the original project.
ForEx Simulator.zip

I can't reproduce this on Godot 3.2.3 with JPEGs generated by ImageMagick (convert -size 1x1 xc:"#fff" 1x1.jpg).

I can reproduce this with JPEGs generated by ImageMagick if I set the colorspace to YCbCr and use a sampling factor of 2x2:
convert -size 1x1 xc:"#fff" -sampling-factor 2x2 -colorspace ycbcr 1x1.jpg

This produces the same backtrace as the MRP.

This is happening to me also, while trying to import a .dae file with a 1x2 texture.

hello,
I want To work on this i understood the problem but i really don't known where to start .
I imported the MRP saw that it got froze at Importing assets dialog and Crashed, so I think i should start by checking code for importing project and importing assets functions but, it's hard to find.
Any help regarding this Is Appreciated.

If you can reproduce the crash, use a debugger to get a stacktrace, which will show you which files are involved.
There's a hint in https://github.com/godotengine/godot/issues/42363#issuecomment-699630340:
godot.x11.tools.64.llvm: thirdparty/jpeg-compressor/jpgd.h:278: int jpgd::jpeg_decoder::check_sample_buf_ofs(int) const: Assertion `ofs >= 0' failed.

You can then search which files include this file:
$ rg "jpgd.h"
thirdparty/jpeg-compressor/jpgd.cpp
29:#include "jpgd.h"

thirdparty/jpeg-compressor/jpgd.h
1:// jpgd.h - C++ class for JPEG decompression.

modules/jpg/image_loader_jpegd.cpp
36:#include <jpgd.h>

(But again a stacktrace would show you that the crash in thirdparty/jpeg-compressor/jpgd.h originates in modules/jpg/image_loader_jpegd.cpp, and would additionally give you the relevant line and further call stack for what triggers that image loader call in the editor import code.)

So, I checked the code int b = (c_x1 >> 3) * BLOCKS_PER_MCU * 64 + (c_x1 & 7); which is in file thirdparty/jpeg-compressor/jpgd.cpp on Line 2061
above value b becoming negative which eventually on the next line :
int cb10_sample = p_C0Samples[check_sample_buf_ofs(b + y0_base)];
is used to call check_sample_buf_ofs() which checks whether passed argument is positive or not
(check check_sample_buf_ofs() defination ) and closes the program when it's negative -> CAUSE OF ERROR
Then, I tried to read the function in which this whole thing is implemented and found out that it is uint32_t jpeg_decoder::H2V2ConvertFiltered() Fuction.
now i am really stuck on what to do next because i don't see anything wrong in the implementation.
If i am missing something. I'm Happy to learn it.


HpackEncoder limits header list size to 8K by default

Expected behavior
Sending a header list of arbitrary size would succeed, except when the receiver prohibits header list larger than a certain size.
RFC7540 defines SETTINGS_MAX_HEADER_LIST_SIZE's initial value to be unlimited.
Actual behavior
If the receiver does not specify a maximum header list size in SETTINGS, Netty disallows header list sizes greater than 8K.
The problem seems to be in HpackEncoder. While defaulting to 8K makes sense for HpackDecoder in order for it to protect itself against the remote, there's no need for such behavior in HpackEncoder. In fact, since SETTINGS_MAX_HEADER_LIST_SIZE is advisory and the content is locally generated, it could ignore the setting completely and only risk wasting bandwidth.
This was reported against gRPC at grpc/grpc-java#4284. CC @JLofgren
Netty version
4.1.17.Final
I'd be happy to send a PR changing the initialization to use MAX_HEADER_LIST_SIZE. @Scottmitch, @normanmaurer, concerns?

Looks like I can call defaultHttp2HeadersEncoder.maxHeaderListSize(MAX_HEADER_LIST_SIZE) to workaround this. If done immediately on creation, it looks like it won't collide with any received SETTINGS requesting a lower value.

I've created a demo of this bug here: https://github.com/JLofgren/demo-grpc-java-bug-4284
Locally I have built netty initializing the max header size in HpackEncoder to MAX_HEADER_LIST_SIZE and shown that this solves the issue. I am working on a PR, but am having some issues dotting all the i's of your PR process.


Change to PULSAR_GC in values.yaml -XX args for Pulsar 2.8.0 needed

Describe the bug
When using Pulsar 2.8.0 (recently released) with the helm chart which is currently at 2.7.2 bookie pods fail to initialize as the init commands java command (to run bookkeeper shell) fails because of invalid command line arguments for the GC configuration.
To Reproduce
Change image to 2.8.0 (we were using a private build but problem would still apply to public image) and create or update a cluster. Bookies fail to init.
Expected behavior
Bookies to init after the java bookkeeper shell get instance id initialization.
Additional context
A simple fix is to modify the PULSAR_GC environment variable by changing the charts/pulsar/values.yaml file to be:
PULSAR_GC: >
-XX:+UseG1GC
-XX:MaxGCPauseMillis=10
-XX:+ParallelRefProcEnabled
-XX:+UnlockExperimentalVMOptions
-XX:+DoEscapeAnalysis
-XX:ParallelGCThreads=4
-XX:ConcGCThreads=4
-XX:G1NewSizePercent=50
-XX:+DisableExplicitGC
-XX:-ResizePLAB
-XX:+ExitOnOutOfMemoryError
-XX:+PerfDisableSharedMem
-XX:+PrintGCDetails
-verbosegc
-Xloggc:/var/log/bookie-gc.log
(Removing 4 -XX/-X args)
Current values.yaml:
PULSAR_GC: >
-XX:+UseG1GC
-XX:MaxGCPauseMillis=10
-XX:+ParallelRefProcEnabled
-XX:+UnlockExperimentalVMOptions
-XX:+DoEscapeAnalysis
-XX:ParallelGCThreads=4
-XX:ConcGCThreads=4
-XX:G1NewSizePercent=50
-XX:+DisableExplicitGC
-XX:-ResizePLAB
-XX:+ExitOnOutOfMemoryError
-XX:+PerfDisableSharedMem
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintGCApplicationStoppedTime
-XX:+PrintHeapAtGC
-verbosegc
-Xloggc:/var/log/bookie-gc.log
-XX:G1LogLevel=finest

Are you interested in sending a patch?

Probably should be done as part of upgrade to 2.8.0. Leaving as is for 2.7.x.

I can confirm that bookie 2.8.0 won't start without this change.

This is handled as part of #190


Add a 'copy' deployment mode for cargo-screeps

I often find myself wanting to deploy to a local sandbox server that I'm running, and sometimes can't be bothered to set up the authentication mod that allows for the http upload functionality to work.
It would be nice to have an option to instead have the build artifacts copied to the directory that the screeps client watches and uploads for you.
The config could be something like:
mode = "copy" # Default: copy, valid: copy|upload
branch = "default"

[upload]
username = "user"
password = "pass"
# optional:
# ptr = false
# hostname = "localhost"
# ssl = true
# port = 443

[copy]
dest = "/path/to/screeps/client/scripts" # path to directory containing the branch
                                         # directories, configured branch should be
                                         # appended
prune = true # whether or not to clear the destination of extra files

Edit: This is probably something that I'd be willing to work on myself.

Sounds like a good plan!
I think this could work well with also adding the ability to use multiple configuration files.
Assuming we add this, [upload] should be completely optional when mode = "copy" and [copy] is completely optional when we add mode = "upload"?
I think we could rename the upload option to deploy, then, and just do the configured mode.


404's on thumbnails

Question
After using run scp -r ./public/media STORAGEZONENAME@storage.bunnycdn.com:/ on a new test installation, we had 404 errors showing for all the smaller images in the thumbnails folder.
It was fixed by scp -r ./public/thumbnail STORAGEZONENAME@storage.bunnycdn.com:/
Maybe including that step in the manual?

It's changed, thank you.


Different version of Qt

I'm trying to test Gui of Qt application, written on Qt 5.15.2 on Ubuntu 20.04, but pywinauto doesn't see any windows of this application. But it works, when I'm using native Qt version (Qt 5.12.7) to build the app. Is this normal program behavior or am I doing something wrong?

Pywinauto version: 0.6.8
Python version and bitness: 3.7, 64 bit
Platform and OS: Ubuntu 20.04

It's a limited Linux support in 0.6.8. Full Linux support (backend="atspi") is implemented in branch atspi which will become 0.7.0. You can try to install it this way for early testing:
pip uninstall -y pywinauto
pip install https://github.com/pywinauto/pywinauto/archive/refs/heads/atspi.zip

The feature is tracked in issue #328.

Any plans when 0.7.0 will be released?


MSPSDS-792 commonize correspondeces code

The diff's aren't the most clear, so going commit-by-commit might be worth it. This

removes old unused correspondence resource
pulls out the common code from the existing correspondences into a base controller
One could probably push the latter direction further, finding a way to commonise the attachments wiring-up but as this is a time-boxed task I figured it's not worth the time spent atm.

Pull Request Test Coverage Report for Build 2093

3 of 45 (6.67%)  changed or added relevant lines in 3 files are covered.
206 unchanged lines in 8 files lost coverage.
Overall coverage decreased (-6.7%) to 89.944%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

mspsds-web/app/controllers/investigations/meetings_controller.rb
1
14
7.14%

mspsds-web/app/controllers/investigations/emails_controller.rb
1
15
6.67%

mspsds-web/app/controllers/investigations/phone_calls_controller.rb
1
16
6.25%

Files with Coverage Reduction
New Missed Lines
%

mspsds-web/app/controllers/concerns/file_concern.rb
4
91.53%

mspsds-web/app/helpers/investigations/phone_calls_helper.rb
6
25.0%

mspsds-web/app/controllers/investigations/phone_calls_controller.rb
12
3.57%

mspsds-web/app/controllers/investigations/emails_controller.rb
19
2.94%

mspsds-web/app/controllers/investigations/meetings_controller.rb
20
2.94%

mspsds-web/test/system/record_phonecall_correspondence_test.rb
42
42.47%

mspsds-web/test/system/record_meeting_correspondence_test.rb
46
41.77%

mspsds-web/test/system/record_email_correspondence_test.rb
57
43.0%

Totals

Change from base Build 2082:
-6.7%

Covered Lines:
3354

Relevant Lines:
3729

💛  - Coveralls


Registering edge failed

use cli error: titan-edge daemon start --init --url https://test-locator.titannet.io:5000/rpc/v0
ERROR   main    titan-edge/main.go:412  Registering edge failed: RPC client error: sendRequest failed: Post "https://<IP_ADDRESS>:1234/rpc/v0": timeout: no recent network activity

2024-03-28T15:31:47.187Z        INFO    main    titan-edge/main.go:156  Starting titan edge node
2024-03-28T15:31:48.609Z        INFO    main    titan-edge/main.go:270  Remote version 0.1.15+0328_11+api1.0.0
2024-03-28T15:31:48.611Z        INFO    builder node/builder_edge.go:46 start to config edge
2024-03-28T15:31:49.038Z        INFO    main    titan-edge/main.go:370  Edge listen on tcp/udp <IP_ADDRESS>:1234
2024-03-28T15:31:49.252Z        INFO    main    titan-edge/main.go:403  Making sure no local tasks are running
2024-03-28T15:31:54.437Z        ERROR   main    titan-edge/main.go:412  Registering edge failed: RPC client error: sendRequest failed: Post "https://<IP_ADDRESS>:1234/rpc/v0": timeout: no recent network activity
2024-03-28T15:31:54.437Z        WARN    main    titan-edge/main.go:351  Shutting down...
2024-03-28T15:31:54.438Z        WARN    main    titan-edge/main.go:617  http3 server closing
2024-03-28T15:31:54.438Z        ERROR   main    titan-edge/main.go:106  http: Server closed

The same issue was encountered when installing from the CLI on Linux.

2024-04-05T20:50:02.293+0800    ERROR   main    titan-edge/main.go:106  RPC client error: sendRequest failed: Post "https://test-locator.titannet.io:5000/rpc/v0": INTERNAL_ERROR (local): write udp [::]:59912-><IP_ADDRESS>:5000: sendmsg: invalid argument

2024-04-05T20:50:02.293+0800 ERROR main titan-edge/main.go:106 RPC client error: sendRequest failed: Post "https://test-locator.titannet.io:5000/rpc/v0": INTERNAL_ERROR (local): write udp [::]:59912-><IP_ADDRESS>:5000: sendmsg: invalid argument

This problem can be solved by setting environment variables
export QUIC_GO_DISABLE_ECN=true

use cli error: titan-edge daemon start --init --url https://test-locator.titannet.io:5000/rpc/v0 ERROR main titan-edge/main.go:412 Registering edge failed: RPC client error: sendRequest failed: Post "https://<IP_ADDRESS>:1234/rpc/v0": timeout: no recent network activity

It may be a network problem, which can be solved by debugging the network or changing the URL. The URL needs to be obtained on telegram.

For those who report ‘no access point’, or ‘no recent network activity’, please change the url into one of these:
https://hk-locator.titannet.io:5000/rpc/v0
https://sg-locator.titannet.io:5000/rpc/v0
https://us-locator.titannet.io:5000/rpc/v0


Automated Package Upgrade

:tada: This PR is included in version 2.2.409 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Metadata file import service

What does this PR do and why?
This service imports metadata for a batch of samples from a CSV or Excel file. It has the option to ignore empty values. Every response from the update service will be collected and returned when the file is finished processing.
Fixes #356.
Screenshots or screen recordings
N/A
How to set up and validate locally

Test via running the service tests:

Run tests within test/services/samples/metadata/file_import_service_test.rb

Test via console:

Open a console
Run the command: Samples::Metadata::FileImportService.new(project, user, { file:, sample_id_column:, ignore_empty_values: }).execute

Note: Example files can be found in the test/fixtures/files/metadata folder.
PR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

[ ] I have evaluated the PR acceptance checklist for this PR.

Looks great so far. I've left some comments. I would recommend putting this PR On Hold and wait for PR 339 to be merged in as most of my comments are related to changes contained in 339. @ericenns @deepsidhu85 thoughts?

No need to put on On Hold, just need to rebase against main and update this PR based on changes introduced in PR 339 as I just merged it in.


Reload DLLs on failure (fixes Issue #10)

@definelicht please check this w.r.t. known issue in library nodes
@am-ivanov please check this w.r.t. your reported issue in Jupyter
Thanks!

I can confirm that the Jupyter problem does not reproduce on Windows any longer.


Update README.md

Add installation on Linux

os.system("cls") does not work on linux btw just so you know. Linux uses os.system("clear").

I closed the PR because the paths are not compatible with Linux. See this code.


Add script for checking running Monasca health

Still missing most Monasca services that don't have proper health check endpoints.
Comments welcome.

The script currently assumes that docker-compose files are located in a directory two levels above the location of the script. This is certainly a good default, but doesn't fit all situations.
docker-compose files could be located in a different directory.
Can you pls. add a parameter to specify the directory, where docker-compose files are located?
Default would then be as currently implemented.

When executing in an environment that is not OK (not yet tested), I got the following error (see below).
Of course, errors can occur in this untested environment. But the script shouldn't "crash".
Error:
Checking 'Grafana'
Traceback (most recent call last):
File "cmm-check-health.py", line 521, in
print_info("Grafana", test_grafana)
File "cmm-check-health.py", line 69, in print_info
if test_function() is not None:
File "cmm-check-health.py", line 233, in test_grafana
jresp = json.loads(resp)
File "/usr/lib/python2.7/json/init.py", line 339, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 364, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 382, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded

The script currently assumes that docker-compose files are located in a directory two levels above the location of the script. This is certainly a good default, but doesn't fit all situations.
docker-compose files could be located in a different directory.
Can you pls. add a parameter to specify the directory, where docker-compose files are located?
Default would then be as currently implemented.

Done

As discussed:

Pls. add information in readme, which services are handled, and which are not handled

Pls. check if non-default values, e.g. for port numbers, are considered

Pls. add a completion message after completion.
S.th. like:
cmm-health-check successfully checked 10 services without issues @20200326, 12:13:37
cmm-health-check completed check of  10 services, 3 issues found @20200326, 12:13:37
This is just a draft!
I think the message should contain:
end timestamp
success or not
of issues found

Pls. add documentation for "-h" in readme.md

On a system not properly set up, I called:

cmm-check-health.py:
Status for kafka: "log" not found
Judgement: That's OK - log pipeline not enabled

cmm-check-health.py -m:
Checking 'Kafka'
Traceback (most recent call last):
File "cmm-check-health.py", line 598, in
print_info("Kafka", test_kafka)
File "cmm-check-health.py", line 75, in print_info
if test_function() is not None:
File "cmm-check-health.py", line 440, in test_kafka
biggest_lag = sorted(lags, reverse=True)[0]
IndexError: list index out of range

2 topics:

exception should be caught
Why does it behave differently when called with or without option "-m"?
I would expect that kafka check would continue, even if topic "log" isn't there

When specifying -l (log pipeline), only the following services are checked:

Elasticsearch
Elasticsearch curator
kibana
kafka

However, other central services, like mySql should be checked as well.
What about monasca-log-api? Doesn't seem to be covered at all

Minor error:
When e.g. ".env" doesn't exist in the directoy specified, an error msg is displayed:
"File does not exists: ..."
Pls. change to "File does not exist: ..."

One more minor issue:
called in ST environment:

/cmm_2012 contains docker-compose files and .env file
script is located in /cmm_2012/tools/check-health and called from there

First call: python cmm-check-health.py -f "../.."
Output:

Running simple tests of running Monasca services
Local time 2020-03-26 15:30:44
UTC time   2020-03-26 14:30:44
docker-compose version 1.15.0, build e12f3b9
Looking for .env and configuration files in: ../..
Checking 'Memcached'
.IOError: [Errno 2] No such file or directory: u'./../../docker-compose-metric.yml'
Command '['docker-compose', '--project-directory', '../..', '--file', '../../docker-compose-metric.yml', '--file', '../../docker-compose-log.yml', 'exec', 'memcached', 'ash', '-c', 'echo stats | nc -w 1 <IP_ADDRESS> 11211']' returned non-zero exit status 1
❌ There is problem with Memcached

Same error is reported for all services.
With 2nd call:
python cmm-check-health.py -f "../../../cmm_2012"
everything works as expected.

When specifying -l (log pipeline), only the following services are checked:
* Elasticsearch

* Elasticsearch curator

* kibana

* kafka

However, other central services, like mySql should be checked as well.
What about monasca-log-api? Doesn't seem to be covered at all

MySql is not used by log pipeline
Not sure how I omitted monasca-log-api, looking into this.

OK, I think that beside completion message everything else is addressed.

Oh, and checking events for restarts is still not enabled again.

Checking docker events for restarts enabled again with improved messaging for operator.


Preview Text Covers Entire Height

Describe the bug
The vertical divider text "Preview" covers entire height of the editor so the text overlapping it is not selectable.
To Reproduce
Steps to reproduce the behavior:

Go to the demo
Try to click on any text after the vertical divider text "Preview" from the initial initial text position.

Expected behavior
The text should be selectable.
Screenshots

Combining with #337


Obtain a TimelineCreateGuard in unoffload_timeline

Obtain a TimelineCreateGuard object in unoffload_timeline. This prevents two unoffload tasks from racing with each other. While they already obtain locks for timelines and offloaded_timelines, they aren't sufficient, as we have already constructed an entire timeline at that point. We shouldn't ever have two Timeline objects in the same process at the same time.
Part of #8088

cc @problame this was pointed out by you.


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target/pull/180 is merged into live branch.
Auto archive content to https://github.com/OPS-E2E-PPE/docs-archive-test-target.git

Docs Build status updates of commit 4de4cfa:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error]

Cannot sync git repo to specified commit because branch Archive_master_2019-10-11-14-04-03 has been deleted or has been force pushed: fatal: Couldn't find remote ref Archive_master_2019-10-11-14-04-03

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


module.exports = SimpleMDE ... breaks with webpack.

... simple fix.  Won't work with npm or webpack otherwise.
module.exports.SimpleMDE = SimpleMDE;

now I am getting navigator is not defined error. do you happen to have any idea?

Having the issues outlined above as well, please fix?

My fix was removing SimpleMDE from webpack.


Fix typo, "quickstart"

Noticed a small typo in the README.   'quistart' should be 'quickstart'

Thanks!


Add support for LPC54018

Signed-off-by: Mahesh Mahadevan<EMAIL_ADDRESS>

cc @flit

Anything else needed for this PR?


Will not receive data using offloaded socket/TLS on nRF9160

Zephyr Commit hash
28a3fca7da5cfb3b72f1a874b3b7fa62f713ab3d
Golioth SDK Commit Hash
bbae6f8419ed52acd74784ed7e876a0f24e75f8b
Hardware Target
circuitdojo_feather_nrf9160_ns
What host OS are you using?
❯ cat /etc/os-release
NAME="Pop!_OS"
VERSION="22.04 LTS"
ID=pop
ID_LIKE="ubuntu debian"
PRETTY_NAME="Pop!_OS 22.04 LTS"
VERSION_ID="22.04"
HOME_URL="https://pop.system76.com"
SUPPORT_URL="https://support.system76.com"
BUG_REPORT_URL="https://github.com/pop-os/pop/issues"
PRIVACY_POLICY_URL="https://system76.com/privacy"
VERSION_CODENAME=jammy
UBUNTU_CODENAME=jammy
LOGO=distributor-logo-pop-os

Current Behavior
I'm trying to use the offloaded socket/TLS through the modem firmware on the nRF9160. I get a successful connection but when the client goes to receive data the connection fails:
[00:00:07.388,732] <inf> modem: Disconnected
[00:00:07.388,763] <inf> modem: LTE cell changed: Cell ID: 13379857, Tracking area: 1544
[00:00:10.768,463] <inf> modem: Network registration status: Connected - roaming
[00:00:10.768,768] <inf> golioth_system: Starting connect
[00:00:10.769,714] <inf> modem: Sleep PSM
[00:00:15.767,028] <inf> app: Connected to Golioth!
[00:00:15.767,089] <inf> app: Sending hello! 0
[00:00:15.767,700] <inf> golioth_system: Client connected!
[00:00:16.067,169] <err> golioth_system: Failed to receive: -95

The error message -95 corresponds to the error code EOPNOTSUPP, which stands for "Operation not supported".
While looking into the depths of the API documentation, it looks like ZSOCK_MSG_TRUNC is not supported by nrfxlib
Expected Behavior
The Golioth client connect and receive data without issue when using offloaded sockets/TLS.
Steps To Reproduce
Set
CONFIG_NET_SOCKETS_OFFLOAD=y
CONFIG_NET_SOCKETS_POSIX_NAMES=y

In config. Do not modify CONFIG_NET_SOCKETS_TLS_PRIORITY since we want the offloaded sockets.
Set the supported cipher suite:
CONFIG_GOLIOTH_CIPHERSUITES="TLS_PSK_WITH_AES_128_CBC_SHA256"

Load PSK to the device using AT%CMNG AT command.
Then try connecting.
Logs, console output, or any kind of debug information
Removing the usage of `ZSOCK_MSG_TRUNC` allows the offloaded socket/(D)TLS connection to work.

Now connecting OK with the ZSOCK_MSG_TRUNC flag removed.


Support for GIT_SSH

Hey,
Awesome library!
One question, is there a way to use GIT_SSH so that we can specify a specific ssh key to use when cloning/pulling. See: http://stackoverflow.com/a/9321723/1296764
Thanks
Scott

I think there's a problem here. GIT_SSH tell's Git where it can find a wrapper script, not which key to use.

My bad. Even the tests are pending for that. Ty @mikedillion !


Remove InterlockedUtils.

Proposed by @reflectronic on discord.
Our InterlockedUtils utils can be probably enteriely replaced by LazyInitializer.EnsureInitialized
I'm not doing immediately because it will conflict with #372 changes.

Only a single method fits there, I didn't found obvious replacement for the other ones.


release: Improve documentation around release process

Improve the GH issue templates and release docs to clarify a few points
and streamline the release process to make it more consistent with the
process we actually use.

Coverage decreased (-0.04%) to 36.967% when pulling 8182efd91ca4a8bce9f969e2ddef17e06a7aad31 on joestringer:submit/improve-gh-release-template into a7cbab1f56ebd965b3ec6cd3be0d925ceaa344f1 on cilium:master.


boards: arm: stm32f3_disco: add ADC support

Add support of ADC for stm32f3_disco
Signed-off-by: Alexandre Bourdiol<EMAIL_ADDRESS>

Closed: I will group all ADC support in a single PR #27013

Closed: I will group all ADC support in a single PR #27013


ci: add publish workflow

Status
READY
Description
Part of #610
Type of Change

[ ] ✨ New feature (non-breaking change which adds functionality)
[ ] 🛠 Bug fix (non-breaking change which fixes an issue)
[ ] ❌ Breaking change (fix or feature that would cause existing functionality to change)
[ ] 🧹 Code refactor
[ ] ✅ Build configuration change
[ ] 📝 Documentation
[x] 🗑 Chore

Looking forward to this!
Is there some documentation explaining the format of the tags and process to employ the workflow correctly?

Looking forward to this!
Is there some documentation explaining the format of the tags and process to employ the workflow correctly?

No, in my follow-up PR for this I'll add a script and some docs related to it.


Scss using custom alias failed

There is no problem with using the default alias in scss, but using a custom alias error,It is normal to use this alias in the script.
extend (config) {
        config.resolve.alias['~mixin'] = path.resolve(__dirname, './assets/style/helpers/mixin.scss')
}

Module build failed:
    @import "~mixin";
^
      File to import not found or unreadable: ~mixin.

This should fix your problem (I tested it):
nuxt.config.js:
config.resolve.alias['mixin'] = path.resolve(__dirname, './assets/style/helpers/mixin.scss')

Then in your pages component:
@import '~mixin'

@Atinux  Can I ask why we can't use '~mixin' with alias ?
but we can use '~assets' or '~store' ...?
by the way ,
I have another similar question
about when I use eslint-config-airbnb-base
eslint will check import file exist , but nuxt alias will not working .
so I need add resolve in .eslintrc.js
settings: {
    'import/resolver': {
      'webpack': {
        'config': '.eslint.resolve.config.js'
      }
    }
  },

.eslint.resolve.config.js
const { join } = require('path');
function resolve(dir) {
  return join(__dirname, dir);
}
module.exports = {
  resolve: {
    extensions: ['.js', '.vue', '.json'],
    alias: {
      '~': resolve(''),
      static: resolve('static'),
      '~static': resolve('static'),
      assets: resolve('assets'),
      '~assets': resolve('assets'),
      '~plugins': resolve('plugins'),
      '~store': resolve('.nuxt/store'),
      '~router': resolve('.nuxt/router'),
      '~pages': resolve('pages'),
      '~components': resolve('components'),
    },
  },
};

when I use this setting , eslint-airbnb-base will working on my project .
I don't know am I doing right ?

HI @ausir0726
You are doing right with your .eslint.resolve.config.js 👍
For the ~mixin vs mixin, it is because of the style-loader which already use the ~. It's hard to explain but it works like this if it's for CSS!


Align Item and Agenda editing with Material Design Guidelines

Use full screen dialogs for editing, see:
https://material.io/guidelines/components/dialogs.html#dialogs-full-screen-dialogs
Implementation hints:
https://stackoverflow.com/questions/27074717/android-fullscreen-dialog-confirmation-and-dismissive-actions
supersedes #12

TODO

[ ] Confirm dialog when edited values are dismissed (via Material Design guidelines)


[DO NOT MERGE] Add a rake task to publish links for withdrawn items

A data hygiene task to ensure that the publishing api has the correct
links present for withdrawn content items, bringing it line with the
content-store and whitehall. We've detected multiple instances in
production where this is not the case.
https://trello.com/c/jVPQzU1S/232-republish-the-links-of-withdrawn-whitehall-content
Note: needs testing against a sensible data setup, which my VM is currently lacking in a big way. Will get round to that shortly but this can be reviewed in the meantime, particularly as the code is nearly identical to the existing published items task in the same file.

Do you have any clues as to why this is happening?

@boffbowsh Whitehall is currently sending correct links to the publishing-api, but when we turned that on we only did the initial "migration" for published Editions (with this existing publishing_api_patch_links rake task). This means withdrawn editions that haven't been modified since we introduced it won't have the correct link in the publishing-api. This rectifies that.
I've tested this on my local machine. Good to go!


#0042 avenal city council _parse_start()

@jpt-c
start time for meetings are noted on the agenda pdf. link to agenda is extracted via _parse_links() (lines#96-100).
at first i was going to make an assumption for start meeting time, but looking at the meeting times noted on the pdfs they change sporadically that i don't think it's safe to assume.
any advise on extracting info from a pdf? is the repo set up to use PyPDF4 or something like that?
Summary
Issue: #0042
Replace "ISSUE_NUMBER" with the number of your issue so that GitHub will link this pull request with the issue and make review easier.
Checklist
All checks are run in GitHub Actions. You'll be able to see the results of the checks at the bottom of the pull request page after it's been opened, and you can click on any of the specific checks listed to see the output of each step and debug failures.

[ ] Tests are implemented
[ ] All tests are passing
[ ] Style checks run (see documentation for more details)
[ ] Style checks are passing
[ ] Code comments from template removed

Questions
Include any questions you have about what you're working on.

If a PDF is mostly text, https://textract.readthedocs.io/en/stable/ works very well, you'd pull the text and then use a regex or similar to find the info you need.  PyPDF and others are much heavier and harder to use, but useful when there is spatial information needed.
On Sun, Aug 14, 2022, at 11:25 AM, Hails wrote:

@jpt-c https://github.com/jpt-c
start time for meetings are noted on the agenda pdf. link to agenda is extracted via _parse_links() (lines#96-100).
at first i was going to make an assumption for start meeting time, but looking at the meeting times noted on the pdfs they change sporadically that i don't think it's safe to assume.
any advise on extracting info from a pdf? is the repo set up to use PyPDF4 or something like that?
Summary
Issue: #42 https://github.com/City-Bureau/city-scrapers-fresno/issues/42
Replace "ISSUE_NUMBER" with the number of your issue so that GitHub will link this pull request with the issue and make review easier.
Checklist
All checks are run in GitHub Actions https://github.com/features/actions. You'll be able to see the results of the checks at the bottom of the pull request page after it's been opened, and you can click on any of the specific checks listed to see the output of each step and debug failures.

Tests are implemented
All tests are passing
Style checks run (see documentation https://cityscrapers.org/docs/development/ for more details)
Style checks are passing
Code comments from template removed
Questions

Include any questions you have about what you're working on.
You can view, comment on, or merge this pull request online at:
https://github.com/City-Bureau/city-scrapers-fresno/pull/70
Commit Summary

314828e https://github.com/City-Bureau/city-scrapers-fresno/pull/70/commits/314828ebbaca5d4c587e4c9319a3dee94e884310 avenal city council _parse_start()
File Changes

(1 file https://github.com/City-Bureau/city-scrapers-fresno/pull/70/files)

A city_scrapers/spiders/avenal_city_council.py https://github.com/City-Bureau/city-scrapers-fresno/pull/70/files#diff-ede9682dfce36a078dae3ba9c0027d09515be56d8adf18fa0c7a6c0e0a439e82 (104)
Patch Links:

https://github.com/City-Bureau/city-scrapers-fresno/pull/70.patch

https://github.com/City-Bureau/city-scrapers-fresno/pull/70.diff

—
Reply to this email directly, view it on GitHub https://github.com/City-Bureau/city-scrapers-fresno/pull/70, or unsubscribe https://github.com/notifications/unsubscribe-auth/A2IHW3F3TDJ6UXKMUFENOC3VZETX3ANCNFSM56QFZRAA.
You are receiving this because you were mentioned.Message ID: @.***>

@jpt-c d-o-n-e, done!
finally got the pdf extract function to work.
branch is ready to merge, spider and tests.


New Helm Chart available

Hi there 👋
I just created a Helm Chart based on your work. Documented and published for public use. Maybe you can give it a push.

https://github.com/sspreitzer/helm-kube-oidc-proxy

looks very cool!  i'll add a link to it in the docs


CsWin32 generates broken wrapper for ExtTextOut

Actual behavior
Seems CsWin32 generates ReadOnlySpan where it should't:
I seening string lpString, ReadOnlySpan<int> lpDx where in original there is winmdroot.Foundation.PCWSTR lpString, uint c, [Optional] int* lpDx where c is The length of the string pointed to by lpString. but it get receives (uint )lpDx.Length in wrapper instead.
public static partial class PInvoke
{
	/// <inheritdoc cref="ExtTextOut(winmdroot.Graphics.Gdi.HDC, int, int, winmdroot.Graphics.Gdi.ETO_OPTIONS, winmdroot.Foundation.RECT*, winmdroot.Foundation.PCWSTR, uint, int*)"/>
	public static unsafe winmdroot.Foundation.BOOL ExtTextOut(SafeHandle hdc, int x, int y, winmdroot.Graphics.Gdi.ETO_OPTIONS options, winmdroot.Foundation.RECT? lprect, string lpString, ReadOnlySpan<int> lpDx)
	{
		bool hdcAddRef = false;
		try
		{
			fixed (int* lpDxLocal = lpDx)
			{
				fixed (char* lpStringLocal = lpString)
				{
					winmdroot.Graphics.Gdi.HDC hdcLocal;
					if (hdc is object)
					{
						hdc.DangerousAddRef(ref hdcAddRef);
						hdcLocal = (winmdroot.Graphics.Gdi.HDC)hdc.DangerousGetHandle();
					}
					else
						hdcLocal = default(winmdroot.Graphics.Gdi.HDC);
					winmdroot.Foundation.RECT lprectLocal = lprect.HasValue ? lprect.Value : default(winmdroot.Foundation.RECT);
					winmdroot.Foundation.BOOL __result = PInvoke.ExtTextOut(hdcLocal, x, y, options, lprect.HasValue ? &lprectLocal : null, lpStringLocal, (uint )lpDx.Length, lpDxLocal);
					return __result;
				}
			}
		}
		finally
		{
			if (hdcAddRef)
				hdc.DangerousRelease();
		}
	}

	/// The ExtTextOut function draws text using the currently selected font, background color, and text color. You can optionally provide dimensions to be used for clipping, opaquing, or both.
	/// <param name="hdc">A handle to the device context.</param>
	/// <param name="x">The x-coordinate, in logical coordinates, of the reference point used to position the string.</param>
	/// <param name="y">The y-coordinate, in logical coordinates, of the reference point used to position the string.</param>
	/// <param name="options"></param>
	/// <param name="lprect">A pointer to an optional RECT structure that specifies the dimensions, in logical coordinates, of a rectangle that is used for clipping, opaquing, or both.</param>
	/// <param name="lpString">A pointer to a string that specifies the text to be drawn. The string does not need to be zero-terminated, since cbCount specifies the length of the string.</param>
	/// <param name="c">
	/// <para>The length of the string pointed to by lpString. This value may not exceed 8192.</para>
	/// <para><see href="https://docs.microsoft.com/windows/win32/api//wingdi/nf-wingdi-exttextoutw#parameters">Read more on docs.microsoft.com</see>.</para>
	/// </param>
	/// <param name="lpDx">A pointer to an optional array of values that indicate the distance between origins of adjacent character cells. For example, lpDx[i] logical units separate the origins of character cell i and character cell i + 1.</param>
	/// <returns>
	/// <para>If the string is drawn, the return value is nonzero. However, if the ANSI version of ExtTextOut is called with ETO_GLYPH_INDEX, the function returns TRUE even though the function does nothing. If the function fails, the return value is zero.</para>
	/// </returns>
	/// <remarks>
	/// <para><see href="https://docs.microsoft.com/windows/win32/api//wingdi/nf-wingdi-exttextoutw">Learn more about this API from docs.microsoft.com</see>.</para>
	/// </remarks>
	[DllImport("Gdi32", ExactSpelling = true, EntryPoint = "ExtTextOutW")]
	[DefaultDllImportSearchPaths(DllImportSearchPath.System32)]
	public static extern unsafe winmdroot.Foundation.BOOL ExtTextOut(winmdroot.Graphics.Gdi.HDC hdc, int x, int y, winmdroot.Graphics.Gdi.ETO_OPTIONS options, [Optional] winmdroot.Foundation.RECT* lprect, winmdroot.Foundation.PCWSTR lpString, uint c, [Optional] int* lpDx);
}

Expected behavior
uint c and int* lpDx should have separate parameters in generated ExtTextOut wrapper.
Repro steps

NativeMethods.txt content:

ExtTextOut

NativeMethods.json content:

{
  "$schema": "https://aka.ms/CsWin32.schema.json",
  "wideCharOnly": true,
  "emitSingleFile": true,
  "public": true
}

Context

CsWin32 version: 0.1.635-beta
Win32Metadata version (if explicitly set by project): implicit
Target Framework: net461;net472;netcoreapp3.1
LangVersion (if explicitly set by project): 9.0

The way I read the docs for this API, we see that c is defined to be:

The length of the string pointed to by lpString.

So we know c == lpString.Length. But reading on...

For the ANSI version of ExtTextOut, the lpDx array has the same number of INT values as there are bytes in lpString. For DBCS characters, you can apportion the dx in the lpDx entries between the lead byte and the trail byte, as long as the sum of the two bytes adds up to the desired dx. For DBCS characters with the Unicode version of ExtTextOut, each Unicode glyph gets a single pdx entry.

We see that lpDx is tied to the length of lpString. That means by the transitive property, that c can be derived from the length of either lpString or lpDx because they are supposed to be equal. In fact this is what the underlying metadata for the API suggests as well:

public unsafe static extern BOOL ExtTextOutW([In] HDC hdc, [In] int x, [In] int y, [In] ETO_OPTIONS options, [Optional][In][Const] RECT* lprect, [Optional][In][Const][NativeArrayInfo(CountParamIndex = 6)] PWSTR lpString, [In] uint c, [Optional][In][Const][NativeArrayInfo(CountParamIndex = 6)] int* lpDx)

We could improve the wrapper to throw in such a case if the two arguments don't have equal lengths to help make this more clear, but I don't think we'll get around to that.

Thank you @AArnott!
Seems that API is a bit more trickery than I thought. But I still didn’t get how to call current wrapper properly in case when I want to omit lpDx.

Ooh! Good point. I see from the docs that lpDx is:

A pointer to an optional array of values

I'll have to review this to see how we can best accommodate this.


delete a useless variable

Delete the variable errInvalidScope,  because it is not used in the codes.
Signed-off-by: Yanqiang Miao<EMAIL_ADDRESS>

LGTM

LGTM, nice find!


Add std.complex.coshisinh and remove uses of creal math.

Small addition for https://github.com/dlang/dmd/pull/7081
Everything else looks like just deleting support code from phobos.

Added one fast path.
I also noticed there could be a few more functions added here. log, exp and tan are some of the notable that should be easy to add, but missing.

I also noticed there could be a few more functions added here. log, exp and tan are some of the notable that should be easy to add, but missing.

@ibuclaw do you intend to add them in this PR, or is it now good to go?

I can add other functions in latter PRs.
I should alzo add another unittest for y <= 0.5 for the sake of coverage.

cc math people @9il @klickverbot @WalterBright

@andralex this PR was needed for the complex deprecation. I incorporated the diff with my addressed comments in the complex deprecation PR (https://github.com/dlang/phobos/pull/6014), so this can be safely closed.
In the retroperspective: it's really a shame that this was open for so long without any feedback :/


Update DG for v1.4 release

Fixed mistakes in class diagram for the implementation of asset.

Closes #248
Closes #245
Closes #229
Closes #222
Closes #219
Closes #202

Closes #259


Added lara_activity? method on external_activities

This is need for queued stories that need to know if the activity is a LARA activity.  Right now it checks the launch url to see if it starts with "learn." and optionally an environment variable so developers can test against local LARA installs.

This code will work, but I'm worried about how brittle it is keying off the 'learn' in the hostname. Would it be better to add a boolean flag to ExternalActivity which can get set when it's created through ActivityRuntimeAPI::publish_activity or ActivityRuntimeAPI::publish_sequence? Does anything else besides LARA use the publish api?

The reason I hid it behind the methods is that I know its brittle.  I talked with @knowuh about best way to implement this and we landed on this as it allows us to update in the future if we added a LARA flag to the external activities.
To answer your question about other consumers of the publish api: these methods are meant to signal a LARA only activity so that we can add LARA only features to the portal.

Hmm, ok. I'll trust you guys to have thought it through. ;)


[bug] Stuck force closure TX, unable to bumpfee

Discussed in https://github.com/lightningnetwork/lnd/discussions/7779

Originally posted by feelus June 21, 2023
Hello,
My CLN node (node A, therefore no anchors) had a public channel with a node running LND (node B). We ran into an HTLC timeout and node A (CLN) initiated a force closure. Since the channel was fairly old, the close/scratch TX had lower fees and is sitting in the mempool for more than 3 weeks now.
Since the TX wasn't getting confirmed node B (LND) tried force closing the channel with it's own TX
lncli closechannel --force e020bb832e88d2e64925284c35123c4fbe8c4e1bd0cac2f23c8e45de2ac1708e 1
but it didn't publish any FC TX and the channel became borked and has flag ChanStatusLocalCloseInitiator
lncli pendingchannels
{
    "total_limbo_balance": "50949",
    "pending_open_channels": [
    ],
    "pending_closing_channels": [
    ],
    "pending_force_closing_channels": [
    ],
    "waiting_close_channels": [
        {
            "channel": {
                "remote_node_pub": "03851aa559c69fc719f84df6c480bf75654561653c8750d260703fc24f2e078168",
                "channel_point": "e020bb832e88d2e64925284c35123c4fbe8c4e1bd0cac2f23c8e45de2ac1708e:1",
                "capacity": "5000000",
                "local_balance": "50949",
                "remote_balance": "4912754",
                "local_chan_reserve_sat": "50000",
                "remote_chan_reserve_sat": "50000",
                "initiator": "INITIATOR_LOCAL",
                "commitment_type": "STATIC_REMOTE_KEY",
                "num_forwarding_packages": "0",
                "chan_status_flags": "ChanStatusBorked|ChanStatusCommitBroadcasted|ChanStatusLocalCloseInitiator",
                "private": false
            },
            "limbo_balance": "50949",
            "commitments": {
                "local_txid": "94ae314a4dde652469b6e598031d33f03569353daf92a30003459c46be5c7a76",
                "remote_txid": "d961b2abed1b5a7427676d5b4a2dca02dcd11c3d5d3dd35a0e0a566eb9527947",
                "remote_pending_txid": "cf923eae6fc48f17f64d583ec31107946c58e96764ae5daeaf934c46c6bc83a7",
                "local_commit_fee_sat": "1718",
                "remote_commit_fee_sat": "1235",
                "remote_pending_commit_fee_sat": "0"
            },
            "closing_txid": "94ae314a4dde652469b6e598031d33f03569353daf92a30003459c46be5c7a76"
        }
    ]
}

Now when node B wants to bumpfee he's unable to do it
lncli wallet bumpfee --sat_per_byte 40 d961b2abed1b5a7427676d5b4a2dca02dcd11c3d5d3dd35a0e0a566eb9527947:0
[lncli] rpc error: code = Unknown desc = the passed output does not belong to the wallet

The problem as we see it is that node B (LND) when issuing it's force close, after node A (CLN) has already done it and it propagated through the mempool, the force closure TX from node B didnt propagate but it did get into node B mempool, replacing the original close TX.
So node B (LND) cannot bumpfee node A's close TX, because it's not in it's mempool as both TXs spend the same inputs and node A (CLN) cannot see node B's close TX either.
This is the output from node B (LND) when checking node A's close TX (the first one that propagated)
$ bitcoin-cli getrawtransaction d961b2abed1b5a7427676d5b4a2dca02dcd11c3d5d3dd35a0e0a566eb9527947
error code: -5
error message:
No such mempool or blockchain transaction. Use gettransaction for wallet transactions.

This is the output from node B (LND) when checking it's own close TX (the one that won't propagate)
$ bitcoin-cli getrawtransaction 94ae314a4dde652469b6e598031d33f03569353daf92a30003459c46be5c7a76
020000000001018e70c12ade458e3cf2c2cad01b4e8cbe4f3c12354c282549e6d2882e83bb20e0010000000008c41e80031287000000000000220020d4d33e583ef265ef5ac0a3169a88e29fc7401b0274401a5bfcec7b5578f65ce905c7000000000000220020d467929215322941b1f6513e660780ea7313cd70bbe1e37c531b3e7c2860b0e772f64a000000000016001412b0baf510f9c79f996757610c9fe85845a118c604004730440220663631ebea8ef5b9489ce9b330b56b39ada38a0cbc757679d606bf511a163fe402200b93d78bb0f0c6aae128b85a71cc8f2d511801d7f68f81761de8aaab413a07590148304502210091412c47338efc04378d2d105d27e00df00c43cee125fb4256cbdba4612ebdc802204b03c0e71c787b23bdb0b152afea4916bc926b14488f8aeedab48578f31831730147522102b22ac86cf8decacbee4870f8711c12650fea98d48e3d6feb40f66b09681c96462102fdb633e2469112e624aff759cb53b0a180aafd69b8ed5c61812efdee7ef0b8bf52ae76d40520

Now we are stuck - neither node can CPFP, is there anything that can be done so node B (LND) forgets it's own close TX so that it can CPFP the original close TX?
Thanks in advance!

See here

Closing as it was solved using sweepremoteclosed, not sure if this a bug in itself. Thank you George.


Initialize RAM in assembly

Fixes #300

r? @thalesfragoso
(rust-highfive has picked a reviewer for you, use r? to override)

GitHub won't let me comment outside the diff itself, so..

The comments above PreResetTrampoline still refer to it being an ARMv6-M-only thing that sets LR; they need updating to say it's actually the reset vector on all architectures and initialises bss and data.
This change causes us to write LR on every architecture, instead of only ARMv6-M, unnecessarily. Not sure what the cleanest way to only do it on v6 is, but I'd rather we didn't always set it on v7.
Not sure if the names are still right. Perhaps the assembly stub should be Reset now, since it's always the reset vector and contains memory initialisation?
We still expose pre_init before bss/data are initialised, which I think is the most useful option but the whole reason for this PR is because "life before main" is UB; we should update the documentation around pre_init in this PR too. Or add post_init?

GitHub won't let me comment outside the diff itself, so..

The comments above PreResetTrampoline still refer to it being an ARMv6-M-only thing that sets LR; they need updating to say it's actually the reset vector on all architectures and initialises bss and data.
This change causes us to write LR on every architecture, instead of only ARMv6-M, unnecessarily. Not sure what the cleanest way to only do it on v6 is, but I'd rather we didn't always set it on v7.
Not sure if the names are still right. Perhaps the assembly stub should be Reset now, since it's always the reset vector and contains memory initialisation?
We still expose pre_init before bss/data are initialised, which I think is the most useful option but the whole reason for this PR is because "life before main" is UB; we should update the documentation around pre_init in this PR too. Or add post_init?

This change causes us to write LR on every architecture, instead of only ARMv6-M, unnecessarily. Not sure what the cleanest way to only do it on v6 is, but I'd rather we didn't always set it on v7.

It actually gets immediately overwritten by the call to __pre_init, so it seems like this might break unwinding? Seems like we either have to write it again after __pre_init returns or save it in another register and write the appropriate CFI directive (no idea what that would look like).

This change causes us to write LR on every architecture, instead of only ARMv6-M, unnecessarily. Not sure what the cleanest way to only do it on v6 is, but I'd rather we didn't always set it on v7.

It actually gets immediately overwritten by the call to __pre_init, so it seems like this might break unwinding? Seems like we either have to write it again after __pre_init returns or save it in another register and write the appropriate CFI directive (no idea what that would look like).

Updated the docs in the assembly. Also made it restore LR after __pre_init returns.

We still expose pre_init before bss/data are initialised, which I think is the most useful option but the whole reason for this PR is because "life before main" is UB; we should update the documentation around pre_init in this PR too. Or add post_init?

Do we want to remove/deprecate #[pre_init] entirely? It already has a big warning about accessing statics inside of it. If we do want to remove or deprecate it I think we might want to wait until asm!/#[naked] are stable so that users have a viable alternative by writing their __pre_init in inline assembly.
post_init is just entry, so I don't see what that would let people do that they can't already.

Updated the docs in the assembly. Also made it restore LR after __pre_init returns.

We still expose pre_init before bss/data are initialised, which I think is the most useful option but the whole reason for this PR is because "life before main" is UB; we should update the documentation around pre_init in this PR too. Or add post_init?

Do we want to remove/deprecate #[pre_init] entirely? It already has a big warning about accessing statics inside of it. If we do want to remove or deprecate it I think we might want to wait until asm!/#[naked] are stable so that users have a viable alternative by writing their __pre_init in inline assembly.
post_init is just entry, so I don't see what that would let people do that they can't already.

I think #303 shows that #[pre_init] can be useful in some cases. Without it there would be no way to do this. With enough warnings in the docs, I would vote to leave it there in case someone needs it.

I think #303 shows that #[pre_init] can be useful in some cases. Without it there would be no way to do this. With enough warnings in the docs, I would vote to leave it there in case someone needs it.

To be clear, we're not taking away the ability to run code before RAM initialization in general, but allowing arbitrary Rust code in a #[pre_init] function is problematic.

To be clear, we're not taking away the ability to run code before RAM initialization in general, but allowing arbitrary Rust code in a #[pre_init] function is problematic.


adding code to show thumbnails below tool media carousel (#20)

Issue: https://github.com/analysis-tools-dev/website/issues/20
Summary of changes:

Added code to fetch thumbnail URLs from YouTube and Vimeo video URLs
Added responsive carousel using react-slick.
New packages added in the project - react-slick and slick-carousel.

Tested UI output in the following browsers:

[x] Mozilla Firefox
[x] Google Chrome

For some reason the video thumbnails sometimes don't work for me.
E.g. here is a screenshot of the PVS Studio entry:

After a reload or two it starts to work again

I'm on Firefox. On Chrome it always works. 🤷

Thanks for pointing these out, I'll work on the changes requested.

For some reason the video thumbnails sometimes don't work for me.
E.g. here is a screenshot of the PVS Studio entry:

After a reload or two it starts to work again

I'm on Firefox. On Chrome it always works. 🤷

For some reason, I'm unable to reproduce this issue. Tried multiple times with the Firefox browser in my machine. Is there any particular way, I can reproduce this issue?

@mre For some reason, I'm unable to reproduce this issue. Tried multiple times with the Firefox browser in my machine. However, it worked all the time. Is there any particular way, I can reproduce this issue?

Huh, just tried again and it now also works on my machine. Odd. Sorry for the fuzz; was probably an issue on my side. 😕

Wondering if it was my ad-blocker that was causing that because it was broken in Firefox (where I use uBlock Origin) and not on Chrome where I use... nothing, actually. 💭

@mre
Just to check, do I have to update anything in the PR? Please let me know.


Add settings to choose default option when resolving conflicts

What's the Problem?
If try to overwrite a existing file i get a options screen.

Generate a new name
overwrite
skip

Files won't remember my choise, it always starts on the first option (Generate new name).
Solution/Idea
Remeber user choise or make option to set a default
Alternatives
Remeber user choise or make option to set a default
Priorities

Capability
Priority

This proposal will allow developers to accomplish W
Must

This proposal will allow end users to accomplish X
Should

This proposal will allow developers to accomplish Y
Could

This proposal will allow end users to accomplish Z
Won't

Files Version
<IP_ADDRESS>
Windows Version
Windows 11
Additional comment
No response

I don't even get a prompt to overwrite or not; Files just assigns a new name. And it doesn't refresh so I don't see that anything at all has happened. Also running Win11.

Merging with #5645


Cant set up discussions

Ahead of the sprint tomorrow I would like to set up disussions in github as per
https://docs.github.com/en/discussions/quickstart
@carltongibson  @MarkusH  can you set it up?  👍

Looking into it

Should be there, @chriswedgwood


Component class is not hashable

What is the feature you'd like to have?
I would like for the Python Component class to be hashable via hash method implementation.
Is your feature request related to a problem?
On Sidekick, we are currently having to manually define an implementation instead of just using one provided by the class.
Are any alternative solutions acceptable?
This is what we are currently doing on Sidekick to achieve the desired feature:
Component.__hash__ = lambda self: cast(Component, self).guid.__hash__()

Fixed on dev. I didn't cause a build to be generated should be fixed in >= 3.6.4775


Stop using draw_pending from sync functions

Keep it in the _draw functions. That way it still makes extra sure
no two draw calls can be pending/executing at the same time,
even though the command FIFO already takes care of that.
Fixes #35718

Closing in favor of https://github.com/godotengine/godot/pull/35758 per the author's request.


add json format support for traefik logs

This PR adds the possibility to use JSON format for the traefik logs.
Also it aligns the configuration to the accessLogs and deprecates the traefikLogsFile option.
Sample log line:
{"level":"info","msg":"Traefik version dev built on I don't remember exactly","time":"2017-09-05T02:34:52+02:00"}

This fixes https://github.com/containous/traefik/issues/780.

@Juliens thanks for the review! I added one more commit in order to keep the colors when the logs are written to stdout :D :)

@nmengin it's not about access logs :-) I could, of course, add an integration test for the traefik log itself, but I am not sure on what to assert.. What I could is pick some lines and verify that they are valid JSON, without looking into the contents. Do you think this would help?

This is certainly a good point Timo. I tested with all the different constellations with CLI and toml configuration. The behaviour is consistent and as expected. Given the new configuration traefikLog.filePath is specified, it will always be used. Only in case it is not specified the deprecated option will be used.
I now added a warning about the usage of the deprecated and documented at the deprecated option documentation, that the new option takes precedence.
To summarise shortly:
traefik --traefiklogsfile=./deprecated_log --traefiklog --traefiklog.filepath=./new_log --traefiklog.format="json" will write to ./new_log in JSON format.
traefik --traefiklogsfile=./deprecated_log --traefiklog --traefiklog.format="json" will write to ./deprecated_log in JSON format.


Implement error macros that come with an error message, replacing ERR_EXPLAIN.

Motivation
ERR_EXPLAIN will currently evaluate whatever you pass to it in full regardless of whether the accompanying assertion actually fails, this can be a problem if you have a debug build (or release_debug like the editor) and in a loop have an assert + an error message with some string concatenation in it.
Personally I ran into it when evaluating my new astar implementation, and realised I'd come to a 30-50% slowdown once I'd inserted ERR_EXPLAIN usage for nice error messages, even though no errors were occurring. (our_no_err here still using asserts, but no ERR_EXPLAIN)

Solution
The error macro and the error message should be consolidated, so that for error macros that only need the error message when the assertion actually fails (like ERR_FAIL_COND) only then evaluate the operand for the message then, leading to less performance ache from this.
And so, I've implemented alternatives to our current error macros that look like so:

ERR_FAIL_COND -> ERR_FAIL_COND_MSG etc.

// previously, always evaluated
ERR_EXPLAIN("x must be positive, was: " + itos(x));
ERR_FAIL_COND(x < 0);

// now becomes, rhs only evaluated when it fails
ERR_FAIL_COND_MSG(x < 0, "x must be positive, was: " + itos(x));

Finally
I'm making this a draft PR so I can get some feedback on the implementation (the duplication might not be great, if someone has ideas for a neater implementation, I'm all ears) before I potentially sweep through the codebase and replace all usages of ERR_EXPLAIN, all feedback welcome!

@reduz says:

that sounds like a very good idea, I started using ERR_EXPLAIN more and more and it makes more sense like in this PR and it can be emptied in debug

I agree that it's a good change, I just merged two PRs today adding ERR_EXPLAIN()s in Node code which might have a slight impact on debug performance, so replacing those by these new macros will be good.
Can you rebase to squash the commits? We can then merge this PR, and work on porting all existing uses of ERR_EXPLAIN to these new macros (and eventually add more verbose errors in places where we only use ERR_FAIL).

Sure, squashed! :+1:

Thanks!


Autogenerate does not work within iframes

It shouldn't be that hard to traverse an iframe to iframe.contentWindow.document

document.getElementById() does not find the ids within the iframe.
That element can be found using document.getElementById("iframeID").contentWindow.document.getElementById("actual_id").
That only works if the iframe is from the same origin though. So we cannot assume this will work in all cases.

The autogenerateWithinId Function actually makes use of the id again when the link hint is activated. So iframes would need special handling.
pseudocode:
function autogenerateWithin(..., container_is_an_iframe) {
    let container = iframe_element.contentWindow.document.body if container_is_an_iframe else document.getElementById(containerID);

...

if not container_is_an_iframe {
let f = new Function(`document.getElementById(\"${containerID}\").querySelector(\"[`+this.AUTOGEN_LINKHINT_ATTRIBUTE+"='"+this.global_index+"']\").click();");
} else {
let f = new Function(`document.getElementById(\"${containerID}\").contentWindow.document.body.querySelector(\"[`+this.AUTOGEN_LINKHINT_ATTRIBUTE+"='"+this.global_index+"']\").click();");
}
}

I could just replace document.getElementById(containerID) with a function that returns normally unless it's an iframe. When it's an iframe, it returns the iframe document.
That should be disableable with a parameter.

I assume that showKeys() also requires modification, because it uses document.getElementsByClassName().
It should not only get all elements in the document, but also in the iframes specified.
Options:

track iframes that should be traversed in autogenerate. This means that only iframes with autogenerated key hints would be activated - not ones with manually added key hints. It is reasonable to assume that a user would not manually add hints to iframe content though. (And if they did, they can also modify this library or inject some iframes into the tracking array).
traverse all first-class iframes because it will do nothing unless the tags are in there. This option is preferrable due to ease of code and ease of use. Will have to check performance. Might cause issues if the iframe content uses the same class tags. So better not choose this option.
let user specify all iframes that should be traversed both in autogenerate and showKeys. This is annoying for the user if they have many iframes though.

I'm not supporting nested iframes for the moment. YAGNI.
TODO:

implement getElementOrIframeBodyById
track iframes that we use in autogenerate
show keys for those iframes in showKeys as well.

implemented in 02e6862 but there's still an inconvenience:
if the iframe was clicked (not the surrounding content), it seems to capture the keys - brotkeys does not react to them

it works when running manager.autogenerateWithinId("ifrem", manager.GenerationEnum.tag_anchor) from the browser console, but not from the file itself...

That is because the iframe content must already be loaded. so this works:
        <iframe id="ifrem" src="./mf_classic_access_conditions.md.html" frameborder="0" scrolling="no" style="border:0; margin:0; padding:0; width:100%;" onload="resizeIframe(this);removeTopPaddingOfContent();brotkeysSupportIframeContent();">Your browser does not support iframes.</iframe>
    </body>

        <script src="../libs/jquery/jquery-3.3.1.min.js"></script>
        <script src="../libs/bootstrap/js/bootstrap.min.js"></script>
        <script src="../libs/jaywcjlove_hotkeys/hotkeys.min.js"></script>
        <script src="../libs/lucidbrot_brotkeys/brotkeys.js"></script>
		<script src="../keyjs/everywhere.js"></script>
</html>

This is a snippet I use in my website. most of this is not relevant to this issue. Important is just that onload="brotkeysSupportIframeContent();". In my case, I defined that function in everywhere.js`:
// must be called in iframe onload
// iframe handling for iframe that has id "ifrem". That is mostly the case in publications using markdown (see _dummy_md.html)
function brotkeysSupportIframeContent(){
    let myifrem = document.getElementById("ifrem");
    if (myifrem != undefined && myifrem.tagName == "IFRAME"){
        console.log("special handling for iframe: ");
        manager.autogenerateWithinId("ifrem", manager.GenerationEnum.tag_anchor);
    }
}


Expose the MapsIndoors Instance so it can be used from the outside

What

Expose the MapsIndoors Instance so it can be used from the outside

How

Refactor the Map.jsx component to be using the useImperativeHandle
Return the mapsIndoorsInstance
Use the ref to assign the mapsIndoorsInstance to the window so it can be accessible from the outside

Ready for re-review @ammapspeople

I get this error when running as React app:

And I get somewhat same error when running the test app for the built React component:

Oops, missed a check 👀 Pushing the fix now @ammapspeople

Oops, missed a check 👀 Pushing the fix now @ammapspeople

How do I get the instance when using the built React component? 🤔

@ammapspeople updated the implementation to expose the MapsIndoors Instance on the window instead.

Hmm, I could add a section to the README file, do you think that would be sufficient? @ammapspeople

Hmm, I could add a section to the README file, do you think that would be sufficient? @ammapspeople

@andreeaceachir142 That might work!

Updated README files @ammapspeople

@ammapspeople The docs on GitBook has been updated with the new example for polygonFillColor as well. ✅


WIP: Update ibc-go to v2.2.0

MERGE AFTER BECH32-IBC

Merge conflicts keep popping up, need to understand what is going wrong


doStrategy should return a nullable string

I think the Func<object, Task<string>> doStrategy here:
https://github.com/Finbuckle/Finbuckle.MultiTenant/blob/9ddb7f05e6c067af4bb7a86a898a1c61cde05f5e/src/Finbuckle.MultiTenant/Extensions/FinbuckleMultiTenantBuilderExtensions.cs#L135
should actually be a Func<object, Task<string?>> doStrategy, as we're supposed to return null here when this strategy doesn't find anything?
returning null in the callback now emits a warning:
Warning	CS8619	Nullability of reference types in value of type 'Task<string?>' doesn't match target type 'Task<string>'.

Thanks for reporting. I agree and will put out a patch release later today.


New version: Amazon.AWSCLI version 2.13.3

Pull request has been created with WinGet Automation :rocket:

Close with reason: Merge conflicts;