Refactor std.zip: Split constructor in several methods.

Aimless refactorings are generally frowned upon here, so it would be good to have some rationale for what you aim to achieve with these changes and how they fit in in the bigger plan.
The best place to include this rationale would be in the commit message for the change, describing what benefit the change brings.

Aimless refactorings are generally frowned upon here, so it would be good to have some rationale for what you aim to achieve with these changes and how they fit in in the bigger plan.

I'm sorry for confusion. I contributed last weeks with the account crocopaw, but have to delete this account soon. Therefore, and because I want to unify my accounts, I switched to a new one. The bigger plan is to resolve issue 20027, making zip rejecting malware (and maybe later add some more features like support for encryption, multidisks and bzip compression). This task is easier when doing some refectoring first. And I also hope that this enables me to parallelise some PRs.

I'm sorry for confusion. I contributed last weeks with the account crocopaw, but have to delete this account soon. Therefore, and because I want to unify my accounts, I switched to a new one.

Oh, I didn't even notice this PR came from a different account than the previous std.zip ones :)

The bigger plan is to resolve issue 20027, making zip rejecting malware (and maybe later add some more features like support for encryption, multidisks and bzip compression). This task is easier when doing some refectoring first.

Could you please go into more detail how each change here helps you achieve that end goal, and add that to the commit messages?

Could you please go into more detail how each change here helps you achieve that end goal, and add that to the commit messages?

It's difficult to answer here. It took me by some surprise, that refectorings aren't welcome. From [1] I concluded, that I actually should refactor the code and that I should use separate PRs for that. But when you say it isn't like this, I'll probably have to accept that. I think, that the reason for rejecting refactorings is to avoid new bugs. While I can understand that reasoning, my experience is, that refactoring will also reveal hidden bugs and it prevents new bugs creeping in. In my oppinion, there are several corners in Phobos, that would benefit from some refactoring.
I think, this file is one of them. The code is old. As far as I can see, it's been written long before 2007, when D2 did not exist. So noone to blame for that. At that time this was probably good and clean code, but D has changed since. And Phobos should keep pace.
The oldest version of this constructor found in the git archive had about 95 lines. During time this has grown to 150 lines. I prefer functions that fit at least on one screen, which is about 50 lines. Obviously I could add the checks for overlaps to this function without splitting it. That would increase the size again. But making a function longer, that's allready much too long doesn't feel good to me. I actually would even prefer to split extractEndOfCentralDirRecord once more (separating the parts for Zip64 and for Zip32).
Now I don't know, how to continue...
[1] https://wiki.dlang.org/Starting_as_a_Contributor#Characteristics_of_a_good_pull_request


sftp_download fails, you have not specified a password or key

Expected behaviour:
successful sftp connection with version flexget 3.1.60.
Actual behaviour:
successfully connects for sftp_list to get new entries
fails to download file
Steps to reproduce:

Step 1: create ssh key: ssh-keygen -t rsa -b 2048
Step 2: flexget --loglevel debug execute sync

Config:
sync:
  sftp_list:
    host: '{? sftp.host ?}'
    port: '{? sftp.port ?}'
    username: '{? sftp.username ?}'
    private_key: '{? sftp.private_key ?}'
    private_key_pass: '{? sftp.private_key_pass ?}'
    dirs:
      - '{? remote.downloads ?}/'
    recursive: true
  regexp:
    accept:
      -  '.*\.mkv$'
  free_space:
    <<: *free_space
    space: 1500
  sftp_download:
    to: '{? local.downloads ?}/'

Log:

(click to expand)
2020-06-03 09:45:07 VERBOSE  sftp_client   sync      Connected to <IP_ADDRESS>
2020-06-03 09:45:10 VERBOSE  details       sync      Produced 1 entries.
2020-06-03 09:45:10 VERBOSE  task          sync      ACCEPTED: `$FILE.mkv` by regexp plugin because regexp '.*\.mkv$' matched field 'title'
2020-06-03 09:45:10 WARNING  sftp_client   sync      Failed to connect to $IP_ADDRESS; waiting 15 seconds before retrying.
2020-06-03 09:45:50 VERBOSE  task          sync      REJECTED: `$FILE.mkv` by retry_failed plugin because waiting before retrying entry which has failed in the past. (failure reason: Failed to connect to $IP_ADDRESS (You have not specified a password or key.))

Additional information:

FlexGet version: 3.1.60
Python version: 3.6.9
Installation method: virtualenv
Using daemon (yes/no): yes
OS and version: Ubuntu 18.04.4
Other info: I have tried using a key with and without a password, with and without specifying the password in the config. reverting to 3.1.51 works fine. pysftp version 0.2.8 (0.2.9 still fails to connect for me with nondescript error). remote host is set to accept pub key auth only. no password login. regular ssh login works fine

re-ran the test on 3.1.57 which was the big sftp re-write. here is crash log output for the command:
flexget --test execute --tasks sync
username, ip and port changed for privacy.
Log:

