System.IO.FileNotFoundException: Could not load file or assembly 'X.Bluesky, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null'

I have a .Net8 console-application (I am stuck using .Net8 as my main use-case is executing in an Azure Isolated Function)
When I use either 1.1.5-beta or 1.1.4-beta I get the following when I run an application that uses the Package:
1.1.4-beta:
Unhandled exception. System.IO.FileNotFoundException: Could not load file or assembly 'X.Bluesky, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'X.Bluesky, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null'
   at XXXXX.Bluesky.Extensions.ServiceCollectionExtensions.AddBlueskyServices(IServiceCollection services, IConfiguration config)
   at Program.<Main>$(String[] args) in C:\Users\jonbr\source\repos\XXXXX\Console-Apps\Poster\Program.cs:line 29
   at Program.<Main>(String[] args)

When I examine the bin-folder of the console-application built with 1.1.4-beta there is a file "X.Bluesky.dll" in the bin-folder but it's properties are reported as being version <IP_ADDRESS>
1.1.5-beta:
Unhandled exception. System.IO.FileNotFoundException: Could not load file or assembly 'X.Bluesky, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'X.Bluesky, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null'
   at XXXXX.Bluesky.Extensions.ServiceCollectionExtensions.AddBlueskyServices(IServiceCollection services, IConfiguration config)
   at Program.<Main>$(String[] args) in C:\Users\jonbr\source\repos\XXXXX\Console-Apps\Poster\Program.cs:line 29
   at Program.<Main>(String[] args)

When I examine the bin-folder of the console-application built with 1.1.5-beta there is a file "X.Bluesky.dll" in the bin-folder but it's properties are reported as being version <IP_ADDRESS>
1.1.3-beta:
Using 1.1.3-beta does not produce this scenario and the application runs. I see a "X.Bluesky.dll" file in the bin-folder with version reported as version <IP_ADDRESS>
A manual clean of the application's bin-folder was performed in between each build, using different versions of the package, removing all previous build artifacts.
Thank you for your great work and responsiveness in addressing issues.

Hmm... some funny business on my side. Further examination of the published nupkg file suggests something wrong between my chair and the keyboard and not the package
My apologies. I have a working local build


Enable SQL problem

When "Enable SQL" is checked the source files and members do not appear, and the library description says "*** NOT FOUND ***".
When See attached PDF.
EnableSQLProblem.pdf

Context
Version

Code for IBM i version
2.3.1

Visual Studio Code version
1.82.2

Operating System
win32_x64

Active extensions
Beautify (beautify): 1.5.0
COBOL (cobol): 9.9.21
Code Spell Checker (code-spell-checker): 3.0.1
Code for IBM i Walkthroughs (vscode-ibmi-walkthroughs): 0.3.2
Comment Anchors (comment-anchors): 1.10.3
Db2 for IBM i (vscode-db2i): 0.5.0
Dev Containers (remote-containers): 0.309.0
ESLint (vscode-eslint): 2.4.2
Emmet (emmet): 1.0.0
Eradani Extension (ec-generators): 0.9.11
Error Lens (errorlens): 3.14.0
Extension Authoring (extension-editing): 1.0.0
Git (git): 1.0.0
Git Base (git-base): 1.0.0
Git Graph (git-graph): 1.30.0
GitHub (github): 0.0.1
GitHub Authentication (github-authentication): 0.0.2
GitHub Copilot (copilot): 1.117.443
GitHub Copilot Chat (copilot-chat): 0.7.1
GitLens — Git supercharged (gitlens): 14.3.0
IBM i Notebooks (vscode-ibmi-notebooks): 0.0.6
JSON Language Features (json-language-features): 1.0.0
Live Server (LiveServer): 5.7.9
Markdown All in One (markdown-all-in-one): 3.5.1
Markdown Math (markdown-math): 1.0.0
Merge Conflict (merge-conflict): 1.0.0
Microsoft Account (microsoft-authentication): 0.0.1
NPM support for VS Code (npm): 1.0.1
Node Debug Auto-attach (debug-auto-launch): 1.0.0
Remote - Tunnels (remote-server): 1.4.3
TODO Highlight (vscode-todo-highlight): 1.0.5
TypeScript and JavaScript Language Features (typescript-language-features): 1.0.0
WSL (remote-wsl): 0.81.5
WSL: Recommender (remote-wsl-recommender): 0.0.19

Remote system

Setting
Value

IBM i OS
n/a

Tech Refresh
n/a

CCSID
?

SQL
Disabled

Source dates
Disabled

Enabled features

/QOpenSys/pkgs/bin
/usr/bin
/QSYS.lib/ILEDITOR.lib
/QSYS.LIB

bash
attr
GENCMDXML.PGM
QZDFMDB2.PGM

git
iconv
GETNEWLIBL.PGM

grep
setccsid

ls

md5sum

sort

stat

tar

Shell env
BUILDLIB=RAMIRO
CURLIB=RAMIRO
HOME=/home/RAMIRO
HOST=Blue
LIBLS=QGPL
LOGIN=ramiro
LOGNAME=ramiro
MAIL=/var/spool/mail/ramiro
OLDPWD=/home/ramiro
PASE_USRGRP_LIMITED=N
PATH=/QOpenSys/usr/bin:/usr/ccs/bin:/QOpenSys/usr/bin/X11:/usr/sbin:.:/usr/bin
PWD=/home/RAMIRO
SHELL=/QOpenSys/pkgs/bin/bash
SHLVL=1
SSH_CLIENT=<IP_ADDRESS> 54833 22
SSH_CONNECTION=<IP_ADDRESS> 54833 <IP_ADDRESS> 22
TZ=<EST>5<EDT>,M3.2.0,M11.1.0
USER=ramiro
USERNAME=ramiro
_=/QOpenSys/usr/bin/env

Variants
{
  "american": "#@$",
  "local": "#@$"
}

Errors
[
  {
    "command": "system \"CRTLIB LIB(ILEDITOR) TEXT('Code for i temporary objects. May be cleared.')\"",
    "code": 255,
    "stderr": "CPF2111: Library ILEDITOR already exists.",
    "cwd": "/home/RAMIRO"
  },
  {
    "command": "system \"DLTOBJ OBJ(ILEDITOR/O_*) OBJTYPE(*FILE)\"",
    "code": 255,
    "stderr": "CPF2117: 0 objects type *FILE deleted. 12 objects not deleted.",
    "cwd": "/home/RAMIRO"
  },
  {
    "command": "ls undefined",
    "code": 2,
    "stderr": "undefined not found",
    "cwd": "/home/RAMIRO"
  }
]

Please share the contents of your Code for IBM i output channel after the list doesn't appear.

Here is the Code for IBM i output after checked "Enable SQL" and list doesn't appear:
.: echo "This should be the only text!"
{
"code": 0,
"signal": null,
"stdout": "This should be the only text!",
"stderr": ""
}
.: echo $HOME && cd && test -w $HOME
{
"code": 0,
"signal": null,
"stdout": "/home/RAMIRO",
"stderr": ""
}
/home/RAMIRO: /QOpenSys/usr/bin/qsh
liblist
{
"code": 0,
"signal": null,
"stdout": "",
"stderr": ""
}
/home/RAMIRO: system "CRTLIB LIB(ILEDITOR) TEXT('Code for i temporary objects. May be cleared.')"
{
"code": 255,
"signal": null,
"stdout": "",
"stderr": "CPF2111: Library ILEDITOR already exists."
}
/home/RAMIRO: [ -d "/tmp" ]
{
"code": 0,
"signal": null,
"stdout": "",
"stderr": ""
}
/home/RAMIRO: system "DLTOBJ OBJ(ILEDITOR/O_*) OBJTYPE(FILE)"
/home/RAMIRO: rm -f /tmp/vscodetemp
/home/RAMIRO: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i')"
select CHARACTER_CODE_SET_ID from table( QSYS2.QSYUSRINFO( USERNAME => upper('ramiro') ) )
{
"code": 0,
"signal": null,
"stdout": "",
"stderr": ""
}
{
"code": 255,
"signal": null,
"stdout": "",
"stderr": "CPF2117: 0 objects type *FILE deleted. 12 objects not deleted."
}
{
"code": 0,
"signal": null,
"stdout": "DB2>\n                                                   **** Generated from Blue *****",
"stderr": ""
}
/home/RAMIRO: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i')"
with VARIANTS ( HASH, AT, DOLLARSIGN ) as (  values ( cast( x'7B' as varchar(1) )         , cast( x'7C' as varchar(1) )         , cast( x'5B' as varchar(1) ) ))select HASH concat AT concat DOLLARSIGN as LOCAL  from VARIANTS;
{
"code": 0,
"signal": null,
"stdout": "DB2>\n                                                   **** Generated from Blue *****",
"stderr": ""
}
/home/RAMIRO: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"
    select os.OBJNAME as ODOBNM
         , coalesce(os.OBJTEXT, '') as ODOBTX
         , os.OBJATTRIBUTE as ODOBAT
      from table( SYSTOOLS.SPLIT( INPUT_LIST => 'RAMIRO,QGPL', DELIMITER => ',' ) ) libs
         , table( QSYS2.OBJECT_STATISTICS( OBJECT_SCHEMA => 'QSYS', OBJTYPELIST => '*LIB', OBJECT_NAME => libs.ELEMENT ) ) os

/home/RAMIRO: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"
select OS_VERSION || '.' || OS_RELEASE as VERSION from sysibmadm.env_sys_info
/home/RAMIRO: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"
select max(ptf_group_level) as HIGHEST_DB2_PTF_GROUP_LEVEL from qsys2.group_ptf_info where PTF_GROUP_DESCRIPTION like 'DB2 FOR IBM I%' and ptf_group_status = 'INSTALLED';
/home/RAMIRO: ls undefined
{
"code": 0,
"signal": null,
"stdout": "DB2>\n                                                   **** Generated from Blue *****",
"stderr": ""
}
{
"code": 2,
"signal": null,
"stdout": "",
"stderr": "undefined not found"
}
{
"code": 0,
"signal": null,
"stdout": "DB2>\n                                                   **** Generated from Blue *****",
"stderr": ""
}
{
"code": 0,
"signal": null,
"stdout": "DB2>\n                                                   **** Generated from Blue *****",
"stderr": ""
}
/home/RAMIRO: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"
    select os.OBJNAME as ODOBNM
         , coalesce(os.OBJTEXT, '') as ODOBTX
         , os.OBJATTRIBUTE as ODOBAT
      from table( SYSTOOLS.SPLIT( INPUT_LIST => 'RAMIRO,QGPL', DELIMITER => ',' ) ) libs
         , table( QSYS2.OBJECT_STATISTICS( OBJECT_SCHEMA => 'QSYS', OBJTYPELIST => '*LIB', OBJECT_NAME => libs.ELEMENT ) ) os

{
"code": 0,
"signal": null,
"stdout": "DB2>\n                                                   **** Generated from Blue *****",
"stderr": ""
}
/home/RAMIRO: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"
    select os.OBJNAME as ODOBNM
         , coalesce(os.OBJTEXT, '') as ODOBTX
         , os.OBJATTRIBUTE as ODOBAT
      from table( SYSTOOLS.SPLIT( INPUT_LIST => 'RAMIRO,QGPL', DELIMITER => ',' ) ) libs
         , table( QSYS2.OBJECT_STATISTICS( OBJECT_SCHEMA => 'QSYS', OBJTYPELIST => '*LIB', OBJECT_NAME => libs.ELEMENT ) ) os

