Inpainting (with mask shrink grow) & segmenting should use the model native resolution (or current resolution settings) IMHO

Hi!
Awesome work with swarmUI.
It's almost perfect for my needs apart for an issue with inpainting and segmenting.
Sometime when using inpainting with mask shrink grow, the inpaint is deformed / low quality.
Looking at the generated workflow, it seems that swarm use the current image resolution for the inpaint:

Step to reproduce:
1°) import a big image (or scale an image to a big resolution)
2°) inpaint a small part using the mask shrink grow option
3°) import the workflow (great option for debuging btw)
4°) check the size of SwarmImageScaleForMP => it's set to the current image resolution
When working in native resolution (eg 1024x1024 for SDXL) it's not an issue.
However when working with a high resolution image, it's problematic because the inpaint resolution can exceed the range of the model and the memory can explode.
Here an example when trying to inpaint a small part of a big image with a sd1.5 model.
After importing it, if I force the native resolution in the workflow we can see that the inpaint lose quality as the resolution grows.

(Same seed but Gandy is not recognizable at >1024, the skin is smoother and the glasses frame is deformed)
One solution would be to always use the native resolution in this case:
WorkflowGenerator.cs line 327 :
string scaledImage = CreateNode("SwarmImageScaleForMP", new JObject()
{
["image"] = new JArray() { croppedImage, 0 },
["width"] = UserInput.Get(T2IParamTypes.Model).StandardWidth, // use model native resolution
["height"] = UserInput.Get(T2IParamTypes.Model).StandardHeight,
["can_shrink"] = true // Shrink inpaint if mask is too big
});
It works great but the inpaint is always square (not sure if it's better or not but it should be possible to keep the mask ratio if necessary)
The other solution would be to give the user more control and use the selected resolution in the UI.
I believe some changes in JS part would be necessary as I don't think that these parameters are accessible in the C# function.
Segmenting use the same portion of code but that's great because it suffer the same issue, so both would be fixed.
Let me know what you think and if I should work on a PR.

should be fixed now


Logitech LED SDK games wont work (Battlefield 1, The Division)

Expected behavior: Logitech LED SDK lighting should work

Actual behavior: Keyboard rgb lighting wont work

How often does this problem occur?

This problem occurs every time
Please describe the steps to reproduce this issue:
The issue can be reproduced by doing following steps:

Launch Ghub and Aurora
Launch Battlefield 1 or The Division
Your rgb lighting wont work

What is the version of Aurora you are experiencing this issue with?

My version is 0.6.4b
Does the previous version of Aurora have this issue?
The previous version 0.6.4 have this issue.
Please include any logs, screenshots, or files that are related to this issue:
2019-02-04 02.34.30.log

Have you applied the Logitech patch?

Yes i applied Logitech patch and it still wont work also after few days i have another issue with Aurora, now it wont init logitech LED SDK in any game (Euro Truck Simulator 2, Diablo III , Overwatch)etc.
2019-02-12 16.58.56.log

I managed to fix not working Aurora but still Logitech LED SDK games wont work.
My steps:
1.Uninstall Aurora
2.Uninstall GHUB
3.Reboot PC
4.Install GHUB
5.Reboot PC
6.Install Aurora
7.Reboot PC
8.Go into GHUB settings and enable and disable aurora.exe serveral times.
9.Launch Aurora and turn off desktop lighting then turn it on.
10.Now i can use Aurora RGB lighting in overwatch, Diablo III, Euro Truck Simulator 2 but games which require Logitech LED SDK(The Division, GTA V, Battlefield 1) still wont work

doesn't work for me also in GTA 5, Battlefield 1

but games which require Logitech LED SDK(The Division, GTA V, Battlefield 1) still wont work

I had the same issue, but this is because I had set a persistent profile in G HUB. Once I put that to "none" G HUB could take over from Aurora with the correct Logitech profile for that game.
Hope that fixes the issues you guys are having.

Thanks for your response @sausje
In my ghub i had "none" profile but i switched into persistent then switched again into "none" and now it works, thank you very much!!!!! Battlefield 1 and The Division lighting works now but GTA V lighting still wont work i think reason for this is that GTA V is not detected by ghub i will try to reinstall GTA V and i will let you know if it works

@Wibble199
I just determined using only Logitech hardware that the GTA V problem is likely related to GHUB. If you install the latest version of Logitech Gaming Software (LGS) GTA V lighting works fine. This was tested with Aurora shut down. It's very likely that if you have Aurora running and use the wrapper + LGS it will work again.
Do some Googling and you will find that people with Logitech hardware that don't use Aurora have complained that GTA V works fine with LGS but is broken with GHUB. This appears to be an issue with GHUB and not Aurora + Logitech wrapper. If others can verify that 'downgrading' to LGS resolves issues noted above for other games this should probably be closed.

The aurora patch isn't fully working either, the registry patch isn't applied correctly. When the fix is merged, it should work correctly regardless if g hub is installed or not.
Another separate issue for gta v is that the hardcoded colors in Aurora are outdated and some of them are not correct anymore.
I can confirm that with the fix gta v and bf1 are both working in my wooting one.

The registry patch was fixed with v0.7.0 i believe, please make a new issue if it still persists.


Update readme

readme could use an overhaul. include more detail about the configuration env vars and more examples of usage.

consider switching dependency badges to https://david-dm.org/patsissons/hubot-giphy
this page supports dev dependency tracking too.


There should be 'return_sparse_embedding' in BGEM3FlagModel class

return_sparse_embedding arg exists in BGEM3ForInference, but cannot pass this arg from BGEM3FlagModel

Considering the sparse embedding is large (more than 200,000 dimensions), we don't return sparse embedding.


Add page resize tracking

No longer needed due to new approach to opening accordions. Will be fixed in version 3.0.0


docs: improve readme

Small improvements for better presentation.
Love your module so far 😊

Thanks for the PR! Glad you like it!


feat(type): add nonnull type

closes #389

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

9 of 9 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.002%) to 99.097%

Totals

Change from base Build<PHONE_NUMBER>:
0.002%

Covered Lines:
3839

Relevant Lines:
3874

💛  - Coveralls


User may want to implement and use his/her own "Differ" class; the materuailstore framework should let them do it

Not yet done


Failed to compare with the origin when PlugClean.

Hi, every time I try to PlugClean it prompts me to delete the directories of every single installed plugin, not only the ones missing from the list, and the message:
Failed to compare with the origin. The default branch might have changed.

I tried to fix everything I knew I changed in my hand to see if I broke the manager; folder sharing, outdated git, vim-plug or NeoVim, firewall rules, VPN...
I use a .vim file for vim-plug only, and init.lua for configs, setups and to source the vim file. Although I thought that could be an issue, I have a similar if not the same setup in a laptop with the same OS, and the old git, NeoVim and vim-plug versions I had in my main computer. PlugClean works perfectly there.
I've been trying to solve it on my own for some time but now but I finally ran out of ideas, I don't know if I screwed the manager up or if this is a bug, what am I missing?
Additional note
I kept the same versions for git and NeoVim since the problem started, I never updated till the day of this issue writing.
The only I think I updated was vim-plug.
Old versions were 0.9.5 release for NeoVim and 2.35.X.windows.2 for git.
New version of NeoVim is listed below (:version), new git version is 2.45.2.windows.1.
Thought this might be important.

call plug#begin()

Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'ellisonleao/gruvbox.nvim'
Plug 'Mofiqul/vscode.nvim'
Plug 'nvim-lualine/lualine.nvim'
Plug 'nvim-tree/nvim-web-devicons'
Plug 'mfussenegger/nvim-jdtls'
Plug 'neovim/nvim-lspconfig'
Plug 'joshdick/onedark.vim'
Plug 'catppuccin/nvim', { 'as': 'catppuccin' }
Plug 'sheerun/vim-polyglot'
Plug 'tpope/vim-fugitive'
" Plug 'nvim-java/nvim-java'
" Plug 'mfussenegger/nvim-dap'
Plug 'Djancyp/better-comments.nvim'
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
Plug 'nvim-lua/plenary.nvim'
Plug 'jxm35/livecode.nvim'
Plug 'nvim-telescope/telescope.nvim', { 'tag': '0.1.6' }
Plug 'Decodetalkers/csharpls-extended-lsp.nvim'
Plug 'jakobkhansen/journal.nvim'

call plug#end()

NVIM v0.10.0
Build type: Release
LuaJIT 2.1.1713484068

Type:

[x] Bug
[ ] Enhancement
[ ] Feature Request
[x] Question

OS:

[ ] All/Other
[ ] Linux
[ ] macOS
[x] Windows

Vim:

[ ] Terminal Vim
[ ] GVim
[x] Neovim

Can you test this command in one of the plugin's directory? (e.g. :echo g:plugs['coc.nvim'].dir)
git rev-list --count --left-right HEAD...origin/master

# or this if the default branch is main
git rev-list --count --left-right HEAD...origin/main

Command output in coc directory:
PS C:/.../nvim-data/plugged/coc.nvim> git rev-list --count --left-right HEAD...origin/master
1	1

My guess is that you're using an old version of powershell as your &shell, right?
Can you check if b98b66242bf6ec28c256ddff2a274e2e7a43d832 fixes the problem?
FWIW, I had to follow the guide in :help shell-powershell to make some other commands work, but without Remove-Alias because it's not available on powershell 5.

I was using powershell 5.1.
Major  Minor  Build  Revision
-----  -----  -----  --------
5      1      19041  4046

b98b66242bf6ec28c256ddff2a274e2e7a43d832 solved the issue, no more failed messages and finally only prints plugins not in list, thank you very much for your help and fast responses, really appreciate it a lot!

Thanks!


Using the ClientOptions provided at App initialization to create the …

Currently we use http.DefaultClient in the auth package to contact certificate server. But this does not work in App Engine (and possibly some other environments).
This PR makes it so that the client options used to initialize the App are also used to initialize the http client in auth. This allows users to pass in an App Engine specific http client to the App, which will then get passed into the auth module.

Made the suggested changes and fixed the test failure.
Turns out transport.NewHTTPClient() looks for application default credentials. This is not a problem in practice since most users will pass some credentials in opts, and others would have app default credentials present in their environment. But it does interfere with our tests when used in the Travis environment, which is not set up for app default credentials. The solution I implemented was to fall back to http.DefaultClient when ctx or opts are not present.


Integrating Role Name to GUID Mapping into Bicep Language for Enhanced Readability

Currently, when we generate a resource ID for a role, it necessitates the use of a GUID specific to the role. For instance:
var roles = [
  resourceId('Microsoft.Authorization/roleDefinitions', 'b24988ac-6180-42a0-ab88-20f7382dd24c')
  resourceId('Microsoft.Authorization/roleDefinitions', 'a6333a3e-0164-44c3-b281-7a577aff287f')
]

Given that this isn’t particularly user-friendly, we often resort to creating a variable to store this GUID, assigning it a more intuitive name. For example:
var contributerRoleId = 'b24988ac-6180-42a0-ab88-20f7382dd24c'
var windowsAdminCenterAdministratorLoginRoleId = 'a6333a3e-0164-44c3-b281-7a577aff287f'
var roles = [
  resourceId('Microsoft.Authorization/roleDefinitions', contributerRoleId)
  resourceId('Microsoft.Authorization/roleDefinitions', windowsAdminCenterAdministratorLoginRoleId )
]

