Use of Hard-coded Cryptographic Key vulnerability.

Hi mall-cook/packages/mall-cook-service uses hardcoded jwt secret to sign and decode jwt tokens, which makes it vulnerable to forging token and impersonate as a valid user and it also uses jwt.decode() instead of jwt.verify() function to decode tokens, which does not validate token signature while decoding token, which also may result in token forging by attackers.
pull request with fix for above mentioned vulnerabilities https://github.com/wangyuan389/mall-cook/pull/59
see https://r2c.dev/blog/2020/hardcoded-secrets-unverified-tokens-and-other-common-jwt-mistakes/ for more details

thanks


Server Start Crash

`Native stacktrace:
    /home/steam/scp/SCPSL_Data/Mono/x86_64/libmono.so(+0x98673) [0x7f16d472d673]
    /x86_64-linux-gnu/libpthread.so.0(+0x12890) [0x7f16d8801890]
    /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7) [0x7f16d78f5e97]
    /lib/x86_64-linux-gnu/libc.so.6(abort+0x141) [0x7f16d78f7801]
    /home/steam/scp/SCPSL.x86_64() [0xb46a0c]
    /home/steam/scp/SCPSL_Data/Mono/x86_64/libmono.so(+0xd8f65) [0x7f16d476df65]
    /home/steam/scp/SCPSL_Data/Mono/x86_64/libmono.so(+0x3721f) [0x7f16d46cc21f]
    /lib/x86_64-linux-gnu/libpthread.so.0(+0x12890) [0x7f16d8801890]
    /home/steam/scp/SCPSL.x86_64() [0x55d06b]
    /home/steam/scp/SCPSL.x86_64() [0xb872f0]
    /home/steam/scp/SCPSL.x86_64() [0xb6d96f]
    /home/steam/scp/SCPSL.x86_64() [0xb6da7c]
    /home/steam/scp/SCPSL.x86_64() [0xb4f0f3]
    /home/steam/scp/SCPSL.x86_64() [0xb93870]
    /home/steam/scp/SCPSL.x86_64() [0xb9bb08]
    /home/steam/scp/SCPSL.x86_64() [0xb9e1c4]
    /home/steam/scp/SCPSL.x86_64() [0xa28cdb]
    /home/steam/scp/SCPSL.x86_64() [0xa284c1]
    /home/steam/scp/SCPSL.x86_64() [0xa286a3]
    /home/steam/scp/SCPSL.x86_64() [0xa286e9]
    /home/steam/scp/SCPSL.x86_64() [0xa82961]
    /lib/x86_64-linux-gnu/libpthread.so.0(+0x76db) [0x7f16d87f66db]
    /lib/x86_64-linux-gnu/libc.so.6(clone+0x3f) [0x7f16d79d888f]

Debug info from gdb:
=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================`
This repeats and stops the server from starting until I give it an exit command. Running Ubuntu Bionic, using Mono to run the application.

This looks a lot like a mono issue, has this been resolved?

Actually, this was resolved awhile ago. Mono files got corrupted while purging unnecessary packages


Forced fixed-width dates in plugin-list

ß61 changed the date display in the plugin-list from a forced US-format (mm/dd/yyyy) to the format defined in System Preferences -> Language & Text -> Formats -> Dates -> Short.
If this is defined without leading zeros (8/9/11 instead of 08/09/11), the dates in the plugin-list has a very non-uniform look, which distracts from the actual information. You tend to look at the length of the date instead of the date itself.
So, I would like a fixed-width format, depending on the user defined format in the system preferences. So, If the user has defined d/m/yyyy, it should still display dd/mm/yyyy for all dates.
This is how it can look now (depending the system preferences):

This is how I'd like it to look (all dates the same width):

Patrick mentioned it might be possible by playing with NSDateFormatter of the IB 'Date Formatter' of that column.

I'm tempted to close this because it's been a long time, and I don't think trying to override the user's short date format is either doable or warranted (I mean, we're talking about human things like dates, some countries doesn't even use / as their separator, or even arabic numerals — hello CJK users !).
References (for fun) :

[1] http://exit109.com/~ghealton/y2k/yrexamples.html
[2] https://www.youtube.com/watch?v=-5wpm-gesOY
[3] http://infiniteundo.com/post/25326999628/falsehoods-programmers-believe-about-time
[4] http://unicode.org/reports/tr35/tr35-dates.html

I agree. I was never very pro messing with date formats.
@tiennou that Youtube video is a bit over the top (since we're not really dealing with timezones and we can get Cocoa to do all the work!)
We're using the user's preferred preferences and I think this is best.
Aside: Today it's 2016年2月6号 in China, but the day after tomorrow is 2016年二月8号 OR 2016年1月1号 (1/1/2016) for the lunar calendar :-)

Yeah, I was mostly joking (I actually worked A LOT with dates and PHP). It's just that there are cases I never imagined (DST changes +9/-9, really ?), so I'm keeping this in mind when I think "oh I can do that".

Close?§


Images not recognized in folder

presskit -V
0.8.0

build/images has images:
ls
anneAndJames.jpg	logo.png		team.jpg
bonniejean.jpg		mike.jpg
header.jpg		smallbizsummit.jpg

building presskit...
presskit build
Starting directory: /Users/jamesgraham/WMSite

Finding data…
- company: "Community Phone" /Users/jamesgraham/WMSite/_site/data.xml
- company: "Community Phone" /Users/jamesgraham/WMSite/data.xml
Multiple companies detected. This is not supported yet, only the last will be used!

Generating HTML…
- "Community Phone" -> /Users/jamesgraham/WMSite/build/index.html

Exporting assets…
- /Users/jamesgraham/WMSite/build/css/master.css
- /Users/jamesgraham/WMSite/build/css/normalize.css
- /Users/jamesgraham/WMSite/build/js/hamburger.js
- /Users/jamesgraham/WMSite/build/js/imagesloaded.min.js
- /Users/jamesgraham/WMSite/build/js/masonry.min.js

Done! 👌

Output in html:
Logo & Icon
There are currently no logos or icons available for Community Phone. Check back later for more or contact us for specific requests!

Hello,
You have two company data.xml, and I think the problem arises from here.
One of the two should be a product.
Can you show me your folder structure?

Hi, thanks for your response. I've previously tried deleting it as well. E.g.
presskit build
Starting directory: /Users/jamesgraham/WMSite

Finding data…
- company: "Community Phone" /Users/jamesgraham/WMSite/data.xml

Generating HTML…
- "Community Phone" -> /Users/jamesgraham/WMSite/build/index.html

Exporting assets…
- /Users/jamesgraham/WMSite/build/css/master.css
- /Users/jamesgraham/WMSite/build/css/normalize.css
- /Users/jamesgraham/WMSite/build/js/hamburger.js
- /Users/jamesgraham/WMSite/build/js/imagesloaded.min.js
- /Users/jamesgraham/WMSite/build/js/masonry.min.js

Done! 👌

results in same outputted html, unfortunately
not sure what folder structure you want to see, but here's root/build

thanks!

Hello,
I want to see the folder structure containing the data and images you want to convert. :)
ie, it should be like this:
yourpresskitcode/
  data.xml    # This is your company data file.
  images/     # This is the image for your company data file.

  product01/  # A product.
    data.xml  # Its data file.
    images/   # Its image.

  product02/  # Another product.
    data.xml  # And its data file.
    images/   # And its image.

Do:
cd path/to/yourpresskitcode
presskit build

And it will generate a build folder in your current directory. This is what you should copy on your server.

It's all there, no? I have the images folder and the data.xml file right within WMSite, the directly from which I build.

Sorry, I misread your issue.
You have no logo, even if the images folder has a logo.png inside.
Hmm, that's weird.
Try to clean the build folder while building:
presskit build -D

no dice :(

Do you mind sending your project? :)

For sure, thanks so much
Should all be here: https://github.com/wittedhaddock/wittedhaddock.github.io

Okay, I got it just by looking at your repo.
The images folder should be near your data.xml. When presskit starts to build, it looks for an adjacent images/ folder. Because you don't have the images/ folder, presskit infers that there's no image for your project, and thus, print the text you saw below your logo section.
Right now, I guess you put the images/ folder in your build/ folder manually?
Move this folder outside build/, right near your data.xml and it should be fine.

Thank you.
Unfortunately this doesn't seem to have done the trick for me.
Even when I create a new directly only containing data.xml and images/ it still produces the same html.
Inside a subdirectory named presskit()
:presskit() jamesgraham$ ls
build		data.xml	images
Jamess-MBP:presskit() jamesgraham$ presskit build -D
Starting directory: /Users/jamesgraham/WMSite/presskit()

Cleaning build folder…

Finding data…
- company: "Community Phone" /Users/jamesgraham/WMSite/presskit()/data.xml

Generating HTML…
- "Community Phone" -> /Users/jamesgraham/WMSite/presskit()/build/index.html

Exporting assets…
- /Users/jamesgraham/WMSite/presskit()/build/css/master.css
- /Users/jamesgraham/WMSite/presskit()/build/css/normalize.css
- /Users/jamesgraham/WMSite/presskit()/build/js/hamburger.js
- /Users/jamesgraham/WMSite/presskit()/build/js/imagesloaded.min.js
- /Users/jamesgraham/WMSite/presskit()/build/js/masonry.min.js

