[lint] This adds preliminary Verilator and AscentLint linting flows for the AES module

Linter is coming...
This patchset adds preliminary linting support for Verilator and AscentLint to the AES block and serves as a prototype for the remaining IPs. The lint targets and waiver files for the remaining IPs, as well the documentation update will come in a subsequent PR. This PR implements part of the items in issues #1243 and #1286.
Support for AscentLint is preliminary, since the flow still requires a proprietary lint policy file, which is not publicly available. However, this lint policy will be available soon as a built-in lint policy in the
upcoming 2019.A.p3 release of the tool. The lint waivers for AscentLint will all be publicly available, and the lint makefile supports a summary report option that filters out the relevant messages from a batch run.
Note that lint report information must be filtered using this summary report script before publishing openly. The script filters out some proprietary information that the tool prints into the reports.
The Verilator lint waivers are only partially populated, and hence the verilator linting flow linting flow still throws many warnings and errors. Further, there is no summary report generation for Verilator lint yet.
Explanation of the some of the AscentLint targets available in the linter makefile under hw/lint:

all: cleans the build and report directory, runs all declared lint targets through AscentLint and produces a summary report.
<fusesoc module>_lint: run individual lint target (if specified in that core file), e.g. make ip-aes_lint
report: filter all available logs under hw/lintreports/, and produce a summary report

Note that these targets require a valid AscentLint license, as well as a copy of the lint policy file.
For Verilator lint, the following targets are available:

vall: same as for AscentLint, but without the summary report generation (since that is not supported yet)
<fusesoc module>_vlint: same as the corresponding AscentLint target

Thanks for looking through it, @imphil. Sorry for the jumbo-sized PR (old habits...). I should've split it up into more manageable junks. let me clean this up a bit.

Ok, I've updated the description of this PR and split out all redundant or unimportant changes to other PRs.

Great, thanks! Would you mind also adding the changes to the aes.core file here (but they're probably fine).

Woops, that file got rebased into the wrong commit... now it should be visible within this PR.

Thanks for for reviewing! Will move forward once the CI passes.


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


added the ability to set the user's status

Pull Request Etiquette

[x] I have checked the PRs for upcoming features/bug fixes.
[x] I have read the code of conduct.

Changes

[x] Internal code
[ ] Library interface (affecting end-user code)
[ ] Documentation
[ ] Other: _____

Closes : NaN

Codecov Report
Base: 3.63% // Head: 3.61% // Decreases project coverage by -0.01% :warning:

Coverage data is based on head (f51dc9d) compared to base (e8b26dd).
Patch coverage: 0.00% of modified lines in pull request are covered.

 Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Can't npx dapp-store init with @solana-mobile/dapp-store-cli 0.5.2

$publishing % pnpm install --save-dev @solana-mobile/dapp-store-cli

devDependencies:
+ @solana-mobile/dapp-store-cli 0.5.2 <- ../packages/cli

Done in 1s
$publishing % npx dapp-store init
node:internal/errors:496
    ErrorCaptureStackTrace(err);
    ^

Error [ERR_MODULE_NOT_FOUND]: Cannot find module './packages/cli/lib/index.js' imported from./packages/cli/bin/dapp-store.js
    at new NodeError (node:internal/errors:405:5)
    at finalizeResolution (node:internal/modules/esm/resolve:226:11)
    at moduleResolve (node:internal/modules/esm/resolve:838:10)
    at defaultResolve (node:internal/modules/esm/resolve:1036:11)
    at DefaultModuleLoader.resolve (node:internal/modules/esm/loader:251:12)
    at DefaultModuleLoader.getModuleJob (node:internal/modules/esm/loader:140:32)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:76:33)
    at link (node:internal/modules/esm/module_job:75:36) {
  code: 'ERR_MODULE_NOT_FOUND'
}

Solution:
pnpm install --save-dev<EMAIL_ADDRESS>

@creativedrewy would you mind taking a look at this?

Hey @vofan can you let me know what version of nodejs you're running?

Hello @creativedrewy.
% node --version
v20.5.1

I just confirmed everything working with Node 18.16.0. Would you be able to use Node Version Manager and try Node 18?

yes, it works on 18.16**.0**, but not 18.16.1 and above

Thanks for the update, and sorry about the troubles. I'm going to modify your title add add this bug to our backlog.


Init project with NextJS

Summary

We want to handle the frontend of the project using NextJS
Init the frontend using NextJS

We need a point to start so following this guide should be good

Add somewhere a Markdown file with the instructions on how to run the frontend
Paste all the frontend files and stuff in a new /frontend directory in the root of the project

Please can I be assigned to this issue @danielcdz

Hello @danielcdz I would love to contribute to this issue

I'm a Frontend developer with 2 years of experience in React, JS and TS. I recently contributed to Starknet React and Starknet Quest projects, demonstrating my ability and command of my skillset. I am very comfortable with next JS and I can take on this challenge.
Permit me to push a PR for this task

Hi, I'm Josué Brenes and I'll be working on issue.
I'm Dojo Coding member. ⛩
I estimate this will take 1 day to complete.
Proposed Solution for Issue
I would resolve this issue in the following way:

Set Up the Frontend Using NextJS:

Initialize a new Next.js application in the /frontend directory by running the following commands:npx create-next-app@latest frontend
cd frontend

Follow the setup prompts or use the default configurations provided by Next.js.

Add Setup Guide in a Markdown File:

Create a Markdown file in the /frontend directory named README.md. This file will contain instructions on how to run and develop the frontend.

Example content for the README.md file could be:
# Frontend Setup and Development