{
"code": 0,
"signal": null,
"stdout": "DB2>\n                                                   **** Generated from Blue *****",
"stderr": ""
}
/home/RAMIRO: system "DSPFD FILE(RAMIRO/Q*) TYPE(*ATR) FILEATR(*PF) OUTPUT(*OUTFILE) OUTFILE(ILEDITOR/O_weKbFz4b)"
{
"code": 0,
"signal": null,
"stdout": "CPF9861: Output file O_WEKBFZ4B created in library ILEDITOR.\nCPF9862: Member O_WEKBFZ4B added to output file O_WEKBFZ4B in library ILEDITOR.\nCPF3030: 7 records added to member O_WEKBFZ4B in file O_WEKBFZ4B in ILEDITOR.",
"stderr": ""
}
/home/RAMIRO: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')"
SELECT * FROM ILEDITOR.O_weKbFz4b
{
"code": 0,
"signal": null,
"stdout": "DB2>\n                                                   **** Generated from Blue *****",
"stderr": ""
}
.: system "DLTOBJ OBJ(ILEDITOR/O_weKbFz4b) OBJTYPE(*FILE)"
{
"code": 0,
"signal": null,
"stdout": "",
"stderr": ""
}

It's generated by the system for identification purpose.

Hi Barry, I have another issue open "Db2 for i update process failing #1558" which is of higher priority.  The workaround of this issue "Enable SQL problem #1559" is to uncheck it.  Although, it would be nice to find a solution.

Well that being printed is likely the issue to be honest. This is also likely to be a similar issue for the Db2 extension.
It is usually related to authority. Ensure you have write/read access to your home directory (usually /home/USER)

I do have authority to /home/RAMIRO

Barry, other users having the same problem?  Is there any hope for a solution?

@BlancoConsulting Your situation is slightly unique but others have had similar issues.

"stdout": "DB2>\n **** Generated from Blue *****", - this appearing in your standard will cause things not to work. Sounded like you knew where it was coming from so I will leave that one to you.
I can also see from the output that no output is coming back from SQL execution. See 'No results from SQL execution' here.

This fixed the issue #1559:
"See 'No results from SQL execution' here."
Now, the issue "Db2 for i update process failing #1558" is not fixed.
I am closing this issue.


Remove per-page Sitemaps in favor of per-wiki sitemaps with wiki_index route

Search engines seem to be wasting their crawl budget on dead pages in the old per-page sitemap. With the per-page sitemap still there, they'll keep trying and thus wasting resources.

This should be complete


Build a suite of system tests to run codeanalyzer on various combinations of build enviroments.

Here is repo of all the project that failed in the past: https://github.com/rahlk/dgi-sample-applications/tree/main
We need to deploy and run a battery of test on all these apps with the following combinations of build/user environments:

mvn is installed, but no gradle
No gradle, no maven, but the project has gradlew
No maven, no gradle, but the project has mvnw
Lastly, for some old projects (like https://github.com/hammingweight/gradle-java-ear) where there is no gradlew but it's still a gradle project.

Let's build docker containers that replicate these environments so we can verify that there are no errors that are regressions.
A critical follow up action item will be to add this to our github actions so we make releases only if these system tests pass.

I wonder if we can use testcontainers-python to accomplish this. I'll look into it.


🧐[问题]

Hi,
It is possible to set placeholder text for search? Now, it is not suitable for i18n.
Thanks

https://protable.ant.design/example
look here

Hi, I have, but I didn't get it how text is replaced. Is there a way to pass text for any language? For example Turkish?

Thank you


Added the solution to Build your own password manager

Added the solution to Build your own password manager, using NodeJs.
Updated the home readme too.

Kindly review the PR


Do not include line numbers in diff selection

Marking text in a diff will include the line numbers, resulting in copy pastes like this:
43	37
     /**
44
-     * @return array
38
+     * @inheritDoc
45	39
      */

This pull request will tell browser to not include the line numbers when selecting text. Copy paste will then behave like the standard code-view. This is not a problem in code-view, since the structure of the table rendering the code is a bit different.
This css property is widely supported. IE9 and lower is the only (most used) browsers not supporting it.
I could not find a relevant issue.

Thank you!

Hmm, just tested on demo site, it does not seem to work and found https://css-tricks.com/almanac/properties/u/user-select/.

However it's a bit buggy. ... WebKit still allows the text to be copied if you select elements around it.

noo :(
Github puts the line number in an attribute on . And uses css with the attr property.
HTML

CSS
.blob-num::before {
    content: attr(data-line-number);
}

I not familiar with the template syntax. But I guess one could modify the section_unified.tmpl and test this..

Thanks for the tip! Problem solved.  :+1:
Patch has been pushed to develop branch.


Feedback

Feedback
I'm so happy to have tried and used your app/dapps what a great experience to be one of the people to try this! we hope what happens here will be a success on mainnet and all the hard working team i really appreciate your efforts.
0x7518B18042308070717ecD6A6402850a06D1C029

@jokopurwa Thank you for your testing and we hope to continue delivering high quality features and improvements!


fix + paragraph appearing in link

What is this PR for?
Fix a bug where the + paragraph appears in link paragraph
What type of PR is it?
Bug Fix
Todos
Is there a relevant Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-591
How should this be tested?
Click link paragraph in a paragraph and move mouse below paragraph.
Screenshots (if appropriate)
Before:

After:

Questions:

Does the licenses files need update? No
Is there breaking changes for older versions? No
Does this needs documentation? No

Thanks @MikeTYChen for really quick fix. Tested and Looks good to me.
If there're no more discussions, I'm merging it into both 'master' and 'branch-0.5.6'

Thank you for the quick fix !! 😀

LGTM

Since 0.5.6 rc1 is in vote alreay, i'm merging it into master only. we can merge it into branch-0.5.6 anytime we want.

Looks great, thank you. It definitely belongs to 0.5.6!


Youtube View count not getting package name

As we are using this library for youtube videos , youtube view counts are increasing in youtube channel  but we are not able to track the actual source ,are the view are from app , we are getting as external source . . Can you lets know from where can we add source package name of our app , so it can trigger the actual source.

Hi, I personally don't know the answer to this question. I suggest having a look at YouTube's IFrame API documentation to see if they mention it. Let me know if you find out!

I have never used youtube analytics but i dont think it classifies viewers so spesific.
You can't edit the client source someting so spesific . And even if you could youtube servers probably classifies them anyways.
So the source probably would be unknown source therefore classified as external source.
The best thing you can do is to create a custom tracking mechanism that monitors views using services like Firebase, etc.
Or if external sources are only the embedded videos (assuming analytics classifies pc,android etc. correctly) you play in your app you could just count external source as views coming from your app.


The official documentation provides inconsistent descriptions of supported shared storage types (such as: HDFS).

Read the documentation:

StarRocks Doc
StarRocks Doc

Hi @caoyj1024 , the difference in the doc you have noticed is because we believe that very few StarRocks' overseas users work with an HDFS environment, thus we removed this part from the EN doc.


test.compliance_tool: improve wrong_attribute test strictness

Improve strictness of wrong_attribute tests by checking the whole error message instead just for a single error, which previously disregarded any additional errors.

Looks good to me


Add the ability to define code cells

A cell is defined by adding a breakpoint.
Should we add a shortcut for the commands?

That's interesting. Is this demarcating chunks of code to be a code cell like in the notebook?

Exactly!

I find this functionality very useful to edit and re-run a chuck of code. But without shortcuts, it becomes a bit of pain very quickly.
Perhaps, this is the time to re-think the key-bindings. Currently, we set:

S-A-enter (Run)
C-A-enter (Run-and-move-below)
S-C-A-enter (Run-all)

I remember Will said that he chose S-A-enter to avoid collisions with other key bindings.
I've checked and in my machine, in the editor the following key bindings are free:

A-enter, S-enter, S-A-enter, S-C-A-enter
A-space, S-space, S-A-space, C-A-space, S-C-space, S-C-A-space
A-tab, C-tab, S-A-tab, C-A-tab, S-C-A-tab

And key bindings already assigned:

C-enter (insert-line-below), S-C-enter (insert-line-above)
C-space (autocomplete)
tab (indent), S-tab (outdent)

Note that we're currently shadowing S-C-enter (that's my bad!).
Unless there are other collisions I'm not aware of, I would support a move to use the same key bindings the notebook and nteract are using, i.e.:

C-enter (Run)
S-enter (Run-and-move-down)
We could use A for the corresponding cell versions:
A-C-enter (Run-cell)
A-S-enter (Run-cell-and-move-down)

We could maintain:

S-C-A-enter (Run-all)

And to toggle breakpoints, perhaps, we could do S-enter or S-space.

C-enter (Run)
S-enter (Run-and-move-down) We could use A for the corresponding cell versions:
A-C-enter (Run-cell)
A-S-enter (Run-cell-and-move-down)
S-C-A-enter (Run-all)

This is a great Idea!
I would suggest using S-backspace for removing the latest break point and S-A-backspace for removing all break points if that's not to much.

Was there more you wanted to think on before we introduce this @n-riesco?

@rgbkrk If no one opposes the change of key-bindings, let's go for it!
I guess this also means bumping the minor version and updating the README.md.

Ah, that's going to break user space then... would we want to shelve this until a major release?

What do you think about including this in the next minor release and change the key-bindings not until 1.0.0?

Or how about having a setting to enable changes like the new key bindings that may be introduced in the next major release?
It'd give users a chance to complain before we finally introduce the changes.

That seems like a good way to start trying this out.

Is there a way to define cells in the code itself? Similar to what Matlab does with
Matlab Cell 1
%%
Matlab Cell 2

e.g.
Hydrogen Cell 1
# ==
Hydrogen Cell 2

where # is the language specific comment symbol.

@nils-werner This is something that would be possible once Hydrogen puts in place an API to develop plugins.

This PR is sitting here for a while now. How do we proceed with this?
The only point left are new keybindings for 1.0.0 but this has nothing to do with this functionality of this PR.
I would suggest we merge and add the keybindings later. What do you think?

I would suggest we merge and add the keybindings later. What do you think?

Works for me.


Fix all remaining pylint issues

Current status
************* Module black_jack
Tasks/Black_Jack/black_jack.py:36:0: R0912: Too many branches (13/12) (too-many-branches)
************* Module coffee_machine_utils_methods
Tasks/Coffee_Machine/coffee_machine_utils_methods.py:101:16: W0603: Using the global statement (global-statement)
************* Module menu
Tasks/Coffee_machine_OOP/menu.py:4:4: R0913: Too many arguments (6/5) (too-many-arguments)
Tasks/Coffee_machine_OOP/menu.py:4:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments)
Tasks/Coffee_machine_OOP/menu.py:2:0: R0903: Too few public methods (0/2) (too-few-public-methods)
Tasks/Coffee_machine_OOP/menu.py:29:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements)
************* Module linked_list
Tasks/DSA_workout/linked_list.py:5:29: W0622: Redefining built-in 'next' (redefined-builtin)
Tasks/DSA_workout/linked_list.py:2:0: R0903: Too few public methods (0/2) (too-few-public-methods)
************* Module flash_cards
Tasks/Flash_Cards/flash_cards.py:22:0: C0103: Constant name "current_card" doesn't conform to UPPER_CASE naming style (invalid-name)
Tasks/Flash_Cards/flash_cards.py:23:0: C0103: Constant name "flip_timer" doesn't conform to UPPER_CASE naming style (invalid-name)
Tasks/Flash_Cards/flash_cards.py:25:0: R0914: Too many local variables (16/15) (too-many-locals)
Tasks/Flash_Cards/flash_cards.py:125:4: W0621: Redefining name 'flip_timer' from outer scope (line 23) (redefined-outer-name)
Tasks/Flash_Cards/flash_cards.py:73:8: W0603: Using the global statement (global-statement)
Tasks/Flash_Cards/flash_cards.py:108:8: W0602: Using global for 'current_card' but no assignment is done (global-variable-not-assigned)
************* Module hangman
Tasks/Hangman/hangman.py:21:19: C0201: Consider iterating the dictionary directly instead of calling .keys() (consider-iterating-dictionary)
Tasks/Hangman/hangman.py:38:12: C0200: Consider using enumerate instead of iterating with range and len (consider-using-enumerate)
************* Module password_generator
Tasks/Password_Generator/password_generator.py:5:0: E0401: Unable to import 'Tasks.Password_Manager.Controller.password_generator' (import-error)
Tasks/Password_Manager/Controller/password_generator.py:16:0: R0903: Too few public methods (1/2) (too-few-public-methods)
************* Module password_manager
Tasks/Password_Manager/password_manager.py:32:17: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
Tasks/Password_Manager/password_manager.py:19:0: R0915: Too many statements (66/50) (too-many-statements)
************* Module pomodoro
Tasks/Pomodoro/pomodoro.py:19:4: W0107: Unnecessary pass statement (unnecessary-pass)
************* Module pong_game
Tasks/Pong_Game/pong_game.py:24:4: W0612: Unused variable 'divider' (unused-variable)
************* Module question_model
Tasks/Quiz_Game/question_model.py:2:0: R0903: Too few public methods (0/2) (too-few-public-methods)
Tasks/Quizzer/question_model.py:3:0: R0903: Too few public methods (0/2) (too-few-public-methods)
************* Module quizzer
Tasks/Quizzer/quizzer.py:34:4: W0612: Unused variable 'quiz_ui' (unused-variable)
************* Module rock_paper_sicssors
Tasks/Rock_Paper_Sicssors/rock_paper_sicssors.py:83:12: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions)
************* Module food
Tasks/Snake_Game/food.py:5:0: R0903: Too few public methods (1/2) (too-few-public-methods)
************* Module snake_game
Tasks/Snake_Game/snake_game.py:7:0: E0611: No name 'ScoreBoard' in module 'scoreboard' (no-name-in-module)
************* Module turtle_crossing_game
Tasks/Turtle_Crossing_Game/turtle_crossing_game.py:21:17: E1120: No value for argument 'side' in constructor call (no-value-for-parameter)