(click to expand)
2020-06-03 17:43:25 DEBUG    manager                       Figuring out config load paths
2020-06-03 17:43:25 DEBUG    manager                       Found config: /home/ksurl/.config/flexget/config.yml
2020-06-03 17:43:25 DEBUG    manager                       Config file /home/ksurl/.config/flexget/config.yml selected
2020-06-03 17:43:25 DEBUG    manager                       sys.defaultencoding: utf-8
2020-06-03 17:43:25 DEBUG    manager                       sys.getfilesystemencoding: utf-8
2020-06-03 17:43:25 DEBUG    manager                       flexget detected io encoding: utf-8
2020-06-03 17:43:25 DEBUG    manager                       os.path.supports_unicode_filenames: False
2020-06-03 17:43:25 DEBUG    manager                       Figuring out config load paths
2020-06-03 17:43:25 DEBUG    manager                       Found config: /home/ksurl/.config/flexget/config.yml
2020-06-03 17:43:25 DEBUG    manager                       Config file /home/ksurl/.config/flexget/config.yml selected
2020-06-03 17:43:25 DEBUG    manager                       sys.defaultencoding: utf-8
2020-06-03 17:43:25 DEBUG    manager                       sys.getfilesystemencoding: utf-8
2020-06-03 17:43:25 DEBUG    manager                       flexget detected io encoding: utf-8
2020-06-03 17:43:25 DEBUG    manager                       os.path.supports_unicode_filenames: False
2020-06-03 17:43:25 INFO     manager                       Test mode, creating a copy from database ...
2020-06-03 17:43:25 INFO     manager                       Test database created
2020-06-03 17:43:25 DEBUG    plugin                        Trying to load plugins from: ['/home/ksurl/.config/flexget/plugins', '/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/plugins']
2020-06-03 17:43:25 DEBUG    plugin                        Plugin `memusage` requires plugin `ext lib `guppy`` to load.
2020-06-03 17:43:26 DEBUG    plugin                        Trying to load components from: ['/home/ksurl/.config/flexget/components', '/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components']
2020-06-03 17:43:27 DEBUG    plugin                        Plugins took 1.28 seconds to load. 305 plugins in registry.
2020-06-03 17:43:27 DEBUG    manager                       Connecting to: sqlite:////home/ksurl/.config/flexget/test-config.sqlite
2020-06-03 17:43:27 DEBUG    manager                       config_name: config
2020-06-03 17:43:27 DEBUG    manager                       config_base: /home/ksurl/.config/flexget
2020-06-03 17:43:27 DEBUG    variables                     trying to load variables from file
2020-06-03 17:43:27 DEBUG    variables                     updating DB with variable file contents
2020-06-03 17:43:27 DEBUG    manager                       New config data loaded.
2020-06-03 17:43:27 DEBUG    schema                        updating flexget version 3.1.57 in db
2020-06-03 17:43:27 DEBUG    parsing                       setting default movie parser to internal. (options: {'internal': <flexget.components.parsing.parsers.parser_internal.ParserInternal object at 0x7f7b6511dd68>, 'guessit': <flexget.components.parsing.parsers.parser_guessit.ParserGuessit object at 0x7f7b6511ddd8>})
2020-06-03 17:43:27 DEBUG    parsing                       setting default series parser to internal. (options: {'internal': <flexget.components.parsing.parsers.parser_internal.ParserInternal object at 0x7f7b6511dd68>, 'guessit': <flexget.components.parsing.parsers.parser_guessit.ParserGuessit object at 0x7f7b6511ddd8>})
2020-06-03 17:43:27 DEBUG    cron_env                      Encoding utf-8 stored
2020-06-03 17:43:27 DEBUG    util.simple_persistence                 setting key terminal_encoding value 'utf-8'
2020-06-03 17:43:27 DEBUG    task_queue                    task queue shutdown requested
2020-06-03 17:43:27 VERBOSE  task_queue                    There are 1 tasks to execute. Shutdown will commence when they have completed.
2020-06-03 17:43:27 DEBUG    task          sync-test       executing sync-test
2020-06-03 17:43:27 DEBUG    template      sync-test       Merging template global into task sync-test
2020-06-03 17:43:27 DEBUG    remember_rej  sync-test       Task config has changed since last run, purging remembered entries.
2020-06-03 17:43:27 DEBUG    sftp_client   sync-test       Connecting to $IP_ADDRESS
2020-06-03 17:43:27 DEBUG    sftp_client   sync-test       Caught exception: No hostkey for host $IP_ADDRESS found.
2020-06-03 17:43:27 WARNING  sftp_client   sync-test       Failed to connect to $IP_ADDRESS; waiting 15 seconds before retrying.
2020-06-03 17:43:42 DEBUG    sftp_client   sync-test       Caught exception: No hostkey for host $IP_ADDRESS found.
2020-06-03 17:43:42 WARNING  sftp_client   sync-test       Failed to connect to $IP_ADDRESS; waiting 20 seconds before retrying.
2020-06-03 17:44:02 CRITICAL task          sync-test       BUG: Unhandled error in plugin sftp_list: No hostkey for host $IP_ADDRESS found.
Traceback (most recent call last):
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
    │    └ <function Thread._bootstrap_inner at 0x7f7b6e5c18c8>
    └ <Thread(task_queue, started daemon<PHONE_NUMBER>89280)>
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
    │    └ <function Thread.run at 0x7f7b6e5c16a8>
    └ <Thread(task_queue, started daemon<PHONE_NUMBER>89280)>
  File "/usr/lib/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
    │    │        │    │        │    └ {}
    │    │        │    │        └ <Thread(task_queue, started daemon<PHONE_NUMBER>89280)>
    │    │        │    └ ()
    │    │        └ <Thread(task_queue, started daemon<PHONE_NUMBER>89280)>
    │    └ <bound method TaskQueue.run of <flexget.task_queue.TaskQueue object at 0x7f7b650b5780>>
    └ <Thread(task_queue, started daemon<PHONE_NUMBER>89280)>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/task_queue.py", line 46, in run
    self.current_task.execute()
    │    │            └ <function Task.execute at 0x7f7b69f3a950>
    │    └ <flexget.task.Task object at 0x7f7b64865978>
    └ <flexget.task_queue.TaskQueue object at 0x7f7b650b5780>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/task.py", line 80, in wrapper
    return func(self, *args, **kw)
           │    │      │       └ {}
           │    │      └ ()
           │    └ <flexget.task.Task object at 0x7f7b64865978>
           └ <function Task.execute at 0x7f7b69f3a8c8>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/task.py", line 697, in execute
    self._execute()
    │    └ <function Task._execute at 0x7f7b69f3a840>
    └ <flexget.task.Task object at 0x7f7b64865978>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/task.py", line 663, in _execute
    self.__run_task_phase(phase)
    │                     └ 'input'
    └ <flexget.task.Task object at 0x7f7b64865978>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/task.py", line 489, in __run_task_phase
    response = self.__run_plugin(plugin, phase, args)
               │                 │       │      └ (<flexget.task.Task object at 0x7f7b64865978>, {'host': '$IP_ADDRESS', 'port': 2222, 'username': 'ksurl', 'private_key': '...
               │                 │       └ 'input'
               │                 └ <PluginInfo(name=sftp_list)>
               └ <flexget.task.Task object at 0x7f7b64865978>
> File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/task.py", line 522, in __run_plugin
    result = method(*args, **kwargs)
             │       │       └ {}
             │       └ (<flexget.task.Task object at 0x7f7b64865978>, {'host': '$IP_ADDRESS', 'port': 2222, 'username': 'ksurl', 'private_key': '...
             └ <Event(name=plugin.sftp_list.input,func=on_task_input,priority=128)>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/event.py", line 22, in __call__
    return self.func(*args, **kwargs)
           │    │     │       └ {}
           │    │     └ (<flexget.task.Task object at 0x7f7b64865978>, {'host': '$IP_ADDRESS', 'port': 2222, 'username': 'ksurl', 'private_key': '...
           │    └ <bound method SftpList.on_task_input of <class 'flexget.components.ftp.sftp.SftpList'>>
           └ <Event(name=plugin.sftp_list.input,func=on_task_input,priority=128)>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py", line 117, in on_task_input
    sftp: SftpClient = sftp_connect(sftp_config, socket_timeout_sec, connection_tries)
                       │            │            │                   └ 3
                       │            │            └ 15
                       │            └ SftpConfig(host='$IP_ADDRESS', port=2222, username='ksurl', password=None, private_key='/home/ksurl/.ssh/flexget-rsa', pri...
                       └ <function sftp_connect at 0x7f7b653c7620>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py", line 363, in sftp_connect
    connection_tries=connection_tries,
                     └ 3
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp_client.py", line 56, in __init__
    self._sftp: 'pysftp.Connection' = self._connect(connection_tries)
    │                                 │    │        └ 3
    │                                 │    └ <function SftpClient._connect at 0x7f7b653de268>
    │                                 └ <flexget.components.ftp.sftp_client.SftpClient object at 0x7f7b647de780>
    └ <flexget.components.ftp.sftp_client.SftpClient object at 0x7f7b647de780>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp_client.py", line 242, in _connect
    raise e
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp_client.py", line 236, in _connect
    private_key_pass=self.private_key_pass,
                     │    └ 'fl847libp'
                     └ <flexget.components.ftp.sftp_client.SftpClient object at 0x7f7b647de780>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/pysftp/__init__.py", line 132, in __init__
    self._tconnect['hostkey'] = self._cnopts.get_hostkey(host)
    │    │                      │    │       │           └ '$IP_ADDRESS'
    │    │                      │    │       └ <function CnOpts.get_hostkey at 0x7f7b65655d90>
    │    │                      │    └ <pysftp.CnOpts object at 0x7f7b647fd940>
    │    │                      └ <pysftp.Connection object at 0x7f7b6a6ba2b0>
    │    └ {'username': 'ksurl', 'password': None, 'hostkey': None, 'pkey': None}
    └ <pysftp.Connection object at 0x7f7b6a6ba2b0>
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/pysftp/__init__.py", line 71, in get_hostkey
    raise SSHException("No hostkey for host %s found." % host)
          │                                              └ '$IP_ADDRESS'
          └ <class 'paramiko.ssh_exception.SSHException'>

paramiko.ssh_exception.SSHException: No hostkey for host $IP_ADDRESS found.
Traceback (most recent call last):
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/task.py", line 522, in __run_plugin
    result = method(*args, **kwargs)
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/event.py", line 22, in __call__
    return self.func(*args, **kwargs)
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py", line 117, in on_task_input
    sftp: SftpClient = sftp_connect(sftp_config, socket_timeout_sec, connection_tries)
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py", line 363, in sftp_connect
    connection_tries=connection_tries,
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp_client.py", line 56, in __init__
    self._sftp: 'pysftp.Connection' = self._connect(connection_tries)
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp_client.py", line 242, in _connect
    raise e
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp_client.py", line 236, in _connect
    private_key_pass=self.private_key_pass,
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/pysftp/__init__.py", line 132, in __init__
    self._tconnect['hostkey'] = self._cnopts.get_hostkey(host)
  File "/home/ksurl/.venv/flexget/lib/python3.6/site-packages/pysftp/__init__.py", line 71, in get_hostkey
    raise SSHException("No hostkey for host %s found." % host)
paramiko.ssh_exception.SSHException: No hostkey for host $IP_ADDRESS found.

just did a clean install of ubuntu 20.04 with python 3.8.2, flexget 3.1.61, pysftp 0.2.8 and it still has the fail on sftp_download only (you have not specified a password or key).
it is just really odd it does not use the same config as from sftp_list. since that phase succeeded in accepting entries

Actually you're right; this is a regression. 😩 I'll have a fix up shortly.

confirmed it works now on 3.1.64 with the new fix.


CLOSED

Who/What do you want to be featured?
Rindou-san (Food Wars)
What do they look like?

What type of theme?

[ ] Light Theme
[x] Dark Theme

Additional Information (Optional)

She's one of the best character in food wars. Her character design and palette is nice.
This could be used as a sticker for her :D

Note: I don't simp for her. Just thought the color on her looks good for a theme.

Thank you for the suggestion! I was actually planning on looking into watching Food Wars. So I be on the look out. Guess I'll figure out why she looks like she is part cat girl.

Haha, being a simp on a fictional character does not feel right to me sometimes. Anyways you should check out Food Wars. It's worth watching if you like food and cuisine :D

It's worth watching if you like food and cuisine :D

I was in the mood for something ecchi, and it has some of my favorite tags: comedy, slice-of-life and ecchi tags, so I started watching it, so far so good 💯 .

What did just happened over here lol


translation of some items pt-BR

(optional) Issue number:
Summary of the change:
I added the translation of some items that were not present in the pt-BR version

Thanks @flaviopc !


let g:lazygit_floating_window_use_plenary = 1 results in error when quitting

Hello there. Hope you're doing well. Thank you for creating this amazing lazygit wrapper!
Description
I have plenary.nvim installed.
If I set let g:lazygit_floating_window_use_plenary = 1, whenever I quit the lazygit window, the following error is resulted:
...nvim/site/pack/packer/start/lazygit.nvim/lua/lazygit.lua:28: Expected Lua number
stack traceback:
^I[C]: in function 'nvim_win_close'
^I...nvim/site/pack/packer/start/lazygit.nvim/lua/lazygit.lua:28: in function <...nvim/site/pack/packer/start/lazygit.nvim/lua/lazygit.lua:17>
Press ENTER or type command to continue

Setting it to 0 (i.e., let g:lazygit_floating_window_use_plenary = 0) and the error is gone.
Expected behavior
Quitting lazygit window cleanly and without errors.
System info
Neovim version:
NVIM v0.8.1
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by builduser

Features: +acl +iconv +tui

OS: EndeavourOS Linux x86_64
Kernel: Linux 6.1.1-arch1-1
Thank you!

Anything on this? I'm getting this error right now without even configuring plenary, i'm just using the default setup options.
commit pulled by lazy:  0ada6c6
https://github.com/kdheepak/lazygit.nvim/assets/30378044/b70c4860-efcd-4efa-bea0-fee1f1cc7ac7

Sorry, this fell off my radar. I’ll look into this today!

Anything on this? I'm getting this error right now without even configuring plenary, i'm just using the default setup options.
commit pulled by lazy: 0ada6c6 https://github.com/kdheepak/lazygit.nvim/assets/30378044/b70c4860-efcd-4efa-bea0-fee1f1cc7ac7

It may have to do with the terminal that you're using.
I had this issue while using nvterm as my terminal, which I had installed in nixvim.
I must note however, that when using the NvChad distro (which obviously also included nvterm, since it's their plugin), lazygit-nvim worked just fine... and I coudn't tell why, I had the same version of nvim, nvterm, lazygit-nvim, and NvChad didn't seem to configure it differently that I was doing it in nixvim.
Alas, the problem doesn't happen if I use toggleterm.


RoleAssignment reported as changing

Describe the noise
Resource type Microsoft.Authorization/roleAssignments
apiVersion 2020-04-01-preview
Client (PowerShell, Azure CLI, or API) 5.1.2
Relevant ARM Template code (we only need the resource object for the above resourceType and apiVersion, but if it's easier you can include the entire template
{
"type": "Microsoft.Authorization/roleAssignments",
"apiVersion": "2020-04-01-preview",
"name": "[variables('roleAssignmentName')]",
"properties": {
"roleDefinitionId": "[resourceId('Microsoft.Authorization/roleDefinitions', parameters('roleDefinitionId'))]",
"principalId": "[parameters('principalId')]"
}
}
Expected response (i.e. "I expected no noise since the template has not been modified since the resources were deployed)
No change. As I ran the New-AzManagementGroupDeployment 1 after the other and hence no change was made when I ran WhatIf the second time.
Current (noisy) response (either include a screenshot of the what-if output, or copy/paste the text)
Resource and property changes are indicated with this symbol:
~ Modify
The deployment will update the following scope:
Scope: /subscriptions/57626266-06dd-4c73-b4cf-ac5b185726e3
~ Microsoft.Authorization/roleAssignments/3d4ee024-a3aa-5f4b-bd4f-4ee6860a1f05 [2020-04-01-preview]
~ properties.roleDefinitionId: "/subscriptions/57626266-06dd-4c73-b4cf-ac5b185726e3/providers/Microsoft.Authorization/roleDefinitions/acdd72a7-3385-48ef-bd42-f606fba81ae7" => "/providers/Microsoft.Authorization/roleDefinitions/acdd72a7-3385-48ef-bd42-f606fba81ae7"
Resource changes: 1 to modify.

Use the subscriptionResourceId function instead of resourceId to generate the role definition's resourceId:
"roleDefinitionId": "[subscriptionResourceId('Microsoft.Authorization/roleDefinitions', parameters('roleDefinitionId'))]"
                      ^^^^^^^^^^^^^


LL-4461 (Dark mode): remaining issue fixes

(Dark mode): remaining issue fixes
Type

UI Polish
Context

LL-4461
Parts of the app affected / Test plan

See ticket for the list of fixes

There are only the 2 remaining glitch related to iOS, they are not blockers so we can merge and fix them in the future.


Update Delays.md

What does this PR do?
I updated the delays section with my part (and corrected a few typos)
Why are we doing this?

Testing performed

Known bugs/limitations

Sorry I hadn't merged this while I was working on reformatting everything. Could you get it up to date with the newly formatted version and either delete this PR and make a new one, or make this one work without conflicts? Thanks!


Update services details page to display VM metrics. Additonal cleanup…

… of confirmation dialogs and request detaisl page

@erundle can you add some screen shots?  Thx, Dan

@erundle @AllenBW Failure in the JS tests.

@erundle running gulp vet will show ya what's up
On Sep 30, 2015 4:25 PM, "Dan Clarizio"<EMAIL_ADDRESS>wrote:

@erundle https://github.com/erundle @AllenBW
https://github.com/AllenBW Failure in the JS tests.
—
Reply to this email directly or view it on GitHub
https://github.com/ManageIQ/manageiq/pull/4601#issuecomment-144530988.

@dclarizio @AllenBW fixed jscs issue. Should be all set now.


Prepare for 3.30.19 release

We are targeting a prerelease for early January and a release for mid January.
Checklist for before prerelease

[ ] SS testing and debugging completed (IT or KD)
[ ] r4ss updated (IT)
[ ] Helper spreadsheets deprecated and shiny app advertised in release notes (KD)
[ ] Put together release announcement (RM or KD)
[ ] code committed and tagged in repo as v3.30.19-prerel (RM)
[ ] prerelease exes built (KD)
[ ] All exes added to github releases as v3.30.19-prerel (KD)
[ ] Announce prerelease (RM)

Checklist for before release

[ ] SS manual updated and tagged in repo (CW)
[ ] SS manual added to a github release (KD or CW)
[ ] SS GUI updated (NS)
[ ] Make changes to SS if any bugs caught in prerelease
[ ] code committed and tagged in repo as v3.30.19 (RM)
[ ] Release exes built (KD)
[ ] Exe and .tpl archived on Google drive (KD)
[ ] Change log updated in Stock Synthesis repo (KD)
[ ] All exes added to github releases as v3.30.19 (KD)
[ ] Add GUI to vlab (KD)
[ ] Send out release announcement msg (RM)

Checklist for after release

[ ] examples updated in user-examples repo (KD)
[ ] Update ss-test-models reference files to the release version (KD)
[ ] Removed "resolved" tag and close all issues worked in the milestone for this release (KD)
[ ] Move unworked 3.30.19 issues to the 3.30.20 milestone (KD)
[ ] Work on #163 for the whole codebase (KD)

@Rick-Methot-NOAA , let us know when you are finished with code changes for 3.30.19 so we can do a prerelease. In the meantime, I'll start prepping some other components on the checklist.

A prerelease will be good.
remaining issues that I want to complete are:
revision to bioecon
fix to hermaphrodite output

A prerelease will be good. Area-specific M will need to wait as it actually could be quite involved. Remaining issues that I want to complete are: revision to bioecon fix to hermaphrodite output

Sounds good!

The prerelease is now available at https://github.com/nmfs-stock-synthesis/stock-synthesis/releases/tag/v3.30.19-prerel .
While we wait for feedback on the prerelease, we should start working on the "Checklist for before release".


Wrong hint message for xi

Describe the bug
In normal mode, pressing xi will trigger a notification with the following message: Use a instead of li. Well, I didn't use li so this message makes no sense.
Config options
{ disable_mouse = false, restriction_mode = 'hint' }

To Reproduce
Steps to reproduce the behavior:

Open a file.
Press xi.
Look at the message.

Expected behavior
The message should reflect the keys that were actually pressed.
Additional context
It looks to me like the source of this message is the following hint:
["[^fFtT]li"] = {
    message = function()
        return "Use a instead of li"
    end,
    length = 3,
}

However, I don't know how this could have triggered while using the x key.
Other side notes
An actual hint in this case would be Use s instead of xi because s does the same function as xi. Maybe this should be added as a new hint... I should see if I can do this and submit a PR.

I tried adding a custom hint like this
hints = {
    ['xi'] = {
        message = function()
            return 'Use s instead of xi'
        end,
        length = 2,
    },
},

but I can't get it to trigger. I tried with length = 1, length = 2, and length = 3.
Instead of getting my custom message, I just get the same old message. Additionally, I tried adding another hint:
hints = {
    ['xx'] = {
        message = function()
            return 'Do not use x multiple times consecutively'
        end,
        length = 2,
    },
},

but I cannot get this one to trigger either.

This is because x same as dl. So pressing x is equivalent to pressing dl.
When you press xi, it is ultimately interpreted as xdli, which(dli) conforms to the ["[^fFtTlt]" rule, so it matches.
You can use follow script to listener every input key

It's weird that x actually "presses" dl rather than just doing the underlying operation. For example, the following hint is kind of amusing:
['dl'] = {
    message = function()
        return 'Use x instead of dl'
    end,
    length = 2,
},

Each time you press x, it tells you to use x instead 🙃
So I guess hardtime.nvim can't actually distinguish which keypresses are "real" user keypresses. When I try your test function, I get the following notifications:
2024-02-02T09:15:03 test WARNING WARN WARNING | test: k is: x , key is: x
2024-02-02T09:15:03 test WARNING WARN WARNING | test: k is: d , key is: d
2024-02-02T09:15:03 hardtime WARNING WARN WARNING | hardtime: Use x instead of dl
2024-02-02T09:15:03 test WARNING WARN WARNING | test: k is: l , key is: l

This just feels like a very strange behavior of neovim to me.

@nullromo hardtime.nvim uses vim.on_key function to listen to key input. This behavior is expected based on the docs (see :h vim.on_key)

    {fn} will receive the keys after mappings have been evaluated

I currently haven't found other way to listen to the raw key input.

Looks like this is a feature missing from neovim that may (eventually) be added: https://github.com/neovim/neovim/issues/15527.
In that case, feel free to close this issue as I feel it's a little too far out of the scope of hardtime at the moment.

Looks like this is a feature missing from neovim that may (eventually) be added: https://github.com/neovim/neovim/issues/15527.

@nullromo Thanks for providing this information. I just update the code to use the latest api and now this issue is resolved! Btw the api requires Neovim >= 0.10


⚠ Bofrost.be has degraded performance

In 9b88ff1, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 2219 ms

Resolved: Bofrost.be performance has improved in 968ff73.


Fix the permissions when handling raw data

Purpose
When sending raw data like JSON, we were getting an error because of the data structure. This PR includes the fix and updates for all the tests that create or update data via API.
No ticket related.

Coverage increased (+0.005%) to 50.675% when pulling 78acc7a774815ffd0a569347c61429e5f7d7d3e9 on jefmoura:fix-permissions-raw-data into 4b778001f0b9524481e1c8a683a3ac39b2b94656 on toladata:dev-v2.

Coverage increased (+0.005%) to 50.675% when pulling 78acc7a774815ffd0a569347c61429e5f7d7d3e9 on jefmoura:fix-permissions-raw-data into 4b778001f0b9524481e1c8a683a3ac39b2b94656 on toladata:dev-v2.


Framework for mesolve and odeint

In this PR, I make an attempt at the overall framework for mesolve (and sesolve, smesolve) and odeint, following the discussion we had the other day.
I introduce a class named QSolver which implements a single ODE iteration of any given solver. For now, it is written for first and second-order Rouchon methods.  It can later also be derived into subclasses for other solvers, both fixed and adaptive time steps. It can also easily be derived with the 1.5 order Rouchon scheme of https://github.com/PierreGuilmin/torchqdynamics/pull/5. All Qsolvers will eventually support the forward_adjoint method for adjoint-based autodiff.
Inside mesolve, an instance of QSolver is created using the solver options dataclass of https://github.com/PierreGuilmin/torchqdynamics/pull/10, and the ODE integrator odeint is called. In the end, odeint is meant to be common to all main functions of the library, such as sesolve and smesolve.
I intentionnally made the Hamiltonian H time-dependent for now, and the jump_ops time-independent, as I believe this should be the most common scenario. Also, H is a callable for now, but meant to also accept a torch.Tensor or a List[torch.Tensor] with time-dependent coefficients in the end. This should be done in a separate PR.
Anyway, I'll let you read this. I tried to be as basic as possible so we can all agree on the framework and then build on it. I found this was a good way to meet all of our demands. I will personnally be able to build on this for the adjoint-based odeint.

I'm good to merge this PR if you agree @gautierronan and @abocquet, and then we can port the nice extras from Adrien's Rouchon solver implementation (#5).


CSIPSTR3 should maybe not mention Submission Agreement?

CSIPSTR3  states that:

CSIPSTR3: The Information Package root folder MAY be compressed (for example by using TAR or ZIP). Which specific compression format to use needs to be stated in the Submission Agreement.

What if the Producer sends the information package compressed according to the Submission Agreement, and the archive (or another archive) choses to preserve it in another compression at a later point? Where should this information be specified? I think there might be a requirement that the archive SHOULD register the compression of the information packages in their holding or something like that.
I think it might make sense to have this extra requirement about the Submission Agreement at the SIP specification level and not at the CSIP level.  The SIP specification should further specify how it needs to be stated in the Submission Agreement. What would you say @jmaferreira ?

Maybe change to:
CSIPSTR3: The Information Package root folder MAY be compressed (for example by using TAR or ZIP). Which specific compression format to use in the transfer moment should be stated in the Submission Agreement.
This means that we do not change the CSIPSTR3 more than say when it should be in the submission agreement, might that work @carlwilson ?

Closed with PR #685


Don't seek in VideoManager start() unless required

Seeking the video by using cv2's CAP_PROP_POS_FRAMES property is not guaranteed to be accurate, and has caused issues for me numerous times. One such example is trying to seek to a certain frame within a video resulted from the concatenation of several transport stream files, when the first video is small (eg. 1.ts - 5 frames, 2.ts - 500 frames -> seeking to frame 0, 1, 2, 3, or 4 would in fact seek to frame 5 - which corresponds to frame 0 from 2.ts and thus entirely skip all the frames in 1.ts).
In my case, seeking is simply not necessary, and not doing it ensures the whole video is processed, so I suggest simply not seeking the video if the start timecode is 0.
However, to really fix this, a new way to seek is necessary. If using OpenCV, simply calling VideoCapture.read() (grab() might work too, and would definitely be faster) until the desired frame number is reached should work. This would however be slower than setting the CAP_PROP_POS_FRAMES property, so maybe making accurate seeking optional (via a parameter to seek() or the VideoManager itself perhaps?) would work best.
For now though, simply not seeking at all when the start timecode is 0 would be an improvement, at least in my situation.

This is likely related to #213, so feel free to provide your input there as well (the suggestion is to use PyAV instead of OpenCV to do the video seeking).
Thank you for the PR!

Thank you for accepting the PR! Unfortunately I have very little experience with PyAV, but I think it would be worth looking into. Also, another library that might be helpful is Decord. It offers accurate seeking that is also very fast, even compared to PyAV (from their stats at least, didn't try PyAV's seeking).


Support ZSTD compression codec for raw index

When the forward index is not dictionary encoded, we have 2 choices:
store the data as is (RAW)
store the data snappy compressed - using snappy compression codec library
This PR adds supports for ZSTD compression using library - https://github.com/luben/zstd-jni
We get good compression ratio. So based on the user requirements, user can configure via table config on a per column basis. The default behavior continues to remain the same. It is snappy for dimension columns and no compression for metric columns. The benchmark tests as kept as part of PR. We will also be adding a recommendation rule to the config recommendation rule engine to account for Snappy v/s ZSTD. We will do that in a follow-up PR.
Other table level changes (column renaming, type changing, column dropping, index dropping) which are currently not allowed, changing the compression codec on an existing noDictionary column from snappy to zstd or vice-versa will not happen since we currently don't have a mechanism for doing this in-place in the segment file. Newly pushed segments will pick up the new codec and since the codec type is written into the index buffer header, we will be able to read both old and new segments
Corresponding performance doc with randomly generated  data: https://docs.google.com/document/d/1ie4JmVofk2o6ryCX7T4aD7GsRPKS651mroXhDk41wys/edit?usp=sharing
Issue (#6804)

Nit: You may want to note that if someone upgrades and then enables ZSTD for new segments, and for some reason has to roll back their deployment, the segments will not be readable.
One way of avoiding this will be to introduce a config to enable the feature, but that could be an overkill. It should be enough to note in the release notes that this is the case for the next release (so, basically mark it for release notes)

Nit: You may want to note that if someone upgrades and then enables ZSTD for new segments, and for some reason has to roll back their deployment, the segments will not be readable.
One way of avoiding this will be to introduce a config to enable the feature, but that could be an overkill. It should be enough to note in the release notes that this is the case for the next release (so, basically mark it for release notes)

Table level config is there. I mean it was already there. Just reused the same in FieldConfig (the new model).
Yes, let's label it for release notes and also call the upgrade aspect in PR description.
@GSharayu let's also mention that just like other table level changes (column renaming, type changing, column dropping, index dropping) which are currently not allowed, changing the compression codec on an existing noDictionary column from snappy to zstd or vice-versa will not happy since we currently don't have a mechanism for doing this in-place in the segment file. Newly pushed segments will pick up the new codec and since the codec type is written into the file header, we will be able to read both old and new segments

Codecov Report

Merging #6876 (2211117) into master (1c09b78) will increase coverage by 0.02%.
The diff coverage is 100.00%.

:exclamation: Current head 2211117 differs from pull request most recent head 9f23736. Consider uploading reports for the commit 9f23736 to get more accurate results

@@             Coverage Diff              @@
##             master    #6876      +/-   ##
============================================
+ Coverage     65.48%   65.51%   +0.02%
  Complexity       12       12
============================================
  Files          1421     1423       +2
  Lines         69980    70009      +29
  Branches      10112    10115       +3
============================================
+ Hits          45825    45863      +38
+ Misses        20874    20868       -6
+ Partials       3281     3278       -3

Flag
Coverage Δ
Complexity Δ

unittests
65.51% <100.00%> (+0.02%)
12.00 <0.00> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1c09b78...9f23736. Read the comment docs.

Looks like this library is using JNI.Pinot is going to be dependent on the OS architecture with this feature PR and it's a backward-incompatible change.
We should definitely discuss this and consider alternative implementations

Looks like this library is using JNI.Pinot is going to be dependent on the OS architecture with this feature PR and it's a backward-incompatible change.
We should definitely discuss this and consider alternative implementations

@kishoreg  A lot of the compression algorithms are not natively available in Java since they are written in C/C++. Pure Java only implementations which are well tested are unlikely to be available especially for algorithms not yet as popular as Snappy.
Apache commons library has implementation for ZSTD but the API is byte array based not direct byte buffer based. It also relies on JNI bindings underneath.
Pretty much all low level stuff is available in Java via JNI bridge. I don't think there is any platform specific issue. This library is also used in other Java based projects (e.g Arrow)
There is nothing backward incompatible about this change. I think you mean forward compatibility. If someone upgrades to newer version of Pinot and enables ZSTD and then downgrades, then old release can't read the new segments. We have labeled with release notes and kept the label intact.
Backward compatibility is still there since we can still read old segments with SNAPPY and SNAPPY continues to be default

@kishoreg , Even the current Snappy library that is being used uses JNI underneath

LGTM. @kishoreg Do you still have concern on this PR? This library seems commonly used in the maven repository (115 usages)

Yes the platform specific native library comes embedded in the java library and it automatically picks up the right library. Same thing for snappy-java we have been using for quite some time and also for this one that uses zstd-jni


Always show image filters when switching between images

We have a bug, where we were using an id vs. a class for the image filters div, and sometimes you can have more than one open at a time (not visible, but loaded in the DOM).
STR:

drag 2 images into your filetree
select one of them
refresh the browser (so it loads this image view first)
try switching back and forth between images, only 1 will have the filters.

This change switches it to a class so we can have more than one, and query to find and remove the hide class.

@flukeout this needs your review too when you have a min.

Testing now

OK - confirmed that this patch resolves the issue. Good to merge!

@humphd When adding a file that causes me to exceed the limit, I'm getting this popup...

It's blank and I've run npm run localize.


Allow for disabling extension

Thanks for the work on this!
While this may be an odd request, can we add a way to enable/disable this extension? In my case, we want to share an app-dir between users, so we plan to install this for everyone, but want to give user a way to opt in.
We could add a user preference, which may be the simplest option. We could also have this follow whatever the text editor keymap choice is. That feels cleaner, but I am not sure if its possible.

@jwkvam if I do this, will you have time to review/merge/release? I ask as it seems there are a few PRs stalled here and want to be sure this project is still active

I'm also interested in knowing what this project's outlook is. @jwkvam, I'm really grateful your work on this tool, but I get the sense that you might be too busy to maintain this, which is totally fine, and you owe us nothing. If that's true, and there is someone with the bandwidth to take over (which is not me), would you be ok with someone else maintaining the project?

@mlucool I would suggest starting to work on this if/when you have bandwidth for it. Worst case scenario, if @jwkvam isn't able to respond, we should eventually think about forking this project. The ability to turn the extension on and off is super useful, so your work wouldn't go to waste however this ends up going

@benlindsay Given the inactivity, did you want to fork this somewhere and maintain it?

I don't have the bandwidth to do that, so no, but it would be great if you
or someone else could.
On Wed, Feb 19, 2020, 1:47 PM Marc Udoff<EMAIL_ADDRESS>wrote:

@benlindsay https://github.com/benlindsay Given the inactivity, did you
want to fork this somewhere and maintain it?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jwkvam/jupyterlab-vim/issues/106?email_source=notifications&email_token=ACHNOAAFPRPVYRDFEOQOGT3RDWEGHA5CNFSM4JIAPK42YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMJH2HI#issuecomment-588414237,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACHNOAGFMI6N4JE4SGQUSCLRDWEGHANCNFSM4JIAPK4Q
.

I submitted a PR for this (#76) over a year ago but never got a response from @jwkvam. I agree this repo no longer seems to be maintained.


[FLINK-27415][Connectors / FileSystem] Read empty csv file throws exception in FileSystem table connector

What is the purpose of the change
Read empty csv file throws exception in FileSystem table connector.
Brief change log

*Remove size check, so StreamFormatAdapter can read empty files *

Verifying this change
This change added tests and can be verified as follows:

Added integration tests for reading empty csv file
Added test that validates that StreamFormatAdapter read empty file

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)

@reswqa Thanks for your review.

@JingsongLi Please take a look.

@flinkbot run azure

@flinkbot run azure

@flinkbot run azure

Given that the CI failure is not related, merging this.

Friendly reminder: before merging please be sure it passes ci
it seems this PR merged is the reason of a blocker issue https://issues.apache.org/jira/browse/FLINK-32539

Apologies, taking a look


how do i automatically paste?

Hi. I just installed this app (Version 0.18.2 (3)) and it looks nice, but when I try to paste a clip, it only copies it to the clipboard but does not paste it, I have to do command-v to paste it.
It did not prompt me to add it to the accessibility list like a few other clipboard managers I tried. I added it anyway, but it didn't help. I'm not seeing any errors. What can I do to make it automatically paste when I hit enter/click on a clip?

Check preferences, there is an option to enable that.

Check preferences, there is an option to enable that.

I missed it. It works after checking that. Sorry about that. Thanks.

I missed it. It works after checking that. Sorry about that. Thanks.


push alloy-gateway to collection

Towards https://github.com/giantswarm/roadmap/issues/3568
This PR adds a new component in our MC to be able to receive logs from outside the clusters. It currently does nothing as the config disables it anyway but this will be used to ingest customer logs as well as teleport logs

I think we should be fine :)


Choose a name and stick to it

The Advanced typographic tables (OpenType Layout tables)

Everywhere else referred to as "OpenType Layout tables". If you want to say that they enable advanced typography, say that in a description or definition.

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

ID: 5b15ab9e-86c5-f6e0-0145-f9de77c60141
Version Independent ID: 0ebe3dec-cc24-b6a4-01b8-73bfdb79a71a
Content: Advanced typographic tables - OpenType Layout - Typography
Content Source: typographydocs/opentype/spec/ttochap1.md
Product: typography
GitHub Login: @PeterCon
Microsoft Alias: PeterCon

Changed for next version:

The Advanced typographic tables (OpenType Layout tables) extend the functionality of fonts with either TrueType or CFF outlines. OpenType Layout fonts contain additional information that extends the capabilities of the fonts to supportOpenType Layout tables provide advanced typographic capabilities for high-quality international typography:


Update pyproject metadata

For better left column in https://pypi.org/project/feditest/0.2/

Also, the main page is simply taken from the repo, and does not really meet the needs of the pypi listing.

Also, pip show feditest has lots of missing fields.
Name: feditest
Version: 0.2
Summary: Testing federated protocols
Home-page:
Author:
Author-email: Johannes Ernst<EMAIL_ADDRESS>Steve Bate<EMAIL_ADDRESS>License:
Location: /opt/homebrew/lib/python3.11/site-packages
Requires: httpx, jinja2, langcodes, msgspec, multidict, pyhamcrest, pytest
Required-by:

Fixed in #229


Return projected MPOs from position

Description
This helps in cases when position! is difficult to write as an in-place operation, such as for distributed sums of MPOs like in ITensorParallel.jl.
EDIT: I also snuck in ITensors.enable_threaded_blocksparse(true/false) as alternative syntax to ITensors.enable_threaded_blocksparse()/ITensors.disable_threaded_blocksparse().

Codecov Report

Merging #1047 (7f718cf) into main (ccc7fa2) will decrease coverage by 0.61%.
The diff coverage is 63.63%.

:exclamation: Current head 7f718cf differs from pull request most recent head 37a19a1. Consider uploading reports for the commit 37a19a1 to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main    #1047      +/-   ##
==========================================
- Coverage   66.61%   66.01%   -0.61%
==========================================
  Files          97       97
  Lines        9970     9331     -639
==========================================
- Hits         6642     6160     -482
+ Misses       3328     3171     -157

Impacted Files
Coverage Δ

src/global_variables.jl
82.60% <0.00%> (-8.31%)
:arrow_down:

src/mps/diskprojmposum.jl
37.50% <100.00%> (-1.98%)
:arrow_down:

src/mps/dmrg.jl
83.73% <100.00%> (-0.76%)
:arrow_down:

src/mps/projmpo_mps.jl
48.27% <100.00%> (-0.21%)
:arrow_down:

src/mps/projmposum.jl
74.19% <100.00%> (-0.10%)
:arrow_down:

src/mps/projmps.jl
86.95% <100.00%> (-1.05%)
:arrow_down:

src/ITensorChainRules/ITensorChainRules.jl
84.61% <0.00%> (-7.70%)
:arrow_down:

src/ITensorChainRules/NDTensors/tensor.jl
28.57% <0.00%> (-3.25%)
:arrow_down:

src/ContractionSequenceOptimization/utils.jl
61.14% <0.00%> (-2.86%)
:arrow_down:

... and 67 more

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


WinAppSDK 1.1 Servicing: Installation with System-Account doesn't wor…

…k #2546 (#2565)

Installation with System-Account doesn't work #2546
Co-authored-by: Santosh Chintalapati<EMAIL_ADDRESS>

/azp run

/azp run


Bill Comparison Front End To Do List

[ ] Add axes following https://bost.ocks.org/mike/bar/3/
[ ] Change output order to a "normal distribution"
[ ] Make graph responsive for mobile devices and smaller screens (see https://www.safaribooksonline.com/blog/2014/02/17/building-responsible-visualizations-d3-js/)
[x] Center Graph on Page
[ ] Add sign-up form/language to bottom of the page
[ ] Add appropriate titling and other design to the page
[ ] Add indicator to mark bill of the current user in the bar graph

Right now the graph is somewhat responsive. Still needs some tweaking to full work on mobile devices as it is busting out of its grid box. Open to help/suggestions on this.


Ng 18

Please check if the PR fulfills these requirements

[X] The commit message follows our guidelines: https://github.com/moribvndvs/ng2-idle/blob/master/CONTRIBUTING.md#pr
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

What kind of change does this PR introduce? (check one with "x")
[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[X] Other... Please describe: Angular 18 migration

What is the current behavior? (You can also link to an open issue here)
What is the new behavior?
Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[X] No

If this PR contains a breaking change, please describe the impact and migration path for existing applications: ...
Other information:

coverage: 100.0%. remained the same
when pulling bfb00ca9e8f0f5c856c66dc25f17521dd13dbdd1 on planally:ng-18
into fc7d369d66d2decfce202ee16f4a26476930c87b on moribvndvs:master.

So @ng-idle/core and keepalive both declare
"@angular/common": ">=17.3.10",
"@angular/core": ">=17.3.10"

as dependencies. Is this version sufficiently breaking that we need to bump these versions as well? I'm thinking maybe we don't since the packages don't export or otherwise rely on 18 specific things, with the exception of tests (which are irrelevant to consumers of these packages).

coverage: 100.0%. remained the same
when pulling 250e0c34f7400bf96a5625cb74d5f470c4410033 on planally:ng-18
into fc7d369d66d2decfce202ee16f4a26476930c87b on moribvndvs:master.

@moribvndvs If not major, I believe we could publish a minor version, As the bundle itself goes with the latest version of angular in the docs.
In the future, newer version of Angular migration should go smoothly.


Clarify documentation of argmin/argmax

The documentation pages only refer to argmin/argmax without defining them (e.g. "Returns: New DataArray object with argmin applied to its data"), forcing users to refer to the NumPy documentation to learn what the functions do do and try to guess at how the XArray version will work. I think the doc pages should say what these functions actually do, possibly with an example of a common use case, e.g. finding the latitude where some quantity is minimized.
Also, the first time I used argmin/argmax I wasn't sure from the documentation whether the returned value is the coordinate index or the raw index. I think this should be explicitly stated. I also like the idea mentioned in issue #1388 of creating an alternate version of argmin/argmax that does return the coordinate index, since it would make it easier to stay within the coordinate indices all the time.

@rdrussotto Since v0.16.0 (specifically https://github.com/pydata/xarray/commit/bdcfab524ef1c852abe6dabcfabc7292f058fddc), argmin/argmax have been explicitly defined with dedicated docstrings (see . Is the issue you raised still a problem?

@sjvrijn The new documentation looks great, with examples illustrating how it works! idxmin/idxmax is also a great addition. I think all of the concerns I raised in this issue are resolved.


Language specific settings: Unable to set tab size per language

Hey VSCode Team,
Firstly, thank you so much for this much awaited feature! However, it seems that the set of available settings per language is limited. I wanted to set editor.tabSize for javascript as 2, which is 4 as the default. But, it doesn't work and my tab size is still 4 for JS files.

VSCode Version: 1.9
OS Version: Ubuntu 16.04 64-bit

Steps to Reproduce:

Open User settings.
Add the below setting,

"[javascript]": {
    "editor.tabSize": 2
}

https://github.com/Microsoft/vscode/issues/19511


Issue building HealthKit with latest Xcode?

Odd one, just updated to 0.3.3 using the command line tools, and the project no longer compiles, instead fails with the following linkage errors:
Ld /Users/gdavison/Library/Developer/Xcode/DerivedData/KeepingWell-aodgojqbwmyfysckkigmmvwotzpc/Build/Products/Debug-iphonesimulator/KeepingWell.app/KeepingWell normal x86_64
cd /Users/gdavison/Development/NetBeansProjects/Monitor/platforms/ios
export IPHONEOS_DEPLOYMENT_TARGET=7.1
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.3.sdk -L/Users/gdavison/Library/Developer/Xcode/DerivedData/KeepingWell-aodgojqbwmyfysckkigmmvwotzpc/Build/Products/Debug-iphonesimulator -F/Users/gdavison/Library/Developer/Xcode/DerivedData/KeepingWell-aodgojqbwmyfysckkigmmvwotzpc/Build/Products/Debug-iphonesimulator -filelist /Users/gdavison/Library/Developer/Xcode/DerivedData/KeepingWell-aodgojqbwmyfysckkigmmvwotzpc/Build/Intermediates/KeepingWell.build/Debug-iphonesimulator/KeepingWell.build/Objects-normal/x86_64/KeepingWell.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -weak_framework CoreFoundation -weak_framework UIKit -weak_framework AVFoundation -weak_framework CoreMedia -weak-lSystem -force_load /Users/gdavison/Library/Developer/Xcode/DerivedData/KeepingWell-aodgojqbwmyfysckkigmmvwotzpc/Build/Products/Debug-iphonesimulator/libCordova.a -ObjC -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=7.1 -Xlinker -sectcreate -Xlinker __TEXT -Xlinker __entitlements -Xlinker /Users/gdavison/Library/Developer/Xcode/DerivedData/KeepingWell-aodgojqbwmyfysckkigmmvwotzpc/Build/Intermediates/KeepingWell.build/Debug-iphonesimulator/KeepingWell.build/KeepingWell.app.xcent -framework AssetsLibrary /Users/gdavison/Library/Developer/Xcode/DerivedData/KeepingWell-aodgojqbwmyfysckkigmmvwotzpc/Build/Products/Debug-iphonesimulator/libCordova.a -framework CoreGraphics -framework MobileCoreServices -framework CoreLocation -weak_framework AudioToolbox -weak_framework Social -weak_framework MessageUI -framework StoreKit -lz -liconv -framework AVFoundation -framework CoreVideo -framework QuartzCore -Xlinker -dependency_info -Xlinker /Users/gdavison/Library/Developer/Xcode/DerivedData/KeepingWell-aodgojqbwmyfysckkigmmvwotzpc/Build/Intermediates/KeepingWell.build/Debug-iphonesimulator/KeepingWell.build/Objects-normal/x86_64/KeepingWell_dependency_info.dat -o /Users/gdavison/Library/Developer/Xcode/DerivedData/KeepingWell-aodgojqbwmyfysckkigmmvwotzpc/Build/Products/Debug-iphonesimulator/KeepingWell.app/KeepingWell
Undefined symbols for architecture x86_64:
"_HKSampleSortIdentifierEndDate", referenced from:
-[HKHealthStore(AAPLExtensions) aapl_mostRecentQuantitySampleOfType:predicate:completion:] in HKHealthStore+AAPLExtensions.o
"OBJC_CLASS$HKHealthStore", referenced from:
l_OBJC$CATEGORY_HKHealthStore$_AAPLExtensions in HKHealthStore+AAPLExtensions.o
"OBJC_CLASS$_HKSampleQuery", referenced from:
objc-class-ref in HKHealthStore+AAPLExtensions.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Is this an error anybody else has come accross?

Forgot to add HealthKit framework, odd I thought I would have had this from a previous version

Just an update for anyone else running in to this-
As of version 0.3.5 I needed not only to add the Healthkit framework to Xcode (Build Phases > Link Binary with Libraries), but to also add Healthkit.m AND WorkoutActivityConversion.m to my Compile Sources (Build Phases > Compile Sources)


Conv2D

The autograd part still needs to be written.
I also need to be able to join the outputs of multiple inputs, but I'm having trouble getting join to work. This is needed to do batched processing.
Currently arrayfire can join up to 10 arrays at a time. This may or may not be an acceptable batch size. A better solution would be to implement 3d and 4d matmul in arrayfire.

@pavanky Added the rest of the Conv2D layer - although it still isn't batched. I need to find a way to confirm it is working properly.
I added some more gradients of af functions.

@pavanky This pr is kind of a mess now. I think I'll abandon this one and move changes to separate commits. One with extra functions and one with conv2d layer. And a third with the alexnet/example.cpp

@plavin sounds good.


Allow to execute a template modifying an existing editable constraint

It's not possible to run a template modifying the value of an editable constraint.
If a template has an editable constraint with code A, using the method template.add_constraint (same constraint field, same constraint operator, different constraint value, code="A") will add a new constraint with code B, and when you execute template.results it will return an error (which is correct because it's not possible to add a new constraint in a template)

Close thie ticket because it was not correct.
template = service.get_template()
rows = template.rows(
A = {"op": "=", "value": "CG10023"})
for row in rows:
print(row)


better logging of REST exceptions

include the trace on the first encounter of a new type or simply a new place where a type is thrown from;
subsequent instances won't get the trace but handy when debugging if the first one does

This is fine as-is, will merge.


Detail for feature extraction

Thanks for sharing your awesome work.
To reproduce M3P's results, I have some questions.
you mentioned script file to generate feature file, but I was unable to identify files for feature extraction.
It would be thankful if you share detail of feature for M3P, like resnet version for faster r-cnn
Thanks in advance

I have update this script in our git and we will release the latest code for everyone to try
https://github.com/facebookresearch/mmf/blob/6d89e1dede448682d549fb81d073536a31f88548/tools/scripts/features/extract_features_vmb.py

Hi,
Firstly fascinating work!!
Thanks for providing the script, but this script generates .npy and _info.npy files, whereas the code expects h5 files.
Could you please provide the extracted feature (h5) files or give detail on generating them?
I appreciate any help you can provide. Thanks.


[Discussion] KMP support

I'm trying to use a combination of dadb and grpc to the emulator to implement some useful functions when using emulators.
This led me to a couple of questions

Have you considered Kotlin multiplatform support? You are already using Okio, which is KMP enabled and there is code for KMP Certificate handling code in github.com/cashapp/certifikit.  Generally seems like a incremental change that could unlock a lot of other cases.
Have you considered supporting gRPC in Dadb also?

I have a working implementation of gRPC using Square's Wire project (again KMP native)
https://github.com/yschimke/emulator-tools/blob/main/src/jvmMain/kotlin/ee/schimke/emulatortools/Main.kt#L41-L48
again, please close if this it undesired or out of scope and I'll maintain the bits I need separately.

For now, (2) is out of scope for the dadb project. However, I do think KMP is a worthwhile investigation. I don't have much experience with KMP so open to contributions.
Note: Since (2) is out of scope, I updated the title of the issue to focus on (1).

It doesn't look like we'll be able to prioritize this in the short term, so I'm closing this out for now


NetCDF error when trying to build the library

Hello! I am trying to build the pyCRTM library, but keep running into the error: "Could NOT find NetCDF (missing: NetCDF_INCLUDE_DIRS)". I have set the variable NetCDF_INCLUDE_DIRS to ~/miniconda3/envs/polar/lib/python3.11/site-packages/netCDF4, but I am still unable to get past the error. I'm a bit unfamiliar with importing a python library from github, so perhaps there is something obvious that I am missing, but any suggestions would be greatly appreciated. Thanks!

@Cas-Johnson. I think part of the confusion here is you need to fortran netcdf libraries installed, not the  python netCDF4 library.  You will need to install the crtm library first.


Linux only?

Need add in Requirements: gnu make bash and linux?
FreeBSD system not work :( maybe require many patches

Thanks for pointing that out. I'm planning to do some refactoring to the project soon (when time allows), and will work on cross-platform compatibility.


training accuracy cannot match ssd  on caffe

Training for 200 epoch for batchsize 32, test on voc2007, only got 68 mAP.
Also it is very strange if batchsize > 32 when I train it on 2 or more GPUs. I have tested batchsize=64 using 2 gpus and 128 for 4 gpus, also  I have try different parameters, the mAP is worse than batchsize = 32. I know caffe implementation for VGGNet use batch 32, but it is not reasonable for large batchsize but bad performance. Is there any special normalization in the loss layer?

Please try different lr and wd, since I actually don't know if they are consistent in mxnet and caffe.  I also decreased the lr every 20 epoch, which seems to be not a good option.
For large batch size, the learning rate is not divided by batch size, if the batch is very large, then the gradients might get quite big. Also, it's not 100% true that larger batch will generate better performance.
The normalization is quite simple, by default(valid normalization), the gradient of softmax loss and smoothl1 loss will be divided by number of valid counts, i.e., (num_pos_anchors + num_neg_anchors) and (num_pos_anchors * 4), respectively.
Tuning grad_scale in loss layer is doable, you are very welcome to do it if you are interested.

Thanks, I will tune the parameters.

Please let me know if you have new discoveries.

Updates: lr 0.001,  lr-epoch 50,  end-epoch 70 .   smooth-l1 grad_scale 1.0   softmax 3.0  I got 69.7mAP.
I will continue to tune the params.

Just a tip, in caffe impl, the valid norm == number of positive anchors, in my impl, the valid norm == number of (positive + negative) anchors, thus theoratically my lr should be 4 times the caffe version lr, which is 0.001 with batch-size 32, i.e. 0.004
However, set lr to 0.004 usually ends up with l1 loss nan in the first few iterations. Based on previous experiences, I think the lr scale is different between caffe and mxnet.
Don't know if it helps, anyway, thanks for you experiments.

Thanks for your reminds. I tested lr 0.002 vs 0.001 with different grad scale,  the final results almost same.

@terrychenism , Can you publish your parameters of final similar results? I am studying SSD. Thank you very much.


Fallback to actual model value

Let's say I have a table Countries [id, name, code(always 'en')] where names are in English. Then, the country_translations has only the translations for french. For some reason when I specify the locale to 'en' it returns empty (because country_translations does not have a record for this language).
Is there any way I can specify when the language is English to load the model's name and not search for a translation in the country_translations?
It seems like a duplication to have 2 times the same language.

The idea is you don't put the english version to your main model's table but to the translation's table. This way there is no duplication.

Just saw that there is no column for the name field in the model's migration, only in the *_translations table. Everything makes sense now!

@Chrysanthos  Could I know your config/transable.php settings?. I have the same issue. An empty Model_translations table leads to empty translable attributes!


preempt-rt: dmesg causes device hang and reboot

Describe the bug
I'm running on dunfell branch (R32.7.3 JetPack release: 4.6.3) with premp-rt patches applied. I disabled all the fragments except for CONFIG_OVERLAY_FS=y
The dmsg command hangs the kernel and the device reboots.
journalctl -k works without problem.
I see the same behavior with:

TX2 with custom carrier
Xavier AGX devkit

To Reproduce
Steps to reproduce the behavior:

clone dunfell branch and setup the bitbake environment
devtool modify linux-tegra
go to the workspace
cd scripts
./rt-patch.sh apply-patches
build a minimal image
Deploy to hardware
type dmsg
The kernel hangs with no prints in the console
The device reboot

Does anyone see the same behavior?

Hey @lfdmn
I didn't try that myself. I can do that and get back to you.
I will investigate the issue if I can reproduce it.
I will keep you updated

Sounds like a locking problem. The systemd journal code uses the /dev/kmsg interface, whereas dmesg uses the syslog/klogctl system call interface, which might explain why one works and the other doesn't.  It looks like there were some changes in the kernel/printk code (where the system call interface lives) between the 32.7.2 and 32.7.3 kernels, and the RT patches also change quite a bit in that area.  Maybe one of the updated code paths got missed getting patched?

Thanks @madisongh for the insights

Thanks for the details! I will drop a message to the forum about this.

I've had some success with lock debugging in the kernel before: https://www.kernelconfig.io/config_prove_locking?q=&kernelversion=4.9&arch=arm64
However it works by spitting out prints to dmesg so I'm not sure how it will do if dmesg is related to the locking issue.  You might want to experiment with redirecting prints to the console and see if that helps.

I have been trying different things but I'm out of luck redirecting the printk to console.
Here are some console prints when stepping with gdbserver if that would talk to someone.
[  416.446799] Internal error: Accessing user space memory outside uaccess.h routines: 96000005 [#1] PREEMPT SMP
[  416.446809] Modules linked in: 8021q garp mrp userspace_alert nvgpu
[  416.446812] CPU: 0 PID: 8426 Comm: gdbserver Tainted: P        W  O    4.9.299-rt191-l4t-r32.7.3+g62789adae3eb #1
[  416.446814] Hardware name: quill (DT)
[  416.446815] task: ffffffc1c6430000 task.stack: ffffffc15be9c000
[  416.446822] PC is at kmem_cache_free+0x200/0x428
[  416.446825] LR is at free_uid+0x78/0x88
[  416.446827] pc : [<ffffff80083edfb8>] lr : [<ffffff80082438b8>] pstate: a0400045
[  416.446828] sp : ffffffc15be9fbd0
[  416.446830] x29: ffffffc15be9fbd0 x28: ffffffc1e375da00
[  416.446832] x27: ffffff8008f62000 x26:<PHONE_NUMBER>0004d8
[  416.446835] x25: ffffffc1e1115b48 x24: ffffffc15be9fe08
[  416.446837] x23: ffffffc15be9fcdf x22: ffffff80082438b8
[  416.446838] x21: ffffff800a0b2a40 x20: ffffffc1e9001d00
[  416.446840] x19:<PHONE_NUMBER>000000 x18:<PHONE_NUMBER>000001
[  416.446842] x17:<PHONE_NUMBER>000000 x16: ffffffc1c6430000
[  416.446844] x15: ffffffffffffffff x14:<PHONE_NUMBER>000000
[  416.446845] x13:<PHONE_NUMBER>000000 x12:<PHONE_NUMBER>000000
[  416.446847] x11:<PHONE_NUMBER>000000 x10:<PHONE_NUMBER>000000
[  416.446849] x9 :<PHONE_NUMBER>000000 x8 :<PHONE_NUMBER>000000
[  416.446851] x7 : ffffff80082ab62c x6 :<PHONE_NUMBER>000000
[  416.446852] x5 :<PHONE_NUMBER>000000 x4 :<PHONE_NUMBER>000001
[  416.446854] x3 :<PHONE_NUMBER>000000 x2 : ffffffbf00282c9f
[  416.446856] x1 : ffffffbf00282ca0 x0 : ffffffbf00282c80
[  416.446856]
[  416.446858] Process gdbserver (pid: 8426, stack limit = 0xffffffc15be9c000)
[  416.446859] Call trace:
[  416.446862] [<ffffff80083edfb8>] kmem_cache_free+0x200/0x428
[  416.446864] [<ffffff80082438b8>] free_uid+0x78/0x88
[  416.446867] [<ffffff8008244a88>] __sigqueue_free.part.2+0x58/0x78
[  416.446869] [<ffffff8008244c6c>] collect_signal+0x10c/0x1c0
[  416.446870] [<ffffff8008245178>] dequeue_signal+0x130/0x210
[  416.446872] [<ffffff8008248e00>] get_signal+0x198/0xc10
[  416.446875] [<ffffff800820aff0>] do_signal+0xe0/0x5c8
[  416.446878] [<ffffff800820b690>] do_notify_resume+0xc8/0xe0
[  416.446880] [<ffffff8008202ff0>] work_pending+0x8/0x14
[  416.643337] ---[ end trace<PHONE_NUMBER>000003 ]---
[  416.650377] ------------[ cut here ]------------
[  416.650379] kernel BUG at kernel/locking/rtmutex.c:1070!
[  416.650382] Internal error: Oops - BUG: 0 [#2] PREEMPT SMP
[  416.650392] Modules linked in: 8021q garp mrp userspace_alert nvgpu
[  416.650395] CPU: 0 PID: 8426 Comm: gdbserver Tainted: P      D W  O    4.9.299-rt191-l4t-r32.7.3+g62789adae3eb #1
[  416.650397] Hardware name: quill (DT)
[  416.650398] task: ffffffc1c6430000 task.stack: ffffffc15be9c000
[  416.650406] PC is at rt_spin_lock_slowlock+0x314/0x340
[  416.650408] LR is at rt_spin_lock_slowlock+0x68/0x340
[  416.650410] pc : [<ffffff8008f4f53c>] lr : [<ffffff8008f4f290>] pstate: 604000c5
[  416.650411] sp : ffffffc15be9f7a0
[  416.650413] x29: ffffffc15be9f7a0 x28: ffffffc1c6430000
[  416.650415] x27:<PHONE_NUMBER>000040 x26:<PHONE_NUMBER>000007
[  416.650417] x25:<PHONE_NUMBER>000025 x24:<PHONE_NUMBER>000001
[  416.650419] x23:<PHONE_NUMBER>000140 x22:<PHONE_NUMBER>00000b
[  416.650421] x21: ffffffc1c6430000 x20: ffffffc15be9f800
[  416.650422] x19: ffffffc1e1115b48 x18:<PHONE_NUMBER>000008
[  416.650424] x17:<PHONE_NUMBER>000000 x16: ffffffc1c6430000
[  416.650426] x15:<PHONE_NUMBER>001fef x14:<PHONE_NUMBER>88b8db
[  416.650428] x13:<PHONE_NUMBER>88b8db x12:<PHONE_NUMBER>d3a0cf
[  416.650429] x11:<PHONE_NUMBER>000001 x10:<PHONE_NUMBER>0014a0
[  416.650431] x9 : ffffffc15be9f830 x8 :<PHONE_NUMBER>00004b
[  416.650433] x7 : ffffffc1c6430000 x6 : ffffff8008f4f274
[  416.650434] x5 :<PHONE_NUMBER>000000 x4 :<PHONE_NUMBER>000001
[  416.650436] x3 : ffffffc1e1115b90 x2 : ffffffc1c6430001
[  416.650437] x1 : ffffffc1c6430000 x0 : ffffffc1c6430000
[  416.650438]
[  416.650440] Process gdbserver (pid: 8426, stack limit = 0xffffffc15be9c000)
[  416.650440] Call trace:
[  416.650444] [<ffffff8008f4f53c>] rt_spin_lock_slowlock+0x314/0x340
[  416.650447] [<ffffff8008f517d4>] rt_spin_lock+0x74/0x78
[  416.650452] [<ffffff80082f9fc4>] acct_collect+0x8c/0x170
[  416.650455] [<ffffff80082378b0>] do_exit+0x290/0xba0
[  416.650458] [<ffffff800820c58c>] die+0x194/0x198
[  416.650461] [<ffffff8008223bbc>] do_page_fault+0x15c/0x598
[  416.650463] [<ffffff8008224064>] do_translation_fault+0x6c/0x80
[  416.650465] [<ffffff8008200954>] do_mem_abort+0x54/0xa8
[  416.650466] [<ffffff8008202104>] el1_da+0x24/0xbc
[  416.650469] [<ffffff80082438b8>] free_uid+0x78/0x88
[  416.650471] [<ffffff8008244a88>] __sigqueue_free.part.2+0x58/0x78
[  416.650472] [<ffffff8008244c6c>] collect_signal+0x10c/0x1c0
[  416.650474] [<ffffff8008245178>] dequeue_signal+0x130/0x210
[  416.650476] [<ffffff8008248e00>] get_signal+0x198/0xc10
[  416.650478] [<ffffff800820aff0>] do_signal+0xe0/0x5c8
[  416.650479] [<ffffff800820b690>] do_notify_resume+0xc8/0xe0
[  416.650481] [<ffffff8008202ff0>] work_pending+0x8/0x14
[  416.900627] ---[ end trace<PHONE_NUMBER>000004 ]---
[  416.906089] note: gdbserver[8426] exited with preempt_count 1
[  416.906091] Fixing recursive fault but reboot is needed!

rtmutex.c:1070 points to some mutex ownership issue:
/*
 * Slow path lock function spin_lock style: this variant is very
 * careful not to miss any non-lock wakeups.
 *
 * We store the current state under p->pi_lock in p->saved_state and
 * the try_to_wake_up() code handles this accordingly.
 */
static void  noinline __sched rt_spin_lock_slowlock(struct rt_mutex *lock,
						    bool mg_off)
{
	struct task_struct *lock_owner, *self = current;
	struct rt_mutex_waiter waiter, *top_waiter;
	unsigned long flags;
	int ret;

	rt_mutex_init_waiter(&waiter, true);

	raw_spin_lock_irqsave(&lock->wait_lock, flags);

	if (__try_to_take_rt_mutex(lock, self, NULL, STEAL_LATERAL)) {
		raw_spin_unlock_irqrestore(&lock->wait_lock, flags);
		return;
	}

	BUG_ON(rt_mutex_owner(lock) == self); // <------------------------

@lfdmn Can you try with the R32.7.4 kernel?  I see NVIDIA added another patch in the printk code to work around a locking issue, maybe that will help?

Hey @lfdmn
Any update on this ?

Hi,
Reviving an old issue
The lock in tegra demo distro is related the nvpmodel deadlocking during the boot. One workaround is to set nvpmodel to MAXN
NVPMODEL_CONFIG_DEFAULT = 0
Hot plugging CPU isn't stable https://forums.developer.nvidia.com/t/r32-7-1-4-9-253-rt168-info-possible-circular-locking-dependency-detected-nvpmodel-all-q-mutex-hp-lock/221391/9
But the lock may still appear in different places depending on timings and scheduled work.
The kernel has been fine up to 4.6.1. This is something new that came with the introduction of the hynix memory type.
I've tried using the latest JetPack and revert to 4.6.1 kernel but this is not possible. Loading the gpu kernel module fails. More than the memory has changed
I wonder if I have been flagged on the forums but I don't get any answers anymore :)
Does anyone have a way to reach out to NVidia to get their attention or would be able or know someone able to help debugging the patches?

This PR https://github.com/OE4T/linux-tegra-4.9/pull/43 addresses the issue.


Update mihome-vacuum to 4.1.0

Please update my adapter ioBroker.mihome-vacuum to version 4.1.0.
This pull request was created by https://www.iobroker.dev c0726ff.

4.1.0 created 01.11.2023
600 user
OK


SO-3661 Component Identifier Service API

This PR adds partial support for Component Identifier Service API. Snow Owl with EMBEDDED ID service can be used as a CIS in a cluster of Snow Owl instances. Also, the PR adds a separate CIS only product based the Snow Owl platform.

New modules

com.b2international.snowowl.snomed.cis (core CIS and SNOMED CT ID services)
com.b2international.snowowl.snomed.cis.rest (Support CIS API)
com.b2international.snowowl.snomed.cis.product (CIS Product)
com.b2international.snowowl.snomed.cis.feature (CIS Feature)

lgtm (and you, as you have mentioned it earlier) has a small-ish point: the loop shown below could be reworked into eg. a do-while loop, so that the operation runs at least once, regardless of the value set in numberOfReauthTries.
https://github.com/b2ihealthcare/snow-owl/blob/97028c76da26bf882fae39a6d25e67f9014232ab/cis/com.b2international.snowowl.snomed.cis/src/com/b2international/snowowl/snomed/cis/client/CisSnomedIdentifierService.java#L531-L561


Add Lifecycle rule to cleanup S3 bucket files in Venue

The S3 bucket needs to be cleaned up in terms of older files.
Start with a 7-day rule, per the Unity requirements.  Make this configurable.
Use AWS lifecycle rule, and bake this into the Go code that creates and configures the S3 bucket as part of the bootstrap procedure.

How do we envision this being configured?

@jdrodjpl I was thinking that the https://github.com/unity-sds/unity-management-console/blob/main/backend/internal/aws/s3.go file would pass some sort of parameters/config to the CreateBucket call.  This would need to be researched, but this is code that chatgpt gave me:

import (
    "context"
    "log"
    "github.com/aws/aws-sdk-go-v2/aws"
    "github.com/aws/aws-sdk-go-v2/config"
    "github.com/aws/aws-sdk-go-v2/service/s3"
    "github.com/aws/aws-sdk-go-v2/service/s3/types"
)

func main() {
    cfg, err := config.LoadDefaultConfig(context.TODO(), config.WithRegion("us-west-2"))
    if err != nil {
        log.Fatalf("unable to load SDK config, %v", err)
    }

    svc := s3.NewFromConfig(cfg)

    lifecycleConfiguration := &types.BucketLifecycleConfiguration{
        Rules: []types.LifecycleRule{
            {
                Status: types.ExpirationStatusEnabled,
                Filter: &types.LifecycleRuleFilter{
                    Prefix: aws.String(""),
                },
                Transitions: []types.Transition{
                    {
                        Days:         30,
                        StorageClass: types.TransitionStorageClassGlacier,
                    },
                },
                Expiration: &types.LifecycleExpiration{
                    Days: 365,
                },
                ID: aws.String("MyRule"),
            },
        },
    }

    _, err = svc.PutBucketLifecycleConfiguration(context.TODO(), &s3.PutBucketLifecycleConfigurationInput{
        Bucket:                 aws.String("your-bucket-name"),
        LifecycleConfiguration: lifecycleConfiguration,
    })
    if err != nil {
        log.Fatalf("unable to put bucket lifecycle configuration, %v", err)
    }

    log.Println("Successfully applied lifecycle configuration to the bucket")
}

that's example code, but you get the idea..

Got it. I guess I was also asking -- is this going to be just a hard-coded value, or is there some kind of on-bootstrap configuration parameter we want to introduce to set this lifecycle rule time?

@jdrodjpl Yeah, perhaps we can throw it as a parameter to the run.sh / deploy.sh script pathway, that gets passed to the MC in this section?
https://github.com/unity-sds/unity-cs-infra/blob/8d232401a30e5edaa07a4fb92c4821c908e12d10/nightly_tests/deploy.sh#L67-L83
Then it would end up being a variable accessible by the MC, on the same level as project, venue, etc..

This works now with new deployments.


Disabled flag on Input does not work

I'm happy to investigate this myself! But before doing so, figured I should create an issue. If you'd like me to take it on, just assign it to me. I'm using Tamagui for one of the frontends to my AGPL social media app, Jonline, and enjoy contributing back. I've also contributed to rocket_async_compression in furtherance of this project 🙂 But I'm also relatively new to frontend dev vs. backend dev, and so could just not be using Tamagui correctly! But I seem to be able to reproduce this from a starter repo.
(I have not tested in the regular web starter.)
Current Behavior

Create the starter app (Expo+Next).
Paste <Input disabled={true} placeholder="Type something..." /> into the home/screen.tsx file (and Input, into the import {...} from '@my/ui' of course).
Fire up the server (yarn web)

The input is not disabled. Futher, I seem to see client-side errors stemming from the onTextChanged callbeing being made when it shouldn't be.
Expected Behavior
The input should be disabled.
Tamagui Version
1.35.8

Reproduction
I honestly can't get this thing to log me in with Google or GitHub. Again:

1. Create the starter app.
2. Paste `<Input disabled={true} placeholder="Type something..." />` into the `home/screen.tsx` file. (Also add `Input,` to the `import {...} from '@my/ui'`)
3. Fire up the server.

System Info
System:
    OS: macOS 13.4
    CPU: (8) x64 Intel(R) Core(TM) i7-7920HQ CPU @ 3.10GHz
    Memory: 467.32 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 19.3.0 - ~/.nvm/versions/node/v19.3.0/bin/node
    Yarn: 1.22.19 - ~/.nvm/versions/node/v19.3.0/bin/yarn
    npm: 9.2.0 - ~/.nvm/versions/node/v19.3.0/bin/npm
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chrome: 114.0.5735.133
    Safari: 16.5

Hi @JonLatane,
try it like that:
<Input editable={false} placeholder="Type something..." />

Andy

@megacherry This works! However, disabled is the parameter for Button, Switch, etc., so this API seems inconsistent. Would there be any opposition to me adding a PR to add disabled as an alias for editable on Input elements? Happy to do so 🙂

Depends on how we want it to work. Probably we shouldn't have added disabled, (is it on switch, perhaps extending themeablestack). The web does have a disabled state that we could technically implement as a pseudo style like disabledStyle. Not sure what's best.

sets editable=false in next release


Synchronizing repo causes git to push to wrong remote and fails

git fetch --all
remote: Repository not found.
fatal: repository 'https://github.com/4086606/vscode-codicons/' not found
error: Could not fetch 4086606

And my config is:

When I push manually via git push it works so somehow VS Code is choosing the wrong remote and don't know why

We are running git fetch --all so we try to fetch from all the registered remotes.
There is a remote that does not exist any more hence we fail to fetch from it.


Split Campaign's AOI

Problem
MapCampaigner, for the moment, can only process campaigns with a size of 320 km ².
Solution
Split campaign AOI into sub campaigns of 200km ².
Sub campaigns will then be processed by the lambda functions: download, process, render.

We have some constrainsts from lambda function:

Maximum execution duration per request = 300 seconds (5 minutes)
Ephemeral disk capacity ("/tmp" space) = 512 MB

For info, an overpass query that request buildings in New-York (320 km²) will return a response of 350Mb.

To drop in some additional notes:
While there should be a limit to the size of the campaign, I do think that looking to implement some solutions that allow bigger campaigns would be useful. One use case that was flagged as something that would be helpful -- tracking editing schools across an entire country. Instead of a bunch of a smaller campaigns, one bigger campaign would be helpful to track progress across an entire country.
So the questions might be:

what's the size that is too big for more sparse features (like schools)?
what's the max size for dense features like buildings or roads?
can we develop a solution that factors for the potential density of the feature being tracked?
or can we develop a solution that factors for the density of the data (i.e. smaller areas for New York versus larger areas for a more rural area)?

cc @willemarcel

I'll do some research about the size / time consumed of requests for different data types, so we can have some information about how we can make the queries depending on the size of the AOI and of the type of the data we are querying.
For example, by the NY stats mentioned by @pierrealixt, 1km² has 1.09 MB. We could do it for some other areas, for example Nairobi, and calculate the amount of time that overpass takes to return the data and check what is the limit for each type of query (buildings, roads, pois, something more?).

First analysis querying buildings in Sao Paulo (official data was imported into OSM) and in Dar es Salaam. The density of buildings in Dar es Salaam is 2x larger. Sao Paulo buildings are approximately 3 ttimes more dense than New York.
The good news are that the overpass server never failed to return a query result. The larger query I have done took 11 minutes and returned 378.8 MB.
@pierrealixt Can the time limit of 300 seconds be increased? Does that param work? Is the data compressed to a zip file in the /tmp 512 MB partition?
The query results for buildings are below. I'll do some research for highway=* tagged features tomorrow.

Dar es Salaam

(-6.7979427023539785,39.23076152801514,-6.793127337028579,39.23642635345459)
Sq. Kilometers: 0.34
3.0 MB - 12640 nodes - 2134 ways

(-6.798347531754215,39.230525493621826,-6.793063415925636,39.24136161804199)
Sq. Kilometers: 0.7
6.5 MB - 27645 nodes - 4510 ways

(-6.7978787818911925,39.23007488250732,-6.790378721931974,39.24337863922119)
Sq. Kilometers 1.23
10.8MB - 45902 nodes - 7441 ways

(-6.8038872682258305,39.22737121582031,-6.789057676531279,39.24715518951416)
time: 27.879331 seconds
3.61 sq. km
31.4 MB - 132870 nodes - 22118 ways

(-6.808830363742088,39.22715663909912,-6.788461074193963,39.248828887939446)
time: 32.412282 seconds
5.43 sq. km
46.5 MB - 196381 nodes - 32852 ways

(-6.816244911533783,39.22101974487305,-6.78641557485229,39.25243377685546)
time: 02:37.104594
11.53 sq. km
88.1 MB - 371399 nodes - 61444 ways

(-6.818886849131594,39.21913146972656,-6.783347309546315,39.253034591674805)
time: 03:32.437550
14.83 sq. km
107.7 MB - 453062 nodes - 74464 ways

(-6.822040110420903,39.21887397766113,-6.781898399690813,39.25612449645996)
time: 04:02.874876
18.4 sq. km
131.2 MB - 553416 nodes - 90467 ways

Sao Paulo

(-23.57956358280368,-46.68571472167969,-23.5279496678469,-46.633872985839844)
time: 03:38.502688
30.4 sq. km
117.4 MB - 510004 nodes - 63971 ways

(-23.599857401784767,-46.698074340820305,-23.517404089550542,-46.57997131347656)
time 11:11.510881
110.62 sq. km
378.8 MB - 1618174 nodes - 233506 ways

thanks for this analysis @willemarcel. After your roads analysis, what do you think is the right direction? Split the AOI based on a size that will work well? Should we still keep an upper size limit? Places like Jakarta are like at least 700 sqkm.

@smit1678 I saw in the AWS docs that the /tmp dir is limited in 512 MB and the maximum timeout setting is 15 minutes. So, yes, we'll need to set an area limit.
I'll finish the roads query analysis and then verify how we can aggregate the result of multiple lambda functions.

About the POI queries, as the distribution of POI's doesn't follow a pattern and can be very different depending of the place and of the POI type, I suggest we add a try back splitting the area if the query failed.
Some results from the highway=* (ways only) query analysis below. I tried to query all the Tanzania roads and it failed due to the amount of RAM needed by the operation on the server. I think we can limit the roads queries to 2500 sq.km, what in the case of Tokyo, would return 350 MB of data.

Berlin

(51.97134580885172,12.65625,52.74294319885714,14.183349609375)
Time 28.48 seconds
120.54 sq. km
42.1 MB - 140920 nodes - 47662 ways

(52.338695481504814,13.27423095703125,52.618891536583035,13.646392822265625)
Time 53.40 seconds
787.03 sq. km
128 MB - 456976 nodes - 137527 ways

Sao Paulo

(-23.65836152272883,-46.80313110351562,-23.439309076076434,-46.395263671875)
Time 01:35
1015 sq. km
117.3 MB - 464104 nodes - 97264 ways

Tokyo

(35.64055713458091,139.37530517578122,36.12567399853604,139.90264892578125)
Time 02:08
2568 sq. km
361 MB - 1405064 nodes - 394316 ways

Me and @smit1678 discussed about it last week and we decided that we will not split the AOI's anymore, but operate in the lambda functions disk size limit of 512 MB: https://github.com/hotosm/MapCampaigner/issues/687


Safer backend

fixes #10
@sonnyp please review 😁

you can try and test if the app automatically picks up your old notes, then converts them into the new storage scheme seamlessy


Does this work for the 3050 SFF?

I tried this with the 3050 SFF with i5, but having problems.
Wondering if that was for the 3050 SFF or MFF...
Thoughts?

If it's still Kaby Lake, then yes and no ;)
Firstly, NVMe SSDs:

If you have it, make sure to check if it's compatible,
If it is, then don't forget about NVMeFix and flashing your config).

Check this for refrence how to tweak the EFI up to match up your config more, mentioned in different issue: https://github.com/mavethee/Hackintosh-OpenCore-EFI-DELL-Optiplex-3050/issues/6#issuecomment-1509960419
If we speak totally different Intel generation then just follow Dortania's Guide for necessary changes in config.plist.


[AMP Components in Firefox][NF]_[Components_amp selector] Clear selection button not responsive

Clear selection button not responsive in Components for amp selector card.Is this intended?
1.Go to https://ampbyexample.com/
2.Tap on Components
3.Tap on amp-form and observe experiment button greyed out in experiment box
Observed result: Experiment button greyed out and non responsive
Expected results: Experiment button button should be responsive
Device(s):
Mac os desktop
Firefox :57.0.4 (64-bit)
Screenshot:https://screenshot.googleplex.com/YyrAmx69je9

yes, that's expected when the experiment is enabled. But your feedback is valuable, we could definitively improve the experience.


feature: Request for Support for Wiki-style Links

Is your feature request related to a problem? Please describe.
Hello,
I am currently using the MeanderingProgrammer/render-markdown.nvim plugin for rendering Markdown in Neovim, and I would like to request the addition of support for wiki-style links (e.g., [[Link|Alias]]). This feature would greatly enhance compatibility with the Obsidian plugin.
Currently, the plugin renders [[Link|Alias]] as [Link|Alias], which does not provide the intended functionality of creating a clickable link with an alias. Adding support for this format would enhance the overall user experience.
Benefits:

Better integration with Obsidian: This would allow users who utilize both plugins to work more seamlessly.
Improved usability: Wiki-style links are intuitive and can enhance note navigation.

Describe the solution you'd like
I would like the following formats to be supported:

Basic link:

[[Link]]

Link with alias:

[[Link|Alias]]

The first format should render as a link to Link, while the second format should display Alias as the clickable text but link to "Link."
Describe alternatives you've considered
I have explored a few alternatives to achieve the expected functionality, but unfortunately, they did not work as intended:

Using Markdown Extensions:  I looked into using Markdown extensions that support wiki-style links, but they were not compatible with the current setup of MeanderingProgrammer/render-markdown.nvim, leading to rendering issues.

Manual Link Creation: I tried manually creating links using the standard Markdown format, like [Alias](Link), but this does not replicate the ease of use and familiarity of the wiki-style links that Obsidian users expect.

Each of these approaches fell short of providing the desired integration and functionality, highlighting the need for native support for wiki-style links in the plugin.
Additional information
No response

I'm unsure what version of this plugin you're using or if there's some bug going on, but this plugin already supports wiki links, both with and without aliases, and renders them like you describe.

I’m currently running the last commit and using the default configuration:

Can you run :checkhealth render-markdown, I have a feeling there's a conflict and that should catch it

You were right. I was running an old version of Neovim (0.9) without realizing it. Updated to 0.10.1 and now it works as expected.

Awesome!