[Match] - match nuke profiles

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I have read the Contribution Guidelines

Issue Description
Match doesn't have the capability to nuke just provisioning profiles - it nukes the certs and provisioning profiles. While useful in a lot of use cases, this is far more destructive than necessary. Previously mentioned in https://github.com/fastlane/fastlane/issues/5540, it would be useful to be able to just update the profiles without invalidating the certificates.
Complete output when running fastlane, including the stack trace and command used
Works as intended:
match nuke distribution

Feature requested:
match nuke profile distribution

Leaves certificates intact, recreates and redownloads provisioning profiles.
Environment
fastlane version (run fastlane -v): 1.104.0
Do you use bundler to execute fastlane (i.e. bundle exec fastlane)? No
Do you use a Ruby environment manager (e.g. chruby, rbenv, rvm)? No

Sorry, it can only nuke everything, there is no plan on changing this for now. What's the main reason you need this?

Note that nuking everything doesn't affect published apps on App Store nor apps under review.
Not sure about apps on testflight or waiting to be sent for review (probably they will need a new binary, if the existing binary is checked when submiting and not when it was uploaded).
I'd one binary ready for testing in testflight (review done already), and it didn't become invalid after nuking either.


HelloControllerIT doesn't run on windows when mvn tested.

Related https://github.com/spring-guides/gs-spring-boot/issues/20
HelloControllerIT (integration test) doesn't run. HelloControllerTest runs. The resolution to issue linked above is not correct.
Dir listing - src\test\java\learn\helloworld\HelloControllerIT.java
E:\coding\spring\springboot\helloworld>dir /s /b src E:\coding\spring\springboot\helloworld\src\bkp E:\coding\spring\springboot\helloworld\src\main E:\coding\spring\springboot\helloworld\src\test E:\coding\spring\springboot\helloworld\src\bkp\HelloControllerTest.java E:\coding\spring\springboot\helloworld\src\bkp\HelloworldApplicationTests.java E:\coding\spring\springboot\helloworld\src\main\java E:\coding\spring\springboot\helloworld\src\main\resources E:\coding\spring\springboot\helloworld\src\main\java\learn E:\coding\spring\springboot\helloworld\src\main\java\learn\helloworld E:\coding\spring\springboot\helloworld\src\main\java\learn\helloworld\HelloController.java E:\coding\spring\springboot\helloworld\src\main\java\learn\helloworld\HelloworldApplication.java E:\coding\spring\springboot\helloworld\src\main\resources\application.properties E:\coding\spring\springboot\helloworld\src\main\resources\static E:\coding\spring\springboot\helloworld\src\main\resources\templates E:\coding\spring\springboot\helloworld\src\test\java E:\coding\spring\springboot\helloworld\src\test\java\learn E:\coding\spring\springboot\helloworld\src\test\java\learn\helloworld E:\coding\spring\springboot\helloworld\src\test\java\learn\helloworld\HelloControllerIT.java
MVN test output
E:\coding\spring\springboot\helloworld>mvnw test [INFO] Scanning for projects... [INFO] [INFO] --------------------------< learn:helloworld >-------------------------- [INFO] Building helloworld 0.0.1-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- maven-resources-plugin:3.1.0:resources (default-resources) @ helloworld --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 1 resource [INFO] Copying 0 resource [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ helloworld --- [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] --- maven-resources-plugin:3.1.0:testResources (default-testResources) @ helloworld --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] skip non existing resourceDirectory E:\coding\spring\springboot\helloworld\src\test\resources [INFO] [INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ helloworld --- [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ helloworld --- [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time:  2.751 s [INFO] Finished at: 2020-10-01T23:05:11+05:30 [INFO] ------------------------------------------------------------------------
MVN test post renaming - output extract
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 10.242 s - in learn.helloworld.HelloControllerITest 2020-10-01 23:09:35.938  INFO 6556 --- [extShutdownHook] o.s.s.concurrent.ThreadPoolTaskExecutor  : Shutting down ExecutorService 'applicationTaskExecutor' [INFO] [INFO] Results: [INFO] [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [INFO] [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time:  17.408 s [INFO] Finished at: 2020-10-01T23:09:36+05:30 [INFO] ------------------------------------------------------------------------

The integration test didn't run for me either until I renamed it so that it ended with the word "Test".
For example, I renamed the class HelloControllerIT to HelloControllerIntegrationTest.  After doing that, the test ran successfully using Maven.
Before
[INFO]
[INFO] Results:
[INFO]
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO]

After
[INFO]
[INFO] Results:
[INFO]
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO]

Hi @sandeep-tukaram.  Thanks for submitting this issue!  I see similar behavior on a Mac so I don't think it is related to windows.  I do think the problem is exclusive to Maven, but it is something to fix so all tests run with both Maven and Gradle.
When the file is named HelloControllerIT and I run ./mvnw clean package I get the following output:
[INFO] Results:
[INFO]
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0

However if I rename the file to HelloControllerITest and run the same command the additional test runs:
[INFO] Results:
[INFO]
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0

This makes sense as the class name HelloControllerIT doesn't match the wildcard pattern.
Would you like to submit a PR for this issue?

Hi @robertmcnees ,
I've submitted a PR (#176) that addresses this issue. Could you please review it when you have a moment? Your feedback would be greatly appreciated!
Thank you!

Thanks for the PR. I checked our CI and the fix did run the additional tests. Thanks for the PR! I'll close this issue as it is now merged.


Attempt to fix spec failure

Maybe fixes #6221
I didn't really have time to deep dive into this but the lower left tile is owned by an external tileset while the bottom right isn't, possibly leading to some edge case in the tile load order. It passed Travis this time at least.

@lilleyse, thanks for the pull request! Maintainers, we have a signed CLA from @lilleyse, so you can review this at any time.
:warning: I noticed that CHANGES.md has not been updated. If this change updates the public API in any way, fixes a bug, or makes any non-trivial update, please add a bullet point to CHANGES.md and comment on this pull request so we know it was updated. For more info, see the Pull Request Guidelines.

I am a bot who helps you make Cesium awesome! Contributions to my configuration are welcome.
:earth_africa: :earth_americas: :earth_asia:

I've restarted this a number of times and it seems to be passing.  Thanks @lilleyse!


Installation by HACS doesn't work

Describe the bug
I try to install this integration in HACS by the UI
To Reproduce
The doc says : Press add icon and search for keyatome
but the search returns nothing with this keyword : keyatome
Expected behavior
Installation works by UI.
Desktop (please complete the following information):

OS: Raspberry OS
Docker installation of HA
Version HA : Home Assistant 2023.10.5

Sorry for the delay.
Have you found the issue ?
First step : install HACS (perhaps, you have already done)
Second step : then install keyatome

Thank you for your help.
It works now.


SAM-2771 - Model short answer link isn't working

I don't see why it even needs these links anyway, I just removed them and put the model answer inline.

Okay makes sense to me .

Yeah, it looks like it was created as a popup all the way back in https://jira.sakaiproject.org/browse/SAK-5590 because they were worried of model answers being too long. But I feel like that's rarely the care, and if it is, we should still have it on this form and just put it in a jquery dialog div instead of having this window.


Fix broken README link

nice initiative ;)! I'd be happy to help with making a few tasks too!

@nihal111 fixed it 😃 before
And sure, do contribute. Most of these problems are language agnostic, you can pick up a language/paradigm of your own and get cracking yourself!


[BUG] Error running via raspberry pi rasbian os

Before submitting a bug report...

[X] This bug wasn't already reported.
(I have checked every bug report on GitHub)

Title

[X] The title is no longer "[BUG] Title" and I edited it with the right error name.

Describe the bug
hi
Can anyone help getting this error trying to run script via pi4
has anyone a solution please?
Copy and paste your error
2023-09-23 11:21:41,635 [INFO] Using default request storage
2023-09-23 11:21:41,650 [INFO] Created proxy listening on <IP_ADDRESS>:45229
2023-09-23 11:21:41,651 [INFO] Using undetected_chromedriver
2023-09-23 11:21:43,192 [INFO] patching driver executable /home/theskid/.local/share/undetected_chromedriver/undetected_chromedriver
2023-09-23 11:21:43,383 [ERROR] OSError: [Errno 8] Exec format error: '/home/theskid/.local/share/undetected_chromedriver/undetected_chromedriver'
Traceback (most recent call last):
File "/home/theskid/rewards/main.py", line 26, in main
executeBot(currentAccount, notifier, args)
File "/home/theskid/rewards/main.py", line 138, in executeBot
with Browser(mobile=False, account=currentAccount, args=args) as desktopBrowser:
File "/home/theskid/rewards/src/browser.py", line 41, in init
self.webdriver = self.browserSetup()
File "/home/theskid/rewards/src/browser.py", line 77, in browserSetup
driver = webdriver.Chrome(
File "/home/theskid/.local/lib/python3.9/site-packages/seleniumwire/undetected_chromedriver/webdriver.py", line 61, in init
super().init(*args, **kwargs)
File "/home/theskid/.local/lib/python3.9/site-packages/undetected_chromedriver/init.py", line 466, in init
super(Chrome, self).init(
File "/home/theskid/.local/lib/python3.9/site-packages/selenium/webdriver/chrome/webdriver.py", line 45, in init
super().init(
File "/home/theskid/.local/lib/python3.9/site-packages/selenium/webdriver/chromium/webdriver.py", line 53, in init
self.service.start()
File "/home/theskid/.local/lib/python3.9/site-packages/selenium/webdriver/common/service.py", line 105, in start
self._start_process(self._path)
File "/home/theskid/.local/lib/python3.9/site-packages/selenium/webdriver/common/service.py", line 206, in _start_process
self.process = subprocess.Popen(
File "/usr/lib/python3.9/subprocess.py", line 951, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.9/subprocess.py", line 1823, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
OSError: [Errno 8] Exec format error: '/home/theskid/.local/share/undetected_chromedriver/undetected_chromedriver'
Screenshots
none
Value of dashboard variable
none

Had the same issue on my Pi 2, I solved it with the help of Vincent's comment here

getting error: dont know why it is saying file,directory doesnt exist ,any help tried renaming the file so many times
and using electrons driver?
theskid@raspberrypi:~/rewards $ python main.py
Traceback (most recent call last):
File "/home/theskid/rewards/main.py", line 9, in
driver = uc.Chrome(
File "/home/theskid/.local/lib/python3.9/site-packages/undetected_chromedriver/init.py", line 258, in init
self.patcher.auto()
File "/home/theskid/.local/lib/python3.9/site-packages/undetected_chromedriver/patcher.py", line 150, in auto
return self.patch_exe()
File "/home/theskid/.local/lib/python3.9/site-packages/undetected_chromedriver/patcher.py", line 347, in patch_exe
with io.open(self.executable_path, "r+b") as fh:
FileNotFoundError: [Errno 2] No such file or directory: '/home/theskid/.local/share/undetected_chromedriver/undeteted_chromedriver'

Might sound dumb but did you execute cp /usr/bin/chromedriver /home/myuser/.local/share/undetected_chromedriver/chromedriver_copy as it without changing myuser to your current user ?
Also in browser.py you need to change line 80 to driver_executable_path="/home/myuser/.local/share/undetected_chromedriver/chromedriver_copy", like vincent's comment said

Might sound dumb but did you execute cp /usr/bin/chromedriver /home/myuser/.local/share/undetected_chromedriver/chromedriver_copy as it without changing myuser to your current user ?
Also in browser.py you need to change line 80 to driver_executable_path="/home/myuser/.local/share/undetected_chromedriver/chromedriver_copy", like vincent's comment said

yes I change the myuser to theskid as i posted above,but i didnt try with the sudo command,but i think my os is screwed up with all the things ive been trying as i tried the cp command as root and that copied but would not run
as for line 80 in browser.py i didnt do that but also where do you add the code:
import undetected_chromedriver as uc driver = uc.Chrome(     driver_executable_path="/home/myuser/.local/share/undetected_chromedriver/chromedriver_copy" ) driver.get('https://nowsecure.nl')
I added that to the start of main.py where did you add yours to?

@theskid31
The steps I followed for it to work for me:

First making sure chromedriver is installed sudo apt install chromium-chromedriver
Copying chromedriver cp /usr/bin/chromedriver /home/myuser/.local/share/undetected_chromedriver/chromedriver_copy
Changing driver implementation in browser.py (lines 77-81) to:
driver = webdriver.Chrome(           options=options,           seleniumwire_options=seleniumwireOptions,           driver_executable_path="/home/myuser/.local/share/undetected_chromedriver/chromedriver_copy",       )
No need to add more code to main.py or browser.py

@theskid31 The steps I followed for it to work for me:

First making sure chromedriver is installed sudo apt install chromium-chromedriver
Copying chromedriver cp /usr/bin/chromedriver /home/myuser/.local/share/undetected_chromedriver/chromedriver_copy
Changing driver implementation in browser.py (lines 77-81) to:
driver = webdriver.Chrome( options=options, seleniumwire_options=seleniumwireOptions, driver_executable_path="/home/myuser/.local/share/undetected_chromedriver/chromedriver_copy", )
No need to add more code to main.py or browser.py

thanks for your reply
got it running but get the error:
[WARNING] could not detect version_main.therefore, we are assuming it is chrome 108 or higher
also there is a line in browser.py line 79:
user_data_dir=self.userDataDir.as_posix(),
did you remove this as it seems to error on it?

@AngelCanovas Thanks I’ve solved the above issue by adding my chromium browser version directly in undetected-chromedriver’s python init.py file
Script is running okay but it doesn’t half fail a lot ,even using klepts fork with the mobile search fixes,got it running on pi 64bit os won fast sd card ,but I suspect it’s chromium browser, @AngelCanovas what os do you run it on and have you altered chromium browser as to run better?thanks

@theskid31 The steps I followed for it to work for me:

First making sure chromedriver is installed sudo apt install chromium-chromedriver
Copying chromedriver cp /usr/bin/chromedriver /home/myuser/.local/share/undetected_chromedriver/chromedriver_copy
Changing driver implementation in browser.py (lines 77-81) to:
driver = webdriver.Chrome( options=options, seleniumwire_options=seleniumwireOptions, driver_executable_path="/home/myuser/.local/share/undetected_chromedriver/chromedriver_copy", )
No need to add more code to main.py or browser.py

Hello, I did followed every step like explained but now I do get This error right here :
2023-10-15 18:39:58,538 [INFO] Using default request storage
2023-10-15 18:39:58,573 [INFO] Created proxy listening on <IP_ADDRESS>:43985
2023-10-15 18:39:58,575 [INFO] Using undetected_chromedriver
2023-10-15 18:39:58,577 [ERROR] IsADirectoryError: [Errno 21] Is a directory: '/home/ubuntu/.local/share/undetected_chromedriver/chromedriver_copy'
Traceback (most recent call last):
File "/home/mspoints/main.py", line 24, in main
executeBot(currentAccount, notifier, args)
File "/home/mspoints/main.py", line 127, in executeBot
with Browser(mobile=False, account=currentAccount, args=args) as desktopBrowser:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/mspoints/src/browser.py", line 41, in init
self.webdriver = self.browserSetup()
^^^^^^^^^^^^^^^^^^^
File "/home/mspoints/src/browser.py", line 77, in browserSetup
driver = webdriver.Chrome(
^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/seleniumwire/undetected_chromedriver/webdriver.py", line 61, in init
super().init(*args, **kwargs)
File "/usr/local/lib/python3.11/dist-packages/undetected_chromedriver/init.py", line 258, in init
self.patcher.auto()
File "/usr/local/lib/python3.11/dist-packages/undetected_chromedriver/patcher.py", line 148, in auto
ispatched = self.is_binary_patched(self.executable_path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/undetected_chromedriver/patcher.py", line 339, in is_binary_patched
with io.open(executable_path, "rb") as fh:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
IsADirectoryError: [Errno 21] Is a directory: '/home/ubuntu/.local/share/undetected_chromedriver/chromedriver_copy'
What can I do? Please help, im kinda new to linux, btw im using ubuntu server.

@theskid31 The steps I followed for it to work for me:

First making sure chromedriver is installed sudo apt install chromium-chromedriver
Copying chromedriver cp /usr/bin/chromedriver /home/myuser/.local/share/undetected_chromedriver/chromedriver_copy
Changing driver implementation in browser.py (lines 77-81) to:
driver = webdriver.Chrome( options=options, seleniumwire_options=seleniumwireOptions, driver_executable_path="/home/myuser/.local/share/undetected_chromedriver/chromedriver_copy", )
No need to add more code to main.py or browser.py

Hello, I did followed every step like explained but now I do get This error right here :
2023-10-15 18:39:58,538 [INFO] Using default request storage 2023-10-15 18:39:58,573 [INFO] Created proxy listening on <IP_ADDRESS>:43985 2023-10-15 18:39:58,575 [INFO] Using undetected_chromedriver 2023-10-15 18:39:58,577 [ERROR] IsADirectoryError: [Errno 21] Is a directory: '/home/ubuntu/.local/share/undetected_chromedriver/chromedriver_copy' Traceback (most recent call last): File "/home/mspoints/main.py", line 24, in main executeBot(currentAccount, notifier, args) File "/home/mspoints/main.py", line 127, in executeBot with Browser(mobile=False, account=currentAccount, args=args) as desktopBrowser: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/mspoints/src/browser.py", line 41, in init self.webdriver = self.browserSetup() ^^^^^^^^^^^^^^^^^^^ File "/home/mspoints/src/browser.py", line 77, in browserSetup driver = webdriver.Chrome( ^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/dist-packages/seleniumwire/undetected_chromedriver/webdriver.py", line 61, in init super().init(*args, **kwargs) File "/usr/local/lib/python3.11/dist-packages/undetected_chromedriver/init.py", line 258, in init self.patcher.auto() File "/usr/local/lib/python3.11/dist-packages/undetected_chromedriver/patcher.py", line 148, in auto ispatched = self.is_binary_patched(self.executable_path) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/dist-packages/undetected_chromedriver/patcher.py", line 339, in is_binary_patched with io.open(executable_path, "rb") as fh: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ IsADirectoryError: [Errno 21] Is a directory: '/home/ubuntu/.local/share/undetected_chromedriver/chromedriver_copy'
What can I do? Please help, im kinda new to linux, btw im using ubuntu server.

Seems like the error is related to not locating the chromedriver, maybe ubuntu server have other path to the chromedriver idk.
Try locating the chromedriver sudo find / -type f -name chromedriver and then modify the copy command according to the correct path.
Also check the /home/ubuntu/.local/share/undetected_chromedriver path to see if it exists, if not create that path and try again.


Open-webui with vLLM

Is there any idea on how to run vLLM inference engine with Open-webui chat interface instead of ollama?

When I played with it this is what I found and used:
https://github.com/open-webui/open-webui/discussions/508


No syntax highlighting and warning in init.lua

warning:
Fields cannot be injected into the reference of ParserInfo[] for c3. To do so, use ---@class for parser_config. [inject-field]
      vim.filetype.add {
        extension = {
          c3 = 'c3',
          c3i = 'c3',
          c3t = 'c3',
        },
      }
      -- adding the line below supresses warning
      ---@class parser_config
      local parser_config = require('nvim-treesitter.parsers').get_parser_configs()
      parser_config.c3 = {    ----- ERROR ON THIS LINE -----
        install_info = {
          url = 'https://github.com/c3lang/tree-sitter-c3',
          files = { 'src/parser.c', 'src/scanner.c' },
          branch = 'main',
        },
      }

Treesitter says c3 is installed however i still am unable to get syntax highlighting to work at all. It does correctly identify the file type, so its still an improvement to my setup.
my neovim config is here ill commit these changes to my config so its in vc

Did you install queries/highlights.scm as described in step 4?

For example, copy tree-sitter-c3/queries/* to ~/.config/nvim/queries/c3/ (replace ~/.config/nvim with your runtime path), such that you end up with the highlights file at ~/.config/nvim/queries/c3/highlights.scm.

Apparently I missed that step the first time. After adding copying  ~/.config/nvim/queries/c3/highlights.scm I still have no highlighting

What does :checkhealth nvim-treesitter say, is there a checkmark for c3 under column H?

There are no check marks for c3
nvim-treesitter: require("nvim-treesitter.health").check()

Installation ~
- OK `tree-sitter` found 0.22.6 (b40f342067a89cd6331bf4c27407588320f3c263) (parser generator, only needed for :TSInstallFromGrammar)
- OK `node` found v22.5.1 (only needed for :TSInstallFromGrammar)
- OK `git` executable found.
- OK `cc` executable found. Selected from { vim.NIL, "cc", "gcc", "clang", "cl", "zig" }
  Version: cc (GCC) 14.2.1 20240805
- OK Neovim was compiled with tree-sitter runtime ABI version 14 (required >=13). Parsers must be compatible with runtime ABI.

OS Info:
{
  machine = "x86_64",
  release = "6.6.44-3-lts",
  sysname = "Linux",
  version = "#1 SMP PREEMPT_DYNAMIC Tue, 06 Aug 2024 07:35:07 +0000"
} ~

Parser/Features         H L F I J
  - bash                ✓ ✓ ✓ . ✓
  - c                   ✓ ✓ ✓ ✓ ✓
  - c3                  . . . . .
  - cpp                 ✓ ✓ ✓ ✓ ✓
  - diff                ✓ . . . ✓
  - gitignore           ✓ . . . ✓
  - go                  ✓ ✓ ✓ ✓ ✓
  - html                ✓ ✓ ✓ ✓ ✓
  - json                ✓ ✓ ✓ ✓ .
  - lua                 ✓ ✓ ✓ ✓ ✓
  - luadoc              ✓ . . . .
  - make                ✓ . ✓ . ✓
  - markdown            ✓ . ✓ ✓ ✓
  - markdown_inline     ✓ . . . ✓
  - ocaml               ✓ ✓ ✓ ✓ ✓
  - python              ✓ ✓ ✓ ✓ ✓
  - query               ✓ ✓ ✓ ✓ ✓
  - rust                ✓ ✓ ✓ ✓ ✓
  - svelte              ✓ ✓ ✓ ✓ ✓
  - toml                ✓ ✓ ✓ ✓ ✓
  - vim                 ✓ ✓ ✓ . ✓
  - vimdoc              ✓ . . . ✓
  - zig                 ✓ ✓ ✓ ✓ ✓

  Legend: H[ighlight], L[ocals], F[olds], I[ndents], In[j]ections
         +) multiple parsers found, only one will be used
         x) errors found in the query, try to run :TSUpdate {lang} ~

Can you make sure ~/.config/nvim/queries/c3/highlights.scm is not empty?

the file is not empty. I deleted highlights.scm, cloned the repo and copied the file again and now its working. Originally i had copied it from the github page, probably a formatting issue on my part id imagine. sorry to take up your time.


[Enhancement] Better placement of "return to [category] page"

Right now, the "Return to [category] page" (Aberration, Construct, etc.) is all the way to the right, just northeast of the Notes section. It's not aligned properly, it looks weird where it is, it's too close to Notes -- you could click the latter accidentally -- and it doesn't match where the "Return to the main page" button is (top left). I suggest putting the return to category button in roughly the same location as the return to the main page button: top left, perhaps above the monster image.
Also, for concision, "Return to main page" is probably better (no "the" needed).

Yup, I've been aware it's in an akward spot. I've been loathe to move it to the same place though, because it means all the content has to be shifted down to accomodate which I never quite liked.

But, it does look a lot better. I'll move it up there.
Less of an issue now aswell since you can resize the window

I did the the thing. Version 0.9.7 out with the change. 🤖 ✌


Ensure that we always use prepared SQL queries

Currently, we are using query.push(format!(..., input)) to build the SQL query for the advanced record filtering. See. e.g.:
https://github.com/ALU-Schumacher/AUDITOR/blob/db13f0dccc52a50545fa12ef9f728be590da6115/auditor/src/routes/advanced_record_filters.rs#L135-L141
Even though we check that this is a ValidName, we probably should not use .query() but push_bind when inserting user data into the SQL query to ensure we are not susceptible to SQL injections.
The documentation of QueryBuilder.push() states:

You should not use this to insert input directly into the query from an untrusted user as this can be used by an attacker to extract sensitive data or take over your database.

This method does not perform sanitization. Instead, you should use .push_bind() which inserts a placeholder into the query and then sends the possibly untrustworthy value separately (called a “bind argument”) so that it cannot be misinterpreted by the database server.

Note that you should still at least have some sort of sanity checks on the values you’re sending as that’s just good practice and prevent other types of attacks against your system, e.g. check that strings aren’t too long, numbers are within expected ranges, etc.

In the case mentioned above, this would look like this (since ValidName::parse() could potentially do some input sanitation, I think it's nicer to use the result of that and not the original user input):
 query.push(" WHERE ".to_string());
 if let Some(record_id) = &filters.record_id {
     if let Ok(valid_record_id) = ValidName::parse(record_id.clone().to_string()) {
        query.push("a.record_id = ");
        query.push_bind(valid_record_id);
        query.push(" and ");
    }
 }

Edit: As discussed below: instead of what I've written above, we should use ValidName and ValidAmount instead of normal strings and number types in the Filter struct.

[...] since ValidName::parse() could potentially do some input sanitation [...]

"could potentially" is a bit of an understatement, because that's exactly what ValidName is designed for ;)

AFAIK we currently only check for certain criteria in ValidName::parse() but don't change the input. So right now there should not be a difference between using the output of ValidName::parse() or the original input after checking if ValidName::parse() returned an Ok(...). What I meant is that if we expand the parsing to also change the input in the future, then it makes a difference.

What I meant is that if we expand the parsing to also change the input in the future, then it makes a difference.

I'd rather Err on invalid input because it is unlikely that a sanitized input represents the users intention. From the point of view of a user, an error is easier to debug than confusing output.
Ideally your Filter struct only holds valid elements.

Implemented in #648


feat(mergeScan): add new mergeScan operator.

Cool! This looks interesting.
I think we discussed this before, and the basic idea is that it's exactly like a mergeMap/flatMap accept you pump the value back into the selector, right?
How does this differ from expand? What are the use cases?
cc/ @mattpodwysocki - might be interested in this.

Pretty cool addition, we talked about it in person already.
It's missing some thorough unsubscription tests. But we can merge this already and later I can add unsub tests.

oh oh ... @trxcllnt this is that "exscand" operator we discussed a while back right? Yes, I like this, and there's really not another way to do it efficiently with existing operators.

@blesh not yet, I was going to put that in my next PR and call it "expandScan." This operator flattens multiple inner Observables and computes a aggregate value over all the inner values.

@trxcllnt can you rebase and resolve the conflicts?

@trxcllnt why did this close?

@blesh because it'd already been merged.

Ah... I failed to mention it in a comment. :\ Thanks.


#3025 - Check active an maintenance mode flags for sales channels in store api.

1. Why is this change necessary?
To fix #3025
2. What does this change do, exactly?
See  #3025
3. Describe each step to reproduce the issue or behaviour.
see  #3025
4. Please link to the relevant issues (if any).
see  #3025
5. Checklist
Draft - non finished yet.

[ ] I have rebased my changes to remove merge conflicts
[ ] I have written tests and verified that they fail without my change
[ ] I have created a changelog file with all necessary information about my changes
[ ] I have written or adjusted the documentation according to my changes
[ ] This change has comments for package types, values, functions, and non-obvious lines of code
[ ] I have read the contribution requirements and fulfil them.

🤖 Generated by Copilot at 8e03a67
This pull request enhances the API authentication for sales channels by adding maintenance mode support. It allows requests from whitelisted IP addresses to access the sales channel API even when the sales channel is in maintenance mode. It modifies the SalesChannelAuthenticationListener class and the src/Core/Framework/Api/EventListener/Authentication/SalesChannelAuthenticationListener.php file.

🤖 Generated by Copilot at 8e03a67

Add use statements to import classes and constants for checking client IP address and boolean parameter type (link, link)
Modify getSubscribedEvents method to format validateRequest method call on multiple lines (link)

Format ApiException::unauthorized method call on multiple lines (link)
Change getSalesChannelId method call to return an array of sales channel data (link)
Call isClientAllowed method to check client IP address against maintenance IP whitelist (link)
Throw ApiException::salesChannelNotFound if client is not allowed (link)
Set sales channel ID as request attribute using id key from sales channel data array (link)
Return an array of sales channel data instead of just the ID (link)
Modify query builder to select maintenance and maintenance IP whitelist fields from sales channel table and filter by active flag (link)
Throw ApiException::salesChannelNotFound if sales channel ID is empty (link)
Convert sales channel ID from hex to bytes using Uuid class (link)
Call isClientAllowed method to check client IP address against maintenance IP whitelist (link)

unfinished. not ready for review yet.


CONTRIBUTING.md: Document requirements for commit message format & DCO.

This resolves #597
Signed-off-by: Philip Tricca<EMAIL_ADDRESS>

This needs to be cherry-picked into 1.x.


[FEATURE] Update issue/pr link to prevent duplicates of the same issue being linked

Is your feature request related to a problem? Please describe.
Currently if you mention multiple issues with the same number, the bot links multiple again.
Describe the solution you'd like
The bot shouldn't re-link the same issue if it already did, this should help prevent calling the github api too many times.
Additional context
Here is what the current bot does:

I'm on it. Will submit a PR soon.


Repeating a dialog where the only input comes from an AdaptiveCard doesn't work

Describe the bug
Unless another question is asked to pause the turn before using an AdaptiveCard to collect informaion, Composer will get into a recursive loop: "Recursive loop detected, CollectUserDetails cannot be repeated twice in one turn."
Version
1.1.1
Browser

[x ] Edge

OS

[x ] Windows

To Reproduce
Steps to reproduce the behavior:

Create an adaptive card that looks like this:

CollectCurrentUserInfo()
[Activity
Attachments = ${json(currentuserinfocardjson())}
]
currentuserinfocardjson()

  "type": "AdaptiveCard",
  "body": [
      {
          "type": "TextBlock",
          "size": "Medium",
          "weight": "Bolder",
          "text": "Current user information"
      },
      {
          "type": "Input.Text",
          "placeholder": "First Name",
          "id": "firstName"
      },
      {
          "type": "Input.Text",
          "placeholder": "Last Name",
          "id": "lastName"
      },
      {
          "type": "Input.Text",
          "placeholder": "Email",
          "id": "email"
      }
  ],
  "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
  "version": "1.2",
  "actions": [
      {
          "type": "Action.Submit",
          "title": "Submit"
      }
  ]

}```
2. Create a dialog that calls it like the attached screenshot
3. enter anything for the First Name and Last Name.  Leave email empty.  Press 'Submit'
Expected behavior
I expect the AdaptiveCard to be shown again after pressing submit when the email is missing.
Screenshots

Additional context
If you insert another "Ask a question" before showing the AdaptiveCard the dialog will be repeated correctly. Like this:

Thank you for the report, @nitewulf
It looks like you're using a text input to make the dialog end the turn in anticipation of the user filling out the Adaptive Card. I wonder if what's happening is that the text input is skipped because it's prompting for the first name, which the bot already has on subsequent iterations. You should make sure the input is set to always prompt:

Because you don't actually want to prompt for text at that point, you might consider using the "End turn" action instead:

You'll want some way of making the user click on the Adaptive Card instead of just entering text to continue the dialog. It might be a good idea to just create a loop within the dialog to validate the user's input, rather than repeating the whole dialog.
Does this resolve your issue?

Thanks for the suggestions.
enabling Always prompt does work.  That's the most direct solution to the weirdness I found and I'll use it.
I thought about a loop, but couldn't figure out how to implement that with the constraints of Composer because the loop has to iterate through an array or values.  There didn't seem to be a way to iterate through an object such as
{
"firstName" : "",
"lastName: " : "",
"email" : ""
}
Maybe I just need to think about how to implement validation with an array some more.
Honestly what would be ideal would be (as you pointed out the text input is collecting in 'firstName') would be if Adaptive Cards were just better integrated like : Ask a question -> Adaptive Card.  Which would store the returned object (turn.activity.value) into whatever property you want.  Currently if you try that you get an error from Composer saying it can't convert an object into a string.
That would also take care of needing "End turn" because Composer would understand it's waiting for the card to be submitted and not waiting for text input.
I also ideally would like to prevent text input but don't see where to insert 'End turn'.  If it goes after the "ask a question (where the card is shown) it's too late because input is paused until a response- either a submit click or a return is detected.  Right?

@nitewulf - You would use 'End turn' instead of an input

Fantastic!  Thanks for the tip.  It still doesn't stop me from typing something in and hitting enter.  But at least execution of the logic in the dialog pauses.  Still, this looks like the best way to use an adaptive card at the moment for input.


Adding TIFF to identify

Codecov Report

Merging #842 (922a3cc) into dev (cbb6f27) will increase coverage by 0.06%.
The diff coverage is 50.00%.

@@            Coverage Diff             @@
##              dev     #842      +/-   ##
==========================================
+ Coverage   73.91%   73.97%   +0.06%
==========================================
  Files         132      132
  Lines       12526    12594      +68
==========================================
+ Hits         9259     9317      +58
- Misses       3267     3277      +10

Impacted Files
Coverage Δ

assemblyline/common/identify_defaults.py
100.00% <ø> (ø)

assemblyline/datastore/helper.py
44.08% <50.00%> (-0.93%)
:arrow_down:

assemblyline/odm/randomizer.py
94.39% <0.00%> (-0.87%)
:arrow_down:

assemblyline/datastore/collection.py
62.25% <0.00%> (-0.33%)
:arrow_down:

assemblyline/datastore/support/build.py
89.28% <0.00%> (+2.55%)
:arrow_up:

assemblyline/datastore/store.py
86.01% <0.00%> (+3.28%)
:arrow_up:

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


Remove duplicate types and class types signature items

This should resolve #104. I have dug down a bit in the Types module to find a record field that would distinguish a type from a class declaration, etc,  but I have not found any. I followed a simpler approach to not add a type if a class or a class type have been added, and not to add a class type if a class has been added.
Sorry about the delay!

Oh my bad, one last thing! Can you add a changelog entry under Fixed?


[Bug] Could not use it as git editor

Describe the bug
Could not use it as git editor, as as soon as the editor is closed it errors out
To Reproduce
git config --global core.editor notepads
git rebase -i
Notepads opens. Make a change (from pick to r). Then save the file upon being asked. This error happens:
hint: Waiting for your editor to close the file... error: There was a problem with the editor 'notepads'.
Expected behavior
Git should open Notepads again so that it can continue the process

Related to https://github.com/JasonStein/Notepads/issues/473. & I'm still interested too.


Wrong  nu,ber of possible votes

create a new election and define 7 possible positions
now add only 3 persons to the candidate list
start the voting and print the ballot paper

result: the ballot paper created by OpenSlides tells the electors that he has 7 votes:

but as there are only 3 persons to be eligible one has of course only 3 votes.
Having less candidates than possible is quite common e.g. in German parties. For example at the lowest party level can have up to 17 persons in the Vorstand. Usually there are less candidates and thus the size of the Vorstand will automatically be decreased.

 Sorry and closing.


[vim] Improve typealias and associatedtype

Update only utils/vim/syntax/swift.vim
Improve the syntax highlight for typealias and associatedtype.
Problematic patterns

Expects

Should we not highlight associatedtype as a keyword rather than a type identifier?  I guess you can argue either way.

I read Declarations of Swift Language References and thought typealias and  associatedtype to be close. That's because both typealias and associatedtype has typealias-name immediately afterwards.
That is a reason I moved associatedtype to swiftTypeDefinition.

Type Alias Declaration

typealias-declaration → attributes access-level-modifier typealias typealias-name generic-parameter-clause typealias-assignment

Protocol Associated Type Declaration

protocol-associated-type-declaration → attributes access-level-modifier associatedtype typealias-name type-inheritance-clause typealias-assignment generic-where-clause


Update all examples and set embedded_manifests = true

Followup: #664

Also visibility  = "public" should be private as no one should use a public repo for bootstrap.

@stefanprodan leave this one to me I can do this over the next couple of days.


Fix typo

Fix typo

Please correct all typos at the same time. Not just one by one...
I am sure you can find at least 2 more typos.

"I am sure that I made more mistakes"
Got em

merge when


Fix hint page 404 in copy-an-object-with-object.assign

Clicking on
Get a hint at https://learn.freecodecamp.org/front-end-libraries/redux/copy-an-object-with-object-assign/
leads to a 404 https://guide.freecodecamp.org/certifications/front-end-libraries/redux/copy-an-object-with-object-assign
The associated hint page does however load at https://guide.freecodecamp.org/certifications/front-end-libraries/redux/copy-an-object-with-object.assign/
Changing the title would be a temporary fix for the Get a hint 404

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] All the files I changed are in the same world language (for example: only English changes, or only Chinese changes, etc.)
[x] My changes do not use shortened URLs or affiliate links.

Thank you for opening this pull request.
This is a standard message notifying you that we’ve reviewed your pull request and have decided not to merge it. We would welcome future pull requests from you.
Reason:  The change you made would not actually solve the problem. However, you don't have to worrry, because an earlier PR resolved this issue.  The change will be moved to production in the near future.
Thank you and happy coding.


Adds Projects collection and their relation to other pages

Description

Projects Collection
Relate projects to index page

Type of change

[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Screenshots
Partners

Projects

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation

@kilemensi To prevent having to review 50+ files, I think this can be reviewed independently for Project.


Use of const breaks minifiers

I really like typescript-ioc but currently the code uses "const". The Typescript compiler doesn't compile this to var. This means that for browser based projects, only >= IE 11 is supported.
I've also found that most Javascript minifiers break on the keyword const. (The popular VisualStudio Minifier & Bundler being one).
Currently I'm having to use my modified version of the library that removes instances of "const".

@nickhod  I think you can use es5.js to solve your problem. Also if you compile code with typescript you can specify "target":"es2015" or lower in tsconfig.json


'NoneType'

How to solve this?

Hello @acataeshtete , probably invalid 'USER_TOKEN' parameter, it tries to authorize you to the webgate and fails, returning a None response (which crashes the bot).


Change API Key button function inactive/Genie not running requests

Verify it's not a duplicate bug report

[X] I searched for similar bugs reported on GitHub and nobody has reported a similar issue. Search all issuees.
[X] I read Troubleshooting guide on Readme and there is not a guide on how to solve my problem.

Describe the Bug

The Change API Key button is not functioning.

Requests are not being run in Genie. I will type a response up and send it through, the response does not seem to process and the text that I enter disappears after I hit the 'enter'.

ATTENTION -------- This seems to be the case only while using VScode on MacOs* On windows operating system, same issue is not duplicating.

Please tell us if you have customized any of the extension settings or whether you are using the defaults.
I was using gpt-3.5-turbo the day before I was unable to run any requests using Genie:ChatGPT through VSCode.
Additional context
No response

same here, constantly complaints about missing API key.

@emrecoding @pentago We have added a Change API Key on the home page now for you to clear/update your API Keys directly. Though there has always been command Genie: Clear API Key that you could use via vscode's command palette, or via the more button in the chat window (> See commands)
@emrecoding about your 2nd question are you facing a similar issue like the one reported here: #11 ?

@genieai-info using the command seemed to resolve the issue. I cleared the API Key using the command palette, then created a new key from openai. Clearing the API Key using the command palette brought back function to the 'Change API Key' button on the home screen on Genie.
As for the second issue, that is exactly what I was referring to. When the 'Change API Key' was non-functional, the same issue as described in #11 was duplicating on my end.

@emrecoding do you possibly have copilot installed like the other report? It'd  be actually useful if you could check  out the developer view and see if there are any reported console errors. You can open the developer view of vs code using the command like:

After changing the API Key, It does not work for me. No conversation, No editor. And there is no console log relevant to this issue.


"Permission denied" error accessing cifs through drvfs in VirtualBox

I have downloaded the Windows 10 evaluation VirtualBox Virtual Machine from modern.ie (Microsoft Windows [Version 10.0.16299.248]), and am trying to access files stored on my linux host, using the WSL.  The linux host exports a directory using samba.  This directory is mounted to a drive letter using "net use".  The drive letter is mounted in WSL using "mount -t drvfs".
Windows shows full permission for all pre-existing files.  See link for details:
https://gist.github.com/gregsharp/65915f9ed9ff3ac24c9d036b15d26dcc
In bash, I do not have read permission on pre-existing files.  But I can create new files and manipulate them correctly.  See link for details:
https://gist.github.com/gregsharp/657c3440e3feba2b962c795971309657
I have expected the WSL to have same permissions as the windows user.

After a little more digging, I found that if I give a file execute permission on the linux host, it gains read permission on the WSL within the VM.  Is this an expected behavior?

Windows ACLs ≠ Linux permissions. You'll need to be on an Insider build to map Linux to Windows permission via enabling metadata feature. Going to the "Fast Ring" will allow you to use wsl.conf to easily configure metadata, mounting of fstab, and populating /etc/host (choose your options).
Running Windows in a VM or native to the box makes no difference to WSL.

I found that if I give a file execute permission on the linux host, it gains read permission on the WSL

If by WSL you mean your Linux instance (Ubuntu or OpenSuse), then this is native Linux behavior. Really behavior of permissions for all platforms. You need to have read privilege to execute a file but you don't need execute privilege to read a file if that makes sense to you.

Thank you.  Yes, I mean the linux instance.  Please forgive me to repeat: if I gave execute permission in the host it allowed read permission in the linux instance client.  The windows native client does not need execute permission on the host to have read permission.
Nevertheless, I agree it is good to attempt to use the insider build.  My issue might be obsolete because of the new changes to permissions.

@gregsharp - If you remove execute permission on the Samba host (ie your failing condition) what the following give you:
$ ls -l /mnt/x/hello.world
$ stat /mnt/x/hello.world

The file has permission 0644 on the host.
dev@MSEDGEWIN10:~/build$ ls -l /mnt/x/hello.world
-rwxrwxrwx 1 root root 3 Feb 27 11:24 /mnt/x/hello.world
dev@MSEDGEWIN10:~/build$ stat /mnt/x/hello.world
  File: '/mnt/x/hello.world'
  Size: 3               Blocks: 2048       IO Block: 512    regular file
Device: dh/13d  Inode: 99108495    Links: 1
Access: (0777/-rwxrwxrwx)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2018-02-27 11:26:29.045872800 -0800
Modify: 2018-02-27 11:24:39.720156000 -0800
Change: 2018-02-27 11:24:39.720156000 -0800
 Birth: -
dev@MSEDGEWIN10:~/build$ cat /mnt/x/hello.world
cat: /mnt/x/hello.world: Permission denied

For completeness, here is the same, with permission 0744 on the host.
dev@MSEDGEWIN10:~/build$ ls -l /mnt/x/hello.world
-rwxrwxrwx 1 root root 3 Feb 27 11:24 /mnt/x/hello.world
dev@MSEDGEWIN10:~/build$ stat /mnt/x/hello.world
  File: '/mnt/x/hello.world'
  Size: 3               Blocks: 2048       IO Block: 512    regular file
Device: dh/13d  Inode: 99108495    Links: 1
Access: (0777/-rwxrwxrwx)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2018-02-27 11:26:29.045872800 -0800
Modify: 2018-02-27 11:24:39.720156000 -0800
Change: 2018-02-27 11:24:39.720156000 -0800
 Birth: -
dev@MSEDGEWIN10:~/build$ cat /mnt/x/hello.world
Hi

The file has permission 0644 on the host.
dev@MSEDGEWIN10:~/build$ ls -l /mnt/x/hello.world
-rwxrwxrwx 1 root root 3 Feb 27 11:24 /mnt/x/hello.world
[....]
dev@MSEDGEWIN10:~/build$ cat /mnt/x/hello.world
cat: /mnt/x/hello.world: Permission denied

That's on WSL and the perms are 0777 (maybe fix up your post to avoid confusion).
That's incorrect behaviour with 0777 perms. Unfortunately DarthSpock's post relegated this issue# to the  bikeshed pile faster than I could get to it.
Not sure if the issue can be recovered at this point, but to get looked at you'll need a really really tight repro, and that's not a small task. "Set up a VirtualBox VM and export a Samba share" is too hand-wavy even though it is clear what you are doing. No one is going to guess your exact Samba setup, or even, necessary, has a Samba setup. So you'll need something like an exact list of CLI (!) actions to perform on the Real Linux side and exact list of CLI actions to perform on the WSL side to reproduce the behaviour. Something that can be cut-and-pasted without grief. And even then....
Or, set the execute bit as a work-around. Or do the share in the other direction. Bonne chance.

Hi, thank you.  I don't understand what you mean about fixing my post, can you explain?
I agree it is strange that WSL permissions don't match host.  But I am not totally sure.  Since I was unable to directly mount cifs or vboxfs from WSL, my next attempt was to mount with cifs with windows and then devfs the drive letter.  (This workaround was mentioned already in #2896).  What permissions should one expect from this?
The execute bit is a good workaroud.  When I get some free time (hah!) I'll try to sign up and try the insider build.  Using WSL is a great help to speed up development and testing, and happy to do my part.

@sunilmut With your permission, I will delete your "question" tag.  Or is there something else I should to add to this report?

I don't understand what you mean about fixing my post, can you explain?

You need a repro. A list of command line steps to take. Don't assume the reader has Samba installed or has VirtualBox VM installed. You can assume the reader has a clean install of Real Ubuntu somewhere accessible to WSL. That list of steps will not be trivial and means you'll need config files set up to wget  and cp (contrast: "Follow Samba setup instructions at <link>"), but it is doable. Bearing in mind the effort might result in a reply along the lines of "Samba shares are not a supported scenario at this time". Or no reply at all.

I agree it is strange that WSL permissions don't match host.

No the permissions are whatever you tell mount to make them; normally with mount -t cifs -o uid=0,gid=0,file_mode=0777,dir_mode=0777 (for example) on Real Linux. CIFS has no idea (and does not care) what the permissions of those files are on the host.
The curiosity here is that the permissions are 0777 on WSL but you are still getting a permission denied on a read.

(This workaround was mentioned already in #2896). What permissions should one expect from this?

Yeah that was me. You'd expect 0777, just like any DrvFS mount in Fall Creators 16299.


chunkwriting: custom buffer pool

Add option to UploadStreamToBlockBlob to specify custom pool for buffers.
This is needed to, for example, reuse pool between transfers.
Relates to #233 because with custom pool memory consumption remains constant.

Reviewers: Please see https://github.com/Azure/azure-storage-blob-go/pull/234 before allowing this in.  They solve the same issue but do it in different ways.  This here allows buffer pool reuse, the other allows complete customization (positives and negatives to them both).

I like this fix. It is simple, it and directly addresses the problem of excess memory usage in the azure blob SDK.
When doing repeated transfers it will be necessary to set a SyncPool in order to stop memory usage blowing up in the SDK.
See discussion of the problem and the application of this fix here: https://forum.rclone.org/t/ask-for-settings-recommendation-for-azureblob/21505/19

I like this fix. It is simple, it and directly addresses the problem of excess memory usage in the azure blob SDK.
When doing repeated transfers it will be necessary to set a SyncPool in order to stop memory usage blowing up in the SDK.
See discussion of the problem and the application of this fix here: https://forum.rclone.org/t/ask-for-settings-recommendation-for-azureblob/21505/19

I considered doing this on my patch (and it was a really silly oversight on the original patch I put in that it didn't have this).
The question is the long haul.  With https://github.com/Azure/azure-storage-blob-go/pull/234, I decided that maybe the long term answer is to allow complete control by the user for the buffer AND the goroutines + reuse, with two reasonable defaults.
If a circular buffer cache is what is best for the use case, then you have it.  If you want the pool, you have it.  If you want a combination, you can do that (in certain use cases can really be efficient).
You can also make versions that can respond to network congestion in services to optimize transfers (way beyond what I added).
I'm actually 50/50 on this.  If the 99.9% use case is doing a few copies for some tool like rclone or azcopy, then it might not make sense and we should just use the sync.Pool as defined here.  It is beautifully simple.
If azblob think that we may have more complex cases that might want to optimize for themselves by using different buffering strategies and respond to buffer pressure from the network to optimize transfer rates, then something like 234 is probably the way to go.

I considered doing this on my patch (and it was a really silly oversight on the original patch I put in that it didn't have this).
The question is the long haul.  With https://github.com/Azure/azure-storage-blob-go/pull/234, I decided that maybe the long term answer is to allow complete control by the user for the buffer AND the goroutines + reuse, with two reasonable defaults.
If a circular buffer cache is what is best for the use case, then you have it.  If you want the pool, you have it.  If you want a combination, you can do that (in certain use cases can really be efficient).
You can also make versions that can respond to network congestion in services to optimize transfers (way beyond what I added).
I'm actually 50/50 on this.  If the 99.9% use case is doing a few copies for some tool like rclone or azcopy, then it might not make sense and we should just use the sync.Pool as defined here.  It is beautifully simple.
If azblob think that we may have more complex cases that might want to optimize for themselves by using different buffering strategies and respond to buffer pressure from the network to optimize transfer rates, then something like 234 is probably the way to go.


Common Intermediate Language (CIL)

CIL is a low-level programming language used in the .NET framework as an intermediate language compiled from higher-level languages.

@Burkifa23  Is this different from Visual Lisp ?

The Syntax looks the same but the file extension is different.


User-supplied namespace prefixes (#1195)

Backport of https://github.com/fcrepo4/fcrepo4/commit/81be86f4809be5620a0f74a5c5c6de6819169fea to 4.7-maintenance branch
See https://jira.duraspace.org/browse/FCREPO-2376 and https://jira.duraspace.org/browse/FCREPO-2573

@escowles : I you can update this branch to 4.7-maintenance, I will merge it.

@awoods There was a button in the PR to update the base branch, so I'm trying that.


Tracking - app-measurement.com

Hi,
It looks like the Slide app is constantly sending requests to the above address. Several hundreds of requests every day ...
app-measurement.com is owned by google. This domain is used by Google Analytics for Firebase to report the analytics events from the client. Is this the case that Slide uses this domain?

That's very odd. Slide doesn't use any analytics, and I'm pretty sure it doesn't use Firebase at all either. Maybe one of the dependencies snuck something in?

There is no tracking in the app. Makes it really hard to track down bugs, lol

Okay my bad then. Thanks for the info. Closing this now.


kratos upgrade

immediate work:

migrate inc to new terraform (with postgres update)

move webwallet to use cookie e2e
-- need to activate cookie
-- problem: no graphql endpoint for cookie when there need to be a captcha

verify token extension works (NB: they don't right now)

log out from the mobile app should expire the associated session

add a call to deactivate all sessions for a particular user/account from the admin panel

(oathkeeper) pass public key from oathkeeper to api via env variable instead of the current fetch from api after has started --> would reduce potentially transient error on api startup

change the token for the blackbox (or remove blackbox altogether from our charts/grafana dashboard)

see how to suggest old mobile app to upgrade (we have some graphql API end point to suggest that)

use webhook function from kratos to go from user creation to account creation flow such that it's possible to self register from kratos with email+password (ie: from cli on dev env)

follow up:

clean up tests. most don't need a user anymore, just an account and 1-2 wallets. (integration tests may not need kratos/oathkeeper)

make galoy-cli works on a new hackathon environment with email+password such that all function of the backend can be access with the cli.

remove temporary code for the JWT to kratos migration (when kratos token (https://ui.honeycomb.io/galoy/datasets/galoy-bbw/result/cqtA7KSVUUj/a/vVGDC7S86Nw) is high in percentage)

Also needed: kratos in BigQuery @bodymindarts

Also needed: kratos in BigQuery @bodymindarts

This is done.

(oathkeeper) pass public key from oathkeeper to api via env variable instead of the current fetch from api after has started --> would reduce potentially transient error on api startup

Chart part done in https://github.com/GaloyMoney/charts/pull/1971
Require changes to backend and adding of OAUTHKEEPER_PUBLIC_KEY env on backend and appropriate logic.

also: look at the bootstraping environment with kratos / email

closing this meta ticket


tabsWithNumbers doesn't work with search editors

Search editor has associated number but focusing command doesn't work

Search editor has associated number

The main issue is that it doesn't.
https://github.com/zardoy/vscode-experiments/blob/258073ecf681e4bd74b4642e786ab69a82aa4fb6/src/features/tabsWithNumbers.ts#L74
Currently we get the tab index in non-filtered array, thats why we don't skip tabs, in which we can't display the number.
It's possible to fix to fix this in two ways:

leave counting as is (while skiping some stabs) and use different focusing approach:

Replace whole focusTabFromLeft func https://github.com/zardoy/vscode-experiments/blob/258073ecf681e4bd74b4642e786ab69a82aa4fb6/src/features/tabsWithNumbers.ts#L14 with await vscode.commands.executeCommand('workbench.action.openEditorAtIndex', index)

correct counting number: add in focusTabFromLeft and provideFileDecoration .filter before .findIndex, it should fix.

@ILScc you decide.


fix: set odometer sensors to None if measurements is missing

This fixes #77 by setting odometer values to none if measurements dict is missing in data dict.

I'll take a look at this later to see how it behaves.

Works perfectly with my hybrid Formentor, thank you! I noticed that the odometer sensors are showing as disabled, but my main interest is in controlling the climate, so this isn't a major issue for me.


Cannot start olelo, ruby error

I'm trying to spin up olelo and getting:
wiki@wiki:~$ OLELO_CONFIG=/shared/config/config.yml unicorn /var/www/olelo/config.ru
I, [2014-04-23T15:39:58.190834 #1339]  INFO -- : listening on addr=<IP_ADDRESS>:8080 fd=9
I, [2014-04-23T15:39:58.191022 #1339]  INFO -- : worker=0 spawning...
I, [2014-04-23T15:39:58.192059 #1339]  INFO -- : master process ready
I, [2014-04-23T15:39:58.192454 #1341]  INFO -- : worker=0 spawned pid=1341
I, [2014-04-23T15:39:58.192758 #1341]  INFO -- : Refreshing Gem list
/usr/local/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': /var/www/olelo/lib/olelo/application.rb:78: syntax error, unexpected tREGEXP_BEG, expecting keyword_do or '{' or '(' (SyntaxError)
      if on_error && http_accept? /html/
                                   ^
/var/www/olelo/lib/olelo/application.rb:267: syntax error, unexpected keyword_end, expecting end-of-input
    from /usr/local/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /var/www/olelo/lib/olelo.rb:32:in `<top (required)>'
    from /usr/local/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/local/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /var/www/olelo/config.ru:12:in `block in <main>'
    from /usr/local/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `instance_eval'
    from /usr/local/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `initialize'
    from /var/www/olelo/config.ru:1:in `new'
    from /var/www/olelo/config.ru:1:in `<main>'
    from /usr/local/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn.rb:48:in `eval'
    from /usr/local/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn.rb:48:in `block in builder'
    from /usr/local/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:760:in `call'
    from /usr/local/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:760:in `build_app!'
    from /usr/local/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:624:in `init_worker_process'
    from /usr/local/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:647:in `worker_loop'
    from /usr/local/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:521:in `spawn_missing_workers'
    from /usr/local/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:140:in `start'
    from /usr/local/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/bin/unicorn:126:in `<top (required)>'
    from /usr/local/bin/unicorn:23:in `load'
    from /usr/local/bin/unicorn:23:in `<main>'
E, [2014-04-23T15:39:58.402366 #1339] ERROR -- : reaped #<Process::Status: pid 1341 exit 1> worker=0

Ruby:
ruby 2.0.0p451 (2014-02-24 revision 45167) [x86_64-linux]
Gems:
olelo (0.9.15)
unicorn (4.8.2)
Not sure what to do to diagnose or fix.

Had the same problem.
Did you resolve it?

Same issue on OS X.

Pull request #100 has a workaround.


command "Kubernetes: open dashboard" get the wrong url

On unbuntu:
after execute the command , open "http://localhost:8001/ui" will redirect to http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
and get error like below:

Actually ,The right url is http://<IP_ADDRESS>:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy/#!/overview?namespace=default
On mac:
after execute the command open "http://localhost:8001/ui" will redirect to Actually ,The right url is http://<IP_ADDRESS>:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy/
Actually ,The right url is http://<IP_ADDRESS>:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy/#!/overview?namespace=default

Duplicate with #105 . @songkaiape , could you please add details there and close this one? Thank you.

@kyliel OK, got it


Sticky state doesn't work when applied to a state with params

Hi, sticky state doesn't seem to work when it has parameters.
Example:
.state('main.products', {
      url: '/products/:product_id',
      sticky: true
})
.state('main.products.details', {
     url: '/details'
})

When you navigate between these 'main.product.details ' states while changing product_id, you will get an error.
Plunk: http://plnkr.co/edit/czXStZZCQ9wDZ4mVqtA2?p=info
Step by step log:

Go to products/1/details

Current transition:  main: {}:  -> main.products.details: {"product_id":1}
Before transition, inactives are:   :  []
After transition,  inactives will be:  []
Transition will exit:   ["(main)"]
Transition will enter:  ["(main)", "ENTER: main.products", "ENTER: main.products.details"]
SurrogateFromPath:  ["main"]
SurrogateToPath:    ["main", "main.products", "main.products.details"]
Current state: main.products.details, inactive states:  []

Go to products/2/details

Current transition:  main.products.details: {"product_id":"1"}:  -> main.products.details: {"product_id":2}
Before transition, inactives are:   :  []
After transition,  inactives will be:  ["main.products", "main.products.details"]
Transition will exit:   ["(main)", "INACTIVATE: main.products", "INACTIVATE: main.products.details"]
Transition will enter:  ["(main)", "ENTER: main.products", "ENTER: main.products.details"]
SurrogateFromPath:  ["main", "inactivate:main.products", "inactivate:main.products.details"]
SurrogateToPath:    ["main", "main.products", "main.products.details"]
Current state: main.products.details, inactive states:  ["main.products.details", "main.products"]

Go to products/3/details and get an error

Current transition:  main.products.details: {"product_id":"2"}:  -> main.products.details: {"product_id":3}
Before transition, inactives are:   :  ["main.products.details", "main.products"]
After transition,  inactives will be:  ["main.products", "main.products.details"]
Transition will exit:   ["(main)", "INACTIVATE: main.products", "INACTIVATE: main.products.details"]
Transition will enter:  ["(main)", "RELOAD: main.products", "RELOAD: main.products.details"]
SurrogateFromPath:  ["main", "inactivate:main.products", "inactivate:main.products.details"]
SurrogateToPath:    ["main", "main.products", "main.products.details"]
Exiting main.products.details because it's a substate of main.products and wasn't found in  Object {}
transition failed TypeError: Cannot read property 'globals' of null

If I add intermediate state like this:
.state('main.products', {
      url: '/products',
      sticky: true
})
.state('main.products.product', {
     url: '/:product_id'
})
.state('main.products.product.details', {
     url: '/details'
})

it will work for my purpose, but it's not very convenient in terms of the app structure.

It seems to be what it's happening to me.
Here's a plunker. Go to 'Tabs` and then go back and forth between the two existing tabs and you'll see the controllers being reloaded. Unless I'm doing something wrong...

No, in my case I think it was my misunderstanding of the main sticky state concept - its scope should stay and controller shold not be reloaded. So I ended with an intermidiate state which was mentioned at the end of my question.


CMake Warnings for Postgres client libs

@hanli32 - I am able to build the new test cases that use libpqxx but cmake is not finding the library.
@jarulraj - Why is this a warning and not an error?
$ cmake -DCMAKE_BUILD_TYPE=RELEASE ..
<SNIP>
CMake Warning at cmake/Dependencies.cmake:49 (find_package):
  By not providing "FindLIBPQXX.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "LIBPQXX", but
  CMake did not find one.

  Could not find a package configuration file provided by "LIBPQXX" with any
  of the following names:

    LIBPQXXConfig.cmake
    libpqxx-config.cmake

  Add the installation prefix of "LIBPQXX" to CMAKE_PREFIX_PATH or set
  "LIBPQXX_DIR" to a directory containing one of the above files.  If
  "LIBPQXX" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack (most recent call first):
  CMakeLists.txt:41 (include)
<SNIP>
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pavlo/Documents/Peloton/Github/peloton/build

I installed the packages using the new version of scripts/installation/packages.sh:
$ dpkg -l | grep libpqxx
ii  libpqxx-4.0     4.0.1+dfsg-3ubuntu2  amd64  C++ library to connect to PostgreSQL
ii  libpqxx-dev     4.0.1+dfsg-3ubuntu2  amd64  C++ library to connect to PostgreSQL (development files)

Hi, I have an assumption: in peloton/cmake/Dependencies.cmake, only this line "list(APPEND Peloton_LINKER_LIBS "-lpqxx -lpq")" works.
I tried on my own machine with build directory removed:
(1) I delete
find_package(LIBPQXX)
include_directories(${LIBPQXX_INCLUDE_DIRS})
link_directories(${LIBPQXX_LIBRARY_DIRS}) in peloton/cmake/Dependencies.cmake.
Only list(APPEND Peloton_LINKER_LIBS "-lpqxx -lpq") remains.
(2) I remove peloton/cmake/Modules/FindLibPQXX.cmake
Then I run
mkdir -p build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j4
make install
make packet_manager_test
./test/packet_manager_test
There seems no problem in compiling/running.
Should we send a new PR for this change?

@CHUYilei I don't think you want to remove the dependency check. You want it to throw an error if it can't find the packages (which it doesn't do right now).
Try removing the libpqxx packages from your machine. Then run cmake. It should fail.

I see. My confusion is FindLIBPQXX.cmake file is in the correct location: under cmake/Modules, which should be in CMAKE_MODULE_PATH according to this. I still don't understand the cause of the warning

By not providing "FindLIBPQXX.cmake" in CMAKE_MODULE_PATH

It doesn't work. You can run cmake and have it pass without the libpqxx
[100%] Linking CXX shared library ../lib/libpeloton.so
/usr/bin/ld: cannot find -lpqxx
/usr/bin/ld: cannot find -lpqxx
collect2: error: ld returned 1 exit status
src/CMakeFiles/peloton.dir/build.make:5129: recipe for target 'lib/libpeloton.so.0.0.5' failed
make[2]: *** [lib/libpeloton.so.0.0.5] Error 1
CMakeFiles/Makefile2:1158: recipe for target 'src/CMakeFiles/peloton.dir/all' failed
make[1]: *** [src/CMakeFiles/peloton.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2

diff --git a/cmake/Dependencies.cmake b/cmake/Dependencies.cmake
index 1eac403..6e9a74e 100644
--- a/cmake/Dependencies.cmake
+++ b/cmake/Dependencies.cmake
@@ -46,10 +46,9 @@ set(MEMORYCHECK_COMMAND_OPTIONS "--trace-children=yes --leak-check=full")
set(MEMORYCHECK_SUPPRESSIONS_FILE "${PROJECT_SOURCE_DIR}/third_party/valgrind/valgrind.supp")
--[ LibPQXX
-find_package(LIBPQXX)
-include_directories(${LIBPQXX_INCLUDE_DIRS})
-link_directories(${LIBPQXX_LIBRARY_DIRS})
-list(APPEND Peloton_LINKER_LIBS "-lpqxx -lpq")
+find_package(LibPQXX)
+include_directories(SYSTEM ${LIBPQXX_INCLUDE_DIRS})
+list(APPEND Peloton_LINKER_LIBS ${LIBPQXX_LIBRARIES})

Can you make this change in the Cmake file?

You also need change find_package(LibPQXX) to find_package(LibPQXX REQUIRED) to get CMake to throw an error if you don't have the library.

@jarulraj Only -lpqxx is needed. -lpq can be removed.
However, using
find_package(LibPQXX)
include_directories(SYSTEM ${LIBPQXX_INCLUDE_DIRS})
list(APPEND Peloton_LINKER_LIBS ${LIBPQXX_LIBRARIES})
always provide undefined reference to pqxx error.
My question here is where did you define LIBPQXX_LIBRARIES?
Do you think a combination like
find_package(LibPQXX)
include_directories(SYSTEM ${LIBPQXX_INCLUDE_DIRS})
list(APPEND Peloton_LINKER_LIBS "-lpqxx")
would be better? Both check the lib installation and do the linking.

It's defined here: https://github.com/cmu-db/peloton/blob/master/cmake/Modules/FindLibPQXX.cmake
No, you will only need to use ${LIBPQXX_LIBRARIES}. You don't have to hard-code them. Try using this: find_package(LibPQXX REQUIRED) instead of find_package(LibPQXX).

@jarulraj I did exactly as you mentioned above, and FindLibPQXX.cmake is in right place. However, FindLibPQXX.cmake doesn't raise warning/error. The undefined reference to pqxx error occurs when I run make packet_manager_test at the last step. May I know did you successfully make packet_manager_test using the above configuration?

Yes. Can you run make packet_manager_test VERBOSE=1 and share the output?

@CHUYilei Send a PR so that we can see your latest version.

@jarulraj Here is the output file.
output.txt

@apavlo I haven't succeeded using Joy's method. I think my original method is hardcoding and is still not the correct standard version we want. I prefer sending a PR when Joy's method works on my machine, is that OK?

@CHUYilei Send the PR anyway so that we can try to help. It's easier that way to see what you have and then we can work together to fix it.

@CHUYilei Let's give it a final shot.
+# --[ PQXX
+find_package(PQXX REQUIRED)
+include_directories(SYSTEM ${PQXX_INCLUDE_DIRECTORIES})
+list(APPEND Peloton_LINKER_LIBS ${PQXX_LIBRARIES})

@jarulraj This final shot works well! I will send a PR for it

@jarulraj The PR's travis build crashes when running make check -j4. I tried this command locally with current configuration, and it worked well with no error like below. I wonder what might be the reason.

[ 68%] Building CXX object test/CMakeFiles/storage_manager_test.dir/storage/storage_manager_test.cpp.o
No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself.
Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#Build-times-out-because-no-output-was-received
The build has been terminated


⬆  Upgrade Amazon Services to 1.1.1

I just rebased from main, to correct the new conflict on pom.xml


Add support for az ad sp create-for-rbac equivalent in az-sdk-for-go

Feature Request

The az ad sp create-for-rbac subcommand is implemented in Python a non-trivial way.
It would be helpful if azure-sdk-for-go could provide equivalent functionality so that users don't need to translate the existing Python implementation into Go.

@jhendrixMSFT, could you help to triage this item?
From the description https://learn.microsoft.com/en-us/cli/azure/ad/sp?view=azure-cli-latest#az-ad-sp-create-for-rbac,  the above CLI command involves multiple Rest Api calls.


Crash after upgrading to 1.11.3

Describe the bug
After upgrading to 1.11.3 from 1.11.1 a crash is occurued:
java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/compose/runtime/PrimitiveSnapshotStateKt

Hello! It looks like you’re using an incompatible Jetpack Compose version. Vico includes the latest release of the Jetpack Compose BOM. Please see #366.

Same here

I’ll be closing this issue because it’s a duplicate of #366. If a minimal reproducible example showing that this problem stems from a bug in Vico is shared, we’ll reopen issue #366. However, we’ve looked into the matter and are confident that Vico isn’t at fault, as I’ve mentioned here.


Modularized config and dbConnect

Also enabled unauthenticated Mongo access in development (no user or password).

Looks great! We'll want to add a setup script as well, or at least a placeholder until it's actually implemented.

I will suggest using gulp whenever you can since it is there for a reason.
I suggest that we create a tag to label the current release. then merge this over so we can get this cleaned up without affecting what already works.
Gotta give credit when credit is due.


Quantum-secure backup infrastructure for BLS signatures

Quantum-secure zkproofs of knowledge (such as STARKs) can be used as a backup signature scheme to BLS in case of a quantum apocalypse. The only infrastructure that needs to be setup today is a commitment to a secret. We currently have withdrawal_credentials which is imperfect because the committed secret (namely, the withdrawal pubkey) is revealed for transfers. A better construction would replace withdrawal_credentials by the hash_tree_root of container with two fields:
    withdrawal_pubkey: BLSPubkey
    secret: Bytes32  # Quantum secure backup for `pubkey` and `withdrawal_pubkey`

Another approach would rely on the convention the private keys corresponding to pubkey and withdrawal_pubkeys have been derived by hashing a seed, and that this secret seed is stored by validators.
(This is labelled as phase 1 because transfers are not part of phase 0.)

I am in favour of this backup mechamism. Full "signatures of knowledge" using STARKs will probably be quite heavyweight, right? Would it make sense to even commit to a full Merkle root of secrets, so that other schemes can be used?

Would it make sense to even commit to a full Merkle root of secrets, so that other schemes can be used?

Oh, interesting! There's no onchain overhead to having more than one secret.

So one interesting question is how we would handle multisigs in this case. One way would be to do proper Lamport multisigs (as in https://ethresear.ch/t/threshold-lamport-signatures-can-survive-with-much-lower-size-by-compromising-on-per-signature-security-level/1737) but working this out properly for emergency infrastructure that is likely never used may be overkill. So I suggest a very simple Lamport multisignature scheme, where the public key consists of a Merkle tree of Lamport signatures:
     Lamport multisig key
            /  \
          /      \
        /          \
     Meta    Merkle root of Lamport public keys
    /    \
   n     m

A valid Lamport multisignature consists of Merkle proofs of m Lamport keys as well as m signatures using each of these keys.
All of this can be integrated at no extra cost by making the withdrawal key a Merkle root: of the BLS key and the Lamport public key. In order to avoid having to expose the actual lamport public key to provide Merkle proofs (as it is being considered in the BLS standardisation that the Lamport public key is the same as the BLS private key) we can also use the multisig format for them using m, n = 1.

Paging @CarlBeek who I believe is leading the quantum-secure backup initiative. Can this issue be closed, maybe in favour of another issue? :)


Fix audio_data chapter

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Save user-chosen web app language

Currently the chosen language is saved in the users session, but after in a new session, the language is reverted back to the browser settings, or geo location?

It uses your browser language by default but can be overridden on the settings page. Sessions are invalidated when restarting TeslaMate but there's an undocumented way to disable that: you can add the SECRET_KEY_BASE variable with a secret string. For example:
   services:
     teslamate:
       environment:
         - SECRET_KEY_BASE=yourSecretKey

# ...


[Bug]: Failed to run config for nvim-recorder

Bug Description
I got the error below when I try to run recorder.setup()
Failed to run `config` for nvim-recorder

...02/.local/share/nvim/lazy/nvim-recorder/lua/recorder.lua:293: bad argument #1 to 'pairs' (table expected, got nil)

Here is my config if it'll be helpful
local status_ok, recorder = pcall(require, "recorder")
if not status_ok then
  vim.notify("Recorder not found!")
  return
end

recorder.setup({
  slots = { "a", "b" },
  mapping = {
    startStopRecording = "q",
    playMacro = "Q",
    editMacro = "cq",
    switchSlot = "<C-A-q>",
  },
  clear = false,
  logLevel = vim.log.levels.INFO,
  dapSharedKeymaps = false,
})

Relevant Screenshot
No response
To Reproduce

Call require('recorder').setup in nvim config
Open neovim

neovim version
NVIM v0.10.0-dev-737+gdf2f5e391

Make sure you have done the following

[X] I have updated to the latest version of the plugin.

Same issue here. Have not been able to solve.

oh sorry everyone, I accidentally deleted one of the config lines when refactoring the code earlier today 🤦♂
Just pushed a fix


Migrate to tokio-rs/tracing

Looks like a better solution that would also unify trace and log output.
However would first need to implement tokio/tracing to chrome-tracing format.

done, without chrome output for now


DateTime.Parse is locale sensitive

Entering "date = DateTime.Parse("11/16/2019 5:25 PM")" in the immediate window will result in an error for countries that adopt the dd/mm/yy notation instead of the mm/dd/yy notation.

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

ID: 5bc3290a-6511-5ef4-68bc-c2a8424dd582
Version Independent ID: aeb94c3f-50e0-eb84-e469-f6eb778bad62
Content: Debug your Hello World .NET Core application with Visual Studio - .NET Core
Content Source: docs/core/tutorials/debugging-with-visual-studio.md
Product: dotnet-core
GitHub Login: @tdykstra
Microsoft Alias: tdykstra

@emsteenbrink Thanks for reporting that, we'll fix it the next time we update this tutorial.


excludeDependencies does not work (but does in sbt) [includes reproducer]

Using sbt 1.3.8 with coursier enabled by default.
A very simple reproducer can be found here.
Adding an sbt plugin that has dependencies e.g. Playframework to project/plugins.sbt
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.8.1")

In build.sbt I enable the PlayWeb plugin, but want to exclude a dependency that plugin pulls in, namely play-akka-http-server:
lazy val root = (project in file("."))
  .enablePlugins(PlayWeb)
  .settings(
    name := "coursier-excludeDependencies-sbtPlugin",
    version := "1.0-SNAPSHOT",
    scalaVersion := "2.13.1",
    excludeDependencies ++= Seq(
      "com.typesafe.play" %% "play-akka-http-server"
      // or:
      //ExclusionRule("com.typesafe.play", "play-akka-http-server_2.13")
    )
  )

Using sbt-dependency-graph

with coursier enabled, play-akka-http-server still is present:

[coursier-excludeDependencies-sbtPlugin] $ dependencyTree
...
  +-com.typesafe.play:play-akka-http-server_2.13:2.8.1
  | +-com.typesafe.akka:akka-http-core_2.13:10.1.11
  | | +-com.typesafe.akka:akka-parsing_2.13:10.1.11
...

with coursier disabled, play-akka-http-server is (correctly) excluded from the dependencies.

Same behaviour no matter if ExclusionRule is used or not.

This might be a problem with sbt-dependency-graph and not with coursier, but not sure yet, will investigate further.

Alright, this is definitely a bug in coursier.
Check out the latest version of my reproducer: https://github.com/mkurz/coursier-excludedependencies-sbtplugin. I added a java file to access the play.core.server.AkkaHttpServer class which should however be excluded by the build.
Now if you run:
reload; clean; compile

it will compile in with coursier enabled (which I guess is wrong).
However if you disable coursier it will not compile (which I guess is correct).

Ref https://github.com/sbt/sbt/issues/5170

Should be fixed by https://github.com/coursier/sbt-coursier/pull/235 (to be included in the upcoming release).


change perms file not validated

magpie change permissions has a generic return permissions changed. File.chmod return empty string on success. easy to verify that perms were or were not changed correctly.

That's a good point. Once core features are done I'll work towards refactoring to print errors and return status codes. Keeping this open for that


Reload docker daemon instead of restarting

Codecov Report

Merging #274 (fd86e39) into int (461b38a) will decrease coverage by 0.79%.
The diff coverage is 25.00%.

@@            Coverage Diff             @@
##              int     #274      +/-   ##
==========================================
- Coverage   69.13%   68.34%   -0.80%
==========================================
  Files          14       14
  Lines        1510     1510
==========================================
- Hits         1044     1032      -12
- Misses        359      372      +13
+ Partials      107      106       -1

Impacted Files
Coverage Δ

dnsconfig.go
52.53% <25.00%> (ø)

eventhandler.go
59.16% <0.00%> (-3.44%)
:arrow_down:

procmon_linux.go
70.37% <0.00%> (-2.23%)
:arrow_down:

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


Add "current state" node

Add a node to allow someone to query current state of one or more lights (similar to api call) then we can return multiple keyed light states as an object in, say, msg.lights?

Maybe have it also "publish" a collection of state changes to simplify flows. Then users do not need to "trigger" a check if they want to get the new state whenever one of the nominated lights changes?

For the flow, I would say it registers as a listener if it acts as a publisher on deployment, all these nodes get a notification of new state for ANY change, then they decide if they are interested in it. If so, then maybe they then retrieve relevant state? Or should this be done centrally? Probably better to do it only once and collate and send to each listener based on lights they are listening for.


[deliver] fix language detection on upload meta data

Motivation and Context
Fixes #16720
cc: @shizu2014
Description
Passes detected language list to verify methods
Testing Steps
gem "fastlane", :git => "https://github.com/fastlane/fastlane.git", :branch => "joshdholtz-2.150.0-fix-language-detction-meta-upload"

Hello there
My problem has been solved
Thanks for your fix


Implement allowOverwrite

Right now, it overwrites with no problem. In the future it should exit on attempting an overwrite unless this is set to true.

To do this, check each zip file before it is written to. If it exists and allowOverwrite is false, exit with error message.


Some bad case on mushroom

Thank you for your awesome work !
I try to apply stablenormal on my work and find the bad case as shown above.
Can you give me some insight about this? Thank you very much!

There is a mistake in my program, thank you for your awesome work !


Remove unused auto instancing code

Code doesn't do anything and was left from the past.
Removing the enableAutoInstancing getter and setter could be a breaking change for users still calling these methods (even though they don't do anything).
I confirm I have read the contributing guidelines and signed the Contributor License Agreement.

I looked at this few times before, but always decided to keep this in, as I'm keen to implement auto instancing / auto batching at some point. Auto batching would be particularly useful for UI rendering.

Isn't it better to just remove it now and in the future have a single PR which adds all the code required for this? It will probably work differently anyways.

I'm inclined to agree. I mean, instancing is not down to be worked on in the next few months while we focus on WebGPU etc. If this stuff genuinely doesn't currently work and isn't being used anywhere, I'd say just remove it. But just my humble opinion.

I'm fine with removing it.
With this changed code now, drawInstance functions now all returns 0 I believe, we should stop them from returning anything, and clean up how they get called as well to not use the return value.
Otherwise it looks good .. I was worried Editor would need to be updated to hide those stats from it, but those are not exposed anyways.

Good point, I'll make those changes tomorrow.

It's fixed.


WIP: Support daily snapshots

Signed-off-by: Adrien Mannocci<EMAIL_ADDRESS>What does this pull request do?

Add support for daily snapshots.
Use a separate workflow to allow forks repository.

To avoid issues with forked repositories, let's use a specific GitHub workflow for the snapshoty. A similar approach has been done for the APM Agent Android

I added a separate workflow to upload snapshots.


Multi Caret "Select until.."

Often times I have strings that are not the same length that I need to select until a certain character per line. Using IntelliJ's default tools, and even with some plugins, it's not always achievable.
Say you have this multi-caret in your text editor, where | is the multi caret:
|test-test.test
|test-test-test.test
|test-test-test-test-test.test
|test-test-test-test-test-test.test
How do you achieve this selection where [] are the selection boundaries?
[test-test].test
[test-test-test].test
[test-test-test-test-test].test
[test-test-test-test-test-test].test
This is a VERY simple use case, the ones I deal with are far more complex.
Rules:
1.) Must only work with the carets already existing.
2.) You can't cheat this by going to the end of each line and working backwards because the end of each line has the same number of words/characters.
3.) Can't select all instances of period and work back.
Also, yes you can also use a regex search within selection, but I am looking for push button solution that requires minimal if not zero setup or complexity.
One solution would be a multi character supported "select until" function or popup where you type in the character after executing the command and it looks forwards or backwards for your query.
Sublime text has an addon that does just this:
https://github.com/xavi-/sublime-selectuntil

sounds nice

As much as I would like this to be in Missing In Actions (as well as it makes sense to be there), it is never going to happen sadly. The best hope for this idea is in this project. :) @krasa

in this case yes, in other more random inputs no.


Kobold Monkeys

About the PR

As per this message by Flare, i decided to add kobold monkeys to the game. Kind of like normal monkeys, you can buy them in cubes from cargo and they act similarly. The biggest difference is that while they have a lot less health, they move much faster (i havent balanced movement speed yet) and do more damage than a normal reptilian. When they become sentient, they speak like normal monkeys. If possible, i would like to implement an accent for the kobolds because i cant figure out how to remove the monkey accent/implement normal lizard speech.

I haven't implemented a mob like this before and may have made some mistakes in the yamls so please tell me if i did.
Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog
:cl: Ubaser

add: You can now purchase kobolds from cargo as an alternative to monkeys!


Disable horizontal textarea resizing

https://github.com/brianlovin/brian-lovin-next/blob/88049b86bf98b85c8081aafdd17a7cc367e88e25/src/components/Overthought/Feedback/style.tsx#L42
Noticed that you're able to resize the textarea horizontally which can be a bit funky. Might be nicer to just have vertical resizing.

Fixed, thank you! https://github.com/brianlovin/brian-lovin-next/commit/b02ef6241162d08b7105c26115a93787966e74d7


Update PUDL from Python 3.10 to 3.11

PR Overview
Dagster supports Python 3.11 as of v1.2.2.
This PR updates our working Python version to 3.11 in various linters and environment specifications.
There were also some deprecations in the importlib.resources library that were causing breakage. They got more strict about what types importlib.resources.path() could accept, and also that function was deprecated in favor of importlib.resources.as_file() so I switched everything over to the new syntax.
I was able to run the etl_full_no_cems job successfully on my laptop.
PR Checklist

[x] Merge the most recent version of the branch you are merging into (probably dev).
[ ] All CI checks are passing. Run tests locally to debug failures
[ ] Make sure you've included good docstrings.
[ ] For major data coverage & analysis changes, run data validation tests
[ ] Include unit tests for new functions and classes.
[ ] Defensive data quality/sanity checks in analyses & data processing functions.
[ ] Update the release notes and reference reference the PR and related issues.
[ ] Do your own explanatory review of the PR to help the reviewer understand what's going on and identify issues preemptively.

The docs build is failing, but I don't understand what this error means:
Warning, treated as error:
Unknown type: placeholder
ci: exit 2 (17.33 seconds) /home/runner/work/pudl/pudl> sphinx-build -W -b html docs docs/_build/html pid=4813
.pkg: _exit> python /home/runner/micromamba-root/envs/pudl-test/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta
  ci: FAIL code 2 (165.81=setup[115.21]+cmd[0.11,10.70,0.30,0.27,5.07,0.63,0.37,0.77,0.34,3.86,7.67,0.98,0.00,1.23,0.96,17.33] seconds)
  evaluation failed :( (165.88 seconds)

I think the real error up there is "Unknown type: placeholder" which seems totally cryptic.
When I run the sphinx docs build outside of Tox, it is successful:
rm -rf docs/_build && sphinx-build -b html docs docs/_build/html

Ooof, nice sleuthing! This is what I get for trying to change things after midnight.
Would you mind going ahead and pushing the changes? I'm going to be on some other calls and stuff for a while now.

It's done! Opted out of the tox.ini changes since I don't know what posargs might get pushed into tox during CI. When debugging in the future, we can just put the -P in by hand or something.

This is ready to go and I will keep it up to date with dev but @catalyst-cooperative/inframundo chatted about it and decided to put off merging it in until after we'd gotten the initial Dagster merge settled out on dev.


[Swoole] Support Symfony Session

When using Swoole, we need to maintain session (cookie)
Ref: https://github.com/k911/swoole-bundle/blob/develop/src/Bridge/Symfony/HttpFoundation/Session/SetSessionCookieEventListener.php

That should definitely be added. Could we do something similar as @alexander-schranz did for RoadRunner?
https://github.com/php-runtime/runtime/pull/47

@Nyholm i think yes. when we use runtime, may we need to do different that the bundle do for session

There is sure something similar needed which we had done for Roadrunner. I'm currently working to fix this Problem in a more general way in Symfony directly so we maybe don't need longer handle any sessions things here in the runtime for Symfony based Application: https://github.com/symfony/symfony/pull/41390

FYI I think I had the same problem with the bref Runtime last time I tried it.
Let me know if there is a way to help move this (and https://github.com/symfony/symfony/pull/41390) forward.

@t-richard currently the CI is failing because of the deprecated AbstractTestSessionListener.php. I'm not sure what the correct way is to solve this issue (https://github.com/symfony/symfony/pull/41390#issuecomment-905424771). As I think it maybe should not longer register the TestSessionListener as its know deprecated but I'm not sure how the handle that, if you have any idea let me know I added also a comment to the symfony PR.

This is fixed using symfony/http-kernel 5.4 or 6.0 and the latest (unreleased) version of the runtime. Please confirm so we can close this issue.

Tested the Symfony Demo with Symfony 5.4 and dev-main with Swoole and did work for me 🎉