Considering that this name-to-GUID mapping is consistent across projects, it would be beneficial to incorporate it into the Bicep language itself.
This could potentially look like:
var roles = [
  roleId('contributerRoleId')
  roleId('windowsAdminCenterAdministratorLoginRoleId')
]

This would greatly enhance readability and usability.

My work around for this is to use
var azureRoles = loadJsonContent('azure_roles.json')
then I reference the role, the following example is for an Azure OpenAI role
module openAiRoleMgmt 'core/security/role.bicep' = {
name: 'openai-role-mgmt'
params: {
principalId: aadMgmtServicePrincipalId
roleDefinitionId: azureRoles.CognitiveServicesOpenAIUser
principalType: 'ServicePrincipal'
}
}
I create the azure_roles.json using the following Az PowerShell, I still need to make a GitHub action
Connect to Azure
Connect-AzAccount
Retrieve role definitions and create a custom object
$roleMappings = @{}
Get-AzRoleDefinition | ForEach-Object {
$roleMappings[($.Name -replace ' ', '')] = $.Id
}
Convert the custom object to JSON
$json = $roleMappings | ConvertTo-Json
Convert JSON to PowerShell object
$jsonObject = $json | ConvertFrom-Json
Convert to hashtable, sort it and then to custom object
$sortedHashtable = @{}
$jsonObject.PSObject.Properties | ForEach-Object {
if ($.Name -notmatch "IsFixedSize|IsReadOnly|IsSynchronized|Keys") {
$sortedHashtable[$.Name] = $.Value
}
}
$sortedObject = New-Object PSObject
$sortedHashtable.GetEnumerator() | Sort-Object Name | ForEach-Object {
$sortedObject | Add-Member -NotePropertyName $.Name -NotePropertyValue $_.Value
}
Convert back to JSON, specify the depth to ensure all nested objects are converted
$sortedJson = $sortedObject | ConvertTo-Json -Depth 5
Output the sorted JSON
$sortedJson | Out-File "azure_roles.json"
https://github.com/microsoft/azure-roles

@elirandav can you try the workaround and let us know if this is an improvement to your use case?

Thank you @paullizer. That’s definitely an improvement.

https://github.com/microsoft/azure-roles
My work around for this is to use :
var azureRoles = loadJsonContent('azure_roles.json')

then I reference the role, the following example is for an Azure OpenAI role
module openAiRoleMgmt 'core/security/role.bicep' = {
  name: 'openai-role-mgmt'
  params: {
    principalId: aadMgmtServicePrincipalId
    roleDefinitionId: azureRoles.CognitiveServicesOpenAIUser
    principalType: 'ServicePrincipal'
  }
}

I create the azure_roles.json using the following Az PowerShell, I am adding a GitHub Action to periodically incorporate any changes to the built-in roles.
# Connect to Azure
Connect-AzAccount

# Retrieve role definitions and create a custom object
$roleMappings = @{}
Get-AzRoleDefinition | ForEach-Object {
    $roleMappings[($_.Name -replace ' ', '')] = $_.Id
}

# Convert the custom object to JSON
$json = $roleMappings | ConvertTo-Json

# Convert JSON to PowerShell object
$jsonObject = $json | ConvertFrom-Json

# Convert to hashtable, sort it and then to custom object
$sortedHashtable = @{}
$jsonObject.PSObject.Properties | ForEach-Object {
    if ($_.Name -notmatch "IsFixedSize|IsReadOnly|IsSynchronized|Keys") {
        $sortedHashtable[$_.Name] = $_.Value
    }
}
$sortedObject = New-Object PSObject
$sortedHashtable.GetEnumerator() | Sort-Object Name | ForEach-Object {
    $sortedObject | Add-Member -NotePropertyName $_.Name -NotePropertyValue $_.Value
}

# Convert back to JSON, specify the depth to ensure all nested objects are converted
$sortedJson = $sortedObject | ConvertTo-Json -Depth 5

# Output the sorted JSON
$sortedJson | Out-File "azure_roles.json"

FYI, I've added a GitHub action that runs nightly to add new built-in roles.
https://github.com/microsoft/azure-roles
You can add this GitHub action to your repo to achieve the same result.

Related to #1895 , will close this one and track there!


Undefined method for an in-built Ruby method - only occuring in Docker images

I have the following Image:
FROM rails:4.2.0
# Copy Rails  app
COPY .  /apps
WORKDIR /apps
RUN bundle install
VOLUME ["/var/log/spree-vend"]
EXPOSE 3000
And have the following undefined method error for the built-in PP method, occurring only, within the Docker image called within a controller..
Processing by VendInventoryController#update as
Apr 10 16:27:25 stg.okla.co.uk production.log: I, [2015-04-10T14:27:25.717912 #1]  INFO -- :   Parameters: {"domain_prefix"=>"oklahoma", "type"=>"inventory.update", "payload"=>"{"id":"8dac979f-2a43-fda1-fd29-d566c586ce60","product_id":"b8ca3a6e-7230-11e4-efc6-a7a97d2062f7","outlet_id":"bc305bf5-da30-11e4-f357-ddfb498dd76e","attributed_cost":"1.25","count":"40","reorder_point":"3","restock_level":"12","product":{"id":"b8ca3a6e-7230-11e4-efc6-a7a97d2062f7","sku":"13211","handle":"KatieLeamoncardcongratswreath","source":"USER","active":"1","name":"Katie Leamon card congrats wreath","base_name":"Katie Leamon card congrats wreath","description":"","supply_price":"1.25","taxes":[{"outlet_id":"bc305bf5-da30-11e4-f357-ddfb498dd76e","tax_id":"9ad7f284-d87d-11e2-a415-bc764e10976c"},{"outlet_id":"ea7bc68f-b40e-11e3-a0f5-b8ca3a64f8f4","tax_id":"9ad7f284-d87d-11e2-a415-bc764e10976c"},{"outlet_id":"bc305bf5-da30-11e4-f357-ddfb498dd76e","tax_id":"9ad7f284-d87d-11e2-a415-bc764e10976c"}]},"outlet":{"id":"9adf8a87-d87d-11e2-a415-bc764e10976c","name":"Oklahoma Gift","time_zone":"Europe\/London","tax_id":"9ad7f284-d87d-11e2-a415-bc764e10976c"}}", "version"=>"1"}
Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.722798 #1] ERROR -- : Exception occured: NoMethodError - undefined method pp' for #<VendInventoryController:0x007fbfccc8b688> Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.722880 #1] ERROR -- : Exception backtrace: Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.723016 #1] ERROR -- : => /apps/app/controllers/base_controller.rb:16:in parse_request'
Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.723096 #1] ERROR -- : => /usr/local/bundle/gems/activesupport-4.2.0/lib/active_support/callbacks.rb:427:in block in make_lambda' Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.723175 #1] ERROR -- : => /usr/local/bundle/gems/activesupport-4.2.0/lib/active_support/callbacks.rb:163:in call'
Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.723268 #1] ERROR -- : => /usr/local/bundle/gems/activesupport-4.2.0/lib/active_support/callbacks.rb:163:in block in halting' Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.723353 #1] ERROR -- : => /usr/local/bundle/gems/activesupport-4.2.0/lib/active_support/callbacks.rb:92:in call'
Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.723423 #1] ERROR -- : => /usr/local/bundle/gems/activesupport-4.2.0/lib/active_support/callbacks.rb:92:in _run_callbacks' Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.723508 #1] ERROR -- : => /usr/local/bundle/gems/activesupport-4.2.0/lib/active_support/callbacks.rb:734:in _run_process_action_callbacks'
Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.723579 #1] ERROR -- : => /usr/local/bundle/gems/activesupport-4.2.0/lib/active_support/callbacks.rb:81:in run_callbacks' Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.723648 #1] ERROR -- : => /usr/local/bundle/gems/actionpack-4.2.0/lib/abstract_controller/callbacks.rb:19:in process_action'
Apr 10 16:27:25 stg.okla.co.uk production.log: E, [2015-04-10T14:27:25.723746 #1] ERROR -- : => /usr/local/bundle/gems/actionpack-4.2.0/lib/action_controller/metal/rescue.rb:29:in process_action' Apr 10 16:27:25 stg.okla.co.uk production.log: D, [2015-04-10T14:27:25.726717 #1] DEBUG -- : Exception raised: NoMethodError: undefined method pp' for #VendInventoryController:0x007fbfccc8b688

Turns out that a require is needed. Not sure why locally it is not required and with in Docker image it is. Then again I am a newbie to Ruby.


aspirate harbor reported an error when adding the local mirror vault!!!

The ip address of the harbor image repository for my virtual machine is <IP_ADDRESS>:8086. What is the problem?

I'm not sure, sorry
CONTAINER1013 is raised by the dotnet SDK, not by aspirate.
What happens when you try to build and publish the container using the dotnet sdk?
Can you show those logs please?

Sorry, I don't know how to find the log,.net sdk does not seem to support http, only support https as the repository, I have this confusion, you can try


Addressed Tableau submission CI failure

Description
Fixed the issues listed below and updated the taco file in the repo.
Made connector more secure by removing username and password in the url as recommended in https://tableau.github.io/connector-plugin-sdk/docs/api-reference.
CI failures include:

lack of connectionProperties.js file in the connector files

Used https://github.com/tableau/connector-plugin-sdk/blob/master/samples/plugins/postgres_jdbc/connectionProperties.js as a reference to add this file.

lack of use of connectionProperties in the connectionResolver.tdr file

mismatch version between taco version (1.0) and manifest file version (previously <IP_ADDRESS>, changed to 1.0)

Check List

[ ] New functionality includes testing.

[ ] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Merging with known CVE. https://github.com/opensearch-project/sql-jdbc/issues/109
Fix is not yet available at this time.


Adding Trim

Hello
Could you please add support for armor trim?

you can just roll back to miapi 1.1.28 and it should work, the next update should release soonish

thanks a lot


Enforce validity of theme icon references for commands

Two things:

Aligns regex with one in src\vs\base\common\codicons.ts, mainly that it allows numbers in the name
Enforce no animations in the icon reference (e.g. ~spin)

Right now there's very little error checking or feedback for the icon property on contributed commands. Referencing non-existent icons will silently succeed, adding an animation will silently succeed, etc. This seeks to add a little bit of sanity checking by telling developers that ~spin is invalid, rather than leaving them to figure it out themselves. Without this, icon references such as $(loading~spin) will show the icon, but with no animation, which is confusing and a subpar DX.
It would be nice if it could also enforce a valid icon name, but that's more involved, and I don't know if all of that information is available at checking time.

CI failure looks unrelated.

Looks like we still have some loose ends with the theme icon modifiers
For codicon labels:
https://github.com/microsoft/vscode/blob/f89bb0d54abaecb0c43759894e510f1c3d0f2bc1/src/vs/base/browser/codicons.ts#L31
For other themed icons:
https://github.com/microsoft/vscode/blob/master/src/vs/platform/theme/common/themeService.ts#L83
So far I've seen two modifiers: disabled and spin.
The modifier is just an additional selector and I imagined that we can implement the generically for all icons
Something like
.codicon.spin {
   animation: codicon-spin 1.5s steps(30) infinite;
}
.codicon.disabled {
   opacity: 0.4
}

@aeschli, I didn't really follow that comment. I think I'm missing some context. Looks like you've been making commits related to codicons/ThemeIcon, so I'm guessing your comment is related to those changes? I'm happy to close this PR if other work is being done to accomplish the validity checking.

I want that modifiers (~spin) work everywhere: both in labels with icons as well as all other places where theme icons can be used.
-> closing this issue

I created https://github.com/microsoft/vscode/issues/112298 to make modifiers work everywhere


Automation with latest build + CW 0.9

@jbenoit44 - Can you describe the problem?

Automation pck ask for CW 0.9 uninstall.
J BENOIT
Le 6 nov. 2015 06:31, Andreas Dieckmann<EMAIL_ADDRESS>a écrit :@jbenoit44 - Can you describe the problem?
—Reply to this email directly or view it on GitHub.

Did you have Clockwork installed before you installed DynamoAutomation?

I am closing this for now. Feel free to re-open.


document Blink usage?

Hi Simon,
Really nice stuff here! I wanted to start and play with this for an "InteractLight" that minimizes the use of Julia/JavaScript libraries. Do you have a simple snippet to use this with Blink? Maybe it's obvious how to use this in Blink but I couldn't quite figure it out.

So blink isn't really supported...
with_session() do session, request
   return DOM.div("hi")
end

Should show in the Atom plotpane though and also in the browser under localhost:8081/show.
If you want to display an app in a standalone electron window use:
using Electron, JSServe

app = JSServe.Application("<IP_ADDRESS>", 8081) do session, request
    return JSServe.DOM.div("hello world")
end
win = Electron.Window(Electron.URI("http://localhost:8081"))


unreachable code warning when break iterator without loop

d:/Projects/git/k-square/src/main.js:19: WARNING - unreachable code
for(var iWantFirstValueOfIterable of []) break;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

This looks like a legitimate warning to me. The break will never be executed. The error message could have been better by only highlighting the break part.


0.0.1-alpha1 Unable to access "Liquidsoap harbor source code"

/admin/settings/harbor-custom-config/ returns the following post "clean" upgrade/re-install to 0.0.1-alpha1 from the dev version.
Not Found
The requested resource was not found on this server.

App container gives the following:
today at 09:58  [2021-03-24 09:58:35,190] WARNING:django.request:224:log_response: Not Found: /admin/settings/harbor-custom-config/

Thanks for the report and testing out the software at this stage! Will look into this tomorrow.

@scottgrobinson If you'd like a fix immediately before the next release, do something like the following in your installation,
git pull --ff-only

# This may take a while
./compose.sh build app
./compose.sh stop app
./compose up -d app

./compose.sh just thinly wraps docker-compose :)


Implement ipython profile

This will allow for customizing the Jupyter experience. We will need to point to our templated directory in the IPYTHONDIR environment variable. We will need to duplicate pythonrc.py here. Also, we can't have the dot-prefix because for some reason Jupyter doesn't load the file then!
We will use the startup folder of the IPython profile folder to configure Jupyter.

Fixing #43 also fixes this.


Encrypt files

Hello - Decrypt works fine however, after editing the files I have no way to recompress/reencrypt them again and add them to my modem with my new settings. Is an encryptor in the pipeline? Cheers!

Shouldn't be too hard to implement. I don't have this router any more though, so I won't be able to test this. If you do the testing I'd be happy to implement that feature though. I'm glad someone is finding this useful.

Sure, I'' do the testing for you. Any ideas on how to dump the flash or enable ssh are more than welcome. I have found a way to set the ftp/login/SMB passwords to known values.

Implemented an additional tool "Encrypt" to encrypt files. Decrypting them with Decrypt works and yields the exact same file.
Can be tested by encrypting the Encrypt binary itself, for example:
  ./Encrypt Encrypt abc
  ./Decrypt abc def
  diff -s Encrypt def


Add date when 99.99999% plant

Maybe even a graph... 🤔

Hi there, could you be more specific on what date do you want to be added and where do you want the date to be displayed


DEC double-height ANSI sometimes not rendered

Windows Terminal version
1.17.11461.0
Windows build number
Windows 10 [Version 10.0.19045.3208]
Other Software
TCC.exe (take command command line)
Steps to reproduce
I know I'm a bit strange in my ways, but I pipe my copy  and move commands through a postprocessor ("copy-move-post.py") in python to make them more visually appealing and more "screamy" because of the way my attention works as well as my aesthetic tastes.
The file copies/moves end up with a summary that I repurpose into double-height (DEC) ansi.  Really helps when watching stuff happen from across the room.
Sometimes this just....... doesn't render. I don't know why.
I feel like it's something I'm doing, but I also feel like this shouldn't happen regardless of what I'm doing.   So I feel like it's a dual-ended bug.
Here's an example:

Oops, I deleted a FLAC I wanted to keep.  I will undelete it to show what proper output looks like:

So yeah, normally it renders just fine.
But sometimes it doesn't.
I'll provide the code in comments.
Expected Behavior
I would expect it to render properly, like this:

Actual Behavior
It renders improperly, like this:

Interesting, thanks for sharing!

This always means that somebody turned off ENABLE_VIRTUAL_TERMINAL_PROCESSING using SetConsoleMode on the output handle. This often happens when multiple processes are attached to the same console: one terminates and tries to restore the console mode (often directly, by opening the special handle CONOUT$ regardless of redirection (!)) before the other is done printing text in the mode that it had requested.
This will largely be solved by making the console mode "per-process" inheritable state, but we're not quite prepared for that today.

Interesting, thanks for sharing!

But of course :)