Done! 👌```

Cool. 😊


method to randomly generate 64 bit int as string

Details

New Dot section of design doc: https://docs.google.com/document/d/125xZPDi7v6jmS-GKEcvcpdAwpDRPPGsq_iEOCl9RQFw/edit#bookmark=id.3ifommrba4g8
Fixed Issues

$ https://github.com/Expensify/Expensify/issues/223137
Tests

[ ] Verify that no errors appear in the JS console

PR Review Checklist

Contributor (PR Author) Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[ ] I wrote clear testing steps that cover the changes made in this PR

[ ] I added steps for local testing in the Tests section
[ ] I added steps for Staging and/or Production testing in the QA steps section
[ ] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I included screenshots or videos for tests on all platforms
[ ] I ran the tests on all platforms & verified they passed on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[ ] MacOS / Chrome
[ ] MacOS / Desktop

[ ] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I followed proper code patterns (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I followed the guidelines as stated in the Review Guidelines
[ ] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] Any functional components have the displayName property
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

PR Reviewer Checklist
The Contributor+ will copy/paste it into a new comment and complete it after the author checklist is completed

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[ ] MacOS / Chrome
[ ] MacOS / Desktop

[ ] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] Any functional components have the displayName property
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

QA Steps

[ ] Verify that no errors appear in the JS console

Screenshots

Web

Mobile Web

Desktop

iOS

Android

@flodnv I tried to think of some unit tests for this, but couldn't come up with anything useful. Did you have anything in mind?

We could at least verify that the generated number is in the range we expect it to be (and is a string)

Ooh I thought it would be tricky to test the range, but string comparison seems to work!

I think the lowest number we can get with this function is 1,000,000,000. I don't think it matters that much since 64 bits is very very big but I don't know if this was discussed so I wanted to bring it up.

Good point! I think we should add first and then multiply on the left part, so the range is 0-MAX_64BIT_LEFT_HALF. For the right part we could multiply and then add so the range is 1-MAX_64BIT_RIGHT_HALF

@srikarparsi can we add unit tests as Flo suggested?

@srikarparsi I wanted to check in on this PR? We've had some great process thus far, so let's do everything we can to keep that same momentum this week. When do you think it'll be ready for re-review?

I'll add unit tests, clean up the warnings and change the bounds by the end of today :)

Thank you @tylerkaraszewski! I agree, let's make those changes @srikarparsi!

yup @luacmartins! I fixed the lint errors and the bounds so that it allows for 0 in the right or left half but had a question about the test. Is this the right location to add a new file that tests NumberUtils.js https://github.com/Expensify/App/tree/srikar-64bitRandom/tests/unit Also, I believe this is the logic we came up with but I couldn't figure out how to pass or fail the test based on this as none of the unit tests I looked through in the tests/unit had this structure. Most of the other test code I looked at as examples used the describe, test and expect methods. so I wanted to ask if there was somewhere I can see how to use those methods and if that is the right way to go about writing this unit test.

@srikarparsi yes, that's the correct path for the tests. As for the test themselves, I'd do something like the code below:
describe('libs/NumberUtils', () => {
  it('should generate a random 64-bit numeric string', () => {
    const id = NumberUtils.rand64();
    expect(id).toBe(...);
    ...
  });
})

cc @tylerkaraszewski @roryabraham

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

hmm this was breaking when I was running the desktop locally. Could be me though?
App [main] :> npm run desktop

><EMAIL_ADDRESS>desktop
> scripts/set-pusher-suffix.sh && node desktop/start.js

Using PUSHER_DEV_SUFFIX from ../Web-Expensify/_config.local.php
Found suffix: 69db2c8c04e54064a2d1ca48a515d180
Updating .env
[Renderer] ℹ ｢wds｣: Project is running at http://localhost:8080/
[Renderer] ℹ ｢wds｣: webpack output is served from /
[Renderer] ℹ ｢wds｣: Content not from webpack is served from /Users/kosuke/Expensidev/App/dist
[Renderer] ℹ ｢wds｣: 404s will fallback to /index.html
[Main] Hash: 93c0b04638346214ccf0
[Main] Version: webpack 4.46.0
[Main] Time: 530ms
[Main] Built at: 08/24/2022 4:04:49 PM
[Main]            Asset      Size         Chunks             Chunk Names
[Main] contextBridge.js   306 KiB  contextBridge  [emitted]  contextBridge
[Main]          main.js  2.61 MiB           main  [emitted]  main
[Main] Entrypoint main = main.js
[Main] Entrypoint contextBridge = contextBridge.js
[Main] [./desktop/ELECTRON_EVENTS.js] 356 bytes {main} {contextBridge} [built]
[Main] [./desktop/contextBridge.js] 2.39 KiB {contextBridge} [built]
[Main] [./desktop/main.js] 13.7 KiB {main} [built]
[Main] [./node_modules/webpack/buildin/module.js] (webpack)/buildin/module.js 497 bytes {main} [built]
[Main] [./src/CONFIG.js] 3.37 KiB {main} [built]
[Main] [./src/CONST.js] 416 bytes {main} [built] [failed] [1 error]
[Main] [./src/libs/Url.js] 321 bytes {main} [built]
[Main] [./src/libs/checkForUpdates.js] 630 bytes {main} [built]
[Main] [./src/libs/getPlatform/index.desktop.js] 111 bytes {main} [built]
[Main] [electron] external "electron" 42 bytes {main} {contextBridge} [built]
[Main] [electron-context-menu] external "electron-context-menu" 42 bytes {main} [built]
[Main] [electron-log] external "electron-log" 42 bytes {main} [built]
[Main] [electron-serve] external "electron-serve" 42 bytes {main} [built]
[Main] [electron-updater] external "electron-updater" 42 bytes {main} [built]
[Main]     + 457 hidden modules
[Main]
[Main] ERROR in ./src/CONST.js 793:26
[Main] Module parse failed: Identifier directly after number (793:26)
[Main] You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
[Main] |         LEAVE_ROOM: 'leaveRoom',
[Main] |     },
[Main] >     MAX_64BIT_LEFT_HALF: 9_223_372_036,
[Main] |     MAX_64BIT_RIGHT_HALF: 854_775_807,
[Main] |     IOS_KEYBOARD_SPACE_OFFSET: -30,
[Main]  @ ./src/CONFIG.js 6:0-28 9:53-58 23:20-25
[Main]  @ ./desktop/main.js
[Main] webpack --config config/webpack/webpack.desktop.js --config-name desktop-main --mode=development && wait-port localhost:8080 && electron desktop/dist/main.js exited with code 2
--> Sending SIGTERM to other processes..
^C^[[B^[[A[Renderer] webpack-dev-server --config config/webpack/webpack.dev.js --port 8080 --env.platform desktop exited with code 0

@ctkochan22 there's a thread here if you want to follow

🚀 Deployed to staging by @luacmartins in version: 1.1.90-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Lumen 5.2 support on limoncello-shot?

Sorry for not putting this on the right project, but the issues were turned off on the "shot" project. Is there any chance the project will be updated for lumen 5.2? Currently it requires 5.1

Sorry but it took a lot of time and efforts to make the project way more advanced. Dev version is published for Lumen 5.2


Question: when validating CFF files, how will we validate that a licence is on the SPDX list?

Seeing as I think a licence has to be SPDX per the standard, I suppose we need to validate that this is the case. Will it be possible to validate this via the JSONSchema validation route, or will we need to do this separately?
Apologies if this has been dealt with already.

Hi @hainesr, yes, this is covered by the JSON Schema schema. We are using an enum for this, which is compiled via https://github.com/citation-file-format/get-spdx-licenses: schema.json lines 634ff..
Feel free to close this issue if this answers your question :).


Re-integrate HPU after upstream refactors

This PR is WIP - it takes 01bfb22 commit from vllm main branch, and attempts to port changes from habana_main to it, to add HPU support similarly to how vLLM handles Neuron. All changes are supposed to be fully non-invasive, and not break any other accelerator's support.
What's introduced

vllm/executor/habana_executor.py - 1xHPU executor adapted from gpu_executor.py
vllm/executor/ray_habana_executor.py - 8xHPU executor adapted from ray_gpu_executor.py
vllm/engine/attention/backends/habana_attn.py - Habana-specific backend for handling prefill attention and paged attention
vllm/engine/attention/ops/habana_paged_attn.py - Habana backend for handling paged attention
vllm/worker/habana_worker.py - Habana-specific worker for handling distributed inference and executing models
vllm/worker/habana_model_runner.py - Habana-specific worker for executing models
vllm/hpu/*.py - legacy HPU code referred to in new APIs, will likely be removed.

What's working

[x] vLLM installs and detects Synapse version
[x] Native HPU support - no GPU migration toolkit needed
[x] HPU autodetection
[x] Paged KV cache initialization and write
[x] HPEX RMSNorm
[x] HPEX RoPE
[x] HPU prefill with HPEX FusedSDPA
[x] HPU paged attention
[x] Offline BF16 inference for Llama7b on 1xHPU, 2xHPU and 8xHPU
[x] Offline BF16 inference for Llama70b on 8xHPU
[x] AsyncLLMEngine
[x] FakeHPUGraph (PT lazy with batch bucketing and max seq padding)
[x] No excessive graph recompilations observed in lazy mode
[x] Random and greedy sampling
[x] Tensor parallelism
[x] HPUGraphs are capturing and seem to be replaying properly

What's not working (ordered by priority):

[ ] HPUGraph destructor behaves weirdly and throws errors
[ ] Gather to driver worker - using all_gather as WA
[ ] Quantization
[ ] Beam search causes graph compile errors
[ ] ALiBi is not supported in paged attention
[ ] LoRA is not supported
[ ] Prefix caching (not planned)
[ ] Chunked prefill (not planned)

LGTM


Item Templates - Base Unit of Measure and Unwanted Item Units of Measure

Summary
Item Templates are supposed to allow for only the fields specified in the template to apply to Item records.  Template are supposed to apply to fields that do not already have data specified. If a field in the template is omitted, then the template typically should not apply or override any data for the Item Record.
The Base Unit of Measure is an exception to this rule that cannot be overridden. When a Base Unit of Measure is omitted in an Item Template, then the following logic occurs through the GetUnitOfMeasureCode() method of Codeunit 1336 "Item Templ. Mgt.":

The Unit of Measure matching the International Standard value of EA is used.
The first Unit of Measure with an International Standard value is used.
The Base Unit of Measure is finally left blank.

The bug here is that, even when there exists an Item with a Base Unit of Measure, an Item Template with a blank Base Unit of Measure code will still attempt to apply a Unit of Measure.
The problematic methods of Codeunit 1336 "Item Templ. Mgt." are:
    local procedure ApplyTemplate(var Item: Record Item; ItemTempl: Record "Item Templ.")
    var
        SalesReceivablesSetup: Record "Sales & Receivables Setup";
        VATPostingSetup: Record "VAT Posting Setup";
        ItemRecRef: RecordRef;
        EmptyItemRecRef: RecordRef;
        ItemTemplRecRef: RecordRef;
        EmptyItemTemplRecRef: RecordRef;
        ItemFldRef: FieldRef;
        EmptyItemFldRef: FieldRef;
        ItemTemplFldRef: FieldRef;
        EmptyItemTemplFldRef: FieldRef;
        i: Integer;
        FieldExclusionList: List of [Integer];
    begin
        ItemRecRef.GetTable(Item);
        EmptyItemRecRef.Open(Database::Item);
        EmptyItemRecRef.Init();
        ItemTemplRecRef.GetTable(ItemTempl);
        EmptyItemTemplRecRef.Open(Database::"Item Templ.");
        EmptyItemTemplRecRef.Init();

        FillFieldExclusionList(FieldExclusionList);

        for i := 3 to ItemTemplRecRef.FieldCount do begin
            ItemTemplFldRef := ItemTemplRecRef.FieldIndex(i);
            if TemplateFieldCanBeProcessed(ItemTemplFldRef, FieldExclusionList) then begin
                ItemFldRef := ItemRecRef.Field(ItemTemplFldRef.Number);
                EmptyItemFldRef := EmptyItemRecRef.Field(ItemTemplFldRef.Number);
                EmptyItemTemplFldRef := EmptyItemTemplRecRef.Field(ItemTemplFldRef.Number);
                if (ItemFldRef.Value = EmptyItemFldRef.Value) and (ItemTemplFldRef.Value <> EmptyItemTemplFldRef.Value) then
                    ItemFldRef.Value := ItemTemplFldRef.Value;
            end;
        end;
        ItemRecRef.SetTable(Item);
        if ItemTempl."Base Unit of Measure" <> '' then
            Item.Validate("Base Unit of Measure", ItemTempl."Base Unit of Measure")
        else
            Item.Validate("Base Unit of Measure", GetUnitOfMeasureCode());
        if ItemTempl."Price Includes VAT" then begin
            SalesReceivablesSetup.Get();
            if not VATPostingSetup.Get(SalesReceivablesSetup."VAT Bus. Posting Gr. (Price)", ItemTempl."VAT Prod. Posting Group") then
                Error(VATPostingSetupErr, SalesReceivablesSetup."VAT Bus. Posting Gr. (Price)", ItemTempl."VAT Prod. Posting Group");
            Item.Validate("Price Includes VAT", ItemTempl."Price Includes VAT");
        end;
        OnApplyTemplateOnBeforeItemModify(Item, ItemTempl);
        Item.Modify(true);
    end;

    local procedure GetUnitOfMeasureCode(): Code[10]
    var
        UnitOfMeasure: Record "Unit of Measure";
    begin
        UnitOfMeasure.SetRange("International Standard Code", 'EA');
        if UnitOfMeasure.FindFirst() then
            exit(UnitOfMeasure.Code);

        UnitOfMeasure.SetRange("International Standard Code");
        if UnitOfMeasure.FindFirst() then
            exit(UnitOfMeasure.Code);

        exit('');
    end;

Reproduction Steps
This bug was identified while building an inventory integration. My integration would insert an item with the minimal information, apply an Item Template, and then Validate the Base Unit of Measure amongst other fields. Shortly afterwards Item Units of Measure would sync and I would be left with an undesired Item Unit of Measure of Each for the integrated item.

Create an Item Template (TMPLT01) with the Base Unit of Measure left blank.
Initialize an Item record.
Assign (:=) the Item No. and Base Unit of Measure (do not validate the Base Unit of Measure or a null pointer will be thrown since the Item record has yet to insert).
Insert the Item.
Apply Item Template.
Validate the desired Base Unit of Measure (this will trigger the creation of the related Item Unit of Measure).
Modify the Item record.
Navigate to Item Units of Measure.

At step 4, the record existed with a legitimate Base Unit of Measure but was overridden by the Item Templates. The item Base Unit of Measure is then re-validated to the desired Base Unit of Measure. Looking at the Item's Units of Measure, the Base Unit of Measure and the EA unit of measure will exist. The latter is an aberration.
Without business/integration events to override the Base Unit of Measure logic three inelegant work-arounds are available.

Remove all International Standard Codes from Units of Measure.
After the template applies, delete the Item Unit of Measure that spawned resulted from the Item Template.
Duplicate this "Item Templ. Mgt." codeunit and remove the Base Unit of Measure code.

Example Code
Here's example code that showcases the bug. This can be run after setting up an Item Template, TMPLT01.
    local procedure InsertExample()
    var
        IVTemplateMeth: Codeunit "Item Templ. Mgt.";
        Item: Record Item
        IVTemplate: Record "Item Templ.";
    begin
        Item.Init();
        Item."No." := 'TEST001';
        Item."Base Unit of Measure" := 'UN'; // Unit.
        Item.Insert();

        IVTemplate.Get('TMPLT01');
        IVTemplateMeth.ApplyItemTemplate(Item, IVTemplate);

        Item.Validate("Description", 'BaseUOMFail');
        Item.Validate("Base Unit of Measure" := 'UN'); // Validation triggers Item UOM creation.
        Item.Modify();
    end;

Expected behavior
Only the UN Item Unit of Measure should have been created.
Actual behavior
The UN Item Unit of Measure is created, but so is a vestigial EA.
Version Info

AL Language: Runtime 7.0
Visual Studio Code: 1.62.0
Business Central: US Business Central 18.5 (Platform 18.0.29486.31726 + Application 18.5.29545.0)
List of Visual Studio Code extensions that you have installed: AL Language

Recommendation
First and foremost, an Item's Base Unit of Measure should not be overridden by the Item Template if it exists on the Item record. Ensure the Item Base Unit of Measure is blank before setting the value.
I recommend moving the Base Unit of Measure validation to a function with an OnBefore triggers that will allow for this behavior to be overridden.
Proposed Change
    local procedure SetBaseUOM(var Item: Record Item; var ItemTempl: Record "Item Templ.")
    var
        Handled: Boolean;
    begin
        OnBeforeSetBaseUOM(Item, ItemTempl, Handled);
        if Item."Base Unit of Measure" = '' then
            if ItemTempl."Base Unit of Measure" = '' then begin
                Item.Validate("Base Unit of Measure", GetUnitOfMeasureCode());
            end else
                Item.Validate("Base Unit of Measure", ItemTempl."Base Unit of Measure");
    end;

    [IntegrationEvent(false, false)]
    local procedure OnBeforeSetBaseUOM(var Item: Record Item; var ItemTempl: Record "Item Templ."; var Handled: Boolean)
    begin
    end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


When clicking on the "Advanced" tab I seemingly can't edit it

Where is the config file for me to edit what is shown in the advanced tab next to configuration?

Hi @Mage-Enderman!
Thanks for the report.  It's not super clear, but you should just be able to edit the very same text you see displayed.  But when oobabot is running, the file editing is disabled.  This is due to a limitation on how the settings UI works.
I'm wondering if this is the case here.  Could you please try stopping the Oobabot from the "Configuration" tab, and then switching back to the Advanced tab and trying to edit there?
Please let me know how that works for you.

That worked perfectly!
I feel kinda dumb that I didn't try that earlier but I did end up trying it without reading your message first
Maybe as it'd possibly be a tad redundant to say "oobabot must not be running to edit", there could be a stop button on that page?


I'm running Linux notebook 4.10.0-28-generic #32-Ubuntu SMP Fri Jun 30 05:32:18 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Steps to reproduce the issue:

malice scan /path/to/malware.exe

Describe the results you received:
ssma: error: argument -f/--filename: expected one argument
Describe the results you expected:
No error, actually I don't know what could be a correct output since this is a new plugin.
plugins.toml:
- - -
[[plugin]]
  name = "ssma"
  enabled = true
  category = "av"
  description = "Simple Static Malware Analysis"
  image = "pielco11/ssma:latest"
  repository = "https://github.com/pielco11/SSMA.git"
  build = false
  mime = "*"
- - -

Additional information you deem important (e.g. issue happens only occasionally):
ssma is a python script that do a static analysis over PE and ELF, this works like ssma [OPTIONS] -f /path/to/malware.exe. As is possible to verify, the Docker image runs as follow ssma -r elasticsearch -f (this is the entrypoint). So what I need to do is docker run --rm -v /path/to/pe.exe:/malware/pe.exe pielco11/ssma pe.exe
If I run the plugin alone, it shows some error concerning a connection error to Elasticsearch, even if I firstly run malice elk.
Since the error is about the number of the arguments that I pass to ssma, how can I correctly parse them?

I'll try to break this in the the parts that might be the issue.
First with respects to elasticsearch this might be because you need to tell elasticsearch inside your plugin to try and connect to elasticsearch here http://elasticsearch:9200 this is because docker creates a DNS entry inside your container that links to the malice elk instance.
In my golang based plugins I talk to elasticsearch like so:
			elasticsearch.WritePluginResultsToDatabase(elasticsearch.PluginResults{
				ID:       utils.Getopt("MALICE_SCANID", utils.GetSHA256(path)),
				Name:     name,
				Category: category,
				Data:     structs.Map(avira.Results),
			})

you can see I try and check for an environment variable passed in by malice of the document_id it created for the scan.  That will always be there if you run with malice.  If it is NOT there I use the files sha256 instead.  This is what I use if I am using a plugin in stand-alone mode without malice.
I also pass in the name ssma and the category av. Data would be the JSON your plugin generates.
So you would do something like this:
res = es.index(index="malice", doc_type='sample', id=os.environ.get('MALICE_SCANID',sha256(args.filename), body=rDump)

I think the other issue is that malce expects that the only arg it will supply to a plugin is the filename  SSMA might need the file's full path? /malware/file you might want to add a check to your plugin to make sure that the file exists that was passed in for arg.filename if it doesn't exist maybe it is running in a different place then the file and you need to pass it the full path to the file?
In my golang plugins I do that as follows:
path, err = filepath.Abs(c.Args().First())
			utils.Assert(err)

			if _, err := os.Stat(path); os.IsNotExist(err) {
				utils.Assert(err)
			}

I get the full path no matter what and then I check to make sure that files exists inside the container
The only other thing I can think of is that malice usually runs plugins as the malice user and maybe it isn't seeing the file because the user you are running as doesn't have permissions to touch the file?

Breaking down the code, I see that the error is given by a -t argument that is not handled correctly. In particular, if I set filename as positional argument and not optional, I get ssma: error: unrecognized arguments: -t. So if I set filename as optional, what ssma sees (at least, what makes sense, to me, that ssma is probably seeing) is something like ssma -r elasticsearch -f -t /full/path/to/malware.exe.
Now, I set filename as positional and add -t as optional argument, the error that I get when I run malice scan /full/path/to/malware.exe is ssma: error: the following arguments are required: filename. So, there could be a problem while parsing arguments (filename in particular) to my plugin.
I build the image with another tag noel(the difference is that ssma will not post to elasticsearch, nothing more) it (my plugin, ssma) alone works great when I execute docker run --rm -v /home/user/final.exe:/malware/final.exe:ro pielco11/ssma:noel final.exe.
When can I do? I'm quite confused.

Ah yes! I apologize, I am grateful you are working through this with me as it is bringing to light all the details I need to add to documentation for others to make plugins.
Another requirement for a malice plugin is that is can output as JSON and Markdown tables.  Is there a way for you to add a flag to SSMA that will tell it to not output JSON to the command line, but instead a Markdown table/representation of the SSMA results?
The default way malice wants to run any plugin is docker run -v pwd:/malware --link malice-elastic:elasticsearch pielco11/ssma:noel -t final.exe
I suppose this requires you to change the -f to instead be a positional argument that is just the last arg.  I believe this is easy in python.
Then you can run SSMA plugin stand-alone like this:
JSON output to terminal (plus index into elasticsearch)
docker run -v pwd:/malware --link malice-elastic:elasticsearch pielco11/ssma:noel final.exe
=OR=
Markdown output to terminal (plus try to index into elasticsearch)
docker run -v pwd:/malware --link malice-elastic:elasticsearch pielco11/ssma:noel -t final.exe
In all my plugins I always try to index into elasticsearch and fail silently if there is no elasticsearch node accessible.

We are getting closer to the solution, but now I'm getting this error
PUT http://elasticsearch:9200/malice/sample/AV2eMNP-mgtqsE59-_NT [status:400 request:0.874s]

.
So I suppose that the problem is that AV2eMNP-mgtqsE59-_NT should be 05144140e110798339835d3e7176800179c20de8993d78b9488990aa636b5750 because looking at the output of malice, at a point I get time="2017-08-01T14:26:47Z" level=fatal msg="exit status 2" category=av path="/malware/05144140e110798339835d3e7176800179c20de8993d78b9488990aa636b5750" plugin=avast. Believing that this is the reason, this is the code that I use to generate sha256(args.filename) :
hasher = hashlib.sha256()
fl = str(args.filename)
hasher.update(fl.encode('utf-8'))
hashFile = hasher.hexdigest()

But, since  AV2eMNP-mgtqsE59-_NT does not change if args.filename = /home/user/final.exe or args.filename = final.exe I don't think that this is the right cause of the problem.
Also I tried some sha256/hexdigest/stuff-like-this and I can't reproduce both AV2eMNP-mgtqsE59-_NT
and 05144140e110798339835d3e7176800179c20de8993d78b9488990aa636b5750, don't know how to proceed.
Last but not least, try/except does not work with
es = Elasticsearch(["elasticsearch"])
res = es.index(index="malice", doc_type='sample', id=os.environ.get('MALICE_SCANID',sha256(args.filename), body=rDump)

I'm working for a dirty way to handle this, but now as now at the output there are no errors, so I think that this is a minor problem. Before to try the plugin alone, I prefer to solve these/this problems/problem, just to not overload and keeping the issue as linear as possible, I mean to not shuffle these problems.

AV2eMNP-mgtqsE59-_NT is most likely the MALICE_SCANID. so when malice started scanning final.exe it auto-generated the document _idand you should use it to append the SSMA results to the rest of the malice plugins results.

I don't understand why you got a 400 when you tried to PUT to it from python with the es.index command.  I think perhaps you need to use an update command and not a create command because you are appending to a document that already exists https://stackoverflow.com/a/30598673

just FYI the reason why I said you should use either the MALICE_SCANID or the sha256 is because if you scan with malice it will automatically push that env var into the docker container.  However, if you are running SSMA stand alone the sha256 is a good unique key to use for the elasticsearch DB because you would only want one record per file.  So you can say not scan a file again if it has already been scanned unless the user really wants to

Now it works perfectly! But if I run it alone, I get some error can not resolve http://elasticsearch.com:9200...

so this is where we need to decide how to handle es connection failures.  Do we ignore them?  Do we try a few different hosts?
What I do is I try:

http://elasticsearch:9200
MALICE_ELASTICSEARCH
http://<IP_ADDRESS>:9200

if none of those are found then the user doesn't have/want to use elasticsearch

so a way to run SSMA alone and have it use some independent elasticsearch you would do something like: https://github.com/malice-plugins/yara/blob/master/docs/elasticsearch.md
$ docker volume create --name malice
$ docker run -d --name elasticsearch \
                -p 9200:9200 \
                -v malice:/usr/share/elasticsearch/data \
                 blacktop/elasticsearch
$ docker run --rm -v /path/to/malware:/malware:ro --link elasticsearch pielco11/ssma -t FILE

OR if you wanted to use the malice-elk you would so this:
$ docker run --rm -v /path/to/malware:/malware:ro --link malice-elastic:elasticsearch pielco11/ssma -t FILE

NOTE: I am linking the malice elasticsearch into your plugin AS the host elasticsearch

OR you could have some main elasticsearch cluster somewhere you wanted to use then you would do:
$ docker run --rm -v /path/to/malware:/malware:ro -e MALICE_ELASTICSEARCH =http://pielco11.com:9200 pielco11/ssma -t FILE

Now with es = Elasticsearch(["elasticsearch", "<IP_ADDRESS>", os.environ.get("MALICE_ELASTICSEARCH")]) (if I understood correctly, MALICE_ELASTICSEARCH is an env var) it works perfectly and no error is shown. So I think that the solution is specifing multiple hosts to point to and linking malice-elastic:elasticsearch.

that is a great solution
you might still want to catch the exception if none of those are available and silently fail (and do not try to index) meaning the user doesn't wish to write to a DB and just wants to see the results in the terminal.

Ok, now I have a markdown table and the errors are ignored so the output is pretty clean.

can you post an example of the Markdown output here? I'd like to see how it turned out 👍

#### SSMA
| Sections      | Functions   |
|:-------------:|:-----------:|
| 8 | 10 |

Maybe in the future it will change, but now as now it's like this

you don't have to codify it (the markdown) it is meant to be displayed on github ;)

SSMA

Sections
Functions

8
10

looks good 👍

Can now we assume that the plugin is completed? Or is there something more to do?

I believe it is done.  I will hopefully work this weekend to make it easier for people to install community plugins as right now they would have to manually add it to the plugin.toml file.  We might need to have people add a config.toml or settings.toml file in the root of the plugin that malice could read/parse when installing

Here is the awesome plugin - https://github.com/pielco11/SSMA


Instant crash on start.

I'm having an issue where any version of CCMMW past v<IP_ADDRESS> will crash on attempted launch.
I'm running Windows 11 on an Acer Aspire 5 laptop.
Specs:
Windows 11 Home
Acer Aspire A515-56
11th Gen Intel Core i5-1135G7 @ 2.40GHz
20GB RAM
256GB Storage space
Intel Iris GPU

Probably you're placing mmw on a folder whose path contains non-ASCII characters (Å, 日本語, etc)
Try moving to C:/MikuMikuWorld

do you have the microsoft redist?

I have the redist and I have it in an ordinary path but it still refuses to launch. My desktop doesn't have this issue though, so it could be some sort of hardware compatibility issue with my laptop model.


jsdom vs domino

jsdom has many dependencies, domino has none. time to swap back to domino and manually add the missing setTimeout etc to the window object for now.

Fixed in 1.0.2


DID Exchange demoted from accepted to proposed

Signed-off-by: Sam Curren<EMAIL_ADDRESS>

Thanks for doing this and adding in the connection protocol.
+1 from me.  Should this remain for a couple of weeks for the change?

I don't think it needs to remain. We've already discussed it quite a bit on rocketchat.


Regression in handling overlays for files that don't exist in Analysis Server

There seems to have been a regression in Analysis Server causing crashes when it attempts to analyze overlay only files. Consider the trace at the end of this report, it comes from the Analysis Server bundled with 1.20.1.
dart-services uses in memory overlays only, never materialising the files to disk. It seems that there is a race condition where in some cases this causes a failed to handle completion domain request. This occurred after 20 successful completion responses.
Unfortunately this blocks upgrading DartPad to support the latest strong mode implementation.
RECV: {"id":"90","result":{}}
SEND: {"id":"91","method":"analysis.updateContent","params":{"files":{"/var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart":{"type":"add","content":"________"}}}}
RECV: {"event":"server.status","params":{"analysis":{"isAnalyzing":true}}}
RECV: {"event":"analysis.errors","params":{"file":"/var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart","errors":[{"severity":"INFO","type":"HINT","location":{"file":"/var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart","offset":7,"length":14,"startLine":1,"startColumn":8},"message":"Unused import","code":"unused_import","hasFix":true}]}}
RECV: {"event":"server.status","params":{"analysis":{"isAnalyzing":false}}}
RECV: {"id":"91","result":{}}
SEND: {"id":"92","method":"analysis.setPriorityFiles","params":{"files":["/var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart"]}}
RECV: {"event":"server.status","params":{"analysis":{"isAnalyzing":true}}}
RECV: {"id":"92"}
RECV: {"event":"analysis.errors","params":{"file":"/var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart","errors":[]}}
RECV: {"event":"analysis.errors","params":{"file":"/var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart","errors":[]}}
RECV: {"event":"analysis.errors","params":{"file":"/var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart","errors":[{"severity":"INFO","type":"HINT","location":{"file":"/var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart","offset":7,"length":14,"startLine":1,"startColumn":8},"message":"Unused import","code":"unused_import","hasFix":true}]}}
RECV: {"event":"server.status","params":{"analysis":{"isAnalyzing":false}}}
SEND: {"id":"93","method":"completion.getSuggestions","params":{"file":"/var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart","offset":21}}
RECV: {"id":"93","result":{"id":"22"}}
RECV: {"event":"server.error","params":{"isFatal":false,"message":"Failed to handle completion domain request: {params: {file: /var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart, offset: 21}, method: completion.getSuggestions, id: 93}","stackTrace":"FileSystemException(path=/var/folders/kx/yl86m99n6zj1xl_zlyqv5mvm003cc5/T/analysisServerSXMJbx/main.dart; message=Cannot open file)\n#0      _PhysicalFile.readAsStringSync (package:analyzer/file_system/physical_file_system.dart:169)\n#1      FileSource.contentsFromFile (package:analyzer/src/source/source_resource.dart:94)\n#2      FileSource.contents.<anonymous closure> (package:analyzer/src/source/source_resource.dart:78)\n#3      _PerformanceTagImpl.makeCurrentWhile (package:analyzer/src/generated/utilities_general.dart:212)\n#4      FileSource.contents (package:analyzer/src/source/source_resource.dart:77)\n#5      _UriSuggestionBuilder.visitNamespaceDirective (package:analysis_server/src/services/completion/dart/uri_contributor.dart:69)\n#6      _UriSuggestionBuilder.visitImportDirective (package:analysis_server/src/services/completion/dart/uri_contributor.dart:51)\n#7      ImportDirectiveImpl.accept (package:analyzer/src/dart/ast/ast.dart:5877)\n#8      UriContributor.computeSuggestions.<computeSuggestions_async_body> (package:analysis_server/src/services/completion/dart/uri_contributor.dart:33)\n#9      Future.Future.microtask.<anonymous closure> (dart:async/future.dart:144)\n#10     _rootRun (dart:async/zone.dart:1146)\n#11     _CustomZone.run (dart:async/zone.dart:1026)\n#12     _CustomZone.runGuarded (dart:async/zone.dart:924)\n#13     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:951)\n#14     _rootRun (dart:async/zone.dart:1150)\n#15     _CustomZone.run (dart:async/zone.dart:1026)\n#16     _CustomZone.runGuarded (dart:async/zone.dart:924)\n#17     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:951)\n#18     _microtaskLoop (dart:async/schedule_microtask.dart:41)\n#19     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50)\n#20     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:96)\n#21     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:149)\n"}}

https://codereview.chromium.org/2537513004/


explain_weights in Pipelines: minimal version

It looks like eli5 had a recent release, so it's a pity to come in late for it. But here's a more minimal version of #158, to which more can be added as it is designed and tested.

Codecov Report

Merging #177 into master will decrease coverage by 0.04%.
The diff coverage is 94.59%.

@@            Coverage Diff             @@
##           master     #177      +/-   ##
==========================================
- Coverage   97.25%   97.21%   -0.05%
==========================================
  Files          39       41       +2
  Lines        2405     2442      +37
  Branches      452      457       +5
==========================================
+ Hits         2339     2374      +35
- Misses         34       35       +1
- Partials       32       33       +1

Impacted Files
Coverage Δ

eli5/sklearn/transform.py
100% <100%> (ø)

eli5/__init__.py
83.33% <100%> (+0.57%)
:arrow_up:

eli5/sklearn/__init__.py
100% <100%> (ø)
:arrow_up:

eli5/sklearn/explain_weights.py
100% <100%> (ø)
:arrow_up:

eli5/transform.py
66.66% <66.66%> (ø)

Looks good, thanks for the persistence @jnothman!

It's not an implementation detail insofar as users will need to register
their own implementations as they write their own transformers.
That's not to say that it's likely to be called outside of explain_weights.
On 2 May 2017 at 20:15, Mikhail Korobov<EMAIL_ADDRESS>wrote:

@kmike commented on this pull request.
In docs/source/autodocs/eli5.rst
https://github.com/TeamHG-Memex/eli5/pull/177#discussion_r114287760:

@@ -13,3 +13,5 @@ The following functions are exposed to a top level, e.g.
.. autofunction:: eli5.show_weights

.. autofunction:: eli5.show_prediction
+
+.. autofunction:: eli5.transform_feature_names
Yeah, I was also unsure; do you think this function will be used
stand-alone, not as an implementation detail of how to make explain.. /
show.. functions work?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/TeamHG-Memex/eli5/pull/177#discussion_r114287760, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAEz671vqj-Q77fv0qjqag7hobJeFpP3ks5r1wJLgaJpZM4NNBx7
.

In any case, documentation, of all things, can change later.
On 2 May 2017 at 20:19, Joel Nothman<EMAIL_ADDRESS>wrote:

It's not an implementation detail insofar as users will need to register
their own implementations as they write their own transformers.
That's not to say that it's likely to be called outside of explain_weights.
On 2 May 2017 at 20:15, Mikhail Korobov<EMAIL_ADDRESS>wrote:

@kmike commented on this pull request.
In docs/source/autodocs/eli5.rst
https://github.com/TeamHG-Memex/eli5/pull/177#discussion_r114287760:

@@ -13,3 +13,5 @@ The following functions are exposed to a top level, e.g.
.. autofunction:: eli5.show_weights

.. autofunction:: eli5.show_prediction
+
+.. autofunction:: eli5.transform_feature_names
Yeah, I was also unsure; do you think this function will be used
stand-alone, not as an implementation detail of how to make explain.. /
show.. functions work?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/TeamHG-Memex/eli5/pull/177#discussion_r114287760,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAEz671vqj-Q77fv0qjqag7hobJeFpP3ks5r1wJLgaJpZM4NNBx7
.

Thanks @jnothman! I'm going to make a new release soon - do you want to add anything else to it?

we'll see how time goes.

thanks for the review and merge!


upgrade to Heroku v2.0.0

[ ] main page interface
[ ] dyno page
[ ] core
[ ] database
[ ] login

pyscript not supporting


feat: Add support multiple service connect

During deploy my services on ECS, I have used this module as base module to create ecs cluster, ecs service and task definition. However, some services need to config multiple service connect, I have tried multiple time with latest version of the module but it's still not working. So I have written the module service in sub module and my services were working.
Hope this PR will be merged asap to other person can use it like me.

this has already been merged into the v6 branch with #123 - it will be part of the v6.0 when released


updated courtVenue new filed in response

Before creating a pull request make sure that:

[ ] commit messages are meaningful and follow good commit message guidelines
[ ] README and other documentation has been updated / added (if needed)
[ ] tests have been updated / new tests has been added (if needed)

Please remove this line and everything above and fill the following sections:
JIRA link (if applicable)
Change description
Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[ ] No

this is not required only camel injection changes required .raised other PR closing this


[Issue 2057] - adds the ability to compare 2 delivery service requests

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-trafficcontrol-PR/1302/
Test PASSed.


Error Downloading: ExtractorError - Could not download DASH Manifest

Situation:
Attempting to download from YouTube. Playlists (public, private, and unlisted) and videos all fail. Last successful run of youtube-dl occurred at 4:00PM (CST) on 8/12/15. Install was through apt-get. After failure, youtube-dl was removed through apt-get and re-installed using manual method. Ran...
youtube-dl -U
...but call still failed.

Verbose Output of Command
root@linux:/scripts/tmp# youtube-dl --verbose https://www.youtube.com/watch?v=l0_LY5bOTOE&index=1&list=[my_video_or_playlist]
[1] 21372
[2] 21373
root@linux:/scripts/tmp# [debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'--verbose', u'https://www.youtube.com/watch?v=l0_LY5bOTOE']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2015.08.09
[debug] Python version 2.7.10 - Linux-3.2.0-4-amd64-x86_64-with-debian-7.8
[debug] exe versions: avconv 11.4-6, avprobe 11.4-6, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] l0_LY5bOTOE: Downloading webpage
[youtube] l0_LY5bOTOE: Downloading video info webpage
[youtube] l0_LY5bOTOE: Extracting video information
[youtube] {43} signature length 40.42, html5 player new
[youtube] {18} signature length 40.42, html5 player new
[youtube] {5} signature length 40.42, html5 player new
[youtube] {36} signature length 40.42, html5 player new
[youtube] {17} signature length 40.42, html5 player new
[youtube] {133} signature length 40.42, html5 player new
[youtube] {242} signature length 40.42, html5 player new
[youtube] {160} signature length 40.42, html5 player new
[youtube] {278} signature length 40.42, html5 player new
[youtube] {140} signature length 40.42, html5 player new
[youtube] {171} signature length 40.42, html5 player new
[youtube] {249} signature length 40.42, html5 player new
[youtube] {250} signature length 40.42, html5 player new
[youtube] {251} signature length 40.42, html5 player new
[youtube] l0_LY5bOTOE: Downloading DASH manifest
WARNING: [youtube] l0_LY5bOTOE: Skipping DASH manifest: ExtractorError(u'Could not download DASH manifest: HTTP Error 403: Forbidden (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.',)
WARNING: Requested formats are incompatible for merge and will be merged into mkv.
[debug] Invoking downloader on u'https://r6---sn-vgqsenez.googlevideo.com/videoplayback?mv=m&mt=1439478612&ms=au&id=o-AAXYxI_YHiDelnP84o_fv69J1Sw-7g0ytCY3clt-h7-z&expire=1439500300&mime=video%2Fmp4&ip=<IP_ADDRESS>&requiressl=yes&pl=16&mn=sn-vgqsenez&mm=31&source=youtube&itag=133&clen=6384250&fexp=9408372%2C9408710%2C9409095%2C9412843%2C9415365%2C9415485%2C9416023%2C9416126%2C9416729%2C9417118%2C9417581%2C9417632%2C9417762%2C9418153%2C9418203%2C9418677&key=yt5&upn=H7VxAfnV-Xk&ipbits=0&nh=IgpwcjAzLm9yZDEyKgkxMjcuMC4wLjE&sver=3&initcwndbps=867500&dur=217.733&gir=yes&lmt=1429592654551702&sparams=clen%2Cdur%2Cgir%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Ckeepalive%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cnh%2Cpl%2Crequiressl%2Csource%2Cupn%2Cexpire&keepalive=yes&signature=80406C53050893B33FCEB95A58AFC64D832F3D85.2B27BA236FD24A209224598E49BD1CD19F95E4D9&ratebypass=yes'
ERROR: unable to download video data: HTTP Error 403: Forbidden
Traceback (most recent call last):
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1579, in process_info
partial_success = dl(fname, new_info)
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1527, in dl
return fd.download(name, info)
File "/usr/local/bin/youtube-dl/youtube_dl/downloader/common.py", line 342, in download
return self.real_download(filename, info_dict)
File "/usr/local/bin/youtube-dl/youtube_dl/downloader/http.py", line 60, in real_download
data = self.ydl.urlopen(request)
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1860, in urlopen
return self._opener.open(req, timeout=self._socket_timeout)
File "/usr/lib/python2.7/urllib2.py", line 437, in open
response = meth(req, response)
File "/usr/lib/python2.7/urllib2.py", line 550, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib/python2.7/urllib2.py", line 475, in error
return self._call_chain(*args)
File "/usr/lib/python2.7/urllib2.py", line 409, in _call_chain
result = func(*args)
File "/usr/lib/python2.7/urllib2.py", line 558, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 403: Forbidden
[1]-  Exit 1                  youtube-dl --verbose https://www.youtube.com/watch?v=l0_LY5bOTOE
[2]+  Done                    index=1

Duplicate of #6451. Remove cache: --rm-cache-dir.


CC0031 Bug 926 check for null misses constructor

Fixes #926.
Replaces PR #941.
Sorry for the confusion with the this PR.

Coverage remained the same at 91.561% when pulling 89ca4ec6f7ca4cf6b8e552f91580278b122a14a0 on MaStr11:CC0031_Bug926HasCheckForNullMissesContructor into fe1b3ea9b9548a85d9e4aa2d85006795346f406c on code-cracker:v1.0.x.


AddApplicationInsightsTelemetry() not working when AddOpenApi() is already called

Framework Version : net9.0
Microsoft.ApplicationInsights.AspNetCore 2.22.0
Microsoft.AspNetCore.OpenApi 9.0

Describe the bug
Work ApplicationInsightsTelemetry:
services.AddApplicationInsightsTelemetry();
services.AddOpenApi();

DO NOT work ApplicationInsightsTelemetry:
services.AddOpenApi();
services.AddApplicationInsightsTelemetry();

Exception has thrown at inside ApplicationInsightsExtensions.AddCommonTelemetryModules(services);.
https://github.com/microsoft/ApplicationInsights-dotnet/blob/e34286b4c8175d7ea47f9227c5b981d661cac470/NETCORE/src/Shared/Extensions/ApplicationInsightsExtensions.cs#L335

@KimihikoSaito Thanks for reporting this, saved me a lot of time...


Missing core packages (dotenv), the app has not been installed successfully.

I'm trying to install this via the installation script. The docker install is also broken for me. But anyway, when I run ./start_tts_webui.sh it does its thing for a bit and gives me the following error:
Finished init app.

Missing core packages (dotenv), the app has not been installed successfully.
Failed to start the app, exiting...

If I try to do docker, there are 2 issues. First, all dns on the entire computer stops working unless I run docker commands with the --network="host" option. If I do that, it gets to this point:
File "/venv/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 179, in resolve
    self.factory.preparer.prepare_linked_requirements_more(reqs)
  File "/venv/lib/python3.10/site-packages/pip/_internal/operations/prepare.py", line 552, in prepare_linked_requirements_more
    self._complete_partial_requirements(
  File "/venv/lib/python3.10/site-packages/pip/_internal/operations/prepare.py", line 467, in _complete_partial_requirements
    for link, (filepath, _) in batch_download:
  File "/venv/lib/python3.10/site-packages/pip/_internal/network/download.py", line 183, in __call__
    for chunk in chunks:
  File "/venv/lib/python3.10/site-packages/pip/_internal/cli/progress_bars.py", line 53, in _rich_progress_bar
    for chunk in iterable:
  File "/venv/lib/python3.10/site-packages/pip/_internal/network/utils.py", line 63, in response_chunks
    for chunk in response.raw.stream(
  File "/venv/lib/python3.10/site-packages/pip/_vendor/urllib3/response.py", line 622, in stream
    data = self.read(amt=amt, decode_content=decode_content)
  File "/venv/lib/python3.10/site-packages/pip/_vendor/urllib3/response.py", line 560, in read
    with self._error_catcher():
  File "/usr/lib/python3.10/contextlib.py", line 153, in __exit__
    self.gen.throw(typ, value, traceback)
  File "/venv/lib/python3.10/site-packages/pip/_vendor/urllib3/response.py", line 443, in _error_catcher
    raise ReadTimeoutError(self._pool, None, "Read timed out.")
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.

[notice] A new release of pip is available: 23.3.2 -> 24.1.2
[notice] To update, run: pip install --upgrade pip
The command '/bin/sh -c pip3 install --no-cache-dir --upgrade pip==23.3.2 setuptools &&     pip3 install --no-cache-dir torch==$TORCH_VERSION torchvision torchaudio' returned a non-zero code: 2

so docker doesn't work on my system. The installation script doesn't work on my system. I'm not touching that manual installation until I've completely exhausted the other 2 possible methods of installing this. Which of these issues are more likely to be fixable if I just really really dig? The docker installation or the install script installation? I'm on Debian 12.
I think this might be the furthest I've ever got in trying to install any of the github ai voice projects but lemme know if there's an even easier one somewhere. iirc it gets to step 23/24 but i've tried so many different ai text to speech things trying to find one that will work on my computer that its hard to keep track.
Update: the manual installation basically doesn't get anywhere before running into issues. This is what happens when trying to run conda install -y -c conda-forge git nodejs -c pytorch ffmpeg:
## Package Plan ##

  environment location: /home/scott/miniconda3/envs/venv

  added / updated specs:
    - python=3.10

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    pip-24.0                   |  py310h06a4308_0         2.7 MB
    python-3.10.14             |       h955ad1f_1        26.8 MB
    setuptools-69.5.1          |  py310h06a4308_0        1012 KB
    wheel-0.43.0               |  py310h06a4308_0         110 KB
    ------------------------------------------------------------
                                           Total:        30.6 MB

The following NEW packages will be INSTALLED:

  _libgcc_mutex      pkgs/main/linux-64::_libgcc_mutex-0.1-main
  _openmp_mutex      pkgs/main/linux-64::_openmp_mutex-5.1-1_gnu
  bzip2              pkgs/main/linux-64::bzip2-1.0.8-h5eee18b_6
  ca-certificates    pkgs/main/linux-64::ca-certificates-2024.3.11-h06a4308_0
  ld_impl_linux-64   pkgs/main/linux-64::ld_impl_linux-64-2.38-h1181459_1
  libffi             pkgs/main/linux-64::libffi-3.4.4-h6a678d5_1
  libgcc-ng          pkgs/main/linux-64::libgcc-ng-11.2.0-h1234567_1
  libgomp            pkgs/main/linux-64::libgomp-11.2.0-h1234567_1
  libstdcxx-ng       pkgs/main/linux-64::libstdcxx-ng-11.2.0-h1234567_1
  libuuid            pkgs/main/linux-64::libuuid-1.41.5-h5eee18b_0
  ncurses            pkgs/main/linux-64::ncurses-6.4-h6a678d5_0
  openssl            pkgs/main/linux-64::openssl-3.0.14-h5eee18b_0
  pip                pkgs/main/linux-64::pip-24.0-py310h06a4308_0
  python             pkgs/main/linux-64::python-3.10.14-h955ad1f_1
  readline           pkgs/main/linux-64::readline-8.2-h5eee18b_0
  setuptools         pkgs/main/linux-64::setuptools-69.5.1-py310h06a4308_0
  sqlite             pkgs/main/linux-64::sqlite-3.45.3-h5eee18b_0
  tk                 pkgs/main/linux-64::tk-8.6.14-h39e8969_0
  tzdata             pkgs/main/noarch::tzdata-2024a-h04d1e81_0
  wheel              pkgs/main/linux-64::wheel-0.43.0-py310h06a4308_0
  xz                 pkgs/main/linux-64::xz-5.4.6-h5eee18b_1
  zlib               pkgs/main/linux-64::zlib-1.2.13-h5eee18b_1

Proceed ([y]/n)? y

Downloading and Extracting Packages:

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate venv
#
# To deactivate an active environment, use
#
#     $ conda deactivate

(base) scott@CrapWagon:/media/hdd/documents_hdd/tts-generation-webui$ conda install -y -c conda-forge git nodejs -c pytorch ffmpeg
/home/scott/miniconda3/lib/python3.12/site-packages/requests/__init__.py:86: RequestsDependencyWarning: Unable to find acceptable character detection dependency (chardet or charset_normalizer).
  warnings.warn(
usage: conda [-h] [-v] [--no-plugins] [-V] COMMAND ...
conda: error: unrecognized arguments: ffmpeg

Edit: I discovered a log file that might be useful: https://pastebin.com/fDmrHu6a
unfortunately its actually finding and installing dotenv so whatever hack it takes to fix this is probably going to be pretty hard to figure out.
I already tried the obvious thing by commenting out the dotenv check in.. whatever src file grep says its in. I get this error:
Finished init app.

Traceback (most recent call last):
  File "/media/hdd/documents_hdd/tts-generation-webui/tts-generation-webui/server.py", line 3, in <module>
    import src.utils.dotenv_init as dotenv_init
  File "/media/hdd/documents_hdd/tts-generation-webui/tts-generation-webui/src/utils/dotenv_init.py", line 1, in <module>
    from dotenv import load_dotenv
ModuleNotFoundError: No module named 'dotenv'
Failed to start the app, exiting...

I don't know enough about how pip or conda works to try to devise a way to jury-rig it to have access to a standalone dotenv python package.. or something. Maybe i'll find a way.
I already tried conda install -p tts-generation-webui/installer_files/env dotenv I forgot to save the output but there weren't any outstanding errors. It still entirely ignores the existence of dotenv and I still get the same error about missing dotenv when I try to run sh start_tts_webui.sh. I still don't have anything titles "dotenv" in tts-generation-webui/installer_files/env/pkgs so that manual installation command I came up with did NOTHING. Maybe next i'll try shoehorning some dotenv files in there manually.....

Great job reporting issues and my apologies for the bugs that you have uncovered!
The installer failed because in yesterday's update I left a --dry-run in the install command because I was debugging installation problems, so unfortunately it was just not installing any of the packages. I am assuming you did not try the installer prior to trying the docker, right?
This helped me debug another issue in the manual instructions, thank you:
conda: error: unrecognized arguments: ffmpeg

As for the docker - would it be possible to use the pre-built docker images?
I have updated the docker setup section in README:
instead of
docker build -t rsxdalv/tts-generation-webui .
doing
docker pull ghcr.io/rsxdalv/tts-generation-webui:main

Any updates on this issue further?

Hi, @wazzzy which problem are you seeing? Is it the missing dotenv? I have made several patches to fix the installer, so please let me know what errors/clues you are seeing.

Hello @rsxdalv I get this error
Already up to date.
No updates found, skipping...
Missing core packages (dotenv), the app has not been installed successfully.
Failed to start the app, exiting...

Can you delete the .git folder and try running the start script again, please?
Also, if you would like to chat directly you can join the discord. https://discord.gg/3JbBrKrH

Delete git files worked but now facing another issue
OSError: dlopen(/tts-generation-webui/installer_files/env/lib/python3.10/site-packages/torchaudio/lib/libtorchaudio.so, 0x0006): Symbol not found: __ZN2at4_ops10empty_like4callERKNS_6TensorENSt3__18optionalIN3c1010ScalarTypeEEENS6_INS7_6LayoutEEENS6_INS7_6DeviceEEENS6_IbEENS6_INS7_12MemoryFormatEEE
  Referenced from: <FCB6BB4B-958C-3899-BD17-48263A6037B9> /tts-generation-webui/installer_files/env/lib/python3.10/site-packages/torchaudio/lib/libtorchaudio.so
  Expected in:     <78DA4C67-8BC7-3995-8324-D2FD95E57BA4> /tts-generation-webui/installer_files/env/lib/python3.10/site-packages/torch/lib/libtorch_cpu.dylib
Failed to start the app, exiting...

That appears to be a corruption of the torch installation. There should be an output.log in the installer files directory which could show the reason why.
It can be fixed by reinstalling torch. If you are using cpu, it would be this:
export MICROMAMBA_EXE="./installer_files/mamba/micromamba"

$MICROMAMBA_EXE run -p ./installer_files/env bash

conda install -y -k pytorch torchvision torchaudio cpuonly ffmpeg -c pytorch

For CUDA it is this:
conda install -y -k pytorch[version=2,build=py3.10_cuda11.7*] torchvision torchaudio pytorch-cuda=11.7 cuda-toolkit ninja ffmpeg -c pytorch -c nvidia/label/cuda-11.7.0 -c nvidia

it might require a --force-reinstall flag if it refuses to install them.
conda install -y -k --force-reinstall pytorch torchvision torchaudio cpuonly ffmpeg -c pytorch

or
conda install -y -k --force-reinstall pytorch[version=2,build=py3.10_cuda11.7*] torchvision torchaudio pytorch-cuda=11.7 cuda-toolkit ninja ffmpeg -c pytorch -c nvidia/label/cuda-11.7.0 -c nvidia

If possible, please provide the ./installer_scripts/output.log file, I have a few ideas why this error happened but if I can confirm them I can fix it for all users.

Here's the contents of my log file. I'm getting the following error message.
"Traceback (most recent call last):
File "", line 1, in
ModuleNotFoundError: No module named 'torch'
Missing core packages (dotenv), the app has not been installed successfully.
Failed to start the app, exiting..."

git fetch
From https://github.com/rsxdalv/tts-generation-webui

[new branch]      gh-pages        -> origin/gh-pages
[new branch]      main            -> origin/main
[new branch]      new-model-demos -> origin/new-model-demos

git reset --hard origin/main
HEAD is now at 566f811 make installer auto-update as it runs
git branch --set-upstream-to=origin/main
Branch 'main' set up to track remote branch 'main' from 'origin'.
Checking if Torch is installed...
python -c import importlib.util; import sys; package_name = "torch"; spec = importlib.util.find_spec(package_name); sys.exit(0) if spec else sys.exit(1)
Torch is not installed. Starting installation...

Using saved GPU choice: NVIDIA GPU
Error during installation: $ is not defined
Installing node_modules...

cd react-ui && npm install

removed 1 package, and audited 481 packages in 1s
146 packages are looking for funding
run npm fund for details
8 vulnerabilities (1 low, 4 moderate, 3 high)
To address issues that do not require attention, run:
npm audit fix
To address all issues, run:
npm audit fix --force
Run npm audit for details.
Successfully installed node_modules
Building react-ui...

cd react-ui && npm run build

<EMAIL_ADDRESS>build
next build

info Creating an optimized production build...
info Compiled successfully
info Linting and checking validity of types...
info Collecting page data...
info Generating static pages (0/24)
info Generating static pages (6/24)
info Generating static pages (12/24)
info Generating static pages (18/24)
info Generating static pages (24/24)
info Finalizing page optimization...

Route (app)                                Size     First Load JS
─ λ /api/upload                            0 B                0 B

First Load JS shared by all              0 B

Route (pages)                              Size     First Load JS
┌ ● /                                      1.55 kB         106 kB
├   /_app                                  0 B            92.4 kB
├ ○ /404                                   178 B          92.6 kB
├ λ /api/gradio/[name]                     0 B            92.4 kB
├ λ /api/webui-generations/[...name]       0 B            92.4 kB
├ ○ /bark                                  3.8 kB          119 kB
├ ○ /bark/bark_settings                    2.07 kB         106 kB
├ ○ /bark/bark_voice_generation            2.95 kB         114 kB
├ ○ /bark/vocos_npz                        2.7 kB          114 kB
├ ○ /bark/vocos_wav                        2.88 kB         114 kB
├ ● /bark/voices                           539 B           105 kB
├ ○ /demucs                                3.08 kB         115 kB
├ ● /generations                           188 B           104 kB
├ ○ /gpu_info                              965 B           105 kB
├ ● /history/[name]                        572 B           105 kB
├   ├ /history/outputs
├   └ /history/favorites
├ ○ /magnet                                1.5 kB          118 kB
├ ○ /maha-tts                              2.3 kB          117 kB
├ ○ /mms                                   1.5 kB          127 kB
├ ○ /musicgen                              2.67 kB         117 kB
├ ○ /pipeline                              6.05 kB         165 kB
├ ○ /rvc                                   4.53 kB         116 kB
├ ○ /tortoise                              1.38 kB         143 kB
├ ○ /vallex                                2.57 kB         117 kB
└ ● /voice-drafts                          630 B           105 kB

First Load JS shared by all              95.8 kB
├ chunks/main-f2f37a715f8b92e3.js        83.9 kB
├ chunks/pages/_app-503f1e0a2ea8898e.js  6.53 kB
├ chunks/webpack-09f7c4a233429073.js     1.98 kB
└ css/c88ad04737390e95.css               3.38 kB

λ  (Server)  server-side renders at runtime (uses getInitialProps or getServerSideProps)
○  (Static)  automatically rendered as static HTML (uses no initial props)
●  (SSG)     automatically generated as static HTML + JSON (uses getStaticProps)
Successfully built react-ui
Checking if torch has CUDA...

python -c import torch; exit(0 if torch.cuda.is_available() else 1)

Finished init app.
Traceback (most recent call last):
File "", line 1, in
ModuleNotFoundError: No module named 'torch'
Missing core packages (dotenv), the app has not been installed successfully.
Failed to start the app, exiting...

Here's the contents of my log file. I'm getting the following error message.
"Traceback (most recent call last): File "", line 1, in ModuleNotFoundError: No module named 'torch' Missing core packages (dotenv), the app has not been installed successfully. Failed to start the app, exiting..."

git fetch
From https://github.com/rsxdalv/tts-generation-webui

[new branch]      gh-pages        -> origin/gh-pages
[new branch]      main            -> origin/main
[new branch]      new-model-demos -> origin/new-model-demos

git reset --hard origin/main
HEAD is now at 566f811 make installer auto-update as it runs
git branch --set-upstream-to=origin/main
Branch 'main' set up to track remote branch 'main' from 'origin'.
Checking if Torch is installed...
python -c import importlib.util; import sys; package_name = "torch"; spec = importlib.util.find_spec(package_name); sys.exit(0) if spec else sys.exit(1)
Torch is not installed. Starting installation...

Using saved GPU choice: NVIDIA GPU Error during installation: $ is not defined Installing node_modules...

cd react-ui && npm install

removed 1 package, and audited 481 packages in 1s
146 packages are looking for funding run npm fund for details
8 vulnerabilities (1 low, 4 moderate, 3 high)
To address issues that do not require attention, run: npm audit fix
To address all issues, run: npm audit fix --force
Run npm audit for details. Successfully installed node_modules Building react-ui...

cd react-ui && npm run build

<EMAIL_ADDRESS>build
next build

info Creating an optimized production build...
info Compiled successfully
info Linting and checking validity of types...
info Collecting page data...
info Generating static pages (0/24)
info Generating static pages (6/24)
info Generating static pages (12/24)
info Generating static pages (18/24)
info Generating static pages (24/24)
info Finalizing page optimization...

Route (app) Size First Load JS ─ λ /api/upload 0 B 0 B

First Load JS shared by all              0 B

Route (pages) Size First Load JS ┌ ● / 1.55 kB 106 kB ├ /_app 0 B 92.4 kB ├ ○ /404 178 B 92.6 kB ├ λ /api/gradio/[name] 0 B 92.4 kB ├ λ /api/webui-generations/[...name] 0 B 92.4 kB ├ ○ /bark 3.8 kB 119 kB ├ ○ /bark/bark_settings 2.07 kB 106 kB ├ ○ /bark/bark_voice_generation 2.95 kB 114 kB ├ ○ /bark/vocos_npz 2.7 kB 114 kB ├ ○ /bark/vocos_wav 2.88 kB 114 kB ├ ● /bark/voices 539 B 105 kB ├ ○ /demucs 3.08 kB 115 kB ├ ● /generations 188 B 104 kB ├ ○ /gpu_info 965 B 105 kB ├ ● /history/[name] 572 B 105 kB ├ ├ /history/outputs ├ └ /history/favorites ├ ○ /magnet 1.5 kB 118 kB ├ ○ /maha-tts 2.3 kB 117 kB ├ ○ /mms 1.5 kB 127 kB ├ ○ /musicgen 2.67 kB 117 kB ├ ○ /pipeline 6.05 kB 165 kB ├ ○ /rvc 4.53 kB 116 kB ├ ○ /tortoise 1.38 kB 143 kB ├ ○ /vallex 2.57 kB 117 kB └ ● /voice-drafts 630 B 105 kB

First Load JS shared by all              95.8 kB
├ chunks/main-f2f37a715f8b92e3.js        83.9 kB
├ chunks/pages/_app-503f1e0a2ea8898e.js  6.53 kB
├ chunks/webpack-09f7c4a233429073.js     1.98 kB
└ css/c88ad04737390e95.css               3.38 kB

λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps) ○ (Static) automatically rendered as static HTML (uses no initial props) ● (SSG) automatically generated as static HTML + JSON (uses getStaticProps)
Successfully built react-ui Checking if torch has CUDA...

python -c import torch; exit(0 if torch.cuda.is_available() else 1)

Finished init app.
Traceback (most recent call last): File "", line 1, in ModuleNotFoundError: No module named 'torch' Missing core packages (dotenv), the app has not been installed successfully. Failed to start the app, exiting...

thank you, fixed that just now

@rsxdalv Thank you. The latest update fixed the install issue. I appreciate the quick fix.

I have added several fixes to the installer and performed multiple tests so I believe this has been resolved. If the issue persists please let me know or reopen the issue.

Hello! I'm getting  a similar error, even after trying to remove the .git folder –
/usr/bin/curl
/usr/bin/tar
/opt/homebrew/Caskroom/miniconda/base/bin/bzip2
Checking if the Micromamba/Conda environment is already installed
Micromamba/Conda environment already installed in /Users/riot/Documents/gits/tts-generation-webui-main/installer_files/env, skipping installation
Starting init app (version: 0.0.5)...
Checking conda installation...

conda --version
conda 24.5.0
Pulling updates from tts-generation-webui
git pull
Already up to date.
No updates found, skipping...
Missing core packages (dotenv), the app has not been installed successfully.
Failed to start the app, exiting...


Updated "Quick Links" again

Fixes:  #4843
Description
I've updated "Quick Links" again according to the suggestions received and the section looks even better now. And it's responsive too!
Type of PR

[x] Bug fix
[x] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / videos (if applicable)

Checklist:

[x] I have made this change from my own.
[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] My changes generate no new warnings.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers and screenshots after making the changes.

there are some conflicts , resolve them carefully .

also remove the pink color highlight u have given . spacing is ok .


better production config

After talking with Braulio, we decided to make a better production chapter. Changes are also carried over to the define plugin chapter.
README needs to be updated with the new changes.

I think it is done, double check please.


Correcting invalid links

ref: #17649

Hello @yuxiaobo96, thank you for your contribution! Can I get your help in modifying only the portions of the page that need updates? Right now it's hard to review as most of the document has been changed.

@onlydole
Thank you for your advice, I have updated it.

Thank you, @yuxiaobo96!
/lgtm
/assign @mrbobbytables

/approve
Thanks!


Correct link for "Teaching digital skills: learning usability testing by peer training"

https://blog-nrrd.doi.gov/usability-testing-training/
Link text "A Practical Guide to Usability Testing"

@daniel-coleman-1 Correct link: https://redish.net/books/usability-testing/

@daniel-coleman-1 This one didn't get updated.

@mcharg links updated in the open PR:
https://dev-blog-nrrd.app.cloud.gov/usability-testing-training/

This is fixed.


Change and adding timings on docker yaml

Superceded by https://github.com/elifesciences/enhanced-preprints-import/pull/2078


Problem with rendering content inside an SVG tag

Version
2.6.11
Reproduction link
https://codesandbox.io/s/prod-violet-4f5be
Steps to reproduce
Just use a link to minimal reproduction.
What is expected?
"Text from Second.vue" to be appear.
What is actually happening?
"Text from Second.vue" doesn't appear.

In this https://codesandbox.io/s/jovial-violet-qbok9 example I create SVG dynamically with no Vue use and the text "Hello" appears.
Even more weird content: if I add anything in body tag using Chrome devtools, then text shows up.
https://www.youtube.com/watch?v=TxL5olpWqT4

div is not allowed inside of an svg. I'm not sure why you see them appearing when editing the HTML but that seems to be a browser bug. If you write a div inside of an svg:
<svg
      width="200"
      height="200"
      xmlns="http://www.w3.org/2000/svg"
      version="1.1"
      xmlns:xlink="http://www.w3.org/1999/xlink"
    >

Hello from html

    </svg>

in plain html, you will see the div content is not visible even if it is in the DOM

Ok, that is right and I know it, but actually this case began here https://github.com/LinusBorg/portal-vue/issues/290 . So after all, content ported from svg into ordinarry DOM element, and doesn't show up either. Why?


Broken Images In The Algorithm Guides Section - Images Coming From The FCC Forum?

Hi folks,
It seems that there are broken images in the Basic Algorithms Scripting guides section.
For example, if you go to Boo Hoo Algorithm
You will see broken images.
Another example is the speech balloon:

It looks like the images are coming from the forum and could be an SSL issue as I tried to open and image in a new link and this is what I got:

Hope it can get fixed soon.
Cheers!

@QuincyLarson now that we are in the process of deprecating the guide, can we have a standard message that we can use to point users about this and close issues like this?

@benjaminthedev Thanks for reporting this.
@raisedadead Yes - how about the following for a standard response:
Thanks for reporting this.
We are in the process of improving all the guide articles and migrating them over to /news. (The Guide codebase and its many contributions will remain on GitHub.)
So rather than spending time to fix this specific issue, we will stay focused on finishing this big migration as fast as possible.


add support for the no-op generalizing := true

This fixes #29, and gives a clearer error on generalizing := false

Looks good to me!  Thank you!


Port Protocol UDP Support

Hello! First of all, let me say amazing work on this project. I've set it up without issue and tested for some sample TCP services and it worked flawlessly.  My actual use case for a local testing environment involves a UDP service port, and I figured out after a bit of digging that UDP is currently not supported. Are there any plans to support that in the near future?  What are the limitations to allowing UDP right now in the proxy?

we are using haproxy as implementation of loadbalancer because we already use it in KIND, and it does not support UDP https://github.com/haproxy/haproxy/issues/62
We need to understand first if there are other LB we can use to replace haproxy, like envoy ... but that may take time ... not very top priority :(

Thanks @aojea - that's an interesting thread.

The haproxy thread there suggests that nginx does UDP proxying for some value of UDP proxying, and it looks like ingress-nginx supports UDP Ingress, which suggests nginx's UDP support is good enough for what Kubernetes Services need.

back when we discussed this in kind , several years ago , I've tried with envoy since also offers an API to control remotely
and accepts UDP https://www.envoyproxy.io/docs/envoy/latest/start/sandboxes/udp ... it is also used widely for cloud providers as loadbalancers so it will provide the most realistic implementation
If I have time I will try to replace haproxy with envoy ... unless someone beats me 😄

I've also added an example https://github.com/kubernetes-sigs/cloud-provider-kind/blob/main/examples/loadbalancer_udp_tcp.yaml so you can try it

@aojea - wow, thank you so much for the work and lightning fast turnaround!


Cucumber report version 4.11.0 in Jenkins

Summary
After generated html report from Json report using the Cucumber Reports plugin, I found that for hooks we see the following names: Before $_noescape_stepName  in Jenkins,how to avoid this?
Expected Behavior
It should show Scenarion Name (or nothing) in Before () hook
Current Behavior
Before $_noescape_stepName  OR  Before <last scenario's last step name>
Possible Solution
Before
Steps to Reproduce (for bugs)
1.Used CucucmberJS Report ( ie Cucumber-html-reporter) locally ,it is working fine ,but using Cucumber reports version 4.11.0 in Jenkins ,which is displaying as Before $_noescape_stepName  OR  Before <last scenario's last step name>

Context & Motivation

Your Environment

Version used:
Operating System and version: Windows 10
Link to your project:

The Cucumber Reports Plugin is not maintained by the Cucumber project. Try:
https://github.com/jenkinsci/cucumber-reports-plugin

Thanks for quick reply , :) Sorry ,am new to installation of plugins ,so where is  the .hpi file in this folder ,which I can upload in Jenkins

@Anju-sys the Cucumber project doesn't support Jenkins or any of its plugins. Please ask the Jenkins community.


Add version number to linux libraries

Create a versioned libXCTest shared library per SR-2149

The code looks good to me, but I'd like to hear what @gribozavr or @compnerd think about this, and about https://bugs.swift.org/browse/SR-2149 in general.
@swift-ci please test

Perhaps my understanding of the API evolution process in XCTest is misguided, but I don't see this as being particularly useful, especially as implemented.
Currently you just splat out the package version.  However, the library versioning is traditionally more nuanced than such an approach.  The major version component of the version is only changed when the API is changed in an incompatible manner (e.g. structure layout changes, removal of an API, change of formal parameters to a previously existing api, etc).  The minor version is changed for compatible things (e.g. additions).  The micro component is updated on every release.  Each smaller component is reset when a larger component is bumped (e.g. bumping the major would reset minor and micro).
My understanding is that traditionally XCTest has made compatible changes.  As such, the current thing should be 1.n.m rather than 3.0.0.  Parallel installation of the DSO gains you nothing since the API changes are compatible.
Im trying to understand what the benefits are that are gained from versioning this particular library as I think that the benefits may outweigh the maintenance here.  However, it may be reasonable to for the time being just hardcode the DSO version to 1 corresponding to the A version provided on Darwin-based targets.  If and when the library is changed in a way as to necessitate a new dylib version, we could bump to `2.