Status of 10/0/24:
************* Module black_jack
Tasks/Black_Jack/black_jack.py:36:0: R0912: Too many branches (13/12) (too-many-branches)
************* Module coffee_machine_utils_methods
Tasks/Coffee_Machine/coffee_machine_utils_methods.py:101:16: W0603: Using the global statement (global-statement)
************* Module menu
Tasks/Coffee_machine_OOP/menu.py:4:4: R0913: Too many arguments (6/5) (too-many-arguments)
Tasks/Coffee_machine_OOP/menu.py:4:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments)
Tasks/Coffee_machine_OOP/menu.py:2:0: R0903: Too few public methods (0/2) (too-few-public-methods)
Tasks/Coffee_machine_OOP/menu.py:29:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements)
************* Module linked_list
Tasks/DSA_workout/linked_list.py:2:0: R0903: Too few public methods (0/2) (too-few-public-methods)
************* Module flash_cards
Tasks/Flash_Cards/flash_cards.py:73:8: W0603: Using the global statement (global-statement)
************* Module data_manager
Tasks/Flight_Tracker/data_manager.py:9:4: W0107: Unnecessary pass statement (unnecessary-pass)
Tasks/Flight_Tracker/data_manager.py:7:0: R0903: Too few public methods (0/2) (too-few-public-methods)
************* Module flight_data
Tasks/Flight_Tracker/flight_data.py:8:4: W0107: Unnecessary pass statement (unnecessary-pass)
Tasks/Flight_Tracker/flight_data.py:6:0: R0903: Too few public methods (0/2) (too-few-public-methods)
************* Module flight_search
Tasks/Flight_Tracker/flight_search.py:8:4: W0107: Unnecessary pass statement (unnecessary-pass)
Tasks/Flight_Tracker/flight_search.py:6:0: R0903: Too few public methods (0/2) (too-few-public-methods)
************* Module notification_manager
Tasks/Flight_Tracker/notification_manager.py:8:4: W0107: Unnecessary pass statement (unnecessary-pass)
Tasks/Flight_Tracker/notification_manager.py:6:0: R0903: Too few public methods (0/2) (too-few-public-methods)
************* Module password_generator
Tasks/Password_Manager/Controller/password_generator.py:16:0: R0903: Too few public methods (1/2) (too-few-public-methods)
************* Module password_manager
Tasks/Password_Manager/password_manager.py:19:0: R0915: Too many statements (66/50) (too-many-statements)
************* Module question_model
Tasks/Quiz_Game/question_model.py:2:0: R0903: Too few public methods (0/2) (too-few-public-methods)
Tasks/Quizzer/question_model.py:3:0: R0903: Too few public methods (0/2) (too-few-public-methods)
************* Module rock_paper_sicssors
Tasks/Rock_Paper_Sicssors/rock_paper_sicssors.py:83:12: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions)
************* Module food
Tasks/Snake_Game/food.py:5:0: R0903: Too few public methods (1/2) (too-few-public-methods)
************* Module turtle_crossing_game
Tasks/Turtle_Crossing_Game/turtle_crossing_game.py:22:17: E1120: No value for argument 'side' in constructor call (no-value-for-parameter)


🐛 [cloud_firestore] IOS crash in FLTFirebaseFirestoreWriter.m

Bug report
Observing crash in iOS Flutter app in production. The crash is reported in cloud_firestore module of firebase.
The crashes are reported on crashlytics.
Crashes are due to bad memory access EXC_BAD_ACCESS (KERN_INVALID_ADDRESS)
Version used
cloud_firestore: ^4.8.3
Firebase crashlytics
One instance of crash is
-[FLTFirebaseFirestoreWriter FIRQuerySnapshot:]
EXC_BAD_ACCESS (KERN_INVALID_ADDRESS)

Second instance of crash is
-[FLTFirebaseFirestoreWriter FIRDocumentSnapshot:]
EXC_BAD_ACCESS (KERN_INVALID_ADDRESS)

@chtnsngh
A similar issue was filed and fixed earlier this year https://github.com/firebase/flutterfire/issues/10314
Also, the version you are on is not a recent one. So I suggest you to upgrade to latest one and verify if you still get same crash or not.


Convert from project.json to csproj

Still need to figure out the .tt files for generated code.

Are .tt files a Visual Studio only thing?

Filed https://github.com/aspnet/HttpSysServer/issues/309 for followup

https://github.com/aspnet/HttpSysServer/issues/307


bug in printing addresses

In Formatter.c:ZydisFormatterPrintAddressIntel in 32 and 64 bit mode addresses will be incorrectly printed if they sign-extend to a negative integer. I'm still trying to figure out why this happens.
rasm2 -a x86.zyan -b 32 -d E8FFFFFFFF
call 0xFFFFFFFFFFFFFFFF

I think it's a bug in the decoder, not the formatter. Looks like the final + instructionLength on the immediate for relative instructions isn't performed.

I pushed a commit. I'll have to talk to @flobernd to discuss whether this is the best way of handling that, but it resolves the issue for now.

Thanks 👍
On Sun, 9 Apr 2017 at 21:03, Joel Höner<EMAIL_ADDRESS>wrote:

I pushed a commit. I'll have to talk to @flobernd
https://github.com/flobernd to discuss whether this is the best way of
handling that, but it resolves the issue for now.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/zyantific/zyan-disassembler-engine/issues/13#issuecomment-292805507,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACWCmXz813MsJd0AF6-aNbFwlA6U1nCBks5ruSuegaJpZM4M4C7y
.

I reverted the changes to the decoder, because I think the operand-info struct should always reflect the raw operand values without any adjustments (relative address-offset in this case).
The actual bug was located in ZydisUtilsCalcAbsoluteTargetAddress where I forgot to properly add the instruction-length.


Sorting rows not working

Expected behavior
Sort rows by clicking on column headers.
Actual behavior
Doesn't sort rows if sorting column data has number type.

You need to specify in your schema data that the column is a data type number.  If no schema is provided the grid assumes all data is string data.

@TonyGermaneri  Thank you! It works!


Update README.md

The README.md should include most or all of the contents of 01_overview.qbk

Done


debug: just trying something in ci

Just trying if connection to runner persists after reboot.

@atodorov it just dies right after I hit reboot without even trying to connect back https://gitlab.com/osbuild/ci/osbuild-composer/-/jobs/1882924115
I'll just go back to making it work with libvirt.


Node.js  uvwasi team Meeting 2024-01-03

Time
UTC Wed 03-Jan-2024 19:00 (07:00 PM):

Timezone
Date/Time

US / Pacific
Wed 03-Jan-2024 11:00 (11:00 AM)

US / Mountain
Wed 03-Jan-2024 12:00 (12:00 PM)

US / Central
Wed 03-Jan-2024 13:00 (01:00 PM)

US / Eastern
Wed 03-Jan-2024 14:00 (02:00 PM)

EU / Western
Wed 03-Jan-2024 19:00 (07:00 PM)

EU / Central
Wed 03-Jan-2024 20:00 (08:00 PM)

EU / Eastern
Wed 03-Jan-2024 21:00 (09:00 PM)

Moscow
Wed 03-Jan-2024 22:00 (10:00 PM)

Chennai
Thu 04-Jan-2024 00:30 (12:30 AM)

Hangzhou
Thu 04-Jan-2024 03:00 (03:00 AM)

Tokyo
Thu 04-Jan-2024 04:00 (04:00 AM)

Sydney
Thu 04-Jan-2024 06:00 (06:00 AM)

Or in your local time:

https://www.timeanddate.com/worldclock/fixedtime.html?msg=Node.js+Foundation+uvwasi team+Meeting+2024-01-03&iso=20240103T1900
or https://www.wolframalpha.com/input/?i=07PM+UTC%2C+Jan+03%2C+2024+in+local+time

Links

Minutes Google Doc: https://docs.google.com/document/d/1H7650RNxzWI66q0G_tnPCJ0ZfnsT-WLaWS9ZEiYOoj8/edit

Agenda
Extracted from uvwasi-agenda labelled issues and pull requests from the nodejs org prior to the meeting.
nodejs/node

WASI preview 1: fd_readdir ignores cookie argument #47193

nodejs/uvwasi

What's new with uvwasi in 2023 #201
Changes to WASI spec in snapshot_preview2 #59

Invited

uvwasi team: @nodejs/wasi

Observers/Guests
Notes
The agenda comes from issues labelled with uvwasi-agenda across all of the repositories in the nodejs org. Please label any additional issues that should be on the agenda before the meeting starts.
Joining the meeting

link for participants: https://zoom.us/j/91612484369
For those who just want to watch:
youtube admin page: https://www.youtube.com/my_live_events?filter=scheduled

Not sure why this did not generate earlier today (Just ran the automation now and it did). Unfortunately I was late for the meeting today. Hope to see everybody at the next one.