This always means that somebody turned off ENABLE_VIRTUAL_TERMINAL_PROCESSING using SetConsoleMode on the output handle.

Well, "somebody" seems like a strong word, haha :)
I mean, it happens sometimes, and it doesn't happen other times, but this is just me piping through Python.  I suppose the colorama autoreset option could have some interplay?

This often happens when multiple processes are attached to the same console: one terminates and tries to restore the console mode (often directly, by opening the special handle CONOUT$ regardless of redirection (!)) before the other is done printing text in the mode that it had requested.

Is that what happens with piping?  That sounds suspiciously like what happens with piping.  My command finishes before the postprocessor finishes -- it would have to by definition.
Hmm, very compelling.

This will largely be solved by making the console mode "per-process" inheritable state, but we're not quite prepared for that today.

Any idea how I can fix it within the context of my usage here?   Because it only happens sometimes. So it's a timing issue I think?

So, usually I'd drop this at the start of all the python scripts I run: https://github.com/zadjii/win-py-vt/blob/master/enable.py
but since this seems to be a timing thing, I'd just sprinkle in enable_vt_support before wherever you output VT and it isn't working 🤷♂

So, usually I'd drop this at the start of all the python scripts I run: https://github.com/zadjii/win-py-vt/blob/master/enable.py
but since this seems to be a timing thing, I'd just sprinkle in enable_vt_support before wherever you output VT and it isn't working 🤷♂

OMG Thank you very much for this arcane voodoo!  I'll have no way of knowing if it fixed things other than if the problem doesn't seem to manifest over the next few weeks.
I wonder if anyone else is piping their move/copy commands to a postprocessing script like weird-ol'-me.

ninja: this might be worthy of just moving to a Discussion thread

I'm glad it seems better now! I'll mark this issue as a /duplicate of #4954, as fixing #4954 would fix your issue permanently and in a more robust manner.


Display objective measurement alongside subjective measurement

e.g., when selecting "one slice" of bread, provide a way to see how many g/ml/oz/tbsp/floz one slice is equivalent to
Feels like it could be a pain but I figured it was worth pitching.

Closing. Will reopen with a response!

Here's my disgusting mockup! I figure there's plenty of room on this screen. Perhaps all available measurements could be beneath the buttons? In my mind I imagine this would update as text is entered.

I think this would also help the app be a tiny bit more proactive. Being able to see the calorie/protein estimate before submitting a record reduces friction.

Ok, finally addressed this. It was a very good idea that I took way to long to get too. If you have any comments, let me know!
Resolved in #162


Error Install

🧐 Have you read the FAQ and viewed similar issues?

[ ] I have read the FAQ
[X] I have checked older issues, open and closed
[ ] I did a clean install of SpotX as described in the FAQ

Сountry of your account
Indonesia
What is your Spotify Plan?
Free
Do you have Spicetify installed?
No
ℹ Computer information
- Spotify: Spotify for Windows
<IP_ADDRESS>6.g3ae3b4f3
- Windows: Windows 11
- PowerShell: 5.1.22000.832

📝 Description
I have tried to install and re-install the error appears in the attached image. when spotify is run Ads still appear every time you play a song from 1-4 songs. Is this just happening to me?
📸 Screenshots

Why are you ticking that you read the FAQ?

Done solved thx


Gdrive robust second pass system

Second attempt for a Gdrive double pass (or more).
Much more robust this time, and if you need to be convinced, here is a video that will do it:
https://www.loom.com/share/0804428cf5b7404aa52f8521ec57ce92
Working on a second PR about measuring the webhook hit ratio right now.

Can you remind me what was the issue with the previous version of second pass?

@spolu we had a weird bug that we could not really understand because we were executing the same workflow (incrementalSyncWorkflow) from this workflow itself. We ended up just reverting the commit because on top of that, it was not handling the debounce properly.

I need to change the QUEUE version here and deploy accordingly.


Update index.html for issue #81

I updated "Professionalism" issue #81 under starting the Franchise section of the Silk Corp guide.

Yeah, I haven't used Marisa for the content of any issue regarding the Silk Corp guide. From now onwards I will use Marisa for data collection.


update cmd processors: change print func to avoid $ at the end of print line

fmt.Fprint(os.Stdout, out) -> fmt.Fprintf(os.Stdout, "%s\n", out)

Hello,
Many thanks for you PR, can you please explain the use-case of newline a bit more?
Also thanks for new processor.

Hello,
Many thanks for your PR, really appreciate your time and poking around with codes.
Can you please explain the use-case of newline a bit more?
Also thanks for new processor.


disable sampling filter for textures

Hi, not sure what's the best place to put this so feel free to transfer/redirect me.
I was trying to figure out if it's possible to disable the filter set in pygfx TextureView and found that it eventually ends up calling wgpu::FilterMode which seems to be directly from the WGPU API. It only has options for nearest and linear. I was wondering if there's any way to bypass the sampling filter or turn it off? This would make it easy to display scientific heatmaps and rasterplots without interpolation.
Thanks!

I think that nearest is what you mean with off :)
Longer answer: strictly speaking a pixel is an (infinitely small) point. To fill in the space between the pixels you need some interpolation method. With nearest you pick the value of the nearest pixel. With linear you linearly combine the values of the 2 (1D), 4 (2D) or 8 (3D) nearest pixels. And then there are a variety of cubic interpolation methods that take more pixels into account.