I think there are a couple of benefits to adding versioning to the XCTest library:

Some linux distributions (ie, Fedora / RHEL) require it before they will distribute pre-built binaries.  These distributions do not often distinguish between the subtleties of whether or not versioning is useful for an individual library--it's more of a blanket.

It's very easy for developers linking to the library to know when there have been ABI incompatible changes.

I think switching to the scheme @compnerd outlines where we set the SONAME to libXCTest.so.1 would be sufficient for my needs.  If you want me to modify the pull request to implement as described let me know.

That sounds like a pretty convincing case to me.  I think that I would prefer the .1 approach.

Cool, thanks @compnerd! Any thoughts, @gribozavr?

If we are going to do something like this, we should do it uniformly for all libraries that we ship, starting with libswiftCore.so, and we should have a well-understood policy of when to bump the SONAME, and what should it be set to in snapshot and preview builds.

I agree. @jdfergason, you may want to send an email to the swift-dev mailing list, to get more opinions on SR-2149.

Hey @jdfergason! As mentioned, we would want to have some additionally discussions around what this kind of change would mean for the rest of the swift.org projects before introducing this versioning. I'm going to close this PR for now but let's revisit once some consensus has been reached!


Use conda run with the debugger

We still manually activate conda when running the debugger.

The issue here is double activation with conda run. We actually had debugger run with conda run, but had to revert it.