drop/restore focus when app becomes invisible/visible

Documented explanation for behavior:
// When the application moves to the background, any focus nodes
// need to lose focus. When the application is restored to the
// foreground state, any focused node should regain focus (including)
// restoring the keyboard. This is only important in cases where
// applications in the background are partially visible. For example,
// split-screen on Android or a backgrounded app on a desktop environment.

Fixes flutter#21193

I just opened on Android in split screen Gmail and Website with a text field. Both can have a blinking cursor at the same time. This would change that behavior if one of them were a Flutter app. Any reason we want to diverge from native behavior (I agree that Android behavior is kinda odd to keep the cursor blinking)?
On Desktop (Mac) I am observing the behavior as you describe: If a window loses focus, it's cursor also stops blinking.

@goderbauer which android version? I haven't been able to find a way to keep two cursor blinking on Pie

And I say that and I got it, had to come back from lock screen

I'll follow up with an experiment on an Android tablet. If need be we can exclude Android for now

Adding @gspencergoog  for focus related changes

I think you need to determine if that was an intentional thing (both cursors blinking), or just a bug on Android.  I'm inclined to think it is the latter. And then we need to decide if we're prioritizing replicating bugs to match the platform or correct behavior.

I've confirmed that the cursor blinking on Android is a bug


避免出现err==nil&&n==0的情况

这个 PR 实现什么功能/修复什么问题:
避免出现err==nil&&n==0的情况
是否需要 backport 到之前的 release 分支:

release/2.10.0

/cc @swordqiu @yousong

/cherrypick release/2.10.0

Codecov Report

Merging #1005 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master   #1005      +/-   ##
=========================================
+ Coverage     7.8%   7.81%   +<.01%
=========================================
  Files         349     349
  Lines       55590   55589       -1
=========================================
+ Hits         4341    4342       +1
+ Misses      50851   50850       -1
+ Partials      398     397       -1

Flag
Coverage Δ

#aFlag
7.81% <100%> (ø)
:arrow_up:

Impacted Files
Coverage Δ

pkg/util/multipart/reader.go
96.66% <100%> (+3.22%)
:arrow_up:

Continue to review full report at Codecov.

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

/lgtm
/approve


Adds capability to update previously installed plugins

Hi. Would you be interested to add this functionality to update previously existing plugins in your jenkins role?
The updating is turned off by default, since you will only want to do this if you know won't break anything. I use this for staging jenkins updates.
Regards,
Alexander

Hm, Travis gives me this error when running my fetch plugin update information task:
java.io.StreamCorruptedException: invalid stream header: 0A0A0A0A
I don't get this when I test locally on an Ubuntu 12.04 VM in Vagrant. I am wondering if it is about any difference between OS versions. What flavour/version of Debian is running on that Travis VM?

I cannot reproduce and fix the Travis failure without additional information and the way it currently looks, the feature is simply not stable enough to be merged to master. Back to the drawing board for me.


Upwind Flux

While Centered Flux is enough to define simple problems, a modification of said flux, known as Upwind Flux, allows for the definition of more complex problems while increasing the general stability of the model.
An Upwind Flux, based on the Strong Form described by Tim Warburton and Jan S. Hesthaven in their book Nodal Discontinuous Galerkin Methods, is the chosen one to be implemented in our model.
This Upwind Flux implementation, based on jump operators, requires from a customised Discontinuous Galerkin Trace Integrator to work.
Required for #10 to work.

The addition of specific FiniteElementOperator methods focused on the implementation of  the Upwind Flux parameters, along with a modification of the Mult method in our MaxwellEvolution Time Dependent Operators, now allows for the use of Upwind Flux for the problem definition.


Added command SelectWordCopy() and OpenFileTab()

The behavior of OpenFileTab is similar to the already existing tab command (> tab filename will open the given file in a new tab).
And I don't really see the use case for SelectWordCopy so maybe I'm missing something?

Thanks to know the tab command, can you tell me how to bind in bindings.json with this command
SelectWordCopy  is a multi purpose for search under cursor (for FindNext / FindPrevious) and sometime copy the word under cursor

You won't be able to bind it using just the bindings.json but you can do it with a little Lua scripting. Place the following code in ~/.config/micro/init.lua:
function newtab()
    local input, canceled = messenger:Prompt("> ", "tab ", "Command", 2) -- 2 means command completion
    if not canceled then
        HandleCommand(input)
    end
end

Then you can bind it in bindings.json with
...
"Alt-t": "init.newtab"
...

Thanks @zyedida  it works


⚠ Bofrost.es has degraded performance

In c6bdda2, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1877 ms

Resolved: Bofrost.es performance has improved in 0758a4f after 19 minutes.


Refactor/loaders

[x] I have read and agree to the contributing guidelines for submitting new pull requests.

Describe your changes
Added

BaseFileLoader for Loaders that load from a path.
BaseLoader.fetch() method for fetching data from a source.
BaseLoader.parse() method for parsing fetched data.
BaseFileManager.encoding to specify the encoding when loading and saving files.
BaseWebScraperDriver.extract_page() method for extracting data from an already scraped web page.
TextLoaderRetrievalRagModule.chunker for specifying the chunking strategy.
file_utils.get_mime_type utility for getting the MIME type of a file.

Changed

BREAKING: Removed BaseFileManager.default_loader and BaseFileManager.loaders.
BREAKING: Loaders no longer chunk data, use a Chunker to chunk the data.
BREAKING: Removed fileutils.load_file and fileutils.load_files.
BREAKING: Removed loaders-dataframe and loaders-audio extras as they are no longer needed.
BREKING: TextLoader, PdfLoader, ImageLoader, and AudioLoader now take a str | PathLike instead of bytes.
BREAKING: Removed DataframeLoader.
LocalFileManagerDriver.workdir is now optional.
filetype is now a core dependency.
FileManagerTool now uses filetype for more accurate file type detection.
BaseFileLoader.load_file() will now either return a TextArtifact or a BlobArtifact depending on whether BaseFileManager.encoding is set.

The purpose of this PR was to clean up the Loader interface, and their define purpose.
Loaders fetch data from a source, and parse it into Artifacts. Loaders do not chunk data, that is the role of Chunkers.
We provide 4 top level Loaders that provide from a variety of sources:

BaseFileLoader: Loads data from a file.
WebLoader: Loads data from a web page.
SqlLoader: Loads data from a SQL database.
EmailLoader: Loads data from an email inbox.

BaseFileLoader then has subclasses that provide file-type specific parsing logic:

TextLoader
ImageLoader
AudioLoader
CsvLoader
BlobLoader
In a future PR, I'd like this parsing logic to live in a new class of Driver, File Parser Driver(?), instead of Loaders.

Issue ticket number and link
Closes https://github.com/griptape-ai/griptape/issues/1102

📚 Documentation preview 📚: https://griptape--1116.org.readthedocs.build//1116/

Note that this PR's base branch is refactor/artifacts so no tests have run yet.


[Feature Request]: amazon clone changes

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
want tp add country and google translator in amazon clone
Use Case
want tp add country and google translator in amazon clone
Benefits
want tp add country and google translator in amazon clone
Add ScreenShots
clone :

real website

Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[ ] I'm a SSOC'24 contributor
[X] I have starred the repository

@ANKeshri  I have assigned u .but first please try to complete previously assigned issue

@ANKeshri I have assigned u .but first please try to complete previously assigned issue

I have completed can you please review them


Write an article about it

Done - https://www.hackster.io/a7v/building-retro-computer-ut-88-with-z80-and-arduino-mega-2560-3a96dd


Blank white screen at startup

Describe the bug
Hi there ! When I launch native Android client i just get a blank screen and can't configure anything.
To Reproduce
Steps to reproduce the behavior:

Download APK 2.4.1-beta from https://github.com/Macro-Deck-org/Macro-Deck-Client/releases/download/v2.4.1-beta/com.suchbyte.macrodeck.apk
Install
Launch
See white blank screen

Smartphone

Device: Asus NEXUS 7 (2012)
OS: LineageOS 15.1 (Android 8.1)
Native Client Version 2.4.1-beta
Server Version : 2.12.0

Additional context

My hardware is pretty old but native client is marked as compatible with Android 5+
My OS don't use Gapps because it make my device unusable (only 1GB ram)
Webclient work like a charm, and it's my last resort to connect to server for now

Any help should be appreciated :)
Many thanks for working on a free mediadeck app ! keep going :)

Thanks for your report. Although it looks like the Android App is native, it is not. It’s based on Xamarin and more or less a local version of the web client in a WebView. You can try to install Chromium on your device.
Otherwise you need to use the web client for now. I plan to write a native Android app soon.


🐛 Bug Report: scaffolder uses globby for copyWithoutTemplating but prevents negative matches

📜 Description
Discovering that copyWithoutTemplating was using globby I expected to be able to use a negated glob so that when most files in a directory should be copied without templating it would be possible to ensure the one file that did need templating could be listed instead of needing to list all files that did not.
I appreciate this may not be a bug as it may currently be working as expected, it is however sufficiently surprising to not be able to handle this that makes me initially think it's not what was intended, particular as it appears that globby has supported accepting a list of patterns to process at the same time for at least 8 years (https://www.npmjs.com/package/globby/v/4.0.0), making the existing code using map to handle each match separately suggest a mistake?
https://github.com/backstage/backstage/blob/e8bebb6f5f7e20539511720778afc478510a5cc9/plugins/scaffolder-backend/src/scaffolder/actions/builtin/fetch/template.ts#L207-L221
This looks like it should be sufficient to replace the above with the following for this to work:
      const nonTemplatedEntries = new Set(
        await globby(copyOnlyPatterns || [], {
            cwd: templateDir,
            dot: true,
            onlyFiles: false,
            markDirectories: true,
            followSymbolicLinks: false,
          }),
        )
      );