@rob-the-bot thanks for looking into it further!
I think I found where it's actually creating the TextureView for the image data that is set to the Geometry grid, https://github.com/pygfx/pygfx/blob/d6941399fc887f2a26879f64169000a53afdfaa1/pygfx/renderers/wgpu/imagerender.py#L70
Setting this to nearest works for me, note that this is running as a desktop window so you don't see the jpeg smoothing the edges as seen in notebooks via jupyter_rfb

I'm wondering what's the best way to customize the filter (and other Texture) settings for the displaying Images:

Always use a TextureView, so then:

pygfx.Image(
    pygfx.Geometry(grid=TextureView(<data>, filter=<filter>)
    ...

Is there any downside to using TextureView rather than Texture for setting grid?

The other possibility is adding filter as a kwarg to Texture, which it can pass to TextureView instances when it creates them. I'm thinking that the first idea is better since it doesn't modify the API.

Is there any downside to using TextureView rather than Texture for setting grid?

Pygfx sometimes allows specifying a texture when it really needs a textureview, and then creates the view itself. I think it would be a good idea to make this more consistent and simply require a view where it needs one.

@rob-the-bot I think you want to set the textureview for the grid to nearest, and can probably leave the colormap to linear.

Pygfx sometimes allows specifying a texture when it really needs a textureview, and then creates the view itself. I think it would be a good idea to make this more consistent and simply require a view where it needs one.

Thanks! It would be very useful (for performance) to set thekwargs that are used by Texture.get_view() when creating a Texture instance. Because the image_renderer just calls it with filter="linear".
If you think this addition is appropriate I can implement it :)
To elaborate:
This is slow
texture_view = pygfx.Texture(<data>, dim=2).get_view(filter="nearest")

image = pygfx.Image = pygfx.Image(
    pygfx.Geometry(grid=texture_view),
    pygfx.ImageBasicMaterial(clim=<minmax>, map=<some cmap>)
)

def animate(new_data):
    image.geometry.grid = pygfx.Texture(data, dim=2).get_view(filter="nearest")

This is fast but uses the default filter="linear":
texture = pygfx.Texture(<data>, dim=2)

image = pygfx.Image = pygfx.Image(
    pygfx.Geometry(grid=texture),
    pygfx.ImageBasicMaterial(clim=<minmax>, map=<some cmap>)
)

def animate(new_data):
    image.geometry.grid.data[:] = data
    image.geometry.grid.update_range((0, 0, 0), image.geometry.grid.size)

I think the correct approach would be:
texture = pygfx.Texture(<data>, dim=2)

image = pygfx.Image = pygfx.Image(
    pygfx.Geometry(grid=texture.get_view(filter="nearest")),
    pygfx.ImageBasicMaterial(clim=<minmax>, map=<some cmap>)
)

def animate(new_data):
    image.geometry.grid.data[:] = data
    image.geometry.grid.update_range((0, 0, 0), image.geometry.grid.size)

That said, the textureview is an abstraction that is extra cognitive load if you're just interested in an image. So we could think about making it a bit simpler. Some options, just to list some ideas:

Let the texture define the default kwargs for the view (what you suggested).
Let a texture have an internal view that is used when the texture is passed, and in the texture's init you can specify the filtering for it.
Define a SimpleTexture that combines a texture and view in one.

As a side-note: in pygfx we don't support using part of a buffer yet (using offset and size). It might be that a future API for that includes something like a buffer view. If that happens, it would be good if we could keep the texture/textureview and buffer/bufferview API's similar.

My vote is on the second option!
I don't think the texture/view abstraction is all that complicated. We could perhaps document it more clearly.
My simplified understanding is that the texture is just a reference to the data, and the view is the sampling configuration that you want to use with a texture. It's a pretty powerful concept in the sense that you can sample the same data with different views!

Another option that I mentioned in an earlier comment:

Disallow passing a texture where a textureview is required. We'd have to adjust some of our examples, and we could document the distinction better.

I think the correct approach would be:
texture = pygfx.Texture(<data>, dim=2)

image = pygfx.Image(
    pygfx.Geometry(grid=texture.get_view(filter="nearest")),
    pygfx.ImageBasicMaterial(clim=<minmax>, map=<some cmap>)
)

def animate(new_data):
    image.geometry.grid.data[:] = data
    image.geometry.grid.update_range((0, 0, 0), image.geometry.grid.size)

This does not work,
    image.geometry.grid.data[:] = np.random.rand(512, 512).astype(np.float32) * 255
AttributeError: 'TextureView' object has no attribute 'data'
Draw error: 'TextureView' object has no attribute 'data' (2)

Let a texture have an internal view that is used when the texture is passed, and in the texture's init you can specify the filtering for it.

Do you mean a TextureView instance is always present in a Texture instead of a new instance created each time get_view() is called?

Closing. Following up in https://github.com/pygfx/pygfx/issues/350

Try:
image.geometry.grid.texture.data[:] = np.random.rand(512, 512).astype(np.float32) * 255
                     /\

Do you mean a TextureView instance is always present in a Texture instead of a new instance created each time get_view() is called?

That would be the idea of that option, yeah.

just want to followup because I finally got around to trying this and it works:
world_object.geometry.grid.texture.data[:] = np.random.rand(512, 512)
world_object.geometry.grid.texture.update_range((0, 0, 0), size=world_object.geometry.grid.texture.size)


Rewrite front end in AngularJS (?)

Will be rewritten in react. I close this because it is a duplicate of #3.


destreamer.js missing

Hello!
Same as Aknabacus (Module missing destreamer.js #85  closed issue), I cannot find:
build\src\destreamer.js             in my destreamer folder
(and for a blink second I have an error message similar to Aknabacus's one)
but I did create a file .cmd containing:
git clone https://github.com/snobu/destreamer
cd destreamer
npm install
npm run build
(as was suggested to Aknabacus)
and I do have:   Node.js, npm, ffmpeg (in the same directory as README) and git
and now a "destreamer" folder with the following folders:   .github, .vscode, assets, ffmpeg..., node_modules, scripts, src, test
But I haven't any "build" folder
So, what is it I did wrong?

paste the error

When I try to open destreamer.cmd, this is what appears for a split second:

internal/modules/cjs/loader.js:960
throw err;
^
Error: Cannot find module 'C:\Users\Lea\Desktop\Covid\sos\destreamers\build\src\destreamer.js'
�[90m   at Function.Module._resolveFilename (internal/modules/cjs/loader.js:957:15)�[39m
�[90m   at Function.Module._load (internal/modules/cjs/loader.js:840:27)�[39m
�[90m   at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:74:12)�[39m
�[90m   at internal/main/run_main_module.js:18:47�[39m {
code: �[32m'MODULE_NOT_FOUND'�[39m,
requireStack: []
}

This has not been pasted because the window disapears immediatly: I wrote it from a printscreen

I think you didn't build destreamer using the instructions in the reasons.md

cd to your destreamer folder with
cd destreamer

then install dependencies and build -
npm install
npm run build

That's it, now you can follow the README for usage.

Thanks to all your advice, "Destreamer was built successfully"
It was actually very simple but I lacked basics, so it's been a long journey...
Thank you Kylon, Lukaarma and Snobu

No problems!
If it's all working and downloading as intended please go ahead and close the issue, otherwise we are happy to help you

It's working (despite many wanderings) but it starts again once the download has been completed with a new video entitled "[video_name] - 1", which is not really a problem (I just have to close the command prompt and delete the new file)
Is there a way to fix that?

Did you feed Destreamer more than one link?
If not can you please run it with the verbose flag and paste back here the output (take care of censoring your personal info)

It's working (despite many wanderings) but it starts again once the download has been completed with a new video entitled "[video_name] - 1", which is not really a problem (I just have to close the command prompt and delete the new file)
Is there a way to fix that?

That happens to me when i download multiple videos with the same title, this last aspect being due to default file name generation of teams recordings.

(c) 2019 Microsoft Corporation. Tutti i diritti sono riservati.
C:\Windows\System32>cd C:\Users\Lea\Desktop\Equipe\sos\destreamer
C:\Users\Lea\Desktop\Equipe\sos\destreamer>destreamer.cmd -i https://web.microsoftstream.com/video/VIDEO-1 --verbose
Using ffmpeg version git-2020-04-29-280383a Copyright (c) 2000-2020 the FFmpeg developers
Video URLs:
[
'https://web.microsoftstream.com/video/VIDEO-1'
]
Access token has expired.
Launching headless Chrome to perform the OpenID Connect dance...
Navigating to login page...
We are logged in.
Wrote access token to token cache.
At this point Chromium's job is done, shutting it down...
Fresh access token dropped into .token_cache
Video GUIDs:
[ 'VIDEO-1' ]
Fetching metadata...
Calling https://euwe-1.api.microsoftstream.com/api/videos/VIDEO-1?api-version=1.4-private
[ 'videos' ]
Downloading Video: Riunione in "Generale"
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
(...)
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
Spawning ffmpeg with access token and HLS URL. This may take a few seconds...
Using a fresh cookie.
progress [████████████████████████████████████████] 100% 197.0kbits/s 0s
Download finished: videos\Riunione in Generale - 16-04-2020.mp4
Using ffmpeg version git-2020-04-29-280383a Copyright (c) 2000-2020 the FFmpeg developers
Video URLs:
[
'https://web.microsoftstream.com/video/VIDEO-1'
]
Access token still good for 59 minutes.
Video GUIDs:
[ 'VIDEO-1' ]
Fetching metadata...
Calling https://euwe-1.api.microsoftstream.com/api/videos/VIDEO-1?api-version=1.4-private
[ 'videos' ]
Downloading Video: Riunione in "Generale"
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
(...)
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
Spawning ffmpeg with access token and HLS URL. This may take a few seconds...
Using a fresh cookie.
progress [░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░] 0% 0 0s
ffmpeg returned an error: https://euwe-1.api.microsoftstream.com/api/videos/manifest?api-version=1.0&playbackurl=https://o5wonsl3ikd5uf2s3qeavxkf4d-euwe.streaming.media.azure.net/c750e57b-488f-4a70-840c-9cdad272d592/1-5uzexnjuqyxqrzmo2qxxv7ngoc.ism/manifest(format=m3u8-aapl): Invalid data found when processing input
Unknown FFmpeg error
C:\Users\Lea\Desktop\Equipe\sos\destreamer>

Ok thanks it's the same as #111, closing this one and moving the discussion there

thanks

Fixed via https://github.com/snobu/destreamer/commit/0f7f585debab86d544813887f8daa99e789cda3c
git pull to get the new (fixed) cmd script.


Add IpSubnetFilterExample

Motivation:
We should have an example for using IpSubnetFilterRule to filter traffic using Netty.
Modification:
Added IpSubnetFilterExample
Result:
Example for usages of IpSubnetFilterRule

Honestly I am not sure we need an example for this...

People usually ask about how to filter IP on our discord.

@hyperxpro got it... Let's pull it in... That said the right answer is often to use something like iptables

Right, that's what I always suggest though.
Thanks btw!


SubHeader content Links to pages still in screen when component closed

It seems that the Link tags in the contents of the SubHeader are still "showing" even when the component is not open

Fixed with #21


paket pack fails when assembly uses attribute defined in other assembly.

See example C# solution: https://github.com/dmitryvk/PaketPackExample
I have a 2 projects: project ClassLibrary1 defines custom attribute, and project PaketPackExample attaches this attribute to the output assembly. I'm trying to pack the PaketPackExample as nuget package and I'm getting the following output:
$ /c/users/user/Downloads/paket pack output build buildconfig Debug
Paket version <IP_ADDRESS>
Loading custom attributes failed for PaketPackExample, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null.
Message: Could not load file or assembly 'ClassLibrary1, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' or one o
f its dependencies. The system cannot find the file specified.
Paket failed with:
        Could not load file or assembly 'ClassLibrary1, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' or one of
 its dependencies. The system cannot find the file specified.

If I comment out the following line from PaketPackExample/Properties/AssemblyInfo.cs:
[assembly: ExampleCustom]

then paket pack produces nuget package.
The problem seems to be that GetCustomAttributes tries to load assemblies that define custom attributes (and GetCustomAttributesData seems to do the same).
With --verbose the output is as follows:
$ /c/users/user/Downloads/paket pack output build buildconfig Debug --verbose
Paket version <IP_ADDRESS>
found: c:\bars\code\git\PaketPackExample\paket.dependencies
Parsing c:\bars\code\git\PaketPackExample\paket.dependencies
Loading assembly metadata for c:\bars\code\git\PaketPackExample\PaketPackExample\bin\Debug\PaketPackExample.exe
Loading custom attributes failed for PaketPackExample, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null.
Message: Could not load file or assembly 'ClassLibrary1, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' or one o
f its dependencies. The system cannot find the file specified.
Paket failed with:
        Could not load file or assembly 'ClassLibrary1, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' or one of
 its dependencies. The system cannot find the file specified.
StackTrace:
     at System.ModuleHandle.ResolveType(RuntimeModule module, Int32 typeToken, IntPtr* typeInstArgs, Int32 typeInstCount
, IntPtr* methodInstArgs, Int32 methodInstCount, ObjectHandleOnStack type)
   at System.ModuleHandle.ResolveTypeHandleInternal(RuntimeModule module, Int32 typeToken, RuntimeTypeHandle[] typeInsta
ntiationContext, RuntimeTypeHandle[] methodInstantiationContext)
   at System.Reflection.RuntimeModule.ResolveType(Int32 metadataToken, Type[] genericTypeArguments, Type[] genericMethod
Arguments)
   at System.Reflection.CustomAttribute.FilterCustomAttributeRecord(CustomAttributeRecord caRecord, MetadataImport scope
, Assembly& lastAptcaOkAssembly, RuntimeModule decoratedModule, MetadataToken decoratedToken, RuntimeType attributeFilte
rType, Boolean mustBeInheritable, Object[] attributes, IList derivedAttributes, RuntimeType& attributeType, IRuntimeMeth
odInfo& ctor, Boolean& ctorHasParameters, Boolean& isVarArg)
   at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeModule decoratedModule, Int32 decoratedMetadataToken,
 Int32 pcaCount, RuntimeType attributeFilterType, Boolean mustBeInheritable, IList derivedAttributes, Boolean isDecorate
dTargetSecurityTransparent)
   at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeAssembly assembly, RuntimeType caType)
   at System.Reflection.RuntimeAssembly.GetCustomAttributes(Boolean inherit)
   at Paket.PackageMetaData.loadAssemblyAttributes(Assembly assembly)
   at Paket.PackageProcess.merged$cont@55(String buildConfig, TemplateFile templateFile, ProjectFile projectFile, Option
alPackagingInfo opt, ProjectCoreInfo md, Unit unitVar)
   at Paket.PackageProcess.f@1-97(String buildConfig, FSharpOption`1 version, HashSet`1 allTemplateFiles, ProjectFile pr
ojectFile, TemplateFile templateFile)
   at Paket.PackageProcess.Pack(DependenciesFile dependencies, String packageOutputPath, FSharpOption`1 buildConfig, FSh
arpOption`1 version, FSharpOption`1 releaseNotes, FSharpOption`1 templateFile)
   at Paket.Dependencies.Pack(String outputPath, FSharpOption`1 buildConfig, FSharpOption`1 version, FSharpOption`1 rele
aseNotes, FSharpOption`1 templateFile)
   at Paket.Program.clo@268-26.Invoke(ArgParseResults`1 results)
   at Paket.Program.processWithValidation[T](FSharpFunc`2 validateF, FSharpFunc`2 commandF, Command command, String[] ar
gs)
   at Paket.Program.processCommand@71-1.Invoke(Command command, String[] args)
   at <StartupCode$paket>.$Paket.Program.main@()

ouch.
/cc @mavnn any ideas how to solve this?

I've tried to find out a way to get custom attributes - but even using ReflectionOnlyLoad & GetCustomAttributesData tries to load assembly.
Maybe using Mono.Cecil instead of reflection would help?

I don't have any immediate ideas, no. Like @dmitryvk my impression is that the whole attribute loading process is pretty brittle.
Something like Cecil might be able to help. I also can't remember from the API whether it's possible to ask for each of the relevant attributes by name and catch the exception for ones it can't find - that might work around the problem.

summoning @dnauck - ideas?

ok I can reproduce on Windows. so this is not a mono issue.

let x = assembly.GetCustomAttributes(typeof<AssemblyDescriptionAttribute>,false)

fails too. So retrieving only the specific attributes won't work.

I might have a "fix".

https://github.com/fsprojects/Paket/pull/828 seems to work, but please review

@dnauck said it doesn't work on his mac.

Also, assembly loading might fail for different reasons - e.g., incompatible versions (different framework versions), different endianness (trying to pack 32-bit assemblies from 64-bit process).

yes I'm open for improvements ;-)
Maybe we need to get rid of it alltogether and try to get the information wiht different techniques

@forki I'd be a bit reluctant to drop this technique, as it potentially means a much larger effort in doing NuGet conversions. There is also already the option of putting the information in the paket.template file, so there's no "requirement" to use the attribute values.
Having said that, we should at the very least document the limitations, and I'm more than happy to brainstorms way it could be made more reliable.

No I don't think we should get rid of extracting info. But maybe we can find a different way.

In theory there is a well defined metadata table in the DLL that we could
extract from the raw binary data (i.e., not loading the assembly as an
assembly at all). Unfortunately I don't really have the time to dig into it

which is a pity, as it looks like it would be quite a fun project.

On Wed, 20 May 2015 at 09:46 Steffen Forkmann<EMAIL_ADDRESS>wrote:

No I don't think we should get rid of extracting info. But maybe we can
find a different way.
—
Reply to this email directly or view it on GitHub
https://github.com/fsprojects/Paket/issues/827#issuecomment-103813025.

@dimitryvk did it at least solve your issue?

I've not yet checked - but will do shortly.

I confirm that the issue is fixed (tested on Windows 7, .net 4.5.1, paket 1.5.0-alpha001).


fix:[CX-1959]: artist follow button

The type of this PR is: BugFix and Enhancement
This PR resolves [CX-1959]
Description
For some artist, our Follow button does not appear on the artist screen. The reason is that the follow button is wrapped by a conditional that checks whether artist has nationality or birthday.
This PR:

display the Follow button without any condition
hides the followers count on artist page, if count < 2

Screenshots
IOS

Android

PR Checklist (tick all before merging)

[x] I have included screenshots or videos to illustrate my changes, or I have not changed anything that impacts the UI.
[x] I have tested my changes on iOS and Android.
[x] I have added tests for my changes, or my changes don't require testing, or I have included a link to a separate Jira ticket covering the tests.
[x] I have added a feature flag, or my changes don't require a feature flag. (How do I add one?)
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added an app state migration, or my changes do not require one. (What are migrations?)
[x] I have added a changelog entry below or my changes do not require one.

Changelog updates
Changelog updates

Cross-platform user-facing changes
Artist page on both IOS and Android is updated by this change.
iOS user-facing changes

Android user-facing changes

Dev changes

This PR contains the following changes:

Cross-platform user-facing changes (Artist page on both IOS and Android is updated by this change.)

  Generated by :no_entry_sign: dangerJS against ab9c8187a99e9ae60c490935750ee5269559a6c0

Nice one, thank you for the extra fix 🙌

thanks! I removed the part about hiding Clear Filters and will create another PR for it with a ticket.

#squashongreen


Missing docker image dustynv/ros:humble-ros-base-l4t-r36.3.0

Preliminary Checks

[X] This issue is not a duplicate. Before opening a new issue, please search existing issues.
[X] This issue is not a question, feature request, or anything other than a bug report directly related to this project.

Description
When trying to build the docker image for Nvidia Jetson, L4T version 36.3.0 with ROS 2 Humble the build fails as the base image dustynv/ros:humble-ros-base-l4t-r36.3.0 used in
https://github.com/stereolabs/zed-ros2-wrapper/blob/855b2494643cd9e6874867a5bfbebc3381764bf8/docker/Dockerfile.l4t-humble#L2
does not exists.
Steps to Reproduce

clone the repo and cd docker
run ./jetson_build_dockerfile_from_sdk_and_l4T_version.sh l4t-r36.3.0 zedsdk4.2.2

Expected Result
The container image shall build without issues
Actual Result
The build fails immediately as the base image does not exist.
Building dockerfile for l4t-r36.3.0 and ZED SDK zedsdk4.2.2
[+] Building 0.9s (2/2) FINISHED                                                                                docker:default
 => [internal] load build definition from Dockerfile.l4t-humble                                                                                0.1s
 => => transferring dockerfile: 4.46kB                                                                                0.0s
 => ERROR [internal] load metadata for docker.io/dustynv/ros:humble-ros-base-l4t-r36.3.0                                                                                0.7s
------
 > [internal] load metadata for docker.io/dustynv/ros:humble-ros-base-l4t-r36.3.0:
------
Dockerfile.l4t-humble:4
--------------------
   2 |     ARG IMAGE_NAME=dustynv/ros:humble-ros-base-${L4T_VERSION}
   3 |
   4 | >>> FROM ${IMAGE_NAME}
   5 |
   6 |     ARG ZED_SDK_MAJOR=4
--------------------
ERROR: failed to solve: dustynv/ros:humble-ros-base-l4t-r36.3.0: failed to resolve source metadata for docker.io/dustynv/ros:humble-ros-base-l4t-r36.3.0: docker.io/dustynv/ros:humble-ros-base-l4t-r36.3.0: not found

ZED Camera model
ZED
Environment
Unrelated to the specific issue.

Anything else?
No response

Hi @beniaminopozzan
Unfortunately, @dusty-nv has not yet released this version:
https://hub.docker.com/r/dustynv/ros/tags?name=humble-ros

Sorry @Myzhar @beniaminopozzan , I did not realize Stereolabs zed-ros2-wrapper dependent on this image.  I will rebuild and push it now.  I have still been pushing the ros-desktop images by default, but I suspect you want the minimal base image.

Hi @dusty-nv , thank you!
Yes please, the minimal base image would be perfect: humble-ros-base-l4t-r36.3.0
If I'm not asking too much, also humble-ros-base-l4t-r36.4.0 would be quite useful!

OK, dustynv/ros:humble-ros-base-l4t-r36.3.0 build and pushed 👍
The R36.4 build of it it hit an error, I am trying again now...


Bugfix/rez build local symlink

Fixes a bug which prevents building with LOCAL_SYMLINK in rc39; in rc38 and prior, the build process would attempt to symlink to a directory with an additional '.' at the end.

...arg. i only meant to submit 7bceacc and 7a19b74, but i barely know how to use git :/

(please ignore this guy, and direct your attention to #288 -- much easier to digest. like ginger ale.)

Closing in favor of #288.


Add these to past events

| Aug 1-6 | BlackHat USA |
| Aug 1 | h@cktivityCon |
| Aug 6-9 | DEF CON Safemode |
| Aug 6-9 | DEF CON AI Village activities during DEF CON Safemode|
| Aug 6-9 | DEF CON AppSec Village activities during DEF CON Safemode|
| Aug 6-9 | DEF CON Aviation Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Bio Hacking Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Blue Team Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Crypto and Privacy Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Ethics Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Hack the Sea Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Hardware Hacking Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON ICS Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON IoT Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Lock Bypass Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Lock Pick Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Monero Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Packet Hacking Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Recon Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Red Team Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Rogues Village activities during DEF CON Safemode|
| Aug 6-9 | DEF CON Social Engineering Village activities during DEF CON Safemode|
| Aug 6-9 | DEF CON Voting Village activities during DEF CON Safemode |
| Aug 6-9 | DEF CON Wireless Village activities during DEF CON Safemode |

Addressed via https://github.com/santosomar/virtualseccons/commit/c7eae460aa9fed71688ecbdefd0908bb19b383be


IndexError in GCN training on custom dataset

🐛 Bug
I have been training a VGAE model with an encoder defined using GCNConv layers and the Inner Product decoder. The dataset is a custom dataset and each graph has varying number of nodes. I have implemented the Dataset class and used the in-built DataLoader for preparing the mini-batches. During training, for a few graphs the model trains without any error while in the middle there is an IndexError: index out of range in self. Also the loss value is nan for the graphs which train without any error. I'm trying to reconstruct the adjacency matrix from the z vector obtained using the GCNConv encoder.
To Reproduce
Steps to reproduce the behavior:

Model code
This is my GCN encoder and the training loop

class GCNEncoder(torch.nn.Module):
	def __init__(self, in_channels, out_channels):
	        super(GCNEncoder, self).__init__()
		self.conv1 = GCNConv(in_channels, out_channels, cached=True)
		self.conv_mu = GCNConv(out_channels, out_channels, cached=True)
		self.conv_logstd = GCNConv(out_channels, out_channels, cached=True)

	def forward(self, x, edge_index, edge_weight):
		x = self.conv1(x, edge_index, edge_weight)
		x = F.relu(x)
		mean = self.conv_mu(x, edge_index, edge_weight)
		logvar = self.conv_logstd(x, edge_index, edge_weight)
		return mean, logvar

def train(dataset, vae_model, optimizer, batch_size, ntrain):
	vae_model.train()

	batches = ntrain
	total_loss = 0.

	for data in dataset:
		#data.num_nodes = data.x.size(0)
		optimizer.zero_grad()
		loss = torch.zeros(1, 1).to(device, dtype=torch.float64)
		print(data.num_nodes, data.x.size(), data.edge_index.size(), data.edge_attr.size())
		z = vae_model.encode(data.x, data.edge_index, data.edge_attr)
		loss = vae_model.recon_loss(z, data.edge_index)
		loss = loss + (1 / data.num_nodes) * vae_model.kl_loss()
		loss.backward()
		optimizer.step()
		print(loss.item())
		total_loss += loss.item()

	total_loss = total_loss/len(dataset)
	return total_loss

Stack trace - With batch_size = 1. For each graph, the number of nodes, the size of the node feature vector, edge index vector and the edge attribute vector are shown.

Graphs split into train and test batches...
Dataset construction done.
Dataset construction done.
Training and test batches prepared...
Graph embedding begins now...
20 torch.Size([20, 9]) torch.Size([2, 328]) torch.Size([328])
nan
58 torch.Size([58, 9]) torch.Size([2, 2838]) torch.Size([2838])
nan
24 torch.Size([24, 9]) torch.Size([2, 508]) torch.Size([508])
nan
36 torch.Size([36, 9]) torch.Size([2, 1094]) torch.Size([1094])
nan
63 torch.Size([63, 9]) torch.Size([2, 3142]) torch.Size([3142])
nan
45 torch.Size([45, 9]) torch.Size([2, 1738]) torch.Size([1738])
nan
46 torch.Size([46, 9]) torch.Size([2, 1712]) torch.Size([1712])
nan
30 torch.Size([30, 9]) torch.Size([2, 780]) torch.Size([780])
nan
76 torch.Size([76, 9]) torch.Size([2, 4938]) torch.Size([4938])
nan
44 torch.Size([44, 9]) torch.Size([2, 1584]) torch.Size([1584])
nan
34 torch.Size([34, 9]) torch.Size([2, 950]) torch.Size([950])
nan
25 torch.Size([25, 9]) torch.Size([2, 464]) torch.Size([464])
nan
46 torch.Size([46, 9]) torch.Size([2, 1826]) torch.Size([1826])
nan
50 torch.Size([50, 9]) torch.Size([2, 2080]) torch.Size([2080])
nan
48 torch.Size([48, 9]) torch.Size([2, 2040]) torch.Size([2040])
nan
49 torch.Size([49, 9]) torch.Size([2, 1994]) torch.Size([1994])
nan
43 torch.Size([43, 9]) torch.Size([2, 1534]) torch.Size([1534])
nan
64 torch.Size([64, 9]) torch.Size([2, 3626]) torch.Size([3626])
nan
53 torch.Size([53, 9]) torch.Size([2, 2410]) torch.Size([2410])
nan
39 torch.Size([39, 9]) torch.Size([2, 1412]) torch.Size([1412])
nan
44 torch.Size([44, 9]) torch.Size([2, 1654]) torch.Size([1654])
nan
37 torch.Size([37, 9]) torch.Size([2, 1178]) torch.Size([1178])
nan
66 torch.Size([66, 9]) torch.Size([2, 3740]) torch.Size([3740])
nan
35 torch.Size([35, 9]) torch.Size([2, 1080]) torch.Size([1080])
nan
62 torch.Size([62, 9]) torch.Size([2, 3080]) torch.Size([3080])
nan
50 torch.Size([50, 9]) torch.Size([2, 2282]) torch.Size([2282])
nan
39 torch.Size([39, 9]) torch.Size([2, 1240]) torch.Size([1240])
nan
43 torch.Size([43, 9]) torch.Size([2, 1554]) torch.Size([1554])
nan
40 torch.Size([40, 9]) torch.Size([2, 1416]) torch.Size([1416])
nan
17 torch.Size([17, 9]) torch.Size([2, 226]) torch.Size([226])
Traceback (most recent call last):
  File "gcn_vae_pytorch_geometric_v1.py", line 347, in <module>
    train_loss, val_loss = trainingloop(train_batches, test_batches, model, 100, learning_rate=0.005, batch_size=batch_size, savecpt=10, ntrain=nbatches_train, nval=nbatches_val)
  File "gcn_vae_pytorch_geometric_v1.py", line 271, in trainingloop
    train_loss = train(trainset, model, optimizer, batch_size, ntrain)
  File "gcn_vae_pytorch_geometric_v1.py", line 212, in train
    z = vae_model.encode(data.x, data.edge_index, data.edge_attr)
  File "/home/sowmya/anaconda3/envs/pygeom/lib/python3.6/site-packages/torch_geometric/nn/models/autoencoder.py", line 155, in encode
    self.__mu__, self.__logstd__ = self.encoder(*args, **kwargs)
  File "/home/sowmya/anaconda3/envs/pygeom/lib/python3.6/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
    result = self.forward(*input, **kwargs)
  File "gcn_vae_pytorch_geometric_v1.py", line 188, in forward
    x = self.conv1(x, edge_index, edge_weight)
  File "/home/sowmya/anaconda3/envs/pygeom/lib/python3.6/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/home/sowmya/anaconda3/envs/pygeom/lib/python3.6/site-packages/torch_geometric/nn/conv/gcn_conv.py", line 182, in forward
    size=None)
  File "/home/sowmya/anaconda3/envs/pygeom/lib/python3.6/site-packages/torch_geometric/nn/conv/message_passing.py", line 234, in propagate
    kwargs)
  File "/home/sowmya/anaconda3/envs/pygeom/lib/python3.6/site-packages/torch_geometric/nn/conv/message_passing.py", line 158, in __collect__
    j if arg[-2:] == '_j' else i)
  File "/home/sowmya/anaconda3/envs/pygeom/lib/python3.6/site-packages/torch_geometric/nn/conv/message_passing.py", line 127, in __lift__
    return src.index_select(self.node_dim, index)
IndexError: index out of range in self

Expected behavior
The reconstruction loss from the VGAE should not be 'nan' and the index error should be explained more clearly. Not able to understand why the error arises for certain graphs and not the others.
Environment

OS: Ubuntu 18.04 LTS
Python version: 3.6
PyTorch version: 1.7.0
CUDA/cuDNN version: None
GCC version: 5.5.0
Any other relevant information: I'm using a conda environment with the necessary libraries installed.

Additional context
Kindly let me know if I have made any mistakes in implementing the VGAE encoder or while calculating the loss using the functions.

Update: I was looking at issue #1861 for which the suggestion was to remove cached=True argument from the GCNConv layer. This solved the IndexError for me too. But the loss values from the VGAE still remains 'nan' for me. Any suggestions to resolve this would be of great help to me.

It‘s best to evaluate any NaN occurencies via torch.autograd.detect_anomaly.

Thank you for the suggestion! I will see how the edge weights can be converted to positive values and try to train the model.


Testing the bootstrap script

I'm curious regarding how you tested the bootstrap script.
Let's say I want to create a similar bootstrap script to yours.
When developing it, how did you test it?

Did you fire up a mac VM?
Used a simple docker container and just tested the files are there after the bootstrap? I'm not that familiar with docker so that might be a weird question.

Thanks!

I don't really test it that much, as I pretty much haven't changed it in a long time.
So... yeah, I don't have a good answer for you. Sorry.


Cannot install Sharp on Windows 10  64bit

When I run install sharp I get this error

npm verb stack Error<EMAIL_ADDRESS>install: (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)
npm verb stack Exit status 1
npm verb stack     at EventEmitter. (C:\Users\vndev\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\index.js:332:16)
npm verb stack     at EventEmitter.emit (events.js:210:5)
npm verb stack     at ChildProcess. (C:\Users\vndev\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
npm verb stack     at ChildProcess.emit (events.js:210:5)
npm verb stack     at maybeClose (internal/child_process.js:1028:16)
npm verb stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:283:5)
npm verb pkgid<EMAIL_ADDRESS>npm verb cwd D:\Working\Freelands\intracom.com.vn
npm verb Windows_NT 10.0.18363
npm verb argv "C:\Program Files\nodejs\node.exe" "C:\Users\vndev\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js" "install" "--verbose" "sharp"
npm verb node v13.1.0
npm verb npm  v6.13.0
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>install: (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm verb exit [ 1, true ]
npm timing npm Completed in 27415ms

npm ERR!      C:\Users\vndev\AppData\Roaming\npm-cache_logs\2019-11-13T14_52_50_225Z-debug.log

Node.js 13 support was added in v0.23.2
#1909

I was uninstall nodejs 13 and install nodejs 11 and it resolved this issue


Audio Driver using OpenAL

In this PR, I coded up an audio driver using OpenAL. The audio driver is split into four main parts:

Audio Buffer: Using buffer utils, I pull the audio data from the assets folder and store it in an array. This data is then to be used by an audio source.
Audio Source: This class is a Component; it's a point in 3D space (or 2D for our case) where noise can come from. It also has this neat property where, if you set the AL_VELOCITY property using alSourcef(), OpenAL can apply the Doppler Effect to the outputted noise, in case we want to use that. We would attach this to a gameObject first to enable properties like it's position (this is easy to implement, I just haven't gotten around to it yet.)
Audio Listener: This class is also a Component. It is what acts like an "ear" of some sorts. All noise calculations are done with the listener in mind (whether to play the noise on the right or left speaker, relative velocity, etc.) and there can only be one listener; that's why its a singleton.
Audio Master: Finally, this is where all the AudioSource's are. At the end of runtime, some amount of cleanup is required before closing the program (sure, the library does it itself, but I'd prefer to do it manualy.)

I tried to document most classes; that may need a little work, though. I hope this is a good start to the audio driver.

I synched up the singleton getters, removed AudioTest, fixed some issues with AudioListener and AudioSource, and made a dedicated scene for testing the driver.

Added a dedicated scene for testing the driver.

Yeah, I don't think an audio batch makes sense: you're gonna call alPlaySource() for each sound you play no matter what.

Audio streaming basically means your sound card isn't overloaded with 2.3 megabytes of data whenever you play a song; instead 8 chunks of data are queued and then refreshed once processed

Nice, I will try to take a look soon.

This is a good start for sure, and I am ready to merge. In the future, if you want to add more contributions, better error handling (not crashing when it can't find a file), wider filetype support, and spatial audio would be awesome.


nixVersions.nix_{2_19,2_20,2_21,2_22}: update

Description of changes
These incorporate the fix for the Darwin sandbox. Updates performed with nix-update.
See also: https://github.com/NixOS/nixpkgs/pull/325929, https://github.com/NixOS/nixpkgs/pull/324958
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[x] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 326153 run on x86_64-linux 1

35 packages built:

cachix (cachix.bin ,cachix.doc)
colmena
devenv
harmonia
hci
hercules-ci-agent
hercules-ci-agent.data
hydra_unstable
nix-eval-jobs
nix-fast-build
nix-fast-build.dist
nix-inspect
nixVersions.nix_2_19
nixVersions.nix_2_19.debug
nixVersions.nix_2_19.dev
nixVersions.nix_2_19.doc
nixVersions.nix_2_19.man
nixVersions.nix_2_20
nixVersions.nix_2_20.debug
nixVersions.nix_2_20.dev
nixVersions.nix_2_20.doc
nixVersions.nix_2_20.man
nixVersions.nix_2_21
nixVersions.nix_2_21.debug
nixVersions.nix_2_21.dev
nixVersions.nix_2_21.doc
nixVersions.nix_2_21.man
nixVersions.nix_2_22
nixVersions.nix_2_22.debug
nixVersions.nix_2_22.dev
nixVersions.nix_2_22.doc
nixVersions.nix_2_22.man
nixd
nixt
nixt.dev

Thank you Emily!


chain() non-iterables

I often need to create an iterable of "this and children" or "this and this.nextSiblings()", which I do with wu.chain([this], this.children()). How about making .chain() accept non-iterables, like this:
rewrapStaticMethod("chain", function* (...iteratees) {
  for (let it of iteratees) {
    if (isIterable(it)) {
      yield* it;
    } else {
      yield it;
    }
  }
});

so it is possible to write wu.chain(this, that, someIterable(), tailBonus).

Generally, I'm not in favor of these kinds of APIs that accept all the possible things you could throw at them with all these different types, and just trying to do the Right Thing. Behavior becomes hard to predict and trying to handle all the edge cases that might make sense in isolation leads towards insanity in aggregate.
If you really want this, feel free to make your own module that adds a chainAllTheThings method to wu or something like that.


feat(#145): Provides TypeConverters view

jolokia-service

View that requires a writeAttribute function so implemented in same style as the 'read' function

Contexts

Narrows the context to use the CamelContext rather than the more general plugin context. Allows for fewer imports when running jest unit tests

So according to Claus #151 (comment) we don't need Type Converters view for Hawtio.next. If there are reusable parts for other features in this pull req, just extract them and create another pull req.

But the TypeConverters statistics portion of the view is still applicable. Should this element be not retained?


tfrobot: always write output.yaml file if not specified

if the user didn't specify the output file with --output, make sure to default it to output.yaml and create it for the user

Verified:
Using tfrobot deploy will now always output to output.yaml if --output is not added.
Also, mentioned in command help section:
$ tfrobot deploy --help
deploy groups of vms in configuration file

Usage:
  tfrobot deploy [flags]

Flags:
  -c, --config string   path to config file
  -d, --debug           allow debug logs
  -h, --help            help for deploy
  -o, --output string   path to output file (default "output.yaml")


Full usage example

Hey, great project!
I was wondering, how do you pass in the gitlab runner configuration file? The example Nomad job file doesn't account for this
Adrian

So I am not really sure what the best procedure is to manage this, as you basically (from my understanding) only need to provide the config whenever you register the runner to gitlab.
So I have one prestart task, checking if the gitlab runner needs to registered in which I provide the config using a template and then share a volume between that task and the actual gitlab runner task.
My Configuration for the runner is (will look into updating the repo soon with a proper version):
[[runners]]
  executor = "custom"
  builds_dir = "/alloc/builds"
  cache_dir = "/alloc/cache"
  [runners.custom]
    config_exec = "/bin/nomad-runner"
    config_args = [ "config" ]
    config_exec_timeout = 200

    prepare_exec = "/bin/nomad-runner"
    prepare_args = [ "prepare" ]
    prepare_exec_timeout = 200

    run_exec = "/bin/nomad-runner"
    run_args = [ "run" ]

    cleanup_exec = "/bin/nomad-runner"
    cleanup_args = [ "cleanup" ]
    cleanup_exec_timeout = 200

    graceful_kill_timeout = 200
    force_kill_timeout = 200


Connect works without a running MongoDB server

I'm more or less using the code from the tutorial:
let server: MongoKitten.Server!

do {
  server = try MongoKitten.Server(hostname: "localhost", port: 27017, automatically: true)
} catch {
  print("eep!")
  fatalError("Can't connect to MongoDB")
}

As a test I stopped the MondoDB server:
$ telnet localhost 27017
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying <IP_ADDRESS>...
telnet: connect to address <IP_ADDRESS>: Connection refused
telnet: Unable to connect to remote host

The app runs fine and just hangs when trying to insert a document into a collection. I looked at the source of Server.swift (bearing in mind that I only started using Swift yesterday) and the connect() method looks weird so I can't debug it.

Ah.. I see. So MongoKitten's Server will initialize without the other end actually running. The reason we allow this to happen is because the biggest use case scenario for this driver is server applications. So let's say if you lose connection with MongoDB for whatever reason you wouldn't want your server application to crash because of it. You'd want to throw 500 internal server errors until it comes back up.
I will however add a method for checking if the connection is alive. I'll get back to you on that.

So, how do I throw a 500 if I can't catch the connection problem in the first place? Then later, the code which actually tries to write to the database just hangs.

You're completely right, sorry about that! I'm going to look into a way to solve this which might be difficult and take some time.

Which MongoKitten version are you running by the way?

url: https://github.com/OpenKitten/MongoKitten.git", majorVersion: 2, minor: 0

When you're executing a command/query on the database, are you being thrown any error? Or none at all?
The part where MongoKitten keeps running when MongoDB goes offline is not a bug, it's a feature.
If you restart MongoDB or have a small connection issue I think it's better to keep attempting to reconnect.

I'll do a couple of tests and let you know

With the MongoDB server running, everything was fine with the document insertion. I then stopped MongoDB and tried again and the request timed out after about 30 seconds with this:
Uncaught Error: MongoError.timeout. Use middleware to catch this error and provide a better response. Otherwise, a 500 error page will be returned in the production environment.

I then restarted MongoDB and refreshed the insert url. The page still timed out. So, the feature you mention is working as expected :-(
Perhaps automatically: true could also be accompanied by reconnect: true which will trigger the connect method in queries and inserts if there is no socket connected?

Maybe automatically: true could also mean both

@darkermatter I'm going to remove the automatically as it doesn't really serve a useful purpose right now.
If you'd like I can add a method to validate the availability of the server.

I have the same problem, my mongo server is down and i set automatically to true, but the constructor doesn't raise an exception...

This is fixed in MongoKitten 3 by the use of the new Database initializer. I'll probably backport this soon.

An idea about release date of MongoKitten 3 ?

Either wednesday or the end of next week's sunday. I can't work on MongoKitten between wednesday and next week. It all depends on how much I'm able to work on it the next two days, but I don't think I'll make wednesday honestly.
For now you can enjoy almost every feature by updating your Package.swift for "3.0.0-alpha"
.Package(url: "https://github.com/OpenKitten/MongoKitten.git", "3.0.0-alpha")
Since I'm unable to work on MongoKitten until the release is near you can expect the code to remain stable almost entirely.
The docs however aren't updated for MongoKitten 3. So if you decide to hop in you'll have to ask me here or on Slack how you'll manage updating your code. It's changing huge parts of the API.


a question about the performance of docker and hyperd

I did a simple benchmark test on hyperd and docker using wrk and nginx, but found that hyperd is quite slower than docker, below is the detailed result:
hyperd
container: hyperctl run -td --name web --memory=1024 nginx
test command: wrk -t12 -c400 -d30s http://<IP_ADDRESS>
test result:
Running 30s test @ http://<IP_ADDRESS>
  12 threads and 400 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    89.74ms   53.11ms   1.98s    98.29%
    Req/Sec   196.38    154.44     1.38k    61.88%
  37871 requests in 30.08s, 30.70MB read
  Socket errors: connect 0, read 0, write 0, timeout 351
Requests/sec:   1258.82
Transfer/sec:      1.02MB

docker
container: docker run -td --name web --memory=1024M nginx
test command: wrk -t12 -c400 -d30s http://<IP_ADDRESS>
test result:
Running 30s test @ http://<IP_ADDRESS>
  12 threads and 400 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    78.93ms  157.39ms   2.00s    85.64%
    Req/Sec     1.98k     0.90k    8.81k    79.95%
  670482 requests in 30.09s, 543.48MB read
  Socket errors: connect 0, read 0, write 0, timeout 25
Requests/sec:  22281.63
Transfer/sec:     18.06MB

Docker and hyperd are on a same virtual machine with memory=2048M and vcpu=1.
Was I doing something wrong or the benchmark is not suitable? Cause the result seems incredible

hyperd is intended to be deployed on physical machine by default, and it employs hypervisor to provide isolated containers.
For running in VMs, you could try to use xenpv driver with xen 4.9 environment, ref: https://blog.hyper.sh/performance_runv_gce.html .

@gnawux Interesting! I actually had the same performance issue when running hyperd on aws vm. So using runV with the xen pv mode will be better for that use case? Do we have permission to use the xen pv mode on aws vm?
BTW, have you guys investigated how this can be integrate with kubernetes?

@gnawux deployed hyperd on physical machine end up with the same result:
wrk -t12 -c400 -d30s http://<IP_ADDRESS>
Thread Stats   Avg      Stdev     Max   +/- Stdev
Latency     6.70ms    3.00ms 221.27ms   90.13%
Req/Sec     4.99k   590.23    25.31k    94.23%
1789338 requests in 30.10s, 221.84MB read
Requests/sec:  59448.05
Transfer/sec:      7.37MB
wrk -t12 -c400 -d30s http://<IP_ADDRESS>:1323
Thread Stats   Avg      Stdev     Max   +/- Stdev
Latency     3.12ms    5.28ms 218.95ms   95.94%
Req/Sec    11.85k     1.61k   20.74k    76.04%
4254182 requests in 30.10s, 527.42MB read
Requests/sec: 141341.39
Transfer/sec:     17.52MB


print -z "foo" doesn't work from script or via command

Describe the bug
I am not sure if this is a bug or I am missing something, but I would like to use the print function with -z flag from a script and it is not working.
To Reproduce

Run the command print -z "foo" and observe the result
The command above will inject "foo" on a new line, leaving the cursor at the end, which is the expected behavior
Try to run the same command like /bin/zsh -c 'print -z "foo"'  -> nothing happens (it is the equivalent of pressing enter on an empty line)
Try to run the same command print -z "foo" from within a script file like:

#!/bin/zsh

print -z "foo"

Same as nr 3... nothing happens
Expected behavior
I would like the print -z $COMMAND to behave exactly the same from a script as it does when doing it directly in the command line
System:

OS: macOS Mojave
Zsh version: zsh 5.3 (x86_64-apple-darwin18.0)
terminal.app

Additional context
This used to work fine at some point (lower OS version and zsh different version)

I don't think that's supposed to work from a subshell. Only from the "editing" or "calling" shell.
You can make a function which is called from within the calling shell.
Edit file "foo" and put this:
z(){
   print -z 'testing'
}

Now source the file with this function, which you can do in ~/.zshrc (another alternative would be to define an autoload function)
❯ source foo
❯ z
❯ testing

@sparcbr thank you, I guess it is a nice workaround, but I could swear this was working at some point...

EDIT: my mistake, this is not a bug. I will close now.


More cleanup for the skeleton rails app

Remove app/jobs, vendor/, bin/update, package.json, config/puma.rb
Upgrade to ruby 2.5.1
Enable rubocop check for FrozenStringLiteralComment
Version all gems (including dev/test)
Add designated port to Procfile

Shall we get a quick PR in so we have CI?

I think @tijmenb was doing something there...


Get permission denied when writing to GDrive via uwsgi when run as a service

Any insight as to why I get permission denied when writing to a GDrive folder via ocamlfuse when it is run as an Ubuntu uswgi service? I have confirmed that the service is running as the same user that mounted GDrive using getpass.getuser() and that the write works when usgi is started from the command line as said user.  I realize that this issue  is related to my service configuration but I was hoping that you might be able to provide some help with getting this to work?

Never mind, I get write access when invoking with the -o allow_other option, eg:
google-drive-ocamlfuse -o allow_other  /home/ericg/GoogleDrive


Update UMLS to latest release

Hi,
I'm parsing text from clinicaltrials.gov (Trial ID NCT04837209) using scispaCy plus language model 'en_core_sci_md' and seeing 'Dostarlimab' being linked to UMLS concept C1621793 which is a bird (a Starling).
It looks like this is the result of fuzzy matching - both words have a substring ('starlit') in common - as evident by the low match probability (0.5594).
However, the biologic drug Dostarlimab is in the latest UMLS release (2022AB) as the concept C5242455. Is scispaCy linking to an older version of UMLS?
Thanks,
Ron

Hi, yes. I believe scisoacy is still using the 2020 release of UMLS. Unfortunately I no longer have access to UMLS, so I can't actually update it. That being said, if you do have access, the script to generate the artifacts used for entity linking is here:

Hi Daniel,Thanks for getting back to me quickly! You should be able to access the latest UMLS release (2022AB) as it doesn’t require user registration anymore:UMLS Knowledge Sources: File Downloadsnlm.nih.govIt would be good to subset the Metathesaurus (i.e., a few key taxonomies in English) as the current Python package makes unnecessary demands on memory.Best,RonOn Dec 28, 2022, at 7:35 PM, Daniel King @.***> wrote:
Hi, yes. I believe scisoacy is still using the 2020 release of UMLS. Unfortunately I no longer have access to UMLS, so I can't actually update it. That being said, if you do have access, the script to generate the artifacts used for entity linking is here:
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

Ah I didn't know it no longer required registration! I'm not sure if/when I would get to updating to the latest UMLS, but I appreciate the info! As for subsets, we do have a few subsets available. See here in the readme: https://github.com/allenai/scispacy#entitylinker

Thanks, please update me know if/when you get to updating the UMLS database used by SciSpaCy. Let me know if you need help with this.
Re: subsetting, it would be helpful to be able to further subset the UMLS subset on the fly (during load) to exclude certain sources (e.g., NCBI).

On Jan 2, 2023, at 3:11 PM, Daniel King @.***> wrote:

Ah I didn't know it no longer required registration! I'm not sure if/when I would get to updating to the latest UMLS, but I appreciate the info! As for subsets, we do have a few subsets available. See here in the readme: https://github.com/allenai/scispacy#entitylinker
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.

@rxk2rxk I am also looking to update the UMLS NER models to use the latest data. Just checking if you made progress with this yet?

Hi @rahulmohan I haven't tried yet as I'm maxed out at work. I'll update the issue if make progress on this.

I'd be willing to do this and submit a PR for it. Not sure if it as simple as running scripts/create_linker.py on the MRCONSO.rff file or if I'd need to download the entire UMLS and run scripts/export_umls_json.py. Also not sure if I could include the data for those files in the PR due to size or if I'd need to retrain and publish the models themselves which I am sure I don't have permissions for...
I think going forward making this process as simple as possible should be a requirement so no matter your load users can easily update the primary (UMLS) knowledge base to keep it up to date.
The first paragraph here raises a general question I had, is the UMLS data used only for the NER or is it a larger part of the model?  I.e. if I created my own EntityLinker using 2022AB UMLS, would that solve this "outdated" issue?

I was able to (partially) build the UMLS knowledge base and linker on my Mac by running the following commands:
cd ~/Documents/GitHub/scispacy
mkdir output
cd scripts
python3 export_umls_json.py --meta_path ~/Documents/Taxonomy/UMLS/2022AB/META --output_path ../output/umls_kb.jsonl
python3 create_linker.py --kb_path ../output/umls_kb.jsonl --output_path ../output/
The export script successfully crested the KB (in JSONL format) but the linker script, which takes a very long time (> 2 hours), was killed by the OS halfway through due to excessive memory pressure.

@nanthony007 Yes, if you create your own EntityLinker using your own set of paths (e.g. https://github.com/allenai/scispacy/blob/4f9ba0931d216ddfb9a8f01334d76cfb662738ae/scispacy/candidate_generation.py#L43-L48), it should work.
@rxk2rxk Let me try running those scripts on my machine...I do recall them being pretty resource intensive 😅

It looks to me that UMLS does still require registration to download the full subset. In scispacy we use sections 0, 1, 2, and 9.

Ok I have the latest umls files, will try to get the new linkers done soon.

Local files should work natively with file_cache.py, because of the else there
    elif os.path.exists(url_or_filename):
        # File, and it exists.
        return url_or_filename

Thanks Daniel! I got past this issue by dropping off the "file:///" prefix from the URLs (not obvious immediately).

This is now done in the latest release :)


fastapi 和 unicorn 实现的可热重启bot示例

fastapi 和 unicorn 实现的可热重启bot示例，可以实现web api定制。

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@fangjiyuan  Please sign cla agreement and make CI green.

Thank you very much for your contribution!
You are welcome to join Wechaty Contributor Program
1. Join Wechaty Organization

You've invited fangjiyuan to Wechaty! They'll be receiving an email shortly. They can also visit https://github.com/wechaty to accept the invitation.

I have invited you to join our Wechaty GitHub Organization, please accept it by following the above message. (See also: wechaty/PMC#16)
2. Update Your Wechaty Contributor Profile

Please open Contributor Hall of Fame and add yourself to the end of the list, so that other contributors will know you better!
Please add yourself to our Website Contributors by creating a PR and refer to this PR link as well.

3. Join The Contributor Only WeChat Room
We also have a WeChat room for contributors only which can discuss Wechaty at a deeper level, you are welcome to join and if you are interested.
Please add @lijiarui wechat: ruirui_0914 and send her this pr link. She will invite you into Wechaty Contributor Room
Cheers!


Where Do I Download Everything

Where can I download all the info?
Is there a command I need to do, is there something I need to config in the builder?

Upload to filehost failed, dose it happen to all PC's u tried it on?

Upload to filehost failed, dose it happen to all PC's u tried it on?

I have only tried it on mine, but I need to know it works before I start using it, or else I'll just use my FUD quasar build for now


Modifying the search bar for better results !

Hi everyone, can we also modify the search bar to also search for author's name and tag's name along with the title and custom excerpt, I have changed the getAllPosts(host, key)  function a bit:-
https://github.com/gautam-bits/liebling/blob/28100d2bdee73d48b838df4b552b3e89a80e13e1/src/js/app.js#L74-105
  function getAllPosts(host, key) {
    const api = new GhostContentAPI({
      url: host,
      key,
      version: 'v3'
    })
    const allPosts = []
    const fuseOptions = {
      shouldSort: true,
      ignoreLocation: true,
      findAllMatches: true,
      includeScore: true,
      minMatchCharLength: 2,
      keys: ['title', 'custom_excerpt', 'authors.name', 'tags.name']
    }

    api.posts.browse({
      limit: 'all',
      include: 'authors,tags',
      fields: 'id, title, url, published_at, custom_excerpt'
    })
      .then((posts) => {
        for (let i = 0, len = posts.length; i < len; i++) {
          allPosts.push(posts[i])
        }

        fuse = new Fuse(allPosts, fuseOptions)
      })
      .catch((err) => {
        console.log(err)
      })
  }

Yeah I'd like this feature

@aakashhemadri  yes, it works with both type of tags

I agree that searching across tags might be useful, that's why I already implemented it in the latest version. However, I don't think searching across authors is a good idea, I don't see people searching for author names, maybe for you could be useful for some reason but that's something that I won't implement. Anyway, thanks for the proposal!