## Running the Development Server
To start the development server, run:
```bash
npm run dev

The app will be available at http://localhost:3000.
Building for Production
To create a production build, run:
npm run build

Starting the Production Server
To run the production server after building, use:
npm start

Organize Frontend Files:

Place all the frontend files and folders within the newly created /frontend directory, ensuring separation between frontend and backend code.

Commit and Push:

After setting up and organizing the frontend, commit the changes to the repository to maintain a clear separation of project components.

This solution provides a structured setup for the frontend using Next.js, along with a README file for easy reference on running and building the application.

Can I take this issue?

Hello, I am Derian, a software engineer focused on fullstack web development, and I am currently part of Dojo Coding. I have experience with backend technologies like Cairo, C#, Python, and Node.js, as well as frontend development using React and JavaScript/TypeScript. I don’t have experience with NextJS yet, but I would like to learn.
How I would resolve the issue:

I will understand the problem that needs to be solved by carefully reading the issue description.
I will use all resources provided in the problem to better understand the task.
If I have any questions, I will ask them as soon as possible in Telegram.
I will open a PR and wait for your feedback.
I will make the necessary changes based on the PR review.

Hi Daniel,
I have experience working with front end technologies. I recenlty set up the project for https://github.com/Vagabonds-Labs/cofiblocks and I have some ideas that could work.
My plan is:

Create a boilerplate project using next.js, tailwindcss, any componentes library of your preference, biome for linting and git hooks for keeping the project clean.
Also I can add a PRD document that could work as a prompt for Cursor or any AI Driven Development workflow.

Thanks in advance.

Hey! I’d love to jump in and get the frontend started for this project. I have a solid background in Next.js, and I’m excited to make my first contribution here. Looking forward to bringing my Next.js experience to the team and making a meaningful impact on the project! Feel free to reach out on my social media if you have any questions.

I have a deep passion for Web3 and I am currently working as a frontend developer intern at a Web2 company, focusing on Next.js. Additionally, I am an active member of Dojo Coding, a prominent Web3 community in LATAM, which has given me great exposure to decentralized technologies.
Recently, I won the Base LATAM's Buildathon. I am eager to continue growing and contributing, and see this as a fantastic opportunity to further develop my skills and make a significant impact.
This is my first OD Hack, so I will appreciate it if you give me the chance to contribute to this amazing project.
To solve this issue, here’s what I’d do:

Initialize the Next.js Project: In the root of the project, I’d create a /frontend folder and set up a Next.js project in there using npx create-next-app@latest frontend.

Add a Markdown File with Instructions: Inside /frontend, I’d add a README.md with basic instructions on how to run the app. It would include:

Navigate to the frontend directory: cd frontend
Install dependencies: npm install
Start the development server: npm run dev
Then open http://localhost:3000 in a browser.

This would set up the frontend and provide a quick guide for anyone to get it running.

Estoy aprendiendo next.js, me gustaria poner mi conocimiento a prueba para ayudarles a crecer juntos, seria mi primera contribucion en el codigo abierto

i would like to take this issue


feat: export services required to add custom keybinds & commands

This PR exposes some services and constants that would be needed to add new keybindings, actions and menu items imperatively.

I understand your need. At first, we were using the internal api a lot.
Since then, I tried to limit the usage of the internal api as much as possible to make update easier and stop breaking things at each update
Is there anything you want to do that can't be done using the extension api?

Throughout our application we want to register new actions to the VSCode API so we can start using its command palette instead of ours. However, we can't know during the initialization of VSCode which commands are keybindings will be added, which is required for an extension (in its manifest). That's why we're looking for an imperative way to add new keybindings. The CommandsRegistry is already working for adding new commands imperatively, but we need a KeybindingsRegistry to also add the keybindings for it.

This is interesting, in the demo here: https://github.com/CodinGame/monaco-vscode-api/blob/main/demo/src/main.ts#L122-L132 there is a custom registration for a new action with keybinding. Essentially, we'd need something like this. But it seems like the action is added here through the editor interface?

The action register through the editor is only visible from that editor

Extensions require keybindings/commands to be defined upfront (in its manifest).

The manifest can easily be generated on the fly though

The manifest can easily be generated on the fly though

Is there a way to update the manifest of an existing extension? Or should we reload the extension every time a new command is added?
Our editor currently (un)registers new keybindings or commands conditionally based on conditions that can happen later (like a user signed in). We can scope all of those actions behind context keys, wait for a second after mounting the editor and dynamically generate a manifest, but that would be a significant amount of work for the first version. We have over ~100 actions we'd have to port.
I was hoping initially we could use the same API that VSCode uses internally to register these actions, similar to how VSCode already exposes the CommandsRegistry.

Instead of adding and removing action on the fly, you can register them all, and just enable/disable them on demand:
const { getApi } = registerExtension({
  name: 'custom-commands',
  publisher: 'me',
  version: '1.0.0',
  engines: {
    vscode: '*'
  },
  contributes: {
    commands: [{
      command: 'customCommand',
      title: 'My custom command'
    }],
    menus: {
      commandPalette: [
        {
          command: 'customCommand',
          when: 'customContextKey'
        }]
    },
    keybindings: [
      {
        command: 'customCommand',
        key: 'ctrl+f1',
        mac: 'cmd+f1',
        when: 'customContextKey'
      }
    ]
  }
}, ExtensionHostKind.LocalProcess)

const api = await getApi()

let enabled = true
setInterval(() => {
  enabled = !enabled
  console.log('enable', enabled)
  void api.commands.executeCommand('setContext', 'customContextKey', enabled)
}, 2000)

api.commands.registerCommand('customCommand', () => {
  console.log('Custom command executed')
})

Right, that's a sensible approach and something that we ultimately want to move to. However, right now the actions in our editor are added on-demand in React components. They register and unregister themselves as components mount and unmount. I realise this is not the way VSCode should work, as it's based on context keys. Also, configuration of keybindings would become weird because you wouldn't be able to configure keybindings for actions while the action is not registered.
However, moving all (50+) commands to this new paradigm will require a major refactor, which makes the adoption of VSCode less incremental and more risky for us.
The way it would work for our v1, is that components can register the keybinding + command using registerKeybindingAndCommand, when the component unmounts (or its dependencies change), we call dispose on the IDisposable that's returned from it. This way, the command palette from VSCode becomes almost a drop-in replacement for our current solution.
It's understandable if you don't want to put this in the library itself. I can also maintain a fork of this library until we're able to move all custom commands to an upfront specification that works well with our React component system.


Replace mini_racer to fix latest macOS/Apple silicon compatibility

mini_racer 0.3.1 isn't compatible with more recent macOS versions (in part due to lack of python 2) which made script/setup fail with Gem::Ext::BuildError: ERROR: Failed to build gem native extension
Updating mini_racer caused a different problem - a bug in bundler caused it to install both linux and linux-musl variants in the CI environment. (see: https://github.com/rubyjs/libv8-node/issues/5 and https://github.com/rubygems/rubygems/issues/3174)
This instead replaces mini_racer example with loofah. That gem depends on nokogiri which provides different binary variants, like libv8/libv8-node did.
But this one builds properly on macOS and does not provide linux-musl variant so it should not cause any issues on CI.

I'm going to merge these changes as-is to fix the build on the bundler test fixtures.  It looks like something changed in the most recent bundler release that is causing problems with this tool and I need to be able to run the tests to figure out the fix 😄 .  I might update the comments and such later.


[libevent] Upgrade to version 2.1.11

Upgrade to new version 2.1.11 and fix old patches.
Related issue: #7511

Duplicate with #7515, so I am closing this PR for now.


ERROR - Command ['/usr/bin/leapp', 'preupgrade'] failed with return code 1

centos2alma_feedback.zip

centos2alma_feedback.zip

It appears that python2.7 could not find a certain part of urllib3 within leapp:
2024-12-22 22:00:58,225 - INFO - stderr:     from .request import make_headers
2024-12-22 22:00:58,225 - INFO - stderr:   File "/usr/lib/python2.7/site-packages/urllib3/util/request.py", line 5, in <module>
2024-12-22 22:00:58,225 - INFO - stderr:     from ..exceptions import UnrewindableBodyError
2024-12-22 22:00:58,267 - INFO - stderr: ImportError: cannot import name UnrewindableBodyError

This suggests there might be an issue with your python 2 or urllib3 installation. I would suggest you reinstalling urllib3 to see if that resolves the problem.


🐛 [Papermerge] Web UI not starting since v2.1.5-ls61

Papermerge

Addon Papermerge :
Addon v2.1.5-ls61 :

Describe the bug
The Web UI does not work since update to v2.1.5-ls61
Full addon log
 Please, share the above information when looking for help
 or support in, e.g., GitHub, forums
 https://github.com/alexbelgium/hassio-addons
-----------------------------------------------------------
cont-init: info: /etc/cont-init.d/00-banner.sh exited 0
cont-init: info: running /etc/cont-init.d/00-folders.sh
[12:07:15] INFO: Setting config location to /config/addons_config/papermerge
cont-init: info: /etc/cont-init.d/00-folders.sh exited 0
cont-init: info: running /etc/cont-init.d/01-custom_script.sh
[12:07:15] INFO: Execute /config/addons_autoscripts/papermerge.sh if existing
[12:07:15] INFO: ... no script found
cont-init: info: /etc/cont-init.d/01-custom_script.sh exited 0
cont-init: info: running /etc/cont-init.d/01-envfile
cont-init: info: /etc/cont-init.d/01-envfile exited 0
cont-init: info: running /etc/cont-init.d/01-migrations
[migrations] started
[migrations] no migrations found
cont-init: info: /etc/cont-init.d/01-migrations exited 0
cont-init: info: running /etc/cont-init.d/10-adduser
-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/
Brought to you by linuxserver.io
-------------------------------------
To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------
User uid:    1003
User gid:    1003
-------------------------------------
cont-init: info: /etc/cont-init.d/10-adduser exited 0
cont-init: info: running /etc/cont-init.d/91-OCR.sh
[12:07:15] INFO: Configuring 1 languages
[12:07:15] INFO: OCRLANG variable is set, processing the language packages
[12:07:15] INFO: Writing new configuration
[12:07:18] INFO: Processing language deu
[12:07:19] INFO: Installing tesseract-ocr-deu
[12:07:41] INFO: deu identified as German
[12:07:41] INFO: ... deu installed
cont-init: info: /etc/cont-init.d/91-OCR.sh exited 0
cont-init: info: running /etc/cont-init.d/92-smb_mounts.sh
Mounting smb share(s)...
Using PUID 1003 and PGID 1003
[12:07:42] INFO: ... //<IP_ADDRESS>/Daten/Papermerge successfully mounted to /mnt/Papermerge with options
cont-init: info: /etc/cont-init.d/92-smb_mounts.sh exited 0
cont-init: info: running /etc/cont-init.d/99-configuration.sh
[12:07:42] INFO: Storage dir set to /mnt/Papermerge/storage
[12:07:42] INFO: Import dir set to /mnt/Papermerge/import
cont-init: info: /etc/cont-init.d/99-configuration.sh exited 0
cont-init: info: running /etc/cont-init.d/99-custom-files
[custom-init] No custom files found, skipping...
cont-init: info: /etc/cont-init.d/99-custom-files exited 0
cont-init: info: running /etc/cont-init.d/99-deprecation
******************************************************
******************************************************
*                                                    *
*                                                    *
*             This image is deprecated.              *
*      We will not offer support for this image      *
*             and it will not be updated.            *
*                                                    *
*                                                    *
******************************************************
******************************************************
The last working tag is:
      v2.0.1-ls60
cont-init: info: /etc/cont-init.d/99-deprecation exited 0
We recommend the official image instead:
https://hub.docker.com/r/papermerge/papermerge
******************************************************
******************************************************
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service init-mods: starting
s6-rc: info: service init-mods successfully started
s6-rc: info: service init-mods-package-install: starting
s6-rc: info: service init-mods-package-install successfully started
s6-rc: info: service init-mods-end: starting
s6-rc: info: service init-mods-end successfully started
s6-rc: info: service init-services: starting
s6-rc: info: service init-services successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
s6-rc: info: service 99-ci-service-check: starting
[ls.io-init] done.
s6-rc: info: service 99-ci-service-check successfully started

Full addon config
CONFIG_LOCATION: /config/addons_config/papermerge
PGID: 1003
PUID: 1003
import_dir: /mnt/Papermerge/import
ocrlang: deu
storage_dir: /mnt/Papermerge/storage
cifspassword: xxxxxxx
cifsusername: xxxxxxx
networkdisks: //<IP_ADDRESS>/Daten/Papermerge
TZ: DE

System
Generic x86-64
Home Assistant 2023.2.5
Supervisor 2023.01.1
Operating System 9.5
Frontend 20230202.0 - latest

Indeed, it is deprecated as shown in the log :
The last working tag is:
      v2.0.1-ls60
cont-init: info: /etc/cont-init.d/99-deprecation exited 0
We recommend the official image instead:
https://hub.docker.com/r/papermerge/papermerge

I'll revert and pause updates

Thanks a lot.
Is it possible to move this addon to the official image, so we can get the newest version?

Hi, I've changed your bug report in a request to remind myself, and will do it when I'll have time. It isn't at all the same container structure so I'll have to adapt code and check many things to make the switch transparent. Alas linuxserver doesn't provide a switch guide in their depreciation notice

Thanks a lot!
I installed your latest "update" and every works great again.
I would also be happy about a migration to the new image.
Thanks for all of your work!


Cannot install as Add-on

Describe the bug
When I try to install the add-on via by adding the repo to the add on store, I get the error message:
Failed to install add-on
The command '/bin/ash -o pipefail -c apk add --no-cache python3 bash py3-pip' returned a non-zero code: 2

To Reproduce:
Steps to reproduce the behavior:

Add repo 'https://github.com/Dielee/volvo2mqtt' in Add-on store
Refresh and find the Volvo2mqtt Add-on
Click on Install
See error

Expected behavior:
I expect the Add-on to be installed
Screenshots:

Version info:

Version
core-2023.8.3

Installation Type
Home Assistant Supervised

Development
false

Supervisor
true

Docker
true

User
root

Virtual Environment
false

Python Version
3.11.4

Operating System Family
Linux

Operating System Version
5.10.103-v7l+

CPU Architecture
armv7l

Host Operating System
Raspbian GNU/Linux 10 (buster)

Update Channel
stable

Supervisor Version
supervisor-2023.08.1

Docker Version
20.10.21

As I can't reproduce this issue. Please take a look at the supervisor logs from your HA instance. Maybe this will point us to the right direction.

Thanks for quick reply!
This is what I get from supervisor. Some kind of Python issue?
23-08-30 10:56:13 INFO (MainThread) [supervisor.host.apparmor] Adding/updating AppArmor profile: 982ee2c4_volvo2mqtt
23-08-30 10:56:13 INFO (MainThread) [supervisor.docker.addon] Starting build for 982ee2c4/armv7-addon-volvo2mqtt:1.8.6
23-08-30 10:56:16 ERROR (MainThread) [supervisor.docker.addon] Can't build 982ee2c4/armv7-addon-volvo2mqtt:1.8.6: The command '/bin/ash -o pipefail -c apk add --no-cache python3 bash py3-pip' returned a non-zero code: 2
23-08-30 10:56:16 ERROR (MainThread) [supervisor.docker.addon] Build log:
Step 1/15 : ARG BUILD_FROM

Step 2/15 : FROM $BUILD_FROM

 ---> 89386b2d7696

Step 3/15 : RUN apk add --no-cache python3 bash py3-pip

 ---> Running in e256ab914e75

fetch https://dl-cdn.alpinelinux.org/alpine/v3.18/main/armv7/APKINDEX.tar.gz

fetch https://dl-cdn.alpinelinux.org/alpine/v3.18/community/armv7/APKINDEX.tar.gz

WARNING: fetching https://dl-cdn.alpinelinux.org/alpine/v3.18/main: temporary error (try again later)

WARNING: fetching https://dl-cdn.alpinelinux.org/alpine/v3.18/community: temporary error (try again later)

ERROR: unable to select packages:
  py3-pip (no such package):
    required by: world[py3-pip]
  python3 (no such package):
    required by:
 world[python3]

This
WARNING: fetching https://dl-cdn.alpinelinux.org/alpine/v3.18/main: temporary error (try again later)

WARNING: fetching https://dl-cdn.alpinelinux.org/alpine/v3.18/community: temporary error (try again later)

looks like your HA cannot fetch data from dl-cdn.alpinelinux.org. Maybe a local DNS problem ?

Thanks for pointing those out. There was no DNS issue but an issue related to that I'm running on a raspberrypi with 32bit os. I found the solution here:
https://community.home-assistant.io/t/supervisor-cant-install-add-ons/301771

Thanks for pointing those out. There was no DNS issue but an issue related to that I'm running on a raspberrypi with 32bit os and this add-on tries to build a docker image?
Anyway I found the solution here and could now install the add-on!: https://community.home-assistant.io/t/supervisor-cant-install-add-ons/301771

Same issue here. Can you describe what you did to fix it? There seem to be multiple different issues in the linked thread


libiomp5.so Libraby get missing after session ends

i have added it on ~/.profile and ~/.bashrc but still

@ZamaZethu @nyameko @mmhashatsi

Converting this into a Discussion.
Please ask for help there and don't raise content development related Issues here.


JS: additional command line injection sinks

Some additional sinks for the js/command-line-injection query. Resolves https://jira.semmle.com/browse/ODASA-6581 which aimed to infer the models automatically.
The evaluation is uneventful.

Comments addressed.

Updated expected output, and squashed.


How to set up background highlighting?

How can I set up the background highlighting like in this screenshot?:
https://github.com/lukas-reineke/indent-blankline.nvim/tree/lua#with-custom-background-highlight
(I would then contribute and add something about that to the README or doc.)

Set g:indent_blankline_char_highlight_list and g:indent_blankline_space_char_highlight_list to highlights with a background color.
And you should also turn off g:indent_blankline_show_trailing_blankline_indent

Thanks for the hint @lukas-reineke .
To have the indent char disappear I have to set vim.g.indent_blankline_char = "".
Unfortunately the indent backgrounds disappear if I enable my coloescheme (vim-one). Do you have any idea how I can get it working together?

To have the indent char disappear I have to set vim.g.indent_blankline_char = "".

you have to set it to " ", it needs to have a width

you have to set it to " ", it needs to have a width

Okay  - got that ✓
Still the backgrounds don't appear if I enabled the colorscheme.

What highlight groups do you use?
And if you define them yourself, when do you do it?
Most color schemes clear all existing highlight groups, so you have to define them after you set color

thanks this works :-D

@franklouwers please open a new issue next time.
Most colorshemes clear all the highlighting, so your only option is to run your command after the colorscheme.
You can use an autocommand if just putting it at the end of your init.vim does not work
autocmd ColorScheme * highlight IndentOdd guifg=NONE guibg=NONE gui=nocombine
autocmd ColorScheme * highlight IndentEven guifg=NONE guibg=#0000ff gui=nocombine

Yeah that's what I did, but I was wondering if there was a way without using autocmd, anyway, works now :)

I've tried the snippet above. Is this expected behaviour?

these lines do not contain any symbol

@fuelen please open a new issue


The application waveSendUDP.exe compiled for Windows closes immediately after the start

The application compiled for Windows closes immediately after the start.
I use this string:
waveSendUDP.exe --chunksize 128 --chunknum 4 --device hw:0,0 --channel 2 --port 2305 <IP_ADDRESS>
Same issue using 32 and 64 bit compiled using Microsoft Visual Studio 2017.
wavePlayUDP.exe --chunksize 128 --chunknum 10 --device default --rate 48000 --channel 2 --port 2305 works fine.

if you launch it with the command line interpreter, what are the logs ?

C:\Users\user\Documents\Projects\waveOverUDP-master-bin\Debug>waveSendUDP.exe --chunksize 128 --chunknum 4 --device hw:0,0 --channel 2 --port 230
5 <IP_ADDRESS>
Connecting to: <IP_ADDRESS>:2305
Using default playback device
C:\Users\user\Documents\Projects\waveOverUDP-master-bin\Debug>

Same here...

I can't reproduce the issue, maybe its related to OS changes ? I use Windows 8.1.
Debug it inside visual studio to find what's wrong.


Bug fix/fixes 19022020

Scope & Purpose
See commit messages

[x] Bug-Fix for devel-branch (i.e. no need for backports?)
[x] The behavior in this PR can be (and was) manually tested (support / qa / customers can test it)
[x] The behavior change can be verified via automatic tests

Testing & Verification
This change is already covered by existing tests, such as (please describe tests).
Expectation: should pass all existing tests.
http://<IP_ADDRESS>:8080/view/PR/job/arangodb-matrix-pr/8651/

http://<IP_ADDRESS>:8080/view/PR/job/arangodb-matrix-pr/8653/


Vim Adaptor: bug fixing for issue #83

Can one of the admins verify this patch?

test this please


[FEATURE REQUEST] Every sentence on new-line for readability and maintainability

Currently as of version 0.2.7 (46b4ec34)
Long sentences get split up by adding a newline in the middle. Which is good.
But I would also like to have every sentence on a newline, since this won't impact paragraphs in Typst (same for LaTeX).
Normally I do this manually, I scroll trough the file and put a newline behind every period.
I would be nice if the formatter did this automatically.

Hey there :)
We could simply add a newline after each single . in text mode then
This should be feasible

Thanks for the quick response!
Maybe I'll look into proposing a pull-request myself, if this feature doesn't have that high of a priority. Im not as familiar with the codebase just yet, so i'll have to learn, but im loving using the formatter anyways!

Long in number of lines? I actually think it would be pretty okay to have both (especially since the default line length is quite long and configurable.)
It would be a bit subtle and possibly hacky to have both at once though so I'm not sure If I actually want to support that :thinking:

I was going to request this feature as well. There is some relevant discussion here for vimtex (a comprehensive vim package for LaTeX which includes its own formatexpr). I agree that mixing one line per sentence with maximum line length could be a bit odd, but I guess I could go either way on that point. One thing to watch out for would be that we wouldn't want to split the line after certain periods in text mode. For example, Mr., Mrs., e.g., c.f., etc., and maybe other commonly used abbreviations.

lot's of abbreviation in fact yes, good remark! Maybe we should only split on . if there is an uppercase letter after it? that feels a bit silly :thinking:

That's closer, but it still doesn't work for ... Mr. Hammond .... It would put a line break after Mr. since the next letter is uppercase.

There's also the possibility/need to let the user add manual exceptions via the config file!

It starts to get complicated if we want to support multiple languages tho :(

(e.g., don't break after Mrs., Mr., Dr., Drs.).

You are absolutely correct. A "good enough" solution for me would be a configurable option for typstfmt to just not reflow my paragraphs since I'm so used to manually writing one-sentence-per-line.

That's actually already the case, you can use word_wrap = false in config

Maybe I'm missing something in the documentation but where am I supposed to place typstfmt.toml? (I'm on macos)

there's also typstfmt -C that creates a new local to the project config file! at ./typstfmt.toml I think!


Add Base class to HtmlWriterComposite and HtmlSingleElement

HtmlSingleElement must not extend HtmlWriterComposite. We should create a base class and include the code from HtmlWriterComposite that is required by the HtmlSingleElement.

I add AbstractHtmlElementSelector which in turns implements HtmlSelector and the new interface HtmlElement


Issue when mounting file share of type NFS (BYOS) to App Service

An email was sent to the "Azure Web Apps (Antares) discussions" alias requesting this change.  Azure Files are supported for Linux App Service.  I think the nuance here is that we only support (currently) Azure Files SMB, but not Azure Files NFS.  Valid point though to call this out explicitly in our docs and such.

@benperk : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@msangapu-msft
Can you review this PR?
IMPORTANT: When this content is ready to merge, you must add #sign-off in a comment or the approval may get overlooked.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off

@Jak-MS : Thanks for your contribution! The author(s) have been notified to review your proposed change.


How can I tune marked to process markup within HTML

Is this possible to process the markup within HTML? I have such a markdown code from one jekyll project:
# Title

<div markdown="1">

* item
* item
* item

</div>

I want to switch into marked. So I need to make code inside the tags with markdown="1" attribute processable. How can I do this?

Might want to take a look at #378 and #236.

You will probably need to extract the plaintext Markdown from the HTML first. That's what I do with Markdown Here when getting the MD that the user has typed into an email. My HTML-to-text code is here, although there might be better out there.

#985


Calling .close on response http stream  will hang indefinitely for some urls

I created a minimal repro at https://github.com/phronmophobic/close-hang-repro.
The reproduction is fairly straightforward:
(require '[clj-http.client :as http])
(defn -main [& args]
  (let [url "https://github.com/uscensusbureau/citysdk/archive/bc93425d47508741c8fa8131ac09a53372e1e088.zip"
        response (http/request {:url url
                                :method :get
                                :as :stream})]
    (prn (:body response))
    ;; will hang indefinitely
    (.close (:body response))))

It doesn't happen for every url, but this url will consistently reproduce the hang.

I dug into this a bit more. It seems that some requests will have their input stream wrapped with a ContentLengthInputStream.
Per their docs:

Note that this class NEVER closes the underlying stream, even when close gets called. Instead, it will read until the "end" of its limit on close, which allows for the seamless execution of subsequent HTTP 1.1 requests, while not requiring the client to remember to read the entire contents of the response.

What was happening is that calling .close on the inputstream would cause the ContentLengthInputStream to read the rest of the input (aka. downloading the rest of the input). The problem is that the example url is very large and takes quite a while to download. Testing with smaller downloads has shown that the .close will eventually complete after reading the full result.
It seems closing the body inputstream should terminate the connection rather than fully consuming the stream. Is this desired behavior?
A workaround is to call close on the http client before closing the stream, (.close (:http-client response)).

Here's the workaround I ended up with so that closing the streams closes the connection.
(let [body
      (proxy [FilterInputStream]
          [^InputStream (:body response)]
          (close []
            (.close (:http-client response))))]
  (partially-consume body)
  (.close body))


update command does not show updated value on initial response

Example:
Suppose my image is writeEnabled:false. If I submit a command like
az acr repository update --name <myreg> --repository <myimage> --write-enabled true
on success, the response may still have --write-enabled false instead of the --write-enabled true. After submitting the corresponding show command right after, I get the correct result (assuming the update command had succeeded)

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

ID: 717d6f8d-0ba4-69c9-c74d-6090c0d886bc
Version Independent ID: c010898d-242b-da0f-b7a9-850a1a0f6c9e
Content: Lock an image in Azure Container Registry
Content Source: articles/container-registry/container-registry-image-lock.md
Service: container-registry
GitHub Login: @dlepow
Microsoft Alias: danlep

Thanks for the feedback! We are currently investigating and will update you shortly.

@sonpeppers The first time I ran the update command, the output showed the old status but then I tried changing --write-enabled true multiple times and result was correct.
@dlepow are you aware of this, do you have any suggestions/insights on what could be causing it? Please let us know. Thanks. :)

@dlepow Did you get a chance to take a look at this issue. Thanks :)

@sonpeppers @Karishma-Tiwari-MSFT - Thanks for the question. I too can reproduce this behavior. I opened an issue  for the engineering team to track. This is a known issue under investigation related to server-side caching of repo metatdata. So, there can be a few seconds of delay when displaying updated attributes .
#please-close

Thanks @dlepow! :)
@sonpeppers
Thanks for bringing this to our attention. We will now close this issue. If there are further questions regarding this matter, please tag me in a comment. I will reopen it and we will gladly continue the discussion.


Copying line up or down failing in Ubuntu

When I am trying to copy line up or down using the pre-defined command i.e. Ctrl + Shift + Alt + UpArrow/DownArrow then it's failing in Ubuntu. May be because of the command is conflicting with the app interface shifting in the workspaces.

VSCode Version: Code 1.13.1 (379d2efb5539b09112c793d3d9a413017d736f89, 2017-06-14T18:18:03.540Z)
OS Version: Linux x64 4.4.0-81-generic

Steps to Reproduce:

Select the line or take the cursor to the line you want to copy
Use command mentioned above

It looks like the builtin command conflicts with the system as you described. @Tyriar do you think it is a bug or external?

The OS intercepts the key event so it never makes it to VS Code. You will need to rebind the key or get rid of the Ubuntu shortcut.

I already know that, but I thought maybe it's very easy for the VS code team to get rid off in a very efficient way.

Unfortunately there's nothing we can do on our end for this.


minor: docs: Fix chart links

This is an issue with GitHub starting to block embedding canvas images in rendered docs. Have contacted support to see what they say...
Seems it's due to Confluent locking down google doc access to org only.

Closing - Stale.


Change to FFTW library for FT in filtering sinogram

Methods to create sinogram from data matrix, filter sinogram in frequency domain and backproject to image.
It is not finish yet. All things are working, but, CMake is linking FFTW to all tests and backprojected image is much worse(bug with FFTW storing result/filters).
It is replacement of #77 PR and #77 should be closed after fix bug with filters.

I don't think fftw3 is installed by default in ubuntu, I added info to INSTALL file in requirements section.
Also I fixed calculating position in Fourier space and now result is compared with old method.
I didn't refactor  doFFTW call, I started doing that, but I occurred weird linking error, I think it can be done in another PR.

@grey277  Its fine for me. Two more things:
1.Change the general PR description since you fixed the bug
2.you must modify .travis.yml to install fftw and better run all tests on your github account


Add Dialyzer to travis.yml file

Apparently some of our typespecs have been getting out of date, so with this
commit we're adding Dialyzer to our CI process to fail the build if that
happens.
This addresses Issue #204

Is this a WIP?
Right now dialyzer simply fails because there are no compiled modules...

Yeah, WIP for right now. I'll change the title to make that clear. It's my first time integrating dialyzer into CI, so it might take me a little bit to figure out!

So


Use MonadConc typeclass from concurrency

It seems likely to me that this library could be parameterized over an arbitrary concurrency-supporting monad using the MonadConc typeclass from concurrency. This is very useful for testing, as the dejafu package defines a ConcST monad (which has a MonadConc instance) that allows concurrent code to be run purely (so the set of possible execution paths will be explored deterministically).

I'm not sure if this makes sense, as this library uses STM at the bottom, so an IO-base is going to be needed anyway.
I will consider a PR if you can get it to work though.

The whole point of MonadConc is that it provides an interface equivalent to STM; there's a bunch of associated type families that make it work.

I don't have time to look at it at this stage; probably not for about a month (packing and moving house), so if you need this please provide a PR.

Alright, I may make a PR some time soon.


Update to kotlin 1.9

What's done:

Update to kotlin 1.9

@akuleshov7

@akuleshov7, it's required for save-cloud migration to 1.9

Go, bro

com.saveourtool.save.plugins.fixandwarn.FixAndWarnPluginTest#base test is flaky test on Windows is due to:
The process cannot access the file because it is being used by another process.


Stream content length

This just adds in the content-length header when creating a stream from a static HttpResponse.

groovy


Execute Run or Debug action in Spyder for IPython console should use %run (-d) of IPython

From<EMAIL_ADDRESS>on 2011-01-27T04:38:32Z
What is the expected output? What do you see instead? runfile() and debugfile() are used instead. At least the %run -d of IPython seems to be much more powerful because it uses "ipdb" What version of the product are you using? On what operating system? 2.05 / Windows XP professional
Thanks a lot again for this powerful tool!
Thomas
Original issue: http://code.google.com/p/spyderlib/issues/detail?id=538

From ccordoba12 on 2011-03-21T15:14:43Z
I think it would be interesting to let the user decide if he/she wants to run the current file on the editor with runfile or %run (and the same for debug). I really don't know how easy it could be to do this though.
Cheers,
Carlos
Status: Accepted
Labels: -Type-Defect -Priority-Medium Type-Enhancement Priority-Low

From pierre.raybaut on 2011-12-01T00:56:29Z
Labels: Component-IPython

From pierre.raybaut on 2012-03-18T14:08:52Z
Labels: -Type-Enhancement Type-Enh

From ccordoba12 on 2014-05-05T06:12:42Z
Labels: -Component-IPython Cat-IPythonConsole MS-v2.4

From ccordoba12 on 2014-09-21T11:34:51Z
This would require an option in
Preferences > IPython console

to be able to select this behavior at will.
Labels: Easy


KEP-3619: fix typo in the feature blog to be published on 2024-08-22

Description

This PR just fixes a typo in the KEP-3619 feature blog that will be published on 2024-08-22.
This is a follow up PR for #46921

@everpeace thanks for opening this!
/lgtm

/assign @sftim
Could you kindly approve this PR? Thank you, in advance!

/approve


Add support to AWS::EC2::SecurityGroupIngress creation

Can you please review, @spulec?
I noticed that CloudFormation resources do not get tags, this PR adds tags to security groups only. We need to review all models in parsing.MODEL_MAP to add proper tagging.

Thanks. Opened a new issue and I will go back through all of the existing models later.


ifconfig.status doesn't work

Hi, im using from documentation:
var ifconfig = require("wireless-tools/ifconfig");

ifconfig.status(function(err, status) {
  console.log(err);
});

And what i have:
Error: Command failed: iwconfig
'iwconfig' is not recognized as an internal or external command,
operable program or batch file.
at ChildProcess.exithandler (child_process.js:291:12)
at ChildProcess.emit (events.js:182:13)
at maybeClose (internal/child_process.js:961:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:248:5) killed: false, code: 1, signal: null, cmd: 'iwconfig' }

Whats wrong with this?

Are you running it in a Linux environment? The iwconfig command this package runs is not available on Windows or Mac.


dbatools module import errors

importModuleOutputs.txt
Steps to Reproduce
$dbatools_serialimport=$true
import-module  dbatools -Verbose
Expected Behavior
dbatools module should load
Actual Behavior
Using the latest build of dbatools and importing the module i get
WARNING: The module import has hit a timeout while waiting for some background tasks to finish.
This may result in some commands not working as intended.
This should not happen under reasonable circumstances, please file an issue at:
https://github.com/sqlcollaborative/dbatools/issues
Or contact us directly in the #dbatools channel of the SQL Server Community Slack Channel:
https://dbatools.io/slack/
Timeout waiting for temporary runspaces reached! The Module import will complete, but some things may not work as intended
If i then unload the module and add $dbatools_serialimport=$true i get
Exception calling "Invoke" with "3" argument(s): "Cannot bind argument to parameter 'Path' because it is null."
At line:203 char:5
+     $scriptBlock.Invoke($script:PSModuleRoot, "$script:DllRoot\smo",  ...
+     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : CmdletInvocationException

The module did load once during repo but i cant explain why but it now consistently fails
## Environmental data

Name                           Value
----                           -----
PSVersion                      5.1.14409.1018
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.14409.1018
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

Follow up from Slack
samgreene [4:27 PM]
Hi All.  I've been using dbatools on my ssis/job server for the past few months without issue.  I have jobs that use cmd job steps an run as a windows login proxy.  I updated dbatools to the latest version using update-module and am getting an error when running jobs.  The 'test-DbaConnection'   command was found in the module 'dbatools', but the module could not be   loaded. For more information, run 'Import-Module dbatools'.
Then I add an import to the script and get this error:  Cannot bind argument to parameter 'Path' because it is null
If I log into the server and run PS as the proxy account, I am able to import dbatools without error.

@FriedrichWeinmann - it's more than msbuild.exe. Our process isn't streamlined and has too many variables.

I believe the copydll variable sometimes builds a dll when it shouldn't (it acts like we enabled alwaysbuidlibrary, I think), maybe this is the msbuild.exe thing you were talking about
Debugging requires two variables to be set (dbatools_multifileimport and dbatools_doDotSource)
Isn't dbatools_multifileimport  and dbatools_doDotSource the same?
The path isn't set sometimes

Like, there's just so many different ways for it to build that I lost track along the way and i'm pretty sure I introduced some issues. I swear sometimes a variable just doesn't get set when it should.
While you are in our import process, can you please make it enable debugging if a .git directory is detected? I was going to do it myself but @wsmelton said it was more complex than just setting dbatools_multifileimport and dbatools_doDotSource if it detects .git.

And to be a pain, could you please add a definitive guide to forcing a dll compile pretty please.
Been going round in circles trying to get a new version of the history object to fix an issue and non of the suggested fixes seem to work. This could well just be stupidity, but a document would rule that one out as well :)

Heya @Stuart-Moore ,
the definitive guide to the import options (at least where triggering them is concerned) is hidden here:
Get-Help about_dbatools_importoptions

The problem was, that until the release just now, automatic library building was broken . Silently broken, to make it even better. So no, totally not your fault you couldn't make it work.
The self-building capability was broken when updating for PS Core, as we needed a feature unavailable in earlier C# versions, but the old msbuild is deprecated and - since msbuild failed silently - nobody noticed. May need to add a test...

Hi folks, still running into this issue when importing the module in a sql job step of cmdexec type.  The step is running as a windows proxy acct that is admin on the machine.
The workaround at this point is to log into the server and run powershell as the proxy, import the module and leave the session open.

ditto, trying myself on code. can repro with $script:multiFileImport = $true; $script:serialImport = $true

k i fixed it but gonna give it another day of testing before publishing to gallery 👍

Great!  Thank you!!!

Hi,
I downloaded the latest version today and got the timeout error again so i ran
$dbatools_serialimport=$true
import-module dbatools

I am not seeing the path is null issue so looks like you fixed! However i am getting a different error

Exception calling "Invoke" with "3" argument(s): "Could not load file or assembly 'file:///P:\Documents\WindowsPowerShell\MappedModules\dbatools\bin\smo\Microsoft.SqlServer.BatchParser.dll' or one of its dependencies. An attempt was made to load a program with an incorrect format."
At line:151 char:5

$scriptBlock.Invoke($script:PSModuleRoot, "$script:DllRoot\smo",  ...

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
FullyQualifiedErrorId : CmdletInvocationException

Not sure where to start digging into that one, i do have SQL management tools installed on my machine.

Please create a new issue.

k i fixed it but gonna give it another day of testing before publishing to gallery 👍

Was it posted?

yes indeed. when you post the new issue, please include what you can from ls env:

Sure


Atom keep changes when I change branch.

When I have a clean repo and change to another branch, then it conserves my changes from previous one and showing invalid code on it.
Atom 1.4.1 OSX version.

Hello guys! The same case happen to me. It was in a Atom for Windows 10.
I was thinking was the only with that problem. But I see don't.

I have the same issue, when i switch branches on the terminal Atom doesn't show the new files. This is making it impossible to use Atom as an editor for me.


Extending CI for keeping an eye on more rules

Hello,
Our CI currently "only" goes as far as building a stage 2 compiler and having it evaluate a trivial expression.  I am well aware that Travis has some time limits for open-source projects, but then I looked at the timings reported for a very recent run (https://travis-ci.org/snowleopard/hadrian/builds/393394592) and realized that  the complete quickest build that succeeds there takes around 47 mins. This got me wondering whether there's any chance we could give a shot at running a little more on travis. I'm for example thinking about the binary distribution rule, perhaps the smallest & quickest validation that fits with the allocated time, nofib, things like that. IIRC the maximum time is 1 hour.

@alpmestan Unfortunately the time limit is 50 minutes, so we can't really pack anything in.
Are you aware of @izgzhen's Hadrian's Wall project?
https://github.com/monad-systems/hadrians-wall
I think what you suggest was exactly the motivation for Hadrian's Wall.

Oh indeed that seems rather relevant! In that case... @izgzhen thoughts on my suggestion? :)

@alpmestan Thanks for the comment!
I think it is unrealistic to rely on free services like Travis for long time tasks. Either we pay for it, or we crowd-build it. I am pursing after the second goal, but it took time to implement so the project progress is always sloppy. It has two problems: 1. insufficient automation to make it easy to setup (I want to contribute my computing power but not human attention). 2. insufficient motivation.
I am still not fully aware of how the community solved this problem for the current-in-use Make build system. I remember that there are some Harbormaster workers? Who pays the computation?

There's no more caching we can do, is there? The CI script seems to cache ~/.cabal and ~/.ghc.

@izgzhen Regarding resources etc, I think it's best if I just let @bgamari comment on this.

w.r.t. computation resource, let's see we test three major platforms for now, up to five configurations, avg. running time 2hr (single core), and let do nightly build for now. It means that we need 3 * 5 * 2 * 1 = 30 hr per day. If we can parallelize it by two, then it can be finished within the time window.

I believe this has been fixed.

Thanks a lot for checking on this and beyond!


Support for fast_switching and fast_switching_enabled?

Apparently back in April with firmware revision feb4dfde a new method was enabled called "fast_switching". I took a look and I don't think starlink-grpc-tools supports it. Should it be added? You should be able to see details on it in the .protoset I uploaded for another new method: https://github.com/sparky8512/starlink-grpc-tools/files/6640354/dish.zip
The question is what this API call does. I'm thinking / hoping that this is related to a feature they announced in email in April where Dishy will switch to a new satellite not just when the old one is going out of the circular field of view, but also when the satellite is about to be obscured by a site-specific obstruction. That's a major change that should greatly improve reliability for folks like me who have just a couple of trees in view. AFAICT this feature has never actually been turned on. At least I've never noticed a performance improvement (and thank you to your software for letting me monitor that.) Some folks on Reddit think it does work for them but it's hard to tell how reliable that report is.
Anyway, I'm wondering what the method does. From the phrasing I suspect it's a status detection only but maybe it's also a way to toggle the feature off and on?

Some discussion of this method and some other new ones at the same time: https://www.reddit.com/r/Starlink/comments/mw0k3v/new_dish_software_comes_with_some_extra_grcp/

I'll have a look when I get to a point where I'm OK with experimenting with my broadband connection, which may not be for a while. I thought I had seen this in the protocol detail last time I looked, tried it, and found it not useful, but it may not have been implemented at that point.
From the protocol description, it does look like an actual setter method, not just status polling. The response has more fields than the request, though, so it looks like probably meant for both. However, when I run it with an empty request, I get no status reported back, so maybe it's still not really implemented, at least in the production firmware. The name of the request implies that it's for EMC testing, which is not something you would need enabled in end-user equipment.
BTW: I'm skeptical that this really relates to the obstruction-avoidance switching, as that has little to do with "fast" and I would not think it would affect EMC in a significant way. FWIW, I'm pretty sure that did get activated on my dish a week or 2 prior to that beta update email, as my obstructed time went way down at that point (and then later went up again and then back down). Unfortunately, my script had stopped running for a few weeks, so I'm missing a chunk of that data.

Thanks for all the thoughts! You're right in the context of those other new methods mentioned in the Reddit thread it's not at all clear this is related to obstruction avoidance.
Interesting there's a set/get method though. I am in a position to experiment with these settings (I have a second ISP).

I am in a position to experiment with these settings (I have a second ISP).

Can you try it with grpcurl? I believe the syntax would be:
grpcurl -plaintext -d {\"dish_emc\":{\"fast_switching\":true}} <IP_ADDRESS>:9200 SpaceX.API.Device.Device/Handle
and can try with the other fields in SpaceX.API.Device.DishEmcRequest, too.
This may be one of those things that's just simpler to do in grpcurl instead of a python script, anyway, similar to the stow and reboot commands.

Sure I'll give it a try. I just set it to true using grpcui to do the equivalent of your suggestion, I still have Internet access. Will report back in 24 hours. It strikes me "EMC" probably stands for "Electromagnetic Compatibility" and given the various other kinds of radio control stuff in the dish_emc API I could believe that this refers to frequency switching or something as much as satellite.
I'm not experienced with gRPC; would you expect dish_emc to be both a getter and a setter? Calling it with no arguments (or calling it with fast_switching enabled) it returns a block of status data. However it's all set to 0 or False which makes me think it's not returning real data, even simple fields like timestamp or snr. Even the response to my attempt to set fast_switching: true says fast_switching: false. I see why you thought this method may not be implemented.
Too bad, it looks like it could have some really interesting info on status of the radio.. rx_channel, voltage, theta and phi which could be where the dish is (virtually) pointing... I've attached the response I got in request to my set attempt.
response.txt

I'm not experienced with gRPC; would you expect dish_emc to be both a getter and a setter?

In general, gRPC method definitions are pretty flexible and support 1 or more structs in as arguments and 1 or more structs out as return, and the structs can be anything supported by protocol buffers.
The SpaceX.API.Device.Device/Handle method implements single struct in, single struct out, which is good for basic command or query one-shot calls, but also allows for bi-directional calls where you pass some meaningful data in and get some meaningful data back.
So I guess this comes down to more of a general API question. Normally, I wouldn't dual-purpose a method like that unless changing some of the settings would affect the other ones in some way and you want to get back the full results in one atomic call. But different people approach API design differently. I probably would not have mashed all the requests into a single method, either.

Calling it with no arguments (or calling it with fast_switching set to true) it returns a block of status data. However it's all set to 0 or False which makes me think it's not returning real data, even simple fields like timestamp or snr.

Those are likely the default values per data type. The protocol buffer spec allows for omitting fields whose value is the default value for the data type (usually 0 or equivalent). I guess grpcurl does not fill in the default values.

Thanks for the info. After 24 hours my attempt to set fast_switching didn't make any measureable change in Starlink performance. Maybe fast_switching is already turned on. Or maybe the API isn't implemented at all internally, given it's not returning any data. Although some other unimplemented APIs throw an error...
Still a little confused on the possibility of an overloaded get/set. There's definitely fields in the data structure that it makes little or no sense to set: timestamps, lat/lon coordinates, etc. So that suggests it should work as a get, too. OTOH the other API calls that return info all have get in their name. This one's a bit of an oddball.
I'm going to close the ticket; I agree it doesn't make sense to put a lot of work into supporting this method in your code. If it ever starts returning useful info it may be worth revisiting.


Add test coverage to pkg/jsonmessage

Add coverage to pkg/jsonmessage 🐸.
# before
+ go test -test.timeout=30m github.com/docker/docker/pkg/jsonmessage
PASS
coverage: 26.9% of statements
# after
+ go test -test.timeout=30m github.com/docker/docker/pkg/jsonmessage
PASS
coverage: 96.2% of statements

Signed-off-by: Vincent Demeester<EMAIL_ADDRESS>

Nice to see all the new tests being added.. LGTM

LGTM, ping @duglin

LGTM


signature of dual_annealing doesn't match other optimizers

Hi all, can't believe I missed this in the review, but there's an issue with the dual_annealing signature. Compare these:
basinhopping(func, x0, ...
differential_evolution(func, bounds, args=(), ...
shgo(func, bounds, args=(), ...
dual_annealing(func, x0, bounds, args=(), ...

The x0 shouldn't be there, so the 3 best global optimizers have matching signatures. The dual_annealing docstring even talks about that it's fine to pass None for x0, in which case it generates a starting point. So clearly x0 should be either removed or optional. Making it a keyword is probably the easiest thing to do.
There's still time to fix this before the release (even though we had an RC). @sgubianpm thoughts?

Oops. That definitely needs to be changed before the release

@rgommers , @andyfaff
I would agree with @rgommers, the idea was to let the user input an initial starting point as an initial guess and have a similar signature as basinhopping (if None is provided, it is generated). Maybe the best thing would be to make it optional then.

The cognate PR has been merged -- closing.


bump to Alpine:3.3 and S3-Overlay:<IP_ADDRESS>

tagged alpine-base-v1.3.0

@ianscrivener, merged and tagged on Docker Hub. Thanks for the PR!


Corrected example for how to use actions

I think we should keep both versions and explain that using the client gets you retry logic for free.

Wouldn't using the previous method leave you open to encountering the race condition though?

LGTM


Explicitly catch writing to globals and document?

Following on from cases like: https://github.com/numba/numba/issues/7669 and numerous questions asked about "Numba treats globals as compile time constants/immutable", am wondering if a patch like (with the same for static_setitem):
diff --git a/numba/core/typeinfer.py b/numba/core/typeinfer.py
index 7dcbf7b..91f03a4 100644
--- a/numba/core/typeinfer.py
+++ b/numba/core/typeinfer.py
@@ -1411,6 +1411,11 @@ https://numba.pydata.org/numba-doc/latest/user/troubleshoot.html#my-code-has-an-
             raise UnsupportedError(msg, loc=inst.loc)

     def typeof_setitem(self, inst):
+        im_targets = [x.target for x in self.assumed_immutables]
+        if inst.target in im_targets:
+            msg = ("Values in globals are considered immutable, writing to "
+                   "them is forbidden. For details see: <some numba doc>")
+            raise UnsupportedError(msg, loc=inst.loc)
         constraint = SetItemConstraint(target=inst.target, index=inst.index,
                                        value=inst.value, loc=inst.loc)
         self.constraints.append(constraint)

would be a good idea. The impact of this patch is to turn the exception in cases like:
from numba import njit
import numpy as np

x = np.ones(5)

@njit
def foo(i):
    x[i] = 1

foo(1)

from:
... <lots more of this> ....
numba.core.errors.TypingError: No implementation of function Function(<built-in function setitem>) found for signature:

 >>> setitem(readonly array(float64, 1d, C), int64, Literal[int](1))

There are 16 candidate implementations:
  - Of which 14 did not match due to:
  Overload of function 'setitem': File: <numerous>: Line N/A.
    With argument(s): '(readonly array(float64, 1d, C), int64, int64)':
   No match.
  - Of which 2 did not match due to:
  Overload in function 'SetItemBuffer.generic': File: numba/core/typing/arraydecl.py: Line 176.
    With argument(s): '(readonly array(float64, 1d, C), int64, int64)':
   Rejected as the implementation raised a specific error:
     NumbaTypeError: Cannot modify readonly array of type: readonly array(float64, 1d, C)
... <lots more of this> ....

to
numba.core.errors.UnsupportedError: Failed in nopython mode pipeline (step: nopython frontend)
Values in globals are considered immutable, writing to them is forbidden. For details see: <some numba doc>

File "write_global_arr.py", line 8:
def foo(i):
    x[i] = 1
    ^

Following up on the report #7738, a problem users may face (and this is what triggered the report) is in situations like the following:
    import numpy as np
    import numba

    global_tuple = (np.zeros((1,)),)

    @numba.njit
    def foo(x, condition):
        if condition:
            global_tuple[0][x] = 0

    foo(0, False)

The code is OK, the global var is never actually altered, but it fails to compile as the condition which makes this code not used actually is only known at runtime. It used to work before 0.55.

(and the reason we use it this way in PyMPDATA (https://pypi.org/p/PyMPDATA/) is to be able to have a single multi-argument routine which takes always, let's say 10 arguments, but then processes only the arguments that have non-zero dimensionality, and the zero-dimensional arguments point to a global "null" array)


Modified HTML helper

I needed to render a single ArchType block and I found that by changing the code so I could render a single fieldset I could do this simply in my Html view.
e.g. @Html.RenderArchetypePartial(reviewPartials.Fieldsets.First())

Thanks for submitting! I'll likely review this mid-month (on holiday at the moment). If it checks out, it'll likely make the February release.

I was getting errors in the back end when using umbraco in a virtual directory e.g. /business/umbraco/ so I updated the view to be relative from controller.

:+1: Thanks!


Breach date always currect date

It didn't use to be like this and it makes it harder to understand if we already changed that password.
When I lookup breaches it always gives me that the breach date is "today" for HIBP breaches, which is obviously not true, but without the actual breach date how can I compare it with the date of last change?

Which breach checker are you using?
The "password" checker will always return the current date.
Having just tried it locally, the site and username checkers appear to be working as expected for me (returning the actual breach date).

It's everything that shows under the "Breach Name" - "HIBP Password Breach" which is 99% of my list.
This shows even when I don't choose the "Check for breaches based on your password" option, I just tried the "... on site/service" and "... on username" and it's the same thing, I get a huge list of accounts, pretty much all of them are "HIBP Password Breach" with today's date, which makes it impossible to know if the password has been changed after the breach or not.

That sounds like something pretty strange is going on. If you select the site/service or username options, you shouldn't get entries in the results list that are from the "HIBP Password Breach"


Evaluator doesn't recognize this solution.

Challenge Golf Code has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.97 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
The lesson evaluator does not recognize this solution. It says function golfScore needs to return "hole in one" when either golfScore(4, 1); or golfScore(1, 1) is used. The function returns "hole in one" whenever the strokes are less than 2.
My code:
function golfScore(par, strokes) {
  // Only change code below this line
  if(strokes < 2) {
    return "Hole-in-One!"
  } else if(strokes - par < -1) {
    return "Eagle"
  } else if(strokes - par < 0) {
    return "Birdie"
  } else if(strokes - par < 1) {
    return "Par"
  } else if(strokes - par < 2) {
    return "Bogey"
  } else if(strokes - par < 3) {
    return "Double Bogey"
  } else {
    return "Go Home!"
  }

  return "Change Me";
  // Only change code above this line
}

// Change these values to test
golfScore(1, 1);
golfScore(4, 1);

Your code is working exactly the way it should as written. Rememeber that the code is read top down and will only read to the first statement that is true and no further.  Adjust your code logic accordingly and you will easily pass this challenge. You are very close to passing already and understand most of the concepts involved.

It should already pass. It meets all the listed requirements.

You are correct. My mistake on that, I only glanced through the code and missed what was going on.  So, the real issue is really small one that trips everyone up from time to time, especially with these types of tutorials.  Your "Hole-in-One!" needs to read "Hole-in-one!"  Make sure all your returned values match the test responses exactly (and in this case the table of values/responses).  One minor detail like an extra space, or in this case a word being capitalized, will throw off the elevator and return a false test.

@rantzay Is correct about your return value not being exactly correct. Thanks and happy coding!


refactor(transformer): arrow function transform: ignore type fields when finding enclosing arrow function

#5944  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite


chore(crates): upgrade swc_core to 0.99.5

Summary
Upgrade swc_core to 0.99.5
Checklist

[ ] Tests updated (or not required).
[ ] Documentation updated (or not required).

!bench

@LingyuCoder can we try the swc_allocator feature? It should help with performance.

https://x.com/kdy1dev/status/1813911697738137636

Added breaking change label, as this should be considered as a breaking change.


Fix for emit gravity

Hi,
Please change in ParticleSystem#configureEmiter code from
line 457 mEmiterYMax = location[1] + emiter.getWidth() - mParentLocation[1];
to
line 457 mEmiterYMax = location[1] + emiter.getHeight() - mParentLocation[1];

Thanks for the heads up, I'll be publishing an updated version soon. For now, this is fixed on the latest code.


Try to upgrade Click damages before DPS

Click skills damages are higher than basic DPS skills, so it's better to try upgrading the clicks before the dps.
fixing #192

#173 does actually put clicks before dps so if this PR gets merged. This one is not needed

Closing.


Add Tree Run Helper

This is a helper to hopefully provide some nice utility such as the auto-bank for tree runs, as well as help keep make sure you don't accidentally miss out on paying for protection. There's various toggles for preference.
I think it could use further guidance, and really could benefit from some way to move about the order depending on preference. I think that needs to be a project in its own right though.

Thanks for taking the time out to finish this for me, great to see it finally completed!

Does not recommend a rake, although maybe that's correct since users should know about raking patches by this point and would just clutter the guide up
The Gnome Stronghold step skipped the normal tree, and only did the fruit tree for me
The dialog steps for chopping a tree down is missing the slow dialog steps, they should be
step.addDialogSteps("Would you chop my tree down for me?","I can't be bothered - I'd rather pay you to do it.", "Here's 200 Coins - chop my tree down please.", "Yes.");
Would be nice if Elkoy was highlighted to guide you out (i know the guide tells you)
When I did the fossil island hard trees, it told me I was done after just planting one of the 3 trees

When I did the fossil island hard trees, it told me I was done after just planting one of the 3 trees

This could be an issue with how the varb for the trees updates. There is a shared varb for a bunch of patches, and it gets updated based on how close you are to a specific patch. Considering how close the fossil island plots are, if they are all sharing the same varb then the zoning will need to be really specific for it or it would skip the step.

From this thread it sounds like there are tree runs in quest helper but I am not seeing it currently. Is there any way I can add this?Im not too familiar with Github, I am sorry if this is a noob question.

From this thread it sounds like there are tree runs in quest helper but I am not seeing it currently. Is there any way I can add this?Im not too familiar with Github, I am sorry if this is a noob question.

It is currently in development. The tree run helper is not on the version of Quest Helper available in the plugin hub through Runelite.


Migrate to HDF5 loader

ivadomed's adaptive loader currently uses HDF5 to load data and parse metadata. HDF5 allows to load data in RAM or "on the fly". Do we want to migrate ivadomed's loader to HDF5?

After a brief look at hdf5 documentation and Anthime's code.. I think my preference would be to: (1) generate this pandas dataframe with filenames and images infos by checking data / derivatives availability / suitability (2) split (3) load data as numpy (4) perform preprocessing (5) save preprocessed data etc as HDF5.

A Con of HDF5, I ve just thought about could be the inference on a single image (ie segment_volume) --> do we want to systematically move to HDF5 even for this case (ie when used by SCT / ADS) --> it sounds like an "overkill" to me (but maybe it's not?). --> Should we keep the option not to convert data to HDF5 for this case?

After a brief look at hdf5 documentation and Anthime's code.. I think my preference would be to: (1) generate this pandas dataframe with filenames and images infos by checking data / derivatives availability / suitability (2) split (3) load data as numpy (4) perform preprocessing (5) save preprocessed data etc as HDF5.
A Con of HDF5, I ve just thought about could be the inference on a single image (ie segment_volume) --> do we want to systematically move to HDF5 even for this case (ie when used by SCT / ADS) --> it sounds like an "overkill" to me (but maybe it's not?). --> Should we keep the option not to convert data to HDF5 for this case?

wouldn't it be easy to not have the option to save (ie bypass step 5) and simply use the variables already in RAM to perform prediction?

wouldn't it be easy to not have the option to save (ie bypass step 5) and simply use the variables already in RAM to perform prediction?

Good idea!!

After digging into it, I agree with Charley's suggestion.

I'm not sure how relevant this is, but I've just came across this blog against HDF5. Food for thoughts...

Very interesting post! My thoughts on this:

"Data corruption": if the software crashes while the hdf5 file is open, the data are corrupted. I personally experienced this issue: if there is an error in the code or if you kill the process, the hdf5 file becomes unreadable. We could simply erase the file with something like a try ... catch when it is corrupted or have a closing procedure deleting the file if an error occurred. Since our current solution already loads the data before each process, reloading the data because of a corrupted file is not a real issue here.

"HDF5 is very complex and low level." I have read that on other blogs as one of the main drawback. For instance:  "On the con side the CAPI requires detailed understanding of the file format therefore often an easier to use it through python,julia,R, or C++. People with limited training in science/linear algebra are not familiar with HDF5."  .

"Performance issues" and "Poor support on distributed architectures": The current loader doesn't have support for parallel access to data (so not an issue for us). For performance issues, my intuition would be that HDF5 is more efficient than our current loader (since no particular attention was brought to make data access quick and efficient with "smart caching/predictive strategies provided by modern operating systems"), but we would have to validate this.

"Opacity": " What is in a file? How many arrays there are? What are their paths, shapes, data types? What is the metadata? Without the HDF5 library, you can't answer any of these questions." Definitely an issue I experienced when working on HeMIS!

To balance with cons, here are some pros I found on other blogs:

On the pro side there is the throughput, low latency, availability for major programming languages and scientific computing platforms, therefore it is ubiquitous in scientific computing and is a better performing alternative to hadoop file system.

(Source: https://www.quora.com/What-will-be-the-reasons-that-make-you-use-HDF5-instead-of-a-database-What-are-the-pros-and-cons)

HDF5 is very well-known, very well-supported, essentially bug-free, and requires zero support from our team.

While the format itself is complex, that complexity is irrelevant as long as we define a standard layout and standard metadata.

C, C++, Fortran, and Python are all natively supported by the HDF5 Group via the HDF5 API

(Source: https://sites.google.com/site/openmodeldata/background-information/existing-solutions/hdf5)

Another benefit is speed. I haven't ever seen it benchmarked, but HDF is supposed to be faster than SQL databases. I understand that it is very good when used with both large sets of scientific data and time series data - network monitoring, usage tracking, etc.

(Source: https://datascience.stackexchange.com/questions/262/what-are-the-advantages-of-hdf-compared-to-alternative-formats)

@kousu @joshuacwnewton @Drulex do you have some insights/experience with dealing with HDF5? Do you have an opinion on this? We are leaning towards adopting it for ivadomed.

I've used HDF5 a little, but admittedly only for course projects with toy datasets. From what I understand, though, the tradeoffs are very dependent on context, e.g. the dataset (# of images, dimensions of each image, etc.)
This article has a very surface-level benchmark, but I have a feeling the data they use to demonstrate (100k small .png images) isn't comparable to what we work with here. (If I understand, our datasets have relatively few subjects, but the images are larger?)
So, the questions I have are mostly to clarify context here:

What kinds of datasets is IVADOMED intending to support? (e.g. are OpenNeuro datasets representative, here?)
Is there a clear motivation for this change? e.g. Has the current method run into issues with speed, RAM usage, disk usage, etc.?
Would we still expecting users to provide a dataset in BIDS format? And then, we'd be using HDF5 as an internal step? (i.e. convert from BIDS -> HDF5, then load from HDF5 internally.) This looks like what adaptive.py is doing, but correct me if I'm wrong here.

Thanks for your insights Joshua :-)

* What kinds of datasets is IVADOMED intending to support? (e.g. are [OpenNeuro datasets](https://openneuro.org/public/datasets) representative, here?)

Yes this one is quite representative of what we are using at the moment. But we are leaning towards bigger MRI datasets, eg BraTS. And microscopy dataset that are potentially even bigger (@mariehbourget).

* Is there a clear motivation for this change? e.g. Has the current method run into issues with speed, RAM usage, disk usage, etc.?

Motivation: We currently have two types of loaders: one on the RAM, one via HDF5 --> we would like to unify them to facilitate the maintenance and the integration of new modalities (for now we dealt with MRI, but we are looking at loading microscopy data that have different data format and RAM needs).
Current issue: we encountered RAM issues in some instances.

* Would we still be expecting users to provide a dataset in BIDS format? And then, we'd be using HDF5 as an internal step? (i.e. convert from BIDS -> HDF5, then load from HDF5 internally.) This looks like what `adaptive.py` is doing, but correct me if I'm wrong here.

You are right: we are expecting the user to have a BIDS dataset as input... we refactor it as HDF5 to load it and do our training "on the fly".
At inference time (eg for SCT users), we would not expect a BIDS dataset, but we would still load this single image as a HDF5 .. run the segmentation .. output the nifti

Thank you for the quick answers! :)

Current issue: we encountered RAM issues in some instances.

IVADOMED uses PyTorch's Dataset/DataLoader... hm. I would have assumed that PyTorch would have been smart about this, considering Dataset's __getitem__ only loads images when needed, and garbage collection should clean up once images are no longer needed. I'm a little surprised there are RAM issues...
Not to go too off-topic here, but... Just out of curiosity, how deeply has this been investigated, e.g. by profiling memory usage? Is there a chance this is due to a memory leak, rather than because of the data loading method?

You are right: we are expecting the ivadomed users to have a BIDS dataset as input... we refactor it as HDF5 to load it and do our training "on the fly".

Unless I'm misunderstanding, this results in a full copy of the original dataset. (HDF5 tends to be some multiple larger than the original files, too... There are some tricky details about compression here, but admittedly I'm not as well-versed in that.)
For larger datasets, then, is there a concern here for disk usage? In other words, from a user perspective, would it be surprising for IVADOMED to suddenly be taking up a large amount of space? Or, do we expect our users' environments to be able to handle this?

Not to go too off-topic here, but... Just out of curiosity, how deeply has this been investigated, e.g. by profiling memory usage? Is there a chance this is due to a memory leak, rather than because of the data loading method?

I have to admit I did not investigated this thoroughly. Memory leak could definitely be the reason.

For larger datasets, then, is there a concern here for disk usage? In other words, from a user perspective, would it be surprising for IVADOMED to suddenly be taking up a large amount of space with a copy of the input dataset? Or, do we expect our users' environments to be able to handle this?

I am not too sure about that. I may give the mike to someone else in case they have any ideas.
But overall.. the main motivation for migrating for HDF5 was to have a single loading process, that is compatible with different data format (.nii.gz vs. OME-TIFF) while allowing to load data either in RAM either "on the fly".

Hi all.
my understanding after reading the thread is that the transition is needed mostly for maintenance reasons - not really for disk-memory-speed.
As @joshuacwnewton mentioned, you will have to convert the entire dataset to HDF5 before running the model.
I don't think that this is a big issue for MRI datasets (regarding disk space), although every user case is different.
I designed something similar for Brainstorm when we get datasets from different acquisition systems and need to be spike-sorted (spike-sorters need a specific format as input). The way I approached this:

the initial dataset is converted to the spike sorting input and copied to a temp folder
perform the spike sorting process, save the information needed.
Once everything was done we empty the temp folder in order not to have duplicate datasets

The same idea can be applied here, but substitute spike-sorting with model training.
Depending on how fast the conversion step is, is it justified for your needs to keep the HDF5 file (I would be hesitant to delete the original dataset) after training the model?

After a brief look at hdf5 documentation and Anthime's code.. I think my preference would be to: (1) generate this pandas dataframe with filenames and images infos by checking data / derivatives availability / suitability (2) split (3) load data as numpy (4) perform preprocessing (5) save preprocessed data etc as HDF5.

What you described would be step 1.
Regarding the memory issue mentioned above, I'm also a bit surprised. I thought the sole purpose of Pytorch's Dataloader was exactly that, to avoid running out of memory. @joshuacwnewton suggestion for the memory leak might be the case.
Regarding speed, I can't really have an opinion here until we timeit on the MRI datasets. I can tell you from neurophysiology data that there is a big advantage on using HDF5 for loading purposes: I've timed loading a segment from a single channel on 40GB 256 channel recording and the difference between loading the multiplexed binary file and the converted HDF5 was almost 50 times faster.
I have worked with NWB (Neurodata Without Borders file format which is based on HDF5), but only as a user. If we need help with HDF5 I can reach out to the developers.
Personally I am totally in favour of making modular converters to a single file format, and only maintaining that format's input to the model as suggested by @charleygros. This way you can easily expand to more input formats.

Based on internal discussions, we decided to close this issue because there is no pressing need for switching to HDF5 for now. This could be reopened in the future if needed.


Replace ConfigureUtil.configureSelf with configureEach

An extra bonus is that it would transparently support create("sonatype") in Kotlin DSL as well
Fixes https://github.com/gradle-nexus/publish-plugin/issues/152

Feel free to resolve conversations with 👍🏻 (I don't have the button)

I still think, it might be some (backward not compatible) option one day, especially if https://github.com/gradle/gradle/issues/23874 gets unanswered.

While I agree, do you really want to keep this PR open, just hanging there?


Integrate a default error handling system

To manage the errors in the sites we have a couple ways to do it. The simpler way is to filter all of them using window.error and componentdidcatch and decide what to do with them.
A more robust is to use a monitoring library but it adds more async code to the page. I don't like at least is need it

should be project based, but not included in the generator


Changed if clause to catch all 2XX HTTP Codes

Fixed #129 with catching all 2xx status codes inside if clause.

Hi @deejaypro -- a straightforward change but what was the scenario that led you to this?

Hey @TKIPisalegacycipher,
i was working with the createNetworkWebhooksWebhookTest endpoint and it was always throwing an exception.
createNetworkWebhooksWebhookTest returns a HTTP Code 201 Created which wasnt matching any condition in the if clause. This led to the exception raise in line 218.

Thank you!


Adds test to demo key Symbol in Map.set()

Adds test to demonstrate usage of Symbol primitive data type as Map key via set method, which does not work upon Map instantiation.
Split from https://github.com/facebook/immutable-js/pull/1392

@leebyron please review.
I'm working on another request right now for the Map instantiation performance test(s).

Great! thanks :)


Win32: Packaging bug for control libraries

Describe the bug
When packacing a custom control library, Generic.xaml isn't included in the lib folder.
Steps to reproduce the bug

Open the attached project: PackagingBug.zip
Build+Pack project
Inspect the package and notice it only includes the .dll and .pri in the lib folder. The .pri file actually references PackagingBug\Themes\Generic.xbf which isn't available either.

Using this custom library won't work as there's no template to get applied.
Expected behavior
Generic.xaml is included (and not the .xbf because that won't allow us to copy the template)
Version Info
3.0.0-preview1.200515.3
NuGet package version:
3.0.0-preview1.200515.3

Windows 10 version
Saw the problem?

Insider Build (xxxxx)

November 2019 Update (18363)
Yes

May 2019 Update (18362)

October 2018 Update (17763)

April 2018 Update (17134)

Fall Creators Update (16299)

Creators Update (15063)

Device form factor
Saw the problem?

Desktop
Yes

Mobile

Xbox

Surface Hub

IoT

@fabiant3 @stevenbrix as FYI

Thanks @ranjeshj
You should be able to add this as a workaround until the fix comes out in the next preview:
<ItemGroup>
   <None Include="$(OutputPath)\$(AssemblyName)\**\*.xbf">
      <Pack>true</Pack>
      <PackagePath>lib\$(TargetFramework)\$(AssemblyName)</PackagePath>
   </None>
</ItemGroup>

@dotMorten does this work for you?

@dotMorten I don't see this happening for WPF projects, and the default UWP class library doesn't even support the Pack target. I figured you were using the MSBuildSdkExtras, and I don't even see this behavior. Is this a bug or feature request?

I don't see this happening for WPF projects

This is a WinUI Project. Apples and oranges ;-)

... and the default UWP class library doesn't even support the Pack target

But this is an SDK style project that does.

With UWP we used to turn on "Create Library Layout" and it would copy the uncompiled template etc to the output folder, and that would be the layout we'd have to pack (manually) into a nuget package.

Gotcha, thanks!
This is fixed, but since we don't have designer support, I don't think you'll be able to edit the template anyways. As a workaround you can grab it out of the nuget manually and edit it

@dotMorten I'm assuming that if you're generic.xaml looks like this:
<ResourceDictionary>
  <ResourceDictionary.MergedDictionaries>
     <ResourceDictionary Source="ms-appx://Styles/MyControlStyle.xaml"/>
  </ResourceDictionary.MergedDictionaries>
</ResourceDictionary>

then you need Styles\MyControlStyle.xaml included, yeah?

@stevenbrix That's up to you :-)
I just want to create a control library, use the Pack to generate a nuget package, and users of that nuget package will get the custom controls with the included templates applied correctly, and the ability to override the template by generating a copy of it via the tooling. Whether you merge them into a single file or not I don't think would matter.
I'll give you free rein wrt how to make that actually work :-)

Closing now that preview3 has been released. Please reply if this is incorrect.

Confirmed fixed!


Allow searching traces by endpoint ipv4

This is a feature request. From the current implementation, it looks like we can only search by annotation value, or binary annotation-key pair. It would be nice if we can search by annotation.endpoint.ipv4, This way we can search for traces that go through a given host, a useful feature for testing and canary release.

heh I was wondering when someone would request this :)

I am also looking for this functionality. I want to look for all traces that went through a certain container. So searching on IPv4 literals using annotation.endpoint.ipv4 makes a lot a sense to me.

I want to use localEndpoint.ipv4 or localEndpoint.port  filter ES docs, such as "Find all slow spans from a certain IP or IP:PORT" or "aggs on IP, finding the slowest IP".


TypeError: parameters.transport is not a function

I'm trying to replicate a demo example that is shown on the Pimlico dashboard (https://dashboard.pimlico.io/onboarding), but it running node index.js reverts with an error.
Here is my package.json:
{
  "name": "pimlico",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "type": "module",
  "author": "",
  "license": "ISC",
  "dependencies": {
    "permissionless": "^0.1.4",
    "viem": "^2.7.19"
  }
}

Here is my main.js (basically the same code as shown in the demo, but in Javascript instead of Typescript):
import { createSmartAccountClient } from "permissionless";
import { privateKeyToSimpleSmartAccount } from "permissionless/accounts";
import { http } from "viem";
import { sepolia } from "viem/chains";
import { bundlerClient, paymasterClient, publicClient } from "./clients.js";

(async function () {
const account = await privateKeyToSimpleSmartAccount(publicClient, {
	privateKey:
		"0x36e512afe490fed9b9e89e3be886640083050dee973d6c913511870ee2a51cc9",
	factoryAddress: "0x9406Cc6185a346906296840746125a0E44976454", // simple account factory
	entryPoint: "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789", // global entrypoint
});

const smartAccountClient = createSmartAccountClient({
	account,
	chain: sepolia,
	transport: http(
		"https://api.pimlico.io/v1/mumbai/rpc?apikey=21...12", // API key truncated for privacy, it's actually a valid value
	),
	sponsorUserOperation: paymasterClient.sponsorUserOperation,
});

const gasPrices = await bundlerClient.getUserOperationGasPrice()

const txHash = await smartAccountClient.sendTransaction({
	to: "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
	value: 0n,
	data: "0x1234",
    maxFeePerGas: gasPrices.fast.maxFeePerGas,
    maxPriorityFeePerGas: gasPrices.fast.maxPriorityFeePerGas,
});
})();

And here is clients.js:
import { createPimlicoBundlerClient, createPimlicoPaymasterClient } from "permissionless/clients/pimlico";
import { createPublicClient, http } from "viem";

export const publicClient = createPublicClient({
	transport: http("https://rpc.ankr.com/polygon_mumbai"),
});

export const bundlerClient = createPimlicoBundlerClient({
	transport: http(
		"https://api.pimlico.io/v1/mumbai/rpc?apikey=21....12", // API key truncated for privacy, it's actually a valid value
	),
});

export const paymasterClient = createPimlicoPaymasterClient({
	transport: http(
		"https://api.pimlico.io/v2/mumbai/rpc?apikey=21....12", // API key truncated for privacy, it's actually a valid value
	),
});

The error I've been getting is the following:

node_modules/viem/_esm/clients/createClient.js:9
const { config, request, value } = parameters.transport({
^
TypeError: parameters.transport is not a function

I get an error running node index.js

Please suggest me what to do. :)

Any wizard here who was able to figure out how to solve that bug? 🙂

experiencing something similar myself!

Can you share the repro?

Hey can you share a reproducible repo?

Yes, I can: https://github.com/milaabl/pimlico-repro. @pavlovdog @plusminushalf Thanks in advance!!
Run node index.js.

@milaabl awesome, thank you for the repro! Changing transport to bundlerTransport helps, thanks for the report!
const smartAccountClient = createSmartAccountClient({
	account,
	chain: sepolia,
	bundlerTransport: http(
		"https://api.pimlico.io/v1/mumbai/rpc?apikey=....",
	),
	sponsorUserOperation: paymasterClient.sponsorUserOperation,
});

Also, we don't support Polygon Mumbai since it's already deprecated. Feel free to use any other testnet.


Bug: Link copied message for invalid url as well

On clicking the display message of invalid link it says "Link has been copied to the clipboard" which doesn't make any sense
Here is the video displaying the issue -
screen-capture (1).webm
I can fix this issue and create a PR

Correct, Go for it! 💯


Save the window mode (edit, split, view) into URL

Convenient

when reloading
when sharing

Done at db660c89dde292b07a56b6ca5095bf671041e4a1


Enable iframe

i cannot enable iframe, i'd like to add it on my startup page like homarr.
Thanks

See https://github.com/sissbruecker/linkding/issues/276


Added 3 new books with free-programming-books-sua-eng

Hacktoberfest notes:

due to volume of submissions, we may not be able to review PRs that do not pass tests and do not have informative titles.
please read our contributing guidelines
be sure to check the output of Travis-CI for linter errors
if this is your first open source contribution, make sure it's not your last!

What does this PR do?
Add Resource(s)
For resources
Description
Why is this valuable (or not)?This is valuable for me to pass hacktoberfest
How do we know it's really free? I have checked them all
For book lists, is it a book? For course lists, is it a course?  all book
Checklist:

[x] Not a duplicate
[x] Included author(s) if appropriate
[x] Lists are in alphabetical order
[x] Needed indications added (PDF, access notes, under construction)

In general, we do not link to file sharing sites.


I am unable to run a Powershell script that is in a folder that contains spaces

For instance, the path is C:\Usher\SourceTree\Powershell Scripts\testing\testing_users.ps1 but I receive the following error when running the script in Atom:
The term 'd:\Usher\SourceTree\Powershell' is not recognized as the name of a
cmdlet, function, script file, or operable program. Check the spelling of the
name, or if a path was included, verify that the path is correct and try
again.At line:1 char:1
+ d:\Usher\SourceTree\Powershell Scripts\testing\testing_users.ps1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (d:\Usher\SourceTree\Powershell:
   String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

When I run the code from Powershell like ".\testing_users.ps1" it works fine

I had the same issue. My PC crashed and when I restarted, I would get that message over and over. For some reason the C:\Go\bin path I set in environment variables was gone. Typing it back in fixed it. Check your paths and make sure they're all alright. Hope this helps!


Tagging user group in a workstep with a value from api

Description
Hi,
I have a workflow which contains a step from an app.
User submits a form using a regular workflow step (open a form) and the app retrieves the appropriate user group based on a parameter coming from the form. I am trying to send the user group id back to the workflow so in the next step (send a message to channel) I can tag them. However instead of tagging it's just printing the value.
I tried sending

the whole syntax <!subteam^subteamId>
sending just id and adding the static part in workflow step.

If I send the whole syntax with a postMessage with a mrkdwn then it's ok.
I don't want to create the whole workflow logic in the app. Is there way to tag usergroups this way?
What type of issue is this? (place an x in one of the [ ])

[ ] bug
[ ] enhancement (feature request)
[x] question
[ ] documentation related
[ ] example code related
[ ] testing related
[ ] discussion

Requirements (place an x in each of the [ ])

[x ] I've read and understood the Contributing guidelines and have done my best effort to follow them.
[X ] I've read and agree to the Code of Conduct.
[X ] I've searched for any related issues and avoided creating a duplicate issue.

Hi @seratch , thanks for the answer.

Thanks for your reply! There is no other suggestion from us at this moment. Let us close this issue now.