👍 Expected behavior
When provided with the following input:
    - id: template
      name: Template
      action: fetch:template
      input:
        url: ./template
        copyWithoutRender:
          - .github/workflows/*
          - '!.github/workflows/deploy.yaml'

It should perform template substitution on .github/workflows/deploy.yaml while not on any other .github/workflow/* files
Dry run mode should show:
info: Writing file .github/workflows/deploy.yaml to template output path with mode 33188.

without any reference to without processing. for this file.
👎 Actual Behavior with Screenshots
Dry run mode log output contains:
info: Copying file/directory .github/workflows/deploy.yaml without processing.
info: Writing file .github/workflows/deploy.yaml to template output path with mode 33188.

Sorry, I'm having to limit the full screenshot as I can't share details on other files being copied.
👟 Reproduction steps
Not sure where to provide a live example as using a SaaS instance of backstage. It should be possible to reproduce this with any template definition where a directory contains multiple files where only one should be rendered and others copied without being templated.
📃 Provide the context for the Bug.
No response
🖥 Your Environment
No response
👀 Have you spent some time to check if this bug has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
Yes I am willing to submit a PR!

Alright, thanks for the detailed breakdown. Yeah, go ahead and contribute this change if you like, it makes sense.
The only potential concern is that in doing so, we are making a "larger promise" on the semantics of that input array and have to stand by it over time. You may want to expand any doc comment for that field to cover the wider scope. Essentially what you are describing here is a feature request, not a bug - it probably never intended to support negation. But it makes sense to do so, because it's reasonably easy to find libraries that support it, so no real worries there.
I marked it as an enhancement ticket.

Thanks, new baby arrived so might be a little while before I get back to this.

Still relevant, just haven't been able to get back to this.

@electrofelix congrats on the :baby:
Do you think you will have time to look at this? Otherwise we can add some labels to get some more help from the community :tada:

@benjdlambert Hoping that I might get to it in the next week or two

Nice! No stress! Thanks :pray:


remove the slash prefix for hdfs_backup_dir to be consistent with s3 …

Remove the the slash prefix from hdfs_backup_dir, so it could be consistent with s3_path conversion.
During backup/dedup, client provide storePathPrefix which has no visibility of which cloud was used (hdfs or s3). Thus, rocksplicator code should be consistent about how to concat namenode/bucket with storePathPrefix. Therefore, in admin_handler, we need to concat hdfs_namenode + "/" + hdfs_backup_dir, which is consistent with s3, which will eventually use path: s3_bucket + "/" + s3_backup_dir.

Instead of modifying rocksplicator code, we can also mark the cloud source when "store_prefix" is populated. I will seek that option for now and close the current pull request.
Reopen when needed again.


[colmap] Build error

Host Environment

OS: x64 Windows
Compiler: MSVC 14.28.29910
vcpkg-tool version: 2023-03-14-105f7f7e8a5ea10dfac9874ff9d1a6bacba5f454
vcpkg-scripts version: ffe7360e0 2023-03-17 (18 hours ago)
CUDA: 11.3

To Reproduce
Steps to reproduce the behavior:
./vcpkg install colmap[cuda]:x64-windows
Failure logs
stdout-x64-windows.log
install-x64-windows-dbg-out.log

nvcc fatal   : A single input file is required for a non-link phase when an outputfile is specified

Any ideas would could be causing that problem?

Maybe help: https://forums.developer.nvidia.com/t/solved-nvcc-fatal-a-single-input-file-is-required-for-a-non-link-phase-when-an-outputfile-is-s/37807

@JonLiu1993 forward me here to help fixing my issue.
everything I try from those links give me similar error:
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:134 (message):
    Command failed: "C:/Program Files/CMake/bin/cmake.exe" --build . --config Debug --target install -- -v -j33
    Working Directory: E:/Ai__Project/nerfstudio/vcpkg/buildtrees/colmap/x64-windows-dbg
    See logs for more information:
      E:\Ai__Project\nerfstudio\vcpkg\buildtrees\colmap\install-x64-windows-dbg-out.log

Call Stack (most recent call first):
  installed/x64-windows/share/vcpkg-cmake/vcpkg_cmake_build.cmake:74 (vcpkg_execute_build_process)
  installed/x64-windows/share/vcpkg-cmake/vcpkg_cmake_install.cmake:16 (vcpkg_cmake_build)
  ports/colmap/portfile.cmake:60 (vcpkg_cmake_install)
  scripts/ports.cmake:147 (include)

error: building colmap:x64-windows failed with: BUILD_FAILED
Please ensure you're using the latest port files with `git pull` and `vcpkg update`.
Then check for known issues at:
    https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+colmap
You can submit a new issue at:
    https://github.com/microsoft/vcpkg/issues/new?title=[colmap]+Build+error&body=Copy+issue+body+from+E%3A%2FAi__Project%2Fnerfstudio%2Fvcpkg%2Finstalled%2Fvcpkg%2Fissue_body.md

Any help please?
I am on Windows 11
RTX 4090

@Tobe2d Paths with special characters may cause NVCC to interpret them as multiple files being passed in.
Mabye try to modify it to a standardized path and please provide the error log:
install-x64-windows-dbg-out.log

Thanks @FrankXie05 for the reply,
Below is the log file:
install-x64-windows-dbg-out.log

@Tobe2d Could you please try replacing the colmap in your vcpkg\ports directory with mine? I made a patch.
It seems that the upstream did not include when using the macro COLMAP_ADD_CUDA_SOURCES to pass in the header file of cuda
https://github.com/colmap/colmap/blob/3.8/cmake/CMakeHelper.cmake#LL89C1-L107C34
colmap.zip

Thanks @FrankXie05 I replaced the zip to colmap  in vcpkg\ports
I test building colmap and again got this:
error: building colmap:x64-windows failed with: BUILD_FAILED
Please ensure you're using the latest port files with `git pull` and `vcpkg update`.
Then check for known issues at:
    https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+colmap
You can submit a new issue at:
    https://github.com/microsoft/vcpkg/issues/new?title=[colmap]+Build+error&body=Copy+issue+body+from+E%3A%2FAi__Project%2Fnerfstudio%2Fvcpkg%2Finstalled%2Fvcpkg%2Fissue_body.md

Errror log?

Hi @FrankXie05 I encountered similar issue and this is my error log after applying your colmap.zip patch to vcpkg/ports
install-x64-windows-dbg-out.log

I don't see an error in the log file you provided. Could you please provide the console output? @cheng-chi

@FrankXie05 Thanks for the fast reply! The errors are buried a little deep here. You can find them by searchring for nvcc fatal in the file. One example error is:
FAILED: src/CMakeFiles/colmap_cuda.dir/mvs/gpu_mat_ref_image.cu.obj
C:\PROGRA~1\NVIDIA~2\CUDA\v11.7\bin\nvcc.exe -forward-unknown-to-host-compiler -DBOOST_ALL_DYN_LINK=1 -DCGAL_ENABLED -DCGAL_USE_GMPXX=1 -DCUDA_ENABLED -DEIGEN_INITIALIZE_MATRICES_BY_NAN -DGFLAGS_IS_A_DLL=1 -DGLOG_NO_ABBREVIATED_SEVERITIES -DGL_GLEXT_PROTOTYPES -DGUI_ENABLED -DIMATH_DLL -DOPENEXR_DLL -DOPENGL_ENABLED -DOPENMP_ENABLED -DQT_CORE_LIB -DQT_GUI_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DWIN32_LEAN_AND_MEAN -D_MWAITXINTRIN_H_INCLUDED -IC:\Users\cchi\vcpkg\buildtrees\colmap\src\b221bdabb2-a77d7326e5.clean\lib -IC:\Users\cchi\vcpkg\buildtrees\colmap\src\b221bdabb2-a77d7326e5.clean\src -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include\eigen3 -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include\qt5 -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include\qt5\QtCore -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\tools\qt5\mkspecs\win32-msvc -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include\qt5\QtOpenGL -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include\qt5\QtWidgets -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include\qt5\QtGui -isystem="C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\include" -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include\webp -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include\OpenEXR -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include\Imath -isystem=C:\Users\cchi\vcpkg\installed\x64-windows\include\GKlib -D_WINDOWS -Xcompiler="/W3 /GR /EHsc" -D_FORCE_INLINES -Wno-deprecated-gpu-targets --use_fast_math --default-stream per-thread -Xptxas=-suppress-stack-size-warning -Xcompiler="-MDd  -Zi -Ob0 -Od /RTC1" -arch=native /EHsc -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -std=c++14 -MD -MT src\CMakeFiles\colmap_cuda.dir\mvs\gpu_mat_ref_image.cu.obj -MF src\CMakeFiles\colmap_cuda.dir\mvs\gpu_mat_ref_image.cu.obj.d -x cu -c C:\Users\cchi\vcpkg\buildtrees\colmap\src\b221bdabb2-a77d7326e5.clean\src\mvs\gpu_mat_ref_image.cu -o src\CMakeFiles\colmap_cuda.dir\mvs\gpu_mat_ref_image.cu.obj -Xcompiler=-Fdsrc\CMakeFiles\colmap_cuda.dir\colmap_cuda.pdb,-FS
nvcc fatal   : A single input file is required for a non-link phase when an outputfile is specified

@FrankXie05 Here's my console output:
./vcpkg install colmap[cuda]:x64-windows
Computing installation plan...
The following packages will be built and installed:
    colmap[core,cuda]:x64-windows -> 2023-03-12#2
Detecting compiler hash for triplet x64-windows...
Restored 0 package(s) from C:\Users\cchi\AppData\Local\vcpkg\archives in 95.3 us. Use --debug to see more details.
Installing 1/1 colmap:x64-windows...
Building colmap[core,cuda]:x64-windows...
-- Using cached colmap-colmap-30da037ce19bdceb6d239c45342fadb221bdabb2.tar.gz.
-- Cleaning sources at C:/Users/cchi/vcpkg/buildtrees/colmap/src/b221bdabb2-a77d7326e5.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source C:/Users/cchi/vcpkg/downloads/colmap-colmap-30da037ce19bdceb6d239c45342fadb221bdabb2.tar.gz
-- Applying patch fix-dependencies.patch
-- Applying patch fix-cuda-include.patch
-- Using source at C:/Users/cchi/vcpkg/buildtrees/colmap/src/b221bdabb2-a77d7326e5.clean
-- Found external ninja('1.11.0').
-- Configuring x64-windows-dbg
-- Configuring x64-windows-rel
-- Building x64-windows-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:134 (message):
    Command failed: C:/Users/cchi/vcpkg/downloads/tools/cmake-3.25.1-windows/cmake-3.25.1-windows-i386/bin/cmake.exe --build . --config Debug --target install -- -v -j25
    Working Directory: C:/Users/cchi/vcpkg/buildtrees/colmap/x64-windows-dbg
    See logs for more information:
      C:\Users\cchi\vcpkg\buildtrees\colmap\install-x64-windows-dbg-out.log

Call Stack (most recent call first):
  installed/x64-windows/share/vcpkg-cmake/vcpkg_cmake_build.cmake:74 (vcpkg_execute_build_process)
  installed/x64-windows/share/vcpkg-cmake/vcpkg_cmake_install.cmake:16 (vcpkg_cmake_build)
  ports/colmap/portfile.cmake:61 (vcpkg_cmake_install)
  scripts/ports.cmake:147 (include)

error: building colmap:x64-windows failed with: BUILD_FAILED
Please ensure you're using the latest port files with `git pull` and `vcpkg update`.
Then check for known issues at:
    https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+colmap
You can submit a new issue at:
    https://github.com/microsoft/vcpkg/issues/new?title=[colmap]+Build+error&body=Copy+issue+body+from+C%3A%2FUsers%2Fcchi%2Fvcpkg%2Finstalled%2Fvcpkg%2Fissue_body.md

Could you please provide the file: C:\Users\cchi\vcpkg\buildtrees\colmap\config-x64-windows-dbg-out.log?

@FrankXie05 Here you go! Unfortunately I don't have much experience with vcpkg and windows programming in general. Sorry for not providing all information upfr
config-x64-windows-dbg-out.log
ont

I ran in to this and the problem seems to be the stray /EHsc passed to nvcc (the unquoted one). If I remove it, I can get a single nvcc command to run.
I haven't been able to able to make the project to compile, though. Patching away this line didn't help.

Issue is still present today. Following the steps to install nerfstudio on Windows, after compiling deps for over an hour, the COLMAP steps:
git clone https://github.com/microsoft/vcpkg
cd vcpkg
bootstrap-vcpkg.bat
vcpkg install colmap[cuda]:x64-windows

just fail with the same error. --head fails as well.
nvcc fatal   : A single input file is required for a non-link phase when an outputfile is specified
CUDA toolkit 11.8.
install-x64-windows-dbg-out.log

Hi, I have the same error here. Apparently it has something to do with VSCode and some spaces in the paths

Issue is still present today. Following the steps to install nerfstudio on Windows, after compiling deps for over an hour, the COLMAP steps:
git clone https://github.com/microsoft/vcpkg
cd vcpkg
bootstrap-vcpkg.bat
vcpkg install colmap[cuda]:x64-windows

just fail with the same error. --head fails as well. nvcc fatal : A single input file is required for a non-link phase when an outputfile is specified CUDA toolkit 11.8.
install-x64-windows-dbg-out.log

I am having this problem now also.

Hey all,
I'm also getting a similar error. Has anyone managed to solve the issue? It's quite frustrating as I'd love to play with nerfstudio :/
error: building colmap:x64-windows failed with: BUILD_FAILED
Elapsed time to handle colmap:x64-windows: 59 s
Please ensure you're using the latest port files with git pull and vcpkg update.
Then check for known issues at:
https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+colmap
You can submit a new issue at:
https://github.com/microsoft/vcpkg/issues/new?title=[colmap]+Build+error&body=Copy+issue+body+from+C%3A%2FUsers%2Fadrie%2FDocuments%2Fvcpkg%2Finstalled%2Fvcpkg%2Fissue_body.md

For nerfstudio, you may be able to run conda install colmap instead, or download it manually, and then point nerfstudio at the colmap binaries with ns-process-data video --colmap-cmd \path\to\colmap.exe.
Another option is to run nerfstudio in WSL2. Then you can just add conda install colmap to your install commands and it should just work.
I have not tested either of these, I ended up installing it on Linux instead.

conda install colmap
Retrieving notices: ...working... done
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
PackagesNotFoundError: The following packages are not available from current channels:

colmap

Current channels:

https://repo.anaconda.com/pkgs/main/win-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/win-64
https://repo.anaconda.com/pkgs/r/noarch
https://repo.anaconda.com/pkgs/msys2/win-64
https://repo.anaconda.com/pkgs/msys2/noarch

To search for alternate channels that may provide the conda package you're
looking for, navigate to
https://anaconda.org

and use the search bar at the top of the page.
:(

and even with the --colmap-cmd i get the following error :
Could not find COLMAP. Please install COLMAP.
See https://colmap.github.io/install.html for installation instructions.

conda install colmap Retrieving notices: ...working... done Collecting package metadata (current_repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve. Collecting package metadata (repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve.
PackagesNotFoundError: The following packages are not available from current channels:

colmap

Current channels:

https://repo.anaconda.com/pkgs/main/win-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/win-64
https://repo.anaconda.com/pkgs/r/noarch
https://repo.anaconda.com/pkgs/msys2/win-64
https://repo.anaconda.com/pkgs/msys2/noarch

To search for alternate channels that may provide the conda package you're looking for, navigate to
https://anaconda.org

and use the search bar at the top of the page.
:(

My bad, it's a conda-forge package, the correct command is:
conda install -c conda-forge colmap

and even with the --colmap-cmd i get the following error : Could not find COLMAP. Please install COLMAP. See https://colmap.github.io/install.html for installation instructions.

You need to actually specify the full path to colmap.exe in the --colmap-cmd. So you first need to have a working colmap through some other method (i.e. conda or manual download), and then you need to point nerfstudio at its location using --colmap-command followed by the path to colmap.exe.

conda install -c conda-forge colmap -> that worked! thanks so much :D

Spoke too soon... it runs fine for part of the process and then it errors out with :
Number of frames in video: 4698
Number of frames to extract: 314
[22:36:41] 🎉 Done converting video to images.                                                 process_data_utils.py:172
[22:39:12] 🎉 Done downscaling images.                                                         process_data_utils.py:362
──────────────────────────────────────────────  💀 💀 💀 ERROR 💀 💀 💀  ───────────────────────────────────────────────
Error running command: colmap -h
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

this is the error window that pops up along with it

Ah, yes, welp. I ran into that as well, had it working for like 2 runs and then it broke again. That's when I decided to run it on Linux instead. I have no solution for that.
You might have more luck with WSL2.

I decided to run it on Linux instead.

 Could I run nerfstudio from Linux within a virtual machine?
Would it be possible to install Linux on my machine and dual-boot between Windows 11 and Linux?

No, not easily, you need the video card for CUDA, which the VM doesn't get access to. I'd suggest trying WSL2, which is like a Linux virtual machine integrated in Windows, with CUDA support.
Thank you for the response, I appreciate all the help we can get on this issue. Is the dual-boot concept not an option either?

I will look into WSL2... haven't had time yet to try the above methods.

Is the dual-boot concept not an option either?
Dual boot is perfectly fine, though keep in mind you'll have to pre-distribute your disk space between operating systems, and NeRFs can use up a lot of space pretty quickly. I'm up to 500GB on my NeRF folder already.

That said, this is getting pretty off-topic for this issue/repo, and does not lead to a fix for the actual issue, so it might be time to move this elsewhere. The Nerfstudio Discord is a better place for individual support.

I was able to get nerfstudio working by installing both colmap and mpir from conda-forge. But building it manually from vcpkg still doesn't work.

@Randomblock1 : How did you get rid of colmap-h error??

Issue is still present today. Following the steps to install nerfstudio on Windows, after compiling deps for over an hour, the COLMAP steps:
git clone https://github.com/microsoft/vcpkg
cd vcpkg
bootstrap-vcpkg.bat
vcpkg install colmap[cuda]:x64-windows

just fail with the same error. --head fails as well. nvcc fatal : A single input file is required for a non-link phase when an outputfile is specified CUDA toolkit 11.8.
install-x64-windows-dbg-out.log

I am having this problem now also.

Hi, have you solved this problem? I have the same log error as you. If yes, may I know how you solve it? Thank you so much in advance

Sadly I never found a solution and ended up leaving it and using luma.ai
and volunga to process my nerfs. :/
Sad to hear it’s still an issue. Any further ideas welcome.
On Wed 23 Aug 2023 at 17:13, Binglun Wang @.***> wrote:

Issue is still present today. Following the steps to install nerfstudio on
Windows, after compiling deps for over an hour, the COLMAP steps:
git clone https://github.com/microsoft/vcpkg
cd vcpkg
bootstrap-vcpkg.bat
vcpkg install colmap[cuda]:x64-windows
just fail with the same error. --head fails as well. nvcc fatal : A
single input file is required for a non-link phase when an outputfile is
specified CUDA toolkit 11.8.
install-x64-windows-dbg-out.log
https://github.com/microsoft/vcpkg/files/11638228/install-x64-windows-dbg-out.log
I am having this problem now also.
Hi, have you solved this problem? I have the same log error as you. If
yes, may I know how you solve it? Thank you so much in advance
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/vcpkg/issues/30272#issuecomment-1690146611,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BBA274S77LUZ3QTDHIJG4ADXWYMYBANCNFSM6AAAAAAV7TH2KM
.
You are receiving this because you commented.Message ID:
@.***>

Hi there - after hours of downloading and building vcpkg on Windows I had the same error message:

error: building colmap:x64-windows failed with: BUILD_FAILED

Would have been good to know this before I tried that method!
Thankfully, after a bit of tweaking and reading through this post and some other github comments, I was able to get this to work on Windows 10 (across multiple hard drives) with the following steps. Your mileage may vary but hope these notes help -

Install MS VS community 2022 along with desktop development C++ toolkit. (Make sure to uninstall any other versions of VS and VS BuildTools - having multiple versions caused me so many headaches!)

Install CUDA 11.8 (make sure to include the Visual Studio Integration Component during CUDA install under Custom>CUDA>Visual Studio Integration)

Install CUDNN - download and and extract the folder from within the zip to your desktop (this validates correct user file permissions) and then copy and replace all of the folders from the extracted cudnn folder into the CUDA toolkit folder here:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8

To be certain that the file paths were correct during installation, copy the 4 files from the CUDA toolkit extras folder:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\extras\visual_studio_integration\MSBuildExtensions

Paste them into the VS plugins directory here, ensuring that the visual studio plugin is in the correct location:
D:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\BuildCustomizations

Here I'm using 'D:\Code\nerf-studio\env' as both the name of the env and the storage path of the env files (this lets you choose an install drive other than the default C:).

By pointing your conda environment to this vcvarsall.bat file (quotes and all), you can run the cmake build process within the conda command prompt window.
conda create --prefix D:\Code\nerf-studio\env -y python=3.8
conda activate D:\Code\nerf-studio\env
python -m pip install --upgrade pip
"D:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x64
cd\
D:
cd D:\Code\nerf-studio\tiny-cuda-nn
cmake . -B build
cmake --build build --config RelWithDebInfo -j
cd bindings/torch
python setup.py install
pip install nerfstudio
conda install -c conda-forge colmap
conda install -c conda-forge mpir

RUN THIS COMMAND to build the training data from 360 video [crop bottom 20% on an 18s (3*18=54) video) :
ns-process-data video --camera-type equirectangular --images-per-equirect 8 --num-frames-target 54 --crop-factor 0 0.2 0 0  --data D:\Code\nerf-studio\videos\test\test_49mpbs_3840x1920_29.97_h.264.mp4 --output-dir D:\Code\nerf-studio\videos\test\output

or image:
ns-process-data images --camera-type equirectangular --crop-factor 0 0.2 0 0 --data D:\Code\nerf-studio\images\input --output-dir D:\Code\nerf-studio\images\output

Finally you I was able visualize the data with either of these commands!
ns-train nerfacto --data D:\Code\nerf-studio\videos\test\output
ns-train nerfacto --data D:\Code\nerf-studio\images\output

The build error is caused by the /EHsc argument in the nvcc command line. A manual workaround is to edit the build.ninja file and run ninja directly.

Same issue, Have tried making sure there are no spaces in ANY paths. Cuda, vcpkg, visual studio all have no spaces in their paths.
C:\NVIDIAGPU
C:\Tool\vcpkg
C:\Tool\VisualStudio
Log.
install-x64-windows-dbg-out.log

The issue is not with spaces, but with arguments with slashes - in this case the /EHsc command. This can be deleted from the ninja files. In one case I encountered it was possible to edit the build.ninja file, in other cases I had to edit the rules.ninja file and delete the $FLAGS argument in the nvcc calls.
Then run ninja from a Visual Studio Developer Prompt as shown on line 3 of your log.

Still no luck tried both and a combination of the two. Taken from the Visual Studio Developer Prompt with the command: C:/Tool/VisualStudio/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe -v -v -j17 install
All /EHsc commands were deleted from build.ninja and $FLAGS were deleted from rules .ninja where the exe was nvcc.exe
outputLogNoFlagsInNVCCCalls.txt
outputLogNoEHsc.txt
outputLogNoEHscAndNoFlags.txt

Which version of Visual Studio and CUDA do you use? I haven't encountered those errors using the latest version of Visual Studio 2022 and CUDA 12.1.

Visual studio 2019 per colmaps recomendation, cuda 12.2.
Have just tried visual studio 2022 latest version and 12.1 same errors.

Just an update. I gave up on windows, installed a linux os on dual-boot, had colmap working in around an hour. I spent over a week trying to sort this error on windows.

I ran in to this and the problem seems to be the stray /EHsc passed to nvcc (the unquoted one). If I remove it, I can get a single nvcc command to run.
I haven't been able to able to make the project to compile, though. Patching away this line didn't help.

I ran into the same exact behavior/issue, but adding the following hack that essentially "esacpes" the extra \EHsc fixed it for me.
if(CUDA_ENABLED)
    COLMAP_ADD_LIBRARY(
        NAME colmap_mvs_cuda
        ...
    )
    # Hack for the extra \EHsc that gets added on Windows to the nvcc compile line, which causes the error:
    # "nvcc fatal: A single input file is required for a non-link phase when an outputfile is specified..."
    if(IS_MSVC)
        set_target_properties(colmap_mvs_cuda PROPERTIES COMPILE_OPTIONS -Xcompiler)
    endif()

It works.

I ran in to this and the problem seems to be the stray  passed to nvcc (the unquoted one). If I remove it, I can get a single nvcc command to run./EHsc
I haven't been able to able to make the project to compile, though. Patching away this line didn't help.

I ran into the same exact behavior/issue, but adding the following hack that essentially "escapes" the extra \EHsc fixed it for me.
if(CUDA_ENABLED)
    COLMAP_ADD_LIBRARY(
        NAME colmap_mvs_cuda
        ...
    )
    # Hack for the extra \EHsc that gets added on Windows to the nvcc compile line, which causes the error:
    # "nvcc fatal: A single input file is required for a non-link phase when an outputfile is specified..."
    if(IS_MSVC)
        set_target_properties(colmap_mvs_cuda PROPERTIES COMPILE_OPTIONS -Xcompiler)
    endif()

For background info - this is caused by IMath and OpenEXR libraries (both dependencies of FreeImage which is dependency of colmap) declaring compile argument '/EHsc' in cmake as INTERFACE_COMPILE_OPTIONS, which is fine for C compiler, but not for CUDA(nvcc). The patch posted by longhuan2018 should work, it is also possible to replace the flag with conditional '$<$<NOT:$<COMPILE_LANGUAGE:CUDA>>:/EHsc>'  so that it still applies to C targets.
Here is a patch for top level CMakeLists.txt i made before stumbling upon this thread:
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 00337e5..54d543f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -251,6 +251,17 @@ set_target_properties(
     EXCLUDE_FROM_ALL 1
     EXCLUDE_FROM_DEFAULT_BUILD 1)

+# On Windows, libraries IMath and OpenEXR (both imported via FreeImage lib)
+# declare parameter '/EHsc' in interface options properties. With CUDA enabled
+# this however gets also passed to NVCC compiler as a commandline argument
+# causing compile errors, so we need to fix that.
+if(CUDA_ENABLED AND IS_MSVC)
+    foreach(tgt Imath::Imath OpenEXR::Iex OpenEXR::IlmThread OpenEXR::OpenEXRCore OpenEXR::OpenEXR OpenEXR::OpenEXRUtil)
+        get_property(iface_opts TARGET ${tgt} PROPERTY INTERFACE_COMPILE_OPTIONS)
+        string(REPLACE "/EHsc" "\$<\$<NOT:\$<COMPILE_LANGUAGE:CUDA>>:/EHsc>" new_iface_opts "${iface_opts}")
+        set_property(TARGET ${tgt} PROPERTY INTERFACE_COMPILE_OPTIONS ${new_iface_opts})
+    endforeach()
+endif()

 ################################################################################
 # Install and uninstall scripts

in case anyone's still attempting nerfstudio, i kinda made it work

download a released zip version of colmap from git eg. https://github.com/colmap/colmap/releases/tag/3.9.1
unzip the file, rename the folder as colmap and put it to C:\
by now you should have C:\colmap\bin\colmap.exe
copy everything in C:\colmap\lib to C:\Windows\System32
go to system environment variables and put C:\colmap\bin in the Path
restart
try colmap in cmd, it should work now

Hi, I have the same error here. Apparently it has something to do with VSCode and some spaces in the paths

if so
how did you solve ??


Support Assignment Exclusions for Conditional Access Policies

Updated AAD policy and unit tests to define policy for users, groups, and roles, and to test for any exclusions to these.
Policy updates were made to 2.1, 2.2, 2.3, 2.4, 2.9, 2.10, and 2.13.
Policy 2.17 involves hybrid joined and compliant devices and is unchanged. This is the only "should" vs "shall" requirement, and we are not currently applying these policies in the tenant configurations.

Started examining the failures that occur when running this code against the cisaent (G5) tenant. All policies impacted (2.1, 2.2, 2.3, 2.4, 2.9, 2.10, 2.13 fail as expected, due to user/group/role exclusions). (See attached.)
Possible next steps include capturing the policy failures and identifying terms needed to define the allowable exclusions in Rego (those that the user can include in a config file).
Azure Active Directory Baseline Report_CAP_ss.pdf


Cannot encode field to JSON

I have proto schema like:
syntax = "proto3";
package project;

message Message {
    string id = 1;
    string type = 2;
    int32 created_at = 3;
    optional string header_image = 4;
}

When I try to create a instance in Typescript with:
const messageFromDb = await con.getRepository('message').findOneBy({ id })

const message = new Message({
  id: messageFromDb.id,
  type: messageFromDb.type,
  createdAt: messageFromDb.createdAt,
  headerImage: messageFromDb.headerImage // this can be null since it is optional
});

I get this error:

cannot encode field project.Message.headerImage to JSON

  at Object.writeMessage (node_modules/@bufbuild/protobuf/dist/cjs/private/json-format.js:146:23)
  at c.toJson (node_modules/@bufbuild/protobuf/dist/cjs/message.js:87:21)
  at c.toJSON (node_modules/@bufbuild/protobuf/dist/cjs/message.js:113:21)
      at stringify (<anonymous>)

I am using latest versions of following libraries to generate schema and use in Typescript project:
@bufbuild/protobuf @bufbuild/protoc-gen-es

I noticed above is happening due to headerImage sometimes being passed as null since it can be optional in the DB. If I fallback to undefined eg. headerImage: messageFromDb.headerImage || undefined everything works. While this is easy for one type I have more complex type where doing above undefined fallback would be inefficient and complicated.
My question is why can't the library encode null to JSON or why does it encode it in the first place when it is marked as optional in the proto schema?

Hey Ante, the optional Protobuf field compiles to:
  /**
   * @generated from field: optional string header_image = 4;
   */
  headerImage?: string;