Waiting to see where https://github.com/conda-incubator/ceps/pull/25 ends up in terms of conda version support. Once we know what we will know when https://github.com/conda/conda/releases/tag/22.9.0 is the oldest release we need to support.

Closing in favor of https://github.com/microsoft/vscode-python/issues/8422, currently not planned.


[DET-564] Password based authentication

I see the similarity as you mentioned to how AWS does it

YARP


Grading for college

After #414
With  college database, we need to have a grading of colleges also. The grading currently will be in the categories below-

A - IIT/IIM
B - NIT
C - State Engineering Colleges / Good Private Universities (SNU/UPES)
D - Unknown/Less known private colleges

#479
@bohraji
According to my understanding
There should be a field called grading or college_grading in college table and we should have some changes in UI also to store college grading.
Please elaborate it if Anything else is required for this.

@Satendra-SR Your understanding is correct. For starting, when we create a college database, we can assign the values based on the categorisation above. Then a section in the settings>hr tab will be present to adjust the ratings of the college.
Also, all new application should be mapped to the college listings.

Is anyone working on this? @Satendra-SR @bohraji

No @nishanth-kd,
actually, it was assigned to me but now I'm working on the Finance module. so I left it.


Implement Transport Return Route Protocol (RFC 0092)

Implement Transport Return Route Protocol in Aries Framework Go - https://github.com/hyperledger/aries-rfcs/tree/master/features/0092-transport-return-route.