The questionmark makes the property optional, meaning that it can be omitted, or set to undefined. However, setting the property to null is a type error:

TS2322: Type 'null' is not assignable to type 'string | undefined'.

In TypeScript, optional properties cannot be null. Here is a Playground link that shows the behavior.
Can you share which ORM you are using? I'd expect headerImage: messageFromDb.headerImage to be a type error, if messageFromDb.headerImage is string | null.

@timostamm using typeorm and it returns null because that is the actual value in the DB. It is probably not type error in this project since TS is not strict. That said, I am still wondering why it can't encode null since it is a valid JSON value?

null is a valid JSON value, but not a valid value for the message property. Hence the type error.
The issue https://github.com/typeorm/typeorm/issues/8703 pinpoints the problem. Unfortunately, there isn't a good resolution. I hope that it's clear that we cannot make all optional properties also accept null, since that would also affect users who want to consume a Protobuf message.
What we can do is treat null the same as undefined in the constructor, though. We have already done this in the upcoming v2, and I'm backporting the change to v1 in https://github.com/bufbuild/protobuf-es/pull/862.
BTW, || will evaluate to the right side if the left side is truthy. The nullish coalescing operator is more reliable, see 0 || undefined vs. 0 ?? undefined.

Closed by #862, released in v1.10.0.