Implementation of this protocol can be broken down into following issues:

Get access to sender verification key in Inbound transport (To store the transport based on verKey) - https://github.com/hyperledger/aries-framework-go/issues/876
Support to configure framework with Transport return route option - To add values to the transport decorator.
Make the transport duplex - Use the stored transport based on the verKey of the recipient
(sender in case of inbound) during outbound calls - https://github.com/hyperledger/aries-framework-go/issues/877

Core framework support is implemented as part of PR #896.
Remaining issues for completing basic e2e implementation - #877 #893


[BUG] AddIn blank in Excel

Issue recieved via help desk mail on 24.03.2023
Dear DataPlant Team,
After clearing the Add-In cache and installing Swate following the given instructions on your website, the Add-In does not function, only displaying a blank square (Desktop Installation v0.6.2 on Windows 10 Enterprise N, Microsoft Office prof.plus 2019 - Excel version 1808). We replicated this issue on a second, analogous system and would be glad if you could help us with this issue.
Yours faithfully,
The user requested feedback to: [removed]
OS and framework information (please complete the following information):

Windows 10 Enterprise N,
Microsoft Office prof.plus 2019 - Excel version 1808

Describe the bug
After clearing the Add-In cache and installing Swate following the given instructions on your website, the Add-In does not function, only displaying a blank square

Hello thanks for the feedback! Sadly, due to changes in different environments we don't have control over Swate cannot run on any Excel 2019 version anymore.
If possible use the free web version of Excel or try the new standalone version of Swate (only a alpha version at the moment).
Please let us know if those options are not possible for you and why 😃