Symlink of pkgx.yaml is not picked up

Expected behavior

Add symlink to a pkgx.yaml file in a project directory.
Run dev in project directory so to activate developer environment tooling.
Cd into project directory.
🟢  The pkgx.yaml is read and the specified tooling is installed/loaded.

Actual behavior

Add symlink to a pkgx.yaml file in a project directory.
Run dev in project directory so to activate developer environment tooling.
Cd into project directory.
🔴  No tooling is loaded. I don't think the file is recognized.

More details
$ ls -lha

drwxr-xr-x  45 fredrik  staff   1.4K Dec 13 21:22 .
drwxr-xr-x  21 fredrik  staff   672B Dec 12 18:01 ..
lrwxr-xr-x@  1 fredrik  staff    48B Dec 13 21:22 pkgx.yaml -> /Users/fredrik/code/dotfiles/templates/pkgx.yaml

$ cat pkgx.yaml

dependencies:
  - ruby
  - gem
  - node
  - npm
  - python

can confirm.
  for await (const [path, {name, isFile, isDirectory}] of dir.ls()) {
    if (isFile) {
      switch (name) {
...
      case "pkgx.yml":
      case "pkgx.yaml":
      case ".pkgx.yml":
      case ".pkgx.yaml":
        await parse_well_formatted_node(await path.readYAML())
        break
      }

  export interface DirEntry {
...
    /** True if this is info for a regular file. Mutually exclusive to
     * `DirEntry.isDirectory` and `DirEntry.isSymlink`. */
    isFile: boolean;

Has this been implemented yet? I can make a PR if not

@michaelessiet I can't say for sure, but I haven't tried to implement this.


Bug: Analyzer (and maybe runtime?) not properly narrowing when using extensions

Summary:
I'm expecting to be able to narrow generics when using extensions. We are having to use extensions to properly identify a self return type of T1, but that needs to also come with the ability to narrow the generic within the Extension implementation.
I'm sure there is a valid reason why this is not occuring, but the allowed syntax (narrowing) and the implementation resulting from the syntax currently diverges. Either the syntax needs to be disallowed (which I hope is not the course of action) or the extension needs to correctly use the narrowed generic.
Version:
$dart --version
Dart SDK version: 2.18.5 (stable) (Tue Nov 22 15:47:29 2022 +0000) on "macos_arm64"

Reproduce:
main(){

  final otherClass = OtherClass();

  final test = TestClass();

  test.method(otherClass); // !!! This should be an analyzer + runtime error
}

class OtherClass {}

class OtherClassChild extends OtherClass {}

mixin TestMixin<T extends OtherClass> {}

class TestClass with TestMixin<OtherClassChild>{}

extension TestMixinExtension<T1 extends TestMixin<T2>, T2 extends OtherClass> on T1 {

  T1 method(final T2 should_be_narrowed_to_other_class_child){
    return this;
  }
}

Having a type parameter which is not linked to any input type, is usually not going to give you anything useful.
That's the problem here. The T2 type parameter is not restricted by the receiver type of the expression.
Dart extension resolution does not look at the parameters, so we get no clue to T2 from the argument of otherClass. The extension type parameters have to be solved entirely from the receiver's type.
The test.method(...) call checks whether the receiver is valid  for the extension by trying to check whether TestClass is a valid subtype of the extension's on type T1. It tries to solve for TestClass <: T1.
The extension introduces the constraints: T1 <: TestMixin<T2> and T2 <: OtherClass, which must be satisfied by the solution.
The OtherClass <: T2 is not constrainted by that, and it occurs only covariantly in T1's bound, so we can safely choose OtherClass for `T2.
TestClass implements TestMixin<OtherClassChild>, so the first constraint reduces to TestMixin<OtherClassChild> <: TestMixin, and therefore OtherClassChild <: T2. Since we chose OtherClassforT2, that's satisfied, so we're done. Success, T1 = TestClassandT2 = OtherClass` is a solution, and everyone's happy.
You wanted T2 to be OtherClassChild. It doesn't have to be, and the way it's currently implemented, it won't be.
Choosing OtherClass is a valid solution.
Maybe we should choose the most precise type which can work, which is OtherClassChild here, but that requires changing the type inference algorithm. (Which is a language issue, not an implementation issue, if we assume the current implementation is working as intended.)
This behavior is not restricted to extension. You see the same for:
void foo<T extends List<S>, S extends Object?>(T list) {
  print(S);
}
void main() {
  foo(<int>[]);  // Prints "Object?"
}

It's still two type parameters where only one is directly restricted by the input value, and the other is indirectly restricted, and where choosing the bound is valid.
Compare it to:
void foo<T extends void Function(S), S extends Object?>(T f) {
  print(S);
}
void main() {
  foo((int x) {});
}

We've discussed a way to provide the ability to decompose a type argument a number of times. This is a particular (compile-time only) way to use type patterns, dart-lang/language#170.
We would then be able to write the following:
void foo<X extends Iterable<final Y>>(X iterable) => print(Y);

void main() => foo(<int>[]);  // Prints "int".

The basic idea is that we can introduce a type variable of a generic entity by having the syntax final <identifier> in a bound in a type variable declaration, like final Y above.
When the generic entity is used and actual type arguments are passed, a type variable like Y above is bound to the value which is determined by taking the actual type argument T, finding the superinterface of the form List<S> that T must implement, and binding Y to S.

@stereotype441 Would it be possible to do an ordering of the type variable inferencing, like we do for parameters, so parameters depending on other parameters are inferred after their dependencies, and can take the solution for those into consideration?

Yes, that would certainly be possible.  Probably not a terribly easy undertaking, though--the code involved is fairly old and somewhat difficult to reason about.
I did some digging today and it looks to me like just adding an ordering to type variable inferencing wouldn't be enough.
Something appears to be getting in the way of the code successfully performing this reasoning step:

TestClass implements TestMixin<OtherClassChild>, so the first constraint reduces to TestMixin<OtherClassChild> <: TestMixin, and therefore OtherClassChild <: T2

I'm not sure what the hang-up was.  So part of the work involved in fixing this issue would be to figure out what's going wrong there 😃

A better example of the analyzer not catching what will be a runtime issue:
main(){

  final otherClass = OtherClass();

  final test = TestClass();

  test.shared_data_set(otherClass); // !!! This should be an analyzer + runtime error

  final otherClassChild = test.shared_data_get();

}

class OtherClass {}

class OtherClassChild extends OtherClass {}

mixin TestMixin<T extends OtherClass> {

  T? shared_data;

}

class TestClass with TestMixin<OtherClassChild>{

  OtherClassChild? shared_data_get(){
    return shared_data;
  }

}

extension TestMixinExtension<T1 extends TestMixin<T2>, T2 extends OtherClass> on T1 {

  void shared_data_set(final T2 should_be_narrowed_to_other_class_child){
    shared_data = should_be_narrowed_to_other_class_child;
  }
}

@tcf909, the core reason why we can have a type error at run time is the dynamically checked covariance. Here is a version of the example program where we use the feature that adds statically checked declaration-site variance to Dart (dart-lang/language#524):
// Using `--enable-experiment=variance`.

main() {
  final otherClass = OtherClass();
  final test = TestClass();

  /*
     test.sharedDataSet(
         otherClass); // Compile-time error: No such (extension) method.
     TestMixinExtension<TestClass, OtherClassChild>(test).sharedDataSet(
         otherClass); // Compile-time error: `OtherClassChild` expected.
     TestMixinExtension<TestClass, OtherClass>(test).sharedDataSet(
         otherClass); // Compile-time error: Type arguments violate bounds.
  */
  TestMixinExtension<TestClass, OtherClassChild>(test).sharedDataSet(
      OtherClassChild()); // OK.

  final otherClassChild = test.sharedDataGet();
}

class OtherClass {}

class OtherClassChild extends OtherClass {}

mixin TestMixin<inout T extends OtherClass> { // <-- Use declaration-site variance.
  T? sharedData;
}

class TestClass with TestMixin<OtherClassChild> {
  OtherClassChild? sharedDataGet() {
    return sharedData;
  }
}

extension TestMixinExtension<T1 extends TestMixin<T2>, T2 extends OtherClass>
    on T1 {
  void sharedDataSet(final T2 shouldBeNarrowed) =>
      sharedData = shouldBeNarrowed;
}

This illustrates several things:

This is now statically safe (of course, we don't have a complete proof, but we're trying out all the well-known ways to cause a dynamic covariance related type check to fail, and they are all rejected at compile time).
Type inference is not able to solve the constraints, so we need to use an explicitly resolved extension method invocation in order to be able to call it at all (so we call TheExtension<...>(e).m() rather than just e.m()).
But it does show a list of actual type arguments that will allow the invocation to type check without errors, and that's also the list of actual type arguments that give rise to an invocation that succeeds at run time.

This means that when we've concluded that the core of the type error problem is the dynamically checked covariance,
the missing type inference is the main remaining issue.
Consider the example where we remove the non-covariant usage of T in the first place. We do not use the variance feature now, because there is no unsound covariance (OK, more precisely: unsound covariance is now only used with a private member, and we can do that safely because we can inspect all usages manually, or it's in another library and then they can't access the private member).
main() {
  final otherClass = OtherClass();
  final test = TestClass();

  test.sharedDataSet(
      otherClass); // OK.
  // TestMixinExtension<TestClass, OtherClassChild>(test).sharedDataSet(
  //     otherClass); // Compile-time error: `OtherClassChild` expected.
  TestMixinExtension<TestClass, OtherClass>(test).sharedDataSet(
      otherClass); // OK.
  TestMixinExtension<TestClass, OtherClassChild>(test).sharedDataSet(
      OtherClassChild()); // OK.

  final otherClassChild = test.sharedDataGet();
}

class OtherClass {}

class OtherClassChild extends OtherClass {}

mixin TestMixin<T extends OtherClass> {
  T? _sharedData;
  T? get sharedData => _sharedData;
  set sharedData(OtherClass? value) {
    if (value is T?) _sharedData = value;
    // Just ignore 'bad' values.
  }
}

class TestClass with TestMixin<OtherClassChild> {
  OtherClassChild? sharedDataGet() {
    return sharedData;
  }
}

extension TestMixinExtension<T1 extends TestMixin<T2>, T2 extends OtherClass>
    on T1 {
  void sharedDataSet(final T2 shouldBeNarrowed) =>
      sharedData = shouldBeNarrowed;
}

Without the variance feature, type inference comes up with the type arguments <TestClass, OtherClass>, and they are accepted (it is true that TestClass <: TestMixin<OtherClassChild> <: TestMixin<OtherClass>).
When variance is used, type inference cannot find the type arguments <TestClass, OtherClassChild> even in the case where the invocation is test.sharedDataGet(OtherClassChild()). This is basically because the type arguments associated with receivers of member invocations have no context.
C<X> whatever<X>() {
  print(X);
  return C<int>() as C<X>;
}

class C<X> {
  X get g => 1 as X;
}

void main() {
  int i = whatever().g; // Prints 'dynamic'.
}

We might assume that the context type int makes whatever().g infer as whatever<int>().g. However, that's not true, there is no context type for the receiver of a member invocation, and this means that we get whatever<dynamic>().g, and that causes the print(X) to print 'dynamic', and this is the same phenomenon that makes type inference attempt to use <TestClass, OtherClass> with an invocation like  test.sharedDataSet(otherClass), and then there is no applicable extension method.
There is a proposal about providing some kind of context to receivers, but that proposal may still change, and it might not be adopted, and it hasn't been implemented at all (as far as I know).
In summary, we know how to make this safe, but we don't quite know how to make the type inference step succeed when it is done in a safe manner.

@eernstg I really appreciate your in depth explanation and examples.


Re-index stories in Yoast SEO if permalinks are outdated

Summary
We changed the rewrite slug from /stories/ to /web-stories/ mid-way.
Because Yoast SEO caches the permalinks in the database, it means stories created prior to that change will have outdated canonical URLs and the like
Relevant Technical Choices
Usage of all these Yoast SEO classes required PHPStan stubs. Took the time to improve the PHPStan config using the recommendations at https://phpstan.org/user-guide/discovering-symbols.
Unfortunately https://github.com/php-stubs/wordpress-seo-stubs is outdated, otherwise we could have used that package directly for the stubs.
To-do
N/A
User-facing changes
N/A
Testing Instructions

Activate Yoast SEO
Install Web Stories for WordPress Beta 2
Publish a story
Update to 1.0.0 stable
Check story on the frontend, notice the old URLs
Switch to this branch
Visit WordPress admin to trigger the db upgrader
Check story on the frontend, notice the new URLs

Fixes #4754

@omarreiss friendly ping 👋 curious to hear from an expert whether the approach we're taking here makes sense. Would love to get your input!

@swissspidy Hey, this approach would definitely work and if the expected use-case is always a relatively small number of stories total ( say below 100 ) then you can keep this.
If you're expecting sites to exist that have potentially thousands of web stories then it'll become likely that rebuilding all those is going to take more time and thus either significantly slow down the update request or even timeout.
For those cases we've build in logic where you can set the permalink column to NULL in which case it will automatically be recalculated for every object as it's fetched.
You could use a query like $indexable_repository->query()->where( 'object_type', 'post' )->where( 'object_sub_type', Story_Post_Type::POST_TYPE_SLUG )->set( 'permalink', null )->update_many(); to achieve this.
I believe 15.2 will also introduce a helper function to achieve resetting permalinks but that may not be feasible for your release timeline.

Thanks @herregroen, that's very helpful!
I expect the number of affected stories to be very low as the plugin is still very new, so it should be fine to keep. However, the set-permalink-to-NULL approach is very intriguing due to its simplicity. I might take a stab at doing that instead.

This is some small nit pic, but this is good to go.

@spacedmonkey mind re-reviewing this one?

@spacedmonkey friendly ping


"Export all private keys" command does nothing

I cannot export my private keys (generated from a seed phrase) with the 1.0.4 app.
Executing the "Export all private keys" command just no-ops.
I need to switch to a full node (Treasure Chest) in order to get unblocked since the Light server is down.

"Export seed phrase" is similarly broken.

This behavior, BTW, is observed when the Lightclient fails to initialize because the Lightwallet Server is down. But I should absolutely be able to export my locally held wallet seed phrase and keys without a connection to the server or the Internet at all. How else am I to recover my funds if the server were to go down for good?
I have my seed phrase from when I first created my wallet, but Treasure Chest doesn't take a seed phrase, so it's useless.


Implement snapshotting

Implement snapshotting to save snapshots of the forward wavefield used to compute the gradient to reduce memory usage.

@malfarhan7 ready to be merged for me. Agree?


Fix cache pollution for in/nin filter expressions

Closes #6091
Changes FilterExpressionBuilder to use lambda expression for in/nin instead of constant.
Fixes cache pollution for EF Core queries using IN and NIN filter operators as well as database query plan pollution.
EF now creates properly parameterised queries when using these filter operators.
Example query:
query {
  cars(where: { id: { in: [ 1, 2, 3 ] } } ) {
    id
  }
}

SQL generated before this change:
      SELECT c."Id"
      FROM "Cars" AS c
      WHERE c."Id" IN (1, 2, 3)
      LIMIT @__p_0

SQL generated with changes proposed:
      SELECT c."Id"
      FROM "Cars" AS c
      WHERE c."Id" = ANY (@__p_0)
      LIMIT @__p_1

SQL samples are from postgres. This fix also applies to SQL Server which now leverages OPENJSON to parameterize arrays.

 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.

Hey,
thanks for contributing.

@nikolai-mb Thanks for the contribution!