Is there support for int8 for tensor core?

Hi,
For tensor core int8 support, we need add such IMMA.8816.S8.S8 instrction into codegen. While there is mma.884 and mma.16816 now, they are only support for fp16.
So my question is do we have plan to support the int8 tensor core?
Thx,
Lei

Hey,
No. As of right now there is no support for int8 tensor cores. But for inference you can actually do float8 with Triton. There is a tl.float8 data-type that you can then convert to half-precision with .to(tl.float16) before doing arithmetics on it. This reduces IO by 2x and works pretty well

Hey,
No. As of right now there is no support for int8 tensor cores. But for inference you can actually do float8 with Triton. There is a tl.float8 data-type that you can then convert to half-precision with .to(tl.float16) before doing arithmetics on it. This reduces IO by 2x and works pretty well

Hi @ptillet , I'm trying to revise triton.ops.matmul to run float8 matmul by adding to(tl.float16) to here  as below.  ACC_TYPE is also changed to be tl.float32
        if EVEN_K:
            a_int8 = tl.load(A)
            a = a_int8.to(tl.float16)
            b_int8 = tl.load(B)
            b = b_int8.to(tl.float16)
        else:
            a_int8 = tl.load(A, mask=rk[None, :] < k, other=0.)
            a = a_int8.to(tl.float16)
            b_int8 = tl.load(B, mask=rk[:, None] < k, other=0.)
            b = b_int8.to(tl.float16)
        acc += tl.dot(a, b)
        tl.printf(" ", acc)

However, the output was not correct. When I debugged the value of acc by tl.printf(" ", acc), the value of acc was actually the dot product of two int8 vector. That means to(tl.float16) not actually work here.
Not sure if I missed anything? Any advice will be very appreciated!

@ptillet I made some minor changes in triton.ops.matmul to support float8 matmul. Here is the code(link). But the performance is significant slower than triton.ops.matmul for fp16 and int8. I'm new to triton. Could you please give some advice about how to further optimize the code?
The major changes I made are here  and here.
The benchmarking results on A100 is as below. It can be easily reproduced by running the above python file.
triton fp8 matmul: 0.108 ms
triton int8 matmul: 0.023 ms
triton fp16 matmul: 0.037 ms
torch fp16 matmul: 0.027 ms

Closing this issue as int8 matmul perf issues are fixed.
@feihugis  support for float8 in tl.dot is premature. I plan to start a big push in that direction that should make float8 matmul perf much better


[BUG]: Azure pipeline credentials expire unexpectedly after 55 minutes

What happened?
Our Azure DevOps YAML pipeline utilizes an ARM service connection with workload identity federation via OpenID Connect for Azure access. The pipeline operates smoothly until approximately the 55th minute mark, at which point the environment credentials seem to vanish, as indicated by the error output below. Although we recognize the default 60-minute job timeout, it’s unclear if this issue is related to that timeout or if it’s associated with the OIDC token’s lifecycle.
EDIT: actually, since we've bought 3 Microsoft-hosted parallel jobs, according to your documentation each job should have the capacity to run for up to 360 minutes (6 hours). Hence, it's definitely an issue if the underlying environment credentials vanish just after ~60 minutes by default.
Versions
3.236.1 / Ubuntu
Environment type (Please select at least one enviroment where you face this issue)

[ ] Self-Hosted
[X] Microsoft Hosted
[ ] VMSS Pool
[ ] Container

Azure DevOps Server type
dev.azure.com (formerly visualstudio.com)
Azure DevOps Server Version (if applicable)
No response
Operation system
Ubuntu 22.04.4 LTS
Version controll system
No response
Relevant log output
AggregateAuthenticationError: ChainedTokenCredential authentication failed.
CredentialUnavailableError: EnvironmentCredential is unavailable. No underlying credential could be used. To troubleshoot, visit https://aka.ms/azsdk/js/identity/environmentcredential/troubleshoot.
CredentialUnavailableError: WorkloadIdentityCredential: is unavailable. tenantId, clientId, and federatedTokenFilePath are required parameters.
      In DefaultAzureCredential and ManagedIdentityCredential, these can be provided as environment variables -
      "AZURE_TENANT_ID",
      "AZURE_CLIENT_ID",
      "AZURE_FEDERATED_TOKEN_FILE". See the troubleshooting guide for more information: https://aka.ms/azsdk/js/identity/workloadidentitycredential/troubleshoot
CredentialUnavailableError: ManagedIdentityCredential: The managed identity endpoint is indicating there's no available identity. Message: invalid_request Status code: 400

@vmapetr
UPDATE: actually, since we've bought 3 Microsoft-hosted parallel jobs, according to your documentation each job should have the capacity to run for up to 360 minutes (6 hours). Hence, it's definitely an issue if the underlying environment credentials vanish just after ~60 minutes by default.

Hi @fabrideci  thanks for reporting!
We are working on more prioritized issues at the moment, but will get back to this one soon.

Hello @vmapetr , did you have any chance to look into this? The issue has been opened for a few months now without any feedback. Thank you!

For whoever's facing this particular issue, I managed to resolve the CredentialUnavailableError: EnvironmentCredential is unavailable. No underlying credential could be used. error by following the related troubleshooting instructions at Troubleshoot an Azure Resource Manager workload identity service connection, by creating a workload identity service connection which uses managed identity authentication - Managed Identity tokens have a lifetime of around 24 hours.


Unable to build master on NixOS

I've been trying to build the latest master on Arch Linux, without much success.  It seems like, during the build, the network becomes inaccessible and the source cannot be downloaded.
To build I am trying to run
nix-shell -p haskellPackages.ghc -I nixpkgs=nixpkgs/upstream --option use-binary-caches false

and get this output.  nixpkgs/upstream is a clean clone of NixOS/nixpkgs master.  I'm able to access the network from the shell both before and after, so it's not a network problem.

With glibc-2.26-r7 (on gentoo), running nscd does not solve the issue.  Some other people also have a problem with this issue: #1536


Dev 7277 ambassador filter and filter policy v2

What

Create templates in monochart for filters and filter policies, with default disabled
Finish filter template started by @kos-kamil

Why

https://spotonteam.atlassian.net/browse/DEV-7277

For express apps to be able to use when using monochart
Testing
Tested with filters and filter policies not in values file and in values file, tests referenced in Jira ticket
Sample app.yaml:
filter:
  enabled: true

filterPolicy:
  enabled: true

@jgonzalezspoton - this looks good, one question though, did you test using a helmfile that did not have filterPolicy: in it? With the mapping template I had to add this line:
https://github.com/SpotOnInc/helmcharts/blob/8371699f88d2e7dd81d567556526237543e3a038/monochart/templates/ambassador-mapping.yaml#L2C3-L2C27
Just need to make sure that helmfiles without this (all of them we have so far) don't break with the new template in place.


[Feature Request] Way to manually put form validation error messages

This is related on #4545
After "first validation" (independent fields) and prepping the form data, I want to do extended validation with dependent fields.
I can do it via code like:
if ($this->form_validation->run() == FALSE) {
//show form with data
}
else if (extended_validation() == FALSE) {
//show form with data
}
else {
//do something with data
}

But I need to put my custom error message about failing extended validation will be shown in
echo validation_errors();
Can you provide this way?

You already can set messages for custom validation rules, and this has nothing to do with #4545.
Next time, please open a thread on the forums instead.


Rebuild numpy2 0 1 hab49ab

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

Hi! This is the friendly automated conda-forge-webservice.
I tried to rerender for you, but it looks like I wasn't able to push to the rebuild-numpy2-0-1_hab49ab branch of sdrobert/pydrobert-kaldi-feedstock. Did you check the "Allow edits from maintainers" box?
NOTE: Our webservices cannot push to PRs from organization accounts or PRs from forks made from organization forks because of GitHub permissions. Please fork the feedstock directly from conda-forge into your personal GitHub account.
This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12342620158. Examine the logs at this URL for more detail.

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-webservice.
I tried to rerender for you, but it looks like I wasn't able to push to the rebuild-numpy2-0-1_hab49ab branch of sdrobert/pydrobert-kaldi-feedstock. Did you check the "Allow edits from maintainers" box?
NOTE: Our webservices cannot push to PRs from organization accounts or PRs from forks made from organization forks because of GitHub permissions. Please fork the feedstock directly from conda-forge into your personal GitHub account.
This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12342654658. Examine the logs at this URL for more detail.


swift-reflection-dump: resolve ambiguity (NFC)

swift\tools\swift-reflection-dump\swift-reflection-dump.cpp(450): error C2872: 'ReflectionContext': ambiguous symbol
swift\include\swift\ABI\Metadata.h(1001): note: could be 'swift::ReflectionContext'
swift\include\swift\Reflection\ReflectionContext.h(86): note: or 'swift::reflection::ReflectionContext'

Use the qualified name to avoid the ambiguity.

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

CC: @jckarter @alexshap

@swift-ci please test

It would be better to change TargetClassMetadata's friend class ReflectionContext;, which is forward-declaring  ReflectionContext into the wrong namespace, into friend ReflectionContext;, and add a forward declaration of ReflectionContext in the correct namespace to Metadata.h.

Though, since the friend declaration is pointing at an imaginary declaration it conjured up, maybe we don't need it at all…

Yeah, we can just remove the friend class declaration. https://github.com/apple/swift/pull/27519

Build failed
Swift Test OS X Platform
Git Sha - 333921f79da64239fdcdafcc346dfc07f68409ee


Add PATH variable to download binary from custom URL

Like PHANTOMJS_CDNURL for PhantomJS, see
https://github.com/Medium/phantomjs#deciding-where-to-get-phantomjs
Is it possible to accept a PR to add this feature?
Related: https://github.com/imagemin/pngquant-bin/issues/63

Duplicate of #183?


Test OSL is working

OSL support has been implemented in the shader network conversion code, but it has not been tested and needs to be looked at still. I won't support OSL on GPU as Cycles hasn't got support yet either.

From my investigation this is currently the issue:

When ShaderNetworkAlgo.cpp converts from Cortex's shader network representation to Cycles, it is always in SVM mode because the default is SVM unless CyclesOptions has set it to OSL
When changing to OSL, currently I am not sure how to rebuild all shaders from Gaffer, so it'll try to re-use the networks built in SVM mode
Default Cycles shaders work as the nodes abstract the fact that they are using OSL underneath, but any non-standard custom OSL nodes connected will result in a segfault currently

Possible solutions:

Find out from John if it's possible to refresh the build of all shaders during the render call upon the options change
Create a dummy OSLShaderManager and always build the shaders twice in-cache and switch between them (might be preferred/easier at the cost of some startup perf loss, should be negligible)

Solved in https://github.com/boberfly/GafferCycles/commit/5aab0a42c1862da2fd83f8677ad5f1398a248382
The solution is to just make a dummy OSLShaderManager for the sole purpose of generating an OSL node for when you enable OSL mode. It looks like in SVM mode it'll just ignore that node and not crash.


fix: remove double escaping for backticks

ISSUES CLOSED: #67

:tada: This PR is included in version 5.5.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Calculation of sunset / sundown

The library needs to be extended by code which calculates the time of the daily sunset and sundown for a given wrf station. The required coordinates are already available through the meta data of the forecast station. So the script code is needed to calculate the approximate times based on the given latitude and longitude of the station.
The basic generalization is noted in the wikipedia article.

Alterned approach without using julian days: https://babel.hathitrust.org/cgi/pt?id=uc1.31822006852784&view=1up&seq=26

Alterned approach without using julian days: https://babel.hathitrust.org/cgi/pt?id=uc1.31822006852784&view=1up&seq=26

Added the calculation based on the alterned apporach of the computer almanach

Added the calculation based on the alterned apporach of the computer almanach


ImportError: cannot import name 'MutableSequence'

I ran 'pip install translatesubs' on my Windows 10 machine and when running 'translatesubs -h', I got the following order:
Traceback (most recent call last):
  File "C:\Python310\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Python310\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "C:\Python310\Scripts\translatesubs.exe\__main__.py", line 4, in <module>
  File "C:\Python310\lib\site-packages\translatesubs\translatesubs.py", line 10, in <module>
    from .subs_manager import SubsManager
  File "C:\Python310\lib\site-packages\translatesubs\subs_manager.py", line 1, in <module>
    import pysubs2
  File "C:\Python310\lib\site-packages\pysubs2\__init__.py", line 1, in <module>
    from .ssafile import SSAFile
  File "C:\Python310\lib\site-packages\pysubs2\ssafile.py", line 1, in <module>
    from collections import MutableSequence
ImportError: cannot import name 'MutableSequence' from 'collections' (C:\Python310\lib\collections\__init__.py)

This occurred on both Python 3.8.x (don't remember which before I upgraded) and 3.10.7.

Edit ssafile.py and replace "from collections import MutableSequence" with "from collections.abc import MutableSequence".

Fixed at version 0.2.4.


Use variadic functions for hook calling

Better readability
Simplified cPluginLua inheritance

Instead of merging you should have rebased.
Why are you removing the cPlugin class?
I don't like the fact that there are two hooks that need different calls than other hooks.

About cPlugin, since Squirrel isn't used anymore, what function does it serve?

It's in the Lua API, removing it will break existing plugins.

This has one more unfortunate side-effect: There's no type-checking for the parameters to CallHook. You could practically do CallHook(HOOK_LOGIN, SomeWorld, 10, "some string", cItem(E_ITEM_TNT)); and the compiler won't complain at all. This is, in my opinion, a serious problem.

There could be some manual checking if hooks are changed in a pull request, which shouldn't happen often.
If hooks are added, they'll be cross examined with their documentation (anyway).

Since cPlugin and all of its functions was merged into cPluginLua, nothing should break.

Its still potentially a breaking change as it will cause any code that checks the type name to break.

I agree with xoft. This removes all type checking on calling hooks so should not be accepted. However I also agree with tiger that the current list of hooks has some serious issues with redundancy. This may be a place for either macros or a code generation script.


[FEATURE] System API Endpoint

Is your feature request related to a problem? Please describe.
Device control from web UI is needed. Some of the settings do not need a device restart, so user should decide whether the device needs to be restarted.
Describe the solution you'd like
Create system API endpoint to allow:

ESP restart
ESP deep sleep/shutdown
Factory reset
ESP system info would also be nice to have (could be separate ticket)

The web UI should ask user after settings update whether they want to perform a system restart.

Done


[Core] JVM 19 new feature: FFI

Description
A good summary from RocksDB: https://rocksdb.org/blog/2024/02/20/foreign-function-interface.html
Looks it can simplify the JNI call. Let's mark it here and talk more later

The FFI version we used was a preview in Java 19, and the interface has changed through to Java 22, where it has been finalized. Future work with this prototype will need to update the code to use the changed interface.


does sleep/awake work with yout EFI?

how do you tweak your config to make sleep/awake work?
i've done usb mapping and bios setting, but the build can't even go deep sleep and can't be waken.

@Kaijun Good afternoon!
Sleep/awake works fine. I use it daily.
All I did was set up the BIOS  and did USB mapping.
Do you use iGPU (NootedRed) or dGPU (WhateverGreen)? If dGPU, which dGPU do you have?

@MAGICXcmd
Thank you for your advice. I'm happy to report that the sleep and awake functions are now working after making some adjustments in the BIOS. Specifically, disabling IOMMU did the trick.
By the way, my build has a R5-5600G CPU and an dGPU (RX580).
I've noticed that I also need to add the -wegnoigpu flag to disable the iGPU. It appears that the iGPU might be causing issues with the sleep function.


How to change the provisioning String later and how to see which string is used (directly on the edge device)

[Enter feedback here]

How to change the provisioning String later?

How to see which string is used (directly on the edge device)?

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

ID: 981e06fb-977c-c6a3-b5bf-23ea63b4dfe6
Version Independent ID: 3620faaf-95d0-cdd2-e4ed-18c9e24a0bb4
Content: Install Azure IoT Edge for Linux on Windows
Content Source: articles/iot-edge/how-to-install-iot-edge-on-windows.md
Service: iot-edge
GitHub Login: @kgremban
Microsoft Alias: v-tcassi

Hello @tarunmcom
Thanks for the feedback! We are currently investigating and will update you shortly.

Hello @tarunmcom
How to change the provisioning String later?
-->For manual, please refer to this section:

How to see which string is used (directly on the edge device)?
--> sudo nano /etc/iotedge/config.yaml
https://docs.microsoft.com/en-us/azure/iot-edge/how-to-install-iot-edge?view=iotedge-2018-06#option-1-authenticate-with-symmetric-keys
Please let us know if you need further help in this matter.

We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.
Please also do visit Microsoft Q&A the home for technical questions and answers at Microsoft.


Trade Link Update

I am not sure if this is just an issue pertaining to me, but every now and again the trade link update on first arrival on the page doesn't update, therefore not allowing any trades to happen. I can only fix this by then transferring the files back over. Any suggestions?

I'm not sure what your issue is. Can you explain a bit better?
I'm not having this issue, are you running the latest source?
Have you installled the right modules? > npm install

yes i have used npm install to install all packages, the problem is that sometime for some reason the update tradelink just doesnt do anything, after you hit the update button. This is normally fixed with uploading the exact same files back to the server. It's a weird issue i know. i was just wondering if anyone else is experiencing and or getting the same result as me.

What browser are you using?
Uploading and replacing the files shouldn't change anything.. since the saved trade link will be placed into localstorage for that domain.

I think i had this problem once. Did you remove the GA in index.html?
This can make the script un-useable.

It seemed That I had when chaging files around etc. That seemed to work. Thanks guys for the help. Closed.

You welcome! ;)


CodeCop Rule AA0235 has invalid code due to wrong codeunit name

The code is not valid. Codeunit::"Company - Initialize" is not a valid codeunit. The correct name is Codeunit::"Company-Initialize" - no spaces around the hyphen.

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

ID: e85d3ca3-f7b4-c488-be95-dac2559b3afc
Version Independent ID: df394ab2-8e91-ba74-c244-f5c37c50cbc0
Content: When using 'OnInstallPerCompany' you should also add 'Company - Initialize'::'OnCompanyInitialize' event subscriber. - Business Central
Content Source: dev-itpro/developer/analyzers/codecop-aa0235-whenusingoninstallpercompanyaddcodetocompanyinitializesubscription.md
Service: dynamics365-business-central
GitHub Login: @SusanneWindfeldPedersen
Microsoft Alias: solsen

Thanks for the feedback, this will be fixed with the next doc refresh.

for posterity, new location of 404d old link: https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/analyzers/codecop-aa0235


[FEATURE]:  kitty directional resize

Great to see how the plugin has evolved! Thank you for your art!
Based on the idea of triggering kitty's resize_window wider/narrower command depending on window layout and position, I did some research into the possibility of directional resizing with kitty.
The most promising find was based on this issue:
https://github.com/kovidgoyal/kitty/issues/4684
It appeared that the issue opener had solved the request, and I took the liberty of looking into his dotfiles, where I found this little gem of a kitten:
https://github.com/chancez/dotfiles/blob/master/kitty/.config/kitty/relative_resize.py
His dots are under MIT license and I thought this could serve for extending smart-resize's kitty implementation. If it's not too much trouble, perhaps adding directional resize support could be feasible. What are your thoughts on that?

Nice find, I think I can make it work with that kitten

Resolved by #67


*: bump docker2aci

We'll need to bump docker2aci for 0.6.0 after https://github.com/appc/docker2aci/pull/68 lands

Should be addressed by #1037

covered by #1052


[narwhal] calculate consensus reputation scores

Description
Introduces the authority score calculation as this is described here. The change_schedule_every_committed_sub_dags has been introduced to accommodate the score reset for every K commit rounds which will be later needed once we implement the schedule change. Also, the crash recovery path has been considered to ensure that we keep counting scores from where we left off. Additional testing has been introduced.
Test Plan
How did you test the new or updated feature?

If your changes are not user-facing and not a breaking change, you can skip the following section. Otherwise, please indicate what changed, and then add to the Release Notes section as highlighted during the release process.
Type of Change (Check all that apply)

[ ] user-visible impact
[ ] breaking change for a client SDKs
[ ] breaking change for FNs (FN binary must upgrade)
[ ] breaking change for validators or node operators (must upgrade binaries)
[ ] breaking change for on-chain data layout
[x] necessitate either a data wipe or data migration

Release notes

I think we need to be clear that the reputation score is not yet suitable for validator reward calculation.

@mwtian to be honest it is not entirely clear to me what the requirements are for the validator reward calculation - actually I would be interested to discuss more about that. We have mainly focused to have the scoring to improve the submission side at this point. Yes, weak links will actually make things challenging overall.

@mwtian to be honest it is not entirely clear to me what the requirements are for the validator reward calculation - actually I would be interested to discuss more about that. We have mainly focused to have the scoring to improve the submission side at this point. Yes, weak links will actually make things challenging overall.

Sounds good.

Nightly build is broken because of this https://mysten-labs.slack.com/archives/C03ME6FPKN0/p1677863979182399


[VL] Add test for shuffle function

What changes were proposed in this pull request?
Add test for shuffle function.
How was this patch tested?
UT.

cc @PHILO-HE and @rui-mo , thanks

===== Performance report for TPCH SF2000 with Velox backend, for reference only ====

query
log/native_5722_time.csv
log/native_master_05_11_2024_4899ea5c8_time.csv
difference
percentage

q1
34.04
33.75
-0.294
99.14%

q2
23.64
23.55
-0.089
99.62%

q3
38.86
38.11
-0.751
98.07%

q4
38.31
37.13
-1.180
96.92%

q5
69.29
68.76
-0.528
99.24%

q6
7.44
7.57
0.135
101.82%

q7
83.28
82.51
-0.769
99.08%

q8
82.78
82.99
0.207
100.25%

q9
122.42
120.65
-1.769
98.55%

q10
44.78
45.36
0.589
101.31%

q11
19.72
20.15
0.427
102.16%

q12
28.63
30.08
1.456
105.09%

q13
54.27
53.02
-1.250
97.70%

q14
20.47
20.74
0.272
101.33%

q15
28.64
30.86
2.220
107.75%

q16
14.04
13.92
-0.124
99.11%

q17
101.77
101.26
-0.507
99.50%

q18
145.19
146.46
1.270
100.87%

q19
16.14
15.45
-0.693
95.71%

q20
26.86
26.42
-0.446
98.34%

q21
286.26
284.10
-2.168
99.24%

q22
16.76
16.40
-0.363
97.83%

total
1303.60
1299.24
-4.355
99.67%


Upgrade gitlab

Hi,
Could you say me the correct procedure to upgrade gitlab or runner ?
Thx,
Regards

Hi,
Just like with any kubernetes deployment you can edit deployment file and apply changes.
$ vim gitlab/deployment.yml
...
image: sameersbn/gitlab:8.12.7 -> image: sameersbn/gitlab:8.12.8
...
$ kubectl apply -f deployment.yml

or you can change image version directly with kubectl edit command:
kubectl edit deploy/gitlab

No problem :)
Update of the deployment will do pull/stop/start of the container, just like in that manual.
Migration is handled in the sameersbn/docker-gitlab container.
Make sure to make a backup of the DB if you need.


Feat(eos_designs): EVPN vlan-aware-bundle option for l2vlan

Change Summary
Added an option to define a name for a vlan-aware-bundle of l2vlans
Related Issue(s)
Fixes #3065
Component(s) name
arista.avd.eos_designs
Proposed changes
Code checks if a l2vlan has defined a vlan-aware-bundle name and uses that, if none is defined it falls back to the vlan name as vlan-aware-bundle name.
How to test
---
tenants:
  - name: StorageProd
    mac_vrf_vni_base: 10000
    l2vlans:
      - id: 10
        name: storage_prod
        tags: ['storageProd']
      - id: 20
        name: storage_prod
        tags: ['storageProd']
  - name: FABRIC
    mac_vrf_vni_base: 10000
    l2vlans:
      - id: 50
        name: ipmi
        tags: ['ipmi']
        evpn_vlan_bundle: bundle1
      - id: 60
        name: ipmi
        tags: ['fabric']
        evpn_vlan_bundle: bundle1

Checklist
User Checklist

N/A

Repository Checklist

[x] My code has been rebased from devel before I start
[x] I have read the CONTRIBUTING document.
[x] My change requires a change to the documentation and documentation have been updated accordingly.
[x] I have updated molecule CI testing accordingly. (check the box if not applicable)

Please update the PR description to reflect the latest state. Makes it easier for someone else to review.


Missing APIs in the library

Hi guys.
I have a question about the library: does it contain all the APIs documented by Microsoft for Windows kernel drivers using Rust? I noticed that I didn't find some APIs in the library, like PsGetCurrentThread and Minifilters. I know that I can make the connection manually and call the function in the code, but I wondered if that was the intention of not having them. I'm thinking of making a Pull Request related to this, but I wanted to clear this doubt first.

From what I've analyzed, the PsGetCurrentThread API uses the CFORCEINLINE macro. As the library doesn't use the .generate_inline_functions(true) option in the bindgen, the correct bindings are not generated for this API. The bindgen may even generate the bindings, but it ends up not putting #[inline], for example.
I saw some discussions on rust-bindgen's github and saw that one person made a pull request, regarding #51 , I don't know how this one is progressing, but the question still remains regarding the file system filter apis

does it contain all the APIs documented by Microsoft for Windows kernel drivers using Rust?

Not currently. We are planning on expanding api coverage, grouping headers into functional areas (ex. I have a branch adding all the headers related to HID. I'd consider PRs expanding coverage, but will not review them until after #186 merges. With that said, PsGetCurrentThread is in ntddk.h, which is already included.

From what I've analyzed, the PsGetCurrentThread API uses the CFORCEINLINE macro. As the library doesn't use the .generate_inline_functions(true) option in the bindgen, the correct bindings are not generated for this API. The bindgen may even generate the bindings, but it ends up not putting #[inline], for example.
You're right in that PsGetCurrentThread is not currently generated because it is an inline function. generate_inline_functions doesnt help here because it would have no implementation to link to. The experimental wrap_static_fns may work, but I haven't tested it. For more info: https://rust-lang.github.io/rust-bindgen/faq.html#why-isnt-bindgen-generating-bindings-to-inline-functions.

#51 is largely irrelevant to this issue since that is only for WDF apis

Now that #186 is merged, what are the guidelines for adding new APIs?
I, for example, need the UDECX API. This API also uses a function table UdecxFunctions, so like for WDF there are no direct bindings. I generalized the call_unsafe_wdf_function_binding_impl macro in wdk-macros in order to support both WDF and UDECX and updated the wdk-sys build to include the relevant USB and UDECX headers. I doubt this is the right way to go especially following the changes introduced by #186... Perhaps such APIs deserve a crate of their own? Or, if we still want them under wdk-sys, can we opt them in/out with crate features?

Ah Minifilters!


Cannot compile minimal model with one gate

While debugging my own code, I noticed that CompiledLogicNet cannot be used to compile a model with just a single logic gate:
llkw = {
    'connections': 'random',
    'implementation': 'python',
    'device': 'cpu'
}
model = torch.nn.Sequential(
    torch.nn.Flatten(),
    LogicLayer(in_dim=2, out_dim=1, **llkw),
    GroupSum(1, tau=1)
)
compiled_model = CompiledLogicNet(
    model=model,
    num_bits=8,
    cpu_compiler='gcc',
    verbose=False
)
compiled_model.compile(
    save_lib_path='minimal_example.so',
    verbose=False
)

leads to the following error message:
error: use of undeclared identifier 'v0'
        out[0] = (char) (~v0 | v1);
                          ^
error: use of undeclared identifier 'v1'
        out[0] = (char) (~v0 | v1);
                               ^

This is because it produces the following c-code:
void logic_gate_net(char const *inp, char *out) {
	out[0] = (char) (~v0 | v1);
}

where v0 and v1 are not declared.

Should be fixed by https://github.com/Felix-Petersen/difflogic/pull/21


Looking For A New Maintainer

As much as it pains me to write this, it's time to see if I can find Buildalyzer a new, more productive home. Despite my best intentions over the last couple years, I think it's become obvious to anyone engaged with this project that I just don't have the personal bandwidth to give it the attention it requires. This decision hasn't been made lightly - I've been thinking about how to move forward on several of my projects for a long time as my kids get older and my family takes priority for an increasing portion my downtime. In this case, I think the best thing I can do it set the project free.
Which brings me to this issue: Buildalyzer needs a new maintainer. I'm looking to completely divest myself of this project and transfer the repository to someone else who's able to do a better job triaging issues, reviewing and merging PRs, and generally keeping it up to date. I don't want to be in the middle of progress, so I think the best thing is to move completely out of the way.
Some of the more recent active users include @Corniel, @0xced, and @phmonte. Likewise I also know that stryker-mutator is one of the bigger consumers (cc @rouke-broersma, @dupdob, etc.).
Are any of you (or anyone else out there) interested in taking over Buildalyzer? If so, drop me a line and we'll figure out the best way to transfer the project!

Hello, I wrote you an email.

I'm more than willing to actively support the continuation of this wonderful project. I'm not sure, if I'm the best person to take the lead.

Great to hear we can keep on using this project! Thanks @phmonte for stepping up :)


[ui] Cannot add a trusted forest

In appliance Configure->Configuration->Settings->Authentication, picking Mode LDAP, then clicking on Get User Groups from LDAP, in the bottom Tusted Forest Settings, clicking on the plus sign does not give us the new line of text fields or the new forest.

@abellotti this PR https://github.com/ManageIQ/manageiq/pull/3893 should fix this.

yes, it does. manually applied the code from the PR to my branch, and I can add the forest.  Thanks!!.

@abellotti please close if this you can verify as fixed.  Thx, Dan


Country Code

Hi,
The Country Code for Australia is AU, this below section may be updated :
"Data resides in Australia for the following countries/regions:

    Australia and New Zealand
"

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

ID: a111eec9-fcfd-8966-ca7b-0177418917fe
Version Independent ID: b9f65c4d-3735-a5a3-c1f8-1e6770e68036
Content: Region availability and data residency - Azure AD B2C
Content Source: articles/active-directory-b2c/data-residency.md
Service: active-directory
Sub-service: b2c
GitHub Login: @kengaderdus
Microsoft Alias: kengaderdus

@ramuvr
Thanks for your feedback! We will investigate and update as appropriate.

@ramuvr
Thank you for pointing this out! I've created a PR to update the documentation and it's currently waiting for the author to review and sign off.
I will now close out this issue. Please allow some time for the author to review and the changes to reflect.
Thank you for your time and patience!


Add docs to admin dashboard to how to develop

add docs for webix and how to develop in the dashboard

https://github.com/threefoldtech/jumpscaleX_threebot/blob/unstable/ThreeBotPackages/zerobot/admin/wiki/extending_admin.md


Support for multiple tabs

Firestore has recently released support for multiple tabs in firestore: https://firebase.googleblog.com/2018/09/multi-tab-offline-support-in-cloud.html , is there any way to implement this when configuring the angularfirestore module?

Need this option as well

@chrismclarke have you find a way of doing this without the angularfire2 implementation?

@chrismclarke have you find a way of doing this without the angularfire2 implementation?

No sorry I haven't attempted

Me too, I need this option as well

Saw it was merged, when will it be released?

Fixed in 5.1, which was just released. Feel free to give it a spin.

Testing it now, thanks


uUpdate config.js

Adding a comment like this makes no sense, because it is implicitly known to update the config.
Closing as this PR is not contributing anything to the project.
Thank you for putting in the effort :)


how to prepare data for bdclstm.py

Hi, how to prepare my data for training using bdclstm.py?
Thank you!

The input to BDCLSTM is three feature maps that are output from a trained UNet model. So, if you have images {z-1, z, z+1}, you pass them through a pre-trained UNet, and pass the outputted feature maps to BDCLSTM. The code in main_bdclstm.py does this, you just need to specify the weights of your trained UNet model.

thank you!

looking at the code, it seems that the code is getting min and max of the entire data folder.
what happens when two slices of scan are from different patients?
For example z-1 is from patient 001 and z is from patient 002?

For BDCLSTM, you need that {z-1, z, z+1} are from the same patient, because you want to use the spatial correlation b/w consecutive slices of the same 3D volume.

I think I understand what you are describing.
My question is at this part of the code:
https://github.com/shreyaspadhy/UNet-Zoo/blob/26dd712d7eb006f070ca69c0186bdcf2c352f18e/data.py#L141
there is no explicit check for file from the same patient?

If I remember correctly, the files are named patientnum_scantype_zcoord_...
So, if I iterate through the files, as long as zcoord is not less than 0 (lowest possible coordinate), and not higher than 31 (highest possible coordinate), since the files are sorted, the check that it belongs to the same patient happens implicitly.

aww... I see.
I don't have access to the brats dataset yet.
Thanks for the clarification!


Data exchange Venta LW74

dear reader,
my Venta LW74 is integrated in HA. Some data is displayed correctly compared to the data in Venta app. The time related data is not displayed correctly:

service time in HA 702 min and in Venta app 10 days
disk replacement in HA 913 min and in Venta app 115 days
cleaning in HA 913 min and in Venta app 176 days

Also level UOM is missing and probably not correct. When empty displayed level is 46.566
Pls help me out.

Hey,
All the data are returned directly from the device without any modifications. They are not the same as in app simply because I don't know what kind of magic Venta uses to calculate them, especially regarding the days you mentioned. In my initial observations I assumed those are minutes, but in reality I have no idea. If you have any details then please provide them so we can improve this.
There is no unit for water level for exactly the same reason, the value is always super high (probably voltage).

Hi, thx for reaction.
I also noticed the timers are increasing, while expecting decreasing numbers.
I'll send a mail to Venta.


Zod compiles d.ts files with errors

My team recently noticed an issue that came up in the .d.ts files after zod compiled 1 of our schemas.
Original zod schema:
export const UserEventMetadataSchema = EventMetadataSchema.extend({
  userId: z.string().or(z.null()),
  journeyId: z.string(),
  locale: z.string(),
  os: z.string().optional(),
  device: z.string().optional(),
  browser: z.string().optional(),
})

The output in our d.ts file:
export declare const UserEventMetadataSchema: z.ZodObject<z.extendShape<{
    appVersion: z.ZodString;
    environment: z.ZodEnum<["production", "staging", "development"]>;
    clientVersion: z.ZodString;
   ....
},

The problem is that in the d.ts file Typescript cannot find the exported module extendShape:

Package versions:
"dependencies": {
    "zod": "^3.21.4",
    "typescript": "^4.9.4"
  },

Does anyone know why the d.ts files are generated with typescript errors?

extendShape was moved to another namespace objectUtil.extendShape

Are you sure your .d.ts files are getting re-generated from your TypeScript source code? Or are these declarations handwritten? This seems to be an issue with having multiple Zod versions conflicting.

At the time we worked around the issue, but I recently noticed this issue was still open and we tried doing a clean install and re-generating our Typescript. The issue seemed to have resolved since the generated code now does not reference the z.extendShape at all.


Carthage Build Failed

When I try to update Carthage, I get the following error. I cleaned Carthage cache and it didn't work.
Carthage version 0.34.0 (Latest)
Xcode Version 11.2.1
`*** Fetching SwinjectStoryboard
*** Fetching Swinject
*** Checking out Swinject at "2.7.1"
*** Checking out SwinjectStoryboard at "2.2.0"
*** xcodebuild output can be found in /var/folders/2j/z4yzxgjd3kjcp06wb58t0hvc0000gn/T/carthage-xcodebuild.uLVwgr.log
*** Building scheme "Swinject-iOS" in Swinject.xcodeproj
*** Building scheme "SwinjectStoryboard-iOS" in SwinjectStoryboard.xcodeproj
Build Failed
Task failed with exit code 65:
/usr/bin/xcrun xcodebuild -project /Users/..../Documents/development/testcarthage/Carthage/Checkouts/SwinjectStoryboard/SwinjectStoryboard.xcodeproj -scheme SwinjectStoryboard-iOS -configuration Release -derivedDataPath /Users/..../Library/Caches/org.carthage.CarthageKit/DerivedData/11.2.1_11B500/SwinjectStoryboard/2.2.0 -sdk iphoneos ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES archive -archivePath /var/folders/2j/z4yzxgjd3kjcp06wb58t0hvc0000gn/T/SwinjectStoryboard SKIP_INSTALL=YES GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO CLANG_ENABLE_CODE_COVERAGE=NO STRIP_INSTALLED_PRODUCT=NO (launched in /Users/..../Documents/development/testcarthage/Carthage/Checkouts/SwinjectStoryboard)
This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/2j/z4yzxgjd3kjcp06wb58t0hvc0000gn/T/carthage-xcodebuild.uLVwgr.log`

Hi there, have been trying to install Swinject/SwinjectStoryboard couple times on Xcode 11.4.1 (11E503a), always getting this error after carthage update:
`*** Fetching SwinjectStoryboard
*** Fetching Swinject
*** Checking out Swinject at "2.7.1"
*** Checking out SwinjectStoryboard at "2.2.0"
*** xcodebuild output can be found in /var/folders/30/9kygf23j5dd3kmxl8x_19_680000gp/T/carthage-xcodebuild.HmVkkO.log
*** Building scheme "Swinject-macOS" in Swinject.xcodeproj
*** Building scheme "Swinject-iOS" in Swinject.xcodeproj
Build Failed
Task failed with exit code 70:
/usr/bin/xcrun xcodebuild -project /Users/Manoli/Developer/Learning\ Projects/Speedometer/Carthage/Checkouts/Swinject/Swinject.xcodeproj -scheme Swinject-iOS -configuration Release -derivedDataPath /Users/Manoli/Library/Caches/org.carthage.CarthageKit/DerivedData/11.4.1_11E503a/Swinject/2.7.1 -sdk iphonesimulator -destination platform=iOS\ Simulator,id=F437556A-EBF6-4EA4-8851-0945C847E526 -destination-timeout 3 ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES build (launched in /Users/Manoli/Developer/Learning Projects/Speedometer/Carthage/Checkouts/Swinject)
This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/30/9kygf23j5dd3kmxl8x_19_680000gp/T/carthage-xcodebuild.HmVkkO.log
`
Carthage is isntalled via pkg with option "For all users".
Any idea why this could be?


Add doom-themes installation to examples and docs

Since #138 the loading of doom-one requires installation of
doom-themes by the user. It's only present in one example. This
adds it to all examples and docs.
So - depending on which example config file the user starts out with - a new user might end up with an error instead of a successful startup of Emacs.
Alternatively, we could remove the loading of doom-one from all examples and docs.

Thanks! Probably need to consolidate those example configurations to just the examples folder.


Mark remove-old-releases.sh executable

Follow on to https://github.com/apache/arrow-rs/pull/1467
Rationale
When I ran the release-tarball.sh script for the 11.1.0 release, it said:
...
Success!
The release is available here:
  https://dist.apache.org/repos/dist/release/arrow/arrow-rs-11.1.0
Clean up old versions from svn
./dev/release/release-tarball.sh: line 79: /Users/alamb/Software/arrow-rs/dev/release/remove-old-releases.sh: Permission denied

Codecov Report

Merging #1522 (8c6b24f) into master (eb6b7c6) will decrease coverage by 0.00%.
The diff coverage is n/a.

:exclamation: Current head 8c6b24f differs from pull request most recent head 3b3d9c8. Consider uploading reports for the commit 3b3d9c8 to get more accurate results

@@            Coverage Diff             @@
##           master    #1522      +/-   ##
==========================================
- Coverage   82.76%   82.75%   -0.01%
==========================================
  Files         190      190
  Lines       54702    54702
==========================================
- Hits        45272    45270       -2
- Misses       9430     9432       +2

Impacted Files
Coverage Δ

parquet_derive/src/parquet_field.rs
65.98% <0.00%> (-0.23%)
:arrow_down:

arrow/src/array/transform/mod.rs
86.46% <0.00%> (-0.12%)
:arrow_down:

Continue to review full report at Codecov.

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


how to change text in viewer mode ?

Summary

vue cli 3.x
@toast-ui/vue-editor": "^2.3.1

Screenshots
(1) current viewer tag

(2) i wanna be change viewerText

Version
2.3.1
Additional context
i wanna be know that how to change viewer text.
current initialValue does not change.

oh,
i immediately checked the toast ui viewer and confirmed that there is setMarkdown method.
it was confirmed that the result of applying the content is correctly reflected in viewer.
i will close the issue!


enhance: [2.4] add the 'db id' field for the DescribeCollectionResponse

issue: https://github.com/milvus-io/milvus/issues/32110
/kind improvement

/lgtm
/approve


VS code couldn't paste file from outside

It's very inconvenient to copy file from outside to VS code，we have to paste file in system  folder but not in VS code window，please!

I don't understand what you're trying to do, please explain step by step. Which OS?


[es cit] Use storage factory instead of manual creation

Which problem is this PR solving?
This PR addresses a new found issue which is a part of the issue #5203 .
It initializes ES Factory in the Integration Test Suite.
Description:
This PR introduces changes to the integration tests by initializing an ElasticSearch factory (es.Factory) and utilizing it for the creation of span readers and writers. Previously, the code instantiated a new span reader/writer from the SpanStore directly, which has been replaced with the more appropriate approach of leveraging the ElasticSearch factory.
How was this change tested?
The changes were tested by running the following command:
make test

Checklist

[x] I have read CONTRIBUTING_GUIDELINES.md
[x] I have signed all commits
[x] I have added unit tests for the new functionality
[x] I have run lint and test steps successfully

for jaeger: make lint test
for jaeger-ui: yarn lint and yarn test

Hi @yurishkuro, Can you please guide me on how to test these Github Workflows locally? I have to push everytime I make changes to see if it is right or not.

You can check the code for the workflows in .github dir. usually we keep them very simple, all of the test business logic is in the script that the workflow runs, precisely to allow local debugging. You can run the script manually.

You can check the code for the workflows in .github dir. usually we keep them very simple, all of the test business logic is in the script that the workflow runs, precisely to allow local debugging. You can run the script manually.

Understood Thanks!
Since, I am using WSL I will have to install "act" and run a specific job using act -j right? Or, is there a simpler way?

don't know what act is - you should only need Docker

don't know what act is - you should only need Docker

While googling how to run github actions locally, almost 10-12 sites used a github repo nektos/act to run the actions locally. I already am using docker, will look into it further. Thanks for your guidance.

you don not need to run actions locally. Actions just call a shell script, you can run the shell script locally. This is the only line relevant to running ES test locally: https://github.com/jaegertracing/jaeger/blob/bae96f7c0f1177978a9eb47fd43d1ba403d945e6/.github/workflows/ci-elasticsearch.yml#L61

please rebase, there were changes in the signatures

you don not need to run actions locally. Actions just call a shell script, you can run the shell script locally. This is the only line relevant to running ES test locally:
https://github.com/jaegertracing/jaeger/blob/bae96f7c0f1177978a9eb47fd43d1ba403d945e6/.github/workflows/ci-elasticsearch.yml#L61
Got it, Thanks a lot!

`func (f *Factory) CreateArchiveSpanReader() (spanstore.Reader, error) {
if !f.archiveConfig.Enabled {
return nil, nil
}
return createSpanReader(f.getArchiveClient, f.archiveConfig, true, f.metricsFactory, f.logger, f.tracer)
}
// CreateArchiveSpanWriter implements storage.ArchiveFactory
func (f *Factory) CreateArchiveSpanWriter() (spanstore.Writer, error) {
if !f.archiveConfig.Enabled {
return nil, nil
}
return createSpanWriter(f.getArchiveClient, f.archiveConfig, true, f.metricsFactory, f.logger)
}`

f.archiveCOnfig

		return nil, nil
	}```

Hi, Took a long time to debug the issue as TraceLog also didn't help, but according to me the client being intialized is the reason. The client used in Factory initialization differs from the actual initialization of client, specific to the tests which is causing the Errors.
PTAL, would really appreciate your insights.

could you please document what debugging you did and what you found? Were you able to log the queries?

could you please document what debugging you did and what you found? Were you able to log the queries?

Yes, I was able to log the queries using SetTraceLog, but the logs didn't show anything evident enough for debugging.
So, instead I ran a debugger in the Main code and my Branch code.
The debugger showed the only difference in the initialisation of SpanReader...
The difference was the client passed to SpanReader which was causing the Error

so what's the state now, were you able to resolve the issue? I see the CI is still failing.

so what's the state now, were you able to resolve the issue? I see the CI is still failing.

Yes, the GetOperation and the first 2 tests were successful, but I had to do something unorthodox i.e to change the Factory file of ES and do things differently. Can you please look at it and see if it's acceptable? Meanwhile I will look at the next failing test.

so what's the state now, were you able to resolve the issue? I see the CI is still failing.

Yes, the GetOperation and the first 2 tests were successful, but I had to do something unorthodox i.e to change the Factory file of ES and do things differently. Can you please look at it and see if it's acceptable? Meanwhile I will look at the next failing test.

I mean these 2 below tests were successful.

Update: Figured out the reason for the IndexTempelate test failing. That is also initialized with PrimaryClient instead of the client specifically written in the code. The client initialization is itself at fault.

Please remove commented out code

Done, PTAL!

I removed custom initialization in favor of CLI-based factory creation. There is room for more similar clean-up for sampling store, but it also has a bug that needs to be fixed https://github.com/jaegertracing/jaeger/issues/5333

I removed custom initialization in favor of CLI-based factory creation. There is room for more similar clean-up for sampling store, but it also has a bug that needs to be fixed #5333

Sure!
Should I look into that next?


Review of AI projects - Jasper

Review of AI projects - Jasper
Jasper
After looking through a few of Jasper's python modules and noticing the MIT license I suggest we get all we can from Jasper. We would understand their code and mix it with ours, taking all that they have that we do not. This also gets us to a question of whether or not we will be ahead by merging with the Jasper project or whether our focus is sufficiently different to run a parallel effort.
I see they are using a direct word-action association that though effective limits the greater variation in user expression's that Api.ai would provide.
At the moment I am thinking we get all we can from Jasper, use a better user-expression-to-action method along Api.ai or as I have noted under the ConceptNet discussion, and begin developing domains along the Api.ai line.

We can definitely learn and adapt from Jasper's source code, considering the fact that the project is MIT licensed. Speaking abstractly, our goal is not to compete with Jasper/other VAs or merge with any other project, this is and will remain an independent project :D Afterall, our goal is to improve Melissa. Speaking of improvements, which modules of Jasper do you have in mind for implementing in Melissa?

Adapting Jasper to Melissa
There is a lot of material here but the idea is to be comprehensive enough to provide a credible adaptation route. Roughly, the order of effort may be:

populate.py looks like a useful addition that when run will ask the user to provide detail for Melissa's profile.yaml.

Create Melissa web-pages similar to those for Jasper. An easy, initial option is to copy the Jasper pages that seem useful (or all) and make changes that focus on Melissa's capabilities.

Create a Melissa forum, as has been done for Jasper, at Google Groups.

Replace Melissa's brain.py and related modules with Jasper's to allow dynamic module loading and immediate inclusion of Jasper's action modules.

This is a significant change but one that is not particularly hard to do.

This also allows the inclusion of Jasper's many current and possible future Third Party Modules.

Melissa's current action modules only slightly overlap those from Jasper and can be easily adapted for Jasper's dynamic loading.

Inclusion of Jasper's standard action modules may required additional software installation and setup. The Third Party Modules certainly will. However, additional modules, which improve and expand Melissa's capability will commonly require additional installation and setup.  This is an area that will likely need further thought.

A threading discussion is added at the bottom. Threading is not immediately useful but it seems a likely path in the future.

A Melissa GUI, noted in an earlier issue, is gaining in importance. A very brief search brings up Kivy as a possibility.

Jasper's web pages

These links show a way to create the pages on GitHub.

https://pages.github.com/
https://help.github.com/articles/creating-project-pages-manually/
http://jmcglone.com/guides/github-pages/

For the first rough cut we might just copy the Jasper pages, they appear to all be here, and trim them to what makes sense for us. It may be easy to come up with our own art and layout that would then replace those components in the existing pages. The developers may have art and layout directions in mind.

Configuration

populate.py looks like a useful addition that when run will ask the user to provide detail for Melissa's profile.yaml.

Some of the software additions on the Configuration page may be useful. The components of possible use could be prioritized for later work.

Usage

Melissa's usage page would be merged here. Perhaps we would have a demonstration section for each of Melissa's actions.

Spotify seems against Jasper's Contributing to Jasper page, Philosophies, Item 2. But it illustrates that services of any kind might be added and the trick to that would be to provide those options either with populate.py or on a configuration page where options could be selected when desired.

Developer API

Standard module

This is a very interesting page talking about the design of action modules. It looks like brain.py is dynamically loading all the modules and while doing so gets the key words, the words used to cause an action, from a WORDS list in each module.

In the future we may be adding phrases and sentences going in the direction of Api.ai, and then action descriptions as I mentioned for ConceptNet. The idea here is that this variety of text for an action would likely become separate from the module and maintained using a screen that would update JSON or YAML files, or even a database such as SQLite. I just now see that Melissa is using an SQLite database, memory.db.

The isValid(input) method of finding which module applies to the user's expression, though quite adequate for the small number of actions we currently have, will become inefficient when the number of actions becomes large, certainly at around 100 and likely much less.

Notification module

This area provides voice notifications of received emails in Gmail and messages in Facebook.

Notfications looks like a good idea and we might just copy that area over to Melissa.

Contribute

We can likely cut down this page for now and make changes as time goes on.

Modules (Third Party)

It would be rather useful to be able to mix these modules into Melissa. We would then need a Jasper-Module interface. This also goes toward having a screen on which to select capabilities and modules as desired.

FAQ

This will be a useful page as the number of users and developers increases. We can likely cut it down for the moment.

License

This page can be kept much the same with Jasper replaced by Melissa. Of course it will be better to give it an independent look but it will help to have an initial page.

Home, About and Documentation

These are two nicely designed pages but are more user impact than substance and could be avoided until we provide unique graphics for Melissa. We might also provide a point that differentiates Melissa from Jasper. Saying something like An app for Linux and Windows that gets away from the Raspberry Pi emphasis.

Support

This link goes to a forum page under Google Groups. Looks like an easy option to set up. Much of what I write should likely go on a forum page instead of an issues page. Here is how to create a Google Group.

GitHub

This link would go to the current Melissa home page.

Jasper's top-level modules

alteration.py - "Manually adjust output text before it's translated into actual speech by the TTS system."

app_utils.py - Email helpers, URL compressor, negative and positive sentiment detectors.

brain.py - I realize this will be a significant departure from the current Melissa code but given that it allows dynamic loading of modules, the immediate addition of Jasper 3rd-party modules, and that no changes will be required to this version of brain.py when new modules are added, it may merit consideration.

conversation.py - This provides a loop for notifications and conversations (the processing of user expressions) and is another significant change to Melissa. This modules fits with brain.py. client/mic.py handles the actual audio to text processing that for Melissa is done in main.py.

mic.py - What Melissa is doing in main.py could replace this code. Whether or not we abstract the speech-to-text processing so that different speech-recognizers can be used without change to this program is something to think about but for now that seems like a low priority.

diagnose.py - This may be useful when tailored to Melissa but may be optional at the moment.

g2p.py - This appears to be a way to improve the text-to-speech quality. Could be a secondary priority though perhaps easily done.

jasperpath.py - This obtains the absolute path to Jasper's run directory and to a config file, ~/.jasper. This may not be immediately useful but an idea of how it might be used would be:

A melissa.py (instead of a main.py) might be put, on Linux, in /usr/local/bin.

melissa.py would read a ~/.melissa file that identified the disk location of the Melissa installation.

The remaining Melissa programs would then use the absolute paths provided by melissapath.py to reach the programs and data of the Melissa system.

local_mic.py  - "A drop-in replacement for the Mic class that allows for all I/O to occur over the terminal." This could be useful when testing.

notifier.py - This code is called by conversation.py on each expression-response loop to handle possible notifications from email and others. It would seem this kind of thing would be put in a separate thread so as to minimize the expression-response loop cycle time. See more on threading below.

test_mic.py - "A drop-in replacement for the Mic class used during unit testing." We should likely develop some unit-tests in which this could be used. Marking this as secondary.

stt.py - This might be useful when additional speech-recognizers are added as shown on Jasper's installation page. Marking this as secondary.

tts.py - This may be useful when different text-to-speech options are added as shown on Jasper's installation page. Marking this as secondary.

vocabcompiler.py - This assembles a list of all the word lists in the action modules. The combined word list is used to improve the accuracy of the speech-to-text software by concentrating recognition on only the words in the list. Might be useful for PocketSphinx. Marking this as secondary.

modules directory - If Melissa's brain.py is modified for dynamic loading, all the modules will be included automatically. We would check here for modules overlapping Melissa actions such that either one or the other would be used, and actions Melissa has that Jasper does not suggesting that the Melissa action could be converted to a module.

Jasper's Action Modules

These modules may require additional installs and setup.

Birthday.py - Provides an audio list of "Facebook friends with birthdays today."

Gmail.py - Responds "with a summary of the user's Gmail inbox, reporting on the number of unread emails in the inbox, as well as their senders."

HM.py - "Returns the top headlines from Hacker News."

joke.py - Tells a joke randomly selected from a file list.

Life.py - Responds with "the meaning of life."

MPDControl.py - Plays music from Spotify.

News.py - Gets news articles from http://news.ycombinator.com and will send the articles to your email address or speak the headlines and the articles.

Notifications.py - Responds with a count of the user's Facebook notifications.

Time.py - Responds with the current time.

Unclear.py - Responds by saying it could not understand the user's expression.

Weather.py - Responds with the weather for the location (zip-code) provided for populate.py.

Jasper's Third-Party Action Modules
copied directly from Jasper's Modules page.

These modules require additional installs and setup.

Google Calendar – The Google Calendar module lets you check your Google calendar today or tomorrow for events, and it lets you add an event to your calendar.

Twitter – The Twitter module lets you tweet, check whats trending and check for any twitter notifications which include: Direct messages, retweets or mentions.

Evernote – The Evernote module lets you store notes for you in your Evernote account.

WolframAlpha – The WolframAlpha module lets you ask question to WolframAlpha search engine.

Status – The Status module outputs system status information upon request.

Movies – The Movies module is used to retrieve movie information.

Define – The Define module is used to get definitions of words.

Wiki – The Wiki module is used to get a Wikipedia summary of a word or phrase.

Domoticz – The Domoticz home automation module is used to issue commands to a Domoticz server using the JSON API.

Find My iPhone – The Find My iPhone module is used to force your phone to ring using the apple service “find my iphone”

Yelp – The yelp module is used to find a good restaurant in a given area. The module can also answer various questions about the restaurant.

Melissa Action Modules

There is little overlap between the Melissa and Jasper modules. If Jasper's dynamic loading method is adopted the Melissa modules should be converted to that method.

business_news_reader.py - Obtains headlines and news articles from http://profit.ndtv.com/news/latest/.

connect_proxy.py - Connects to a proxy server.

define_subject.py - Responds with subject information from Wikipedia.

general_conversations.py - Responds to several user expressions.

imgur_handler.py - Responds with a terminal list of image locations on the user's computer.

lighting.py - Changes the color of the USB RGB LED notification light.

notes.py - Writes and responds with notes saved into an sqlite3 database (memory.db).

open_firefox.py - Opens FireFox.

play_music.py - Plays music files from the user's computer.

sleep.py - Exits Melissa.

tell_time.py - Responds with the current time.

weather.py - Uses the city_code from profile.yaml to report the weather from Weather.com.

twitter_interaction.oy - Posts the user's recognized audio to twitter.

Threading

Instead of waiting for an action to complete before another user expression was provided, a thread could be launched for each user expression and the return provided in a notification stack, not necessarily the notification procedure given above. The user could either wait for the task completion response from the stack that would seem the same in timing and flow as the current response, or the user could continue providing expressions and Melissa would give the responses when sufficient quiet time, a few seconds, was provided by the user. It is reasonable to think the some requests to Melissa could take a while. A speaking collision, where the user speaks and Melissa is giving its response might be handled by Melissa providing the response again.

Separate threads to handle camera input and screen output.

Another threading possibility is that if Melissa was used to interact with a family spread throughout a home then threads for each room might be useful.

Speaker recognition is similar to speech recognition and so having a different thread for each speaker in a group may be useful. See Alize for speaker recognition.

Thanks for the detailed analysis @neilnelson! These are some really great suggestions. One thing that I wish to avoid at this point, is the use of Wit.ai for brain.py as I am working on some homebrew alternatives. Let us split these suggestions to independent issues and well, get on to it :D

Discussion and support forum has been created here: https://groups.google.com/forum/#!forum/melissa-support--discussion-forum/

I have added most of the high level suggestions as issues, let me know if something is missing or if we can close this issue.

Tanay,
I have continued this discussion on the forum. I was going to do the Jasper-Melissa merge but it looks like you have something else in mind you are working on. Obviously, you would have a variety of changes to my merge result and we could refine that a fair amount.


Improve Deploy Logs

Improve log messages with metadata and show log errors before the build starts.
Remove the error message that writes a comment on pull requests additionally.
Implementation:
When a deploy is started we can:

Set a build id separate from the executor build id.
Set error messages and states in a build file.
Set pr metadata in the build log.

When we request logs for a build we look up our build file first and display the metadata and errors.

Fixed: 231e8c9398604d20393b3f958a2ac74d2810ea30


Misc fixes

We're currently running simple system lint for a single config, I think we may want to add it to the set of per config tests as it would have spotted the icache parameter issue. It's a bit frustrating as core_tracing lint and simple system lint are very very similar, but not quite identical! There's also the odd point that simple system lint found an issue that core_tracing lint didn't and I cannot determine why.


[Story] Review parent entity information

Epic
Epic issue includes overview, complete list of user stories, technical and content requirements, user testing task ideation, and current design mock-ups.

[Epic] Sign and Submit

User story

I want to review my parent entity information, so that I can confirm my information is correct and proceed to finalizing my filing.

Acceptance criteria

Given a system user has completed all previous steps, when they land on the sign and submit page the system will display a section with parent entity information (applicability, immediate parent name, immediate parent LEI, immediate parent RSSD ID, Top-holding parent LEI, and Top-holding parent RSSD ID), then the user will be able to review the data for accuracy and completeness.

Technical tasks
Developers should create technical tasks and add links (below) prior to sprint planning.
Front end

[ ] Task (link)
[ ] Task (link)

Back end

[ ] Task (link)
[ ] Task (link)

Tracking in this consolidated story:

https://github.com/cfpb/sbl-project/issues/258


Incorrect parse errors

These examples were all tested using https://menduz.com/ebnf-highlighter/ but were also reproduced locally on version 1.9.0. I believe there are also similar issues in the BNF parser.
In the following grammar:
value            ::= component | range
range            ::= component ".." component /* broken */
component        ::= row | column | row column /* broken */
row              ::= "@" number
column           ::= "$" number
number           ::= [0-9]+

In testing there are some unexpected results.
@2 is correctly parsed as `value -> component -> row -> number
The range directive is not parsing correctly. For example, @2..@2 should be value -> range -> (component -> row -> number , component -> row -> number)
The row column aspect of component is also not correctly parsed. For example, @2$2

Hello Tony, keep in mind that the parser generates a PEG parser, therefore it behaves like a deterministic state machine (like regular expressions). The generated parser pays attention to the order of the constructions, not being able handling ambiguity.
Try changing the order of the rules, so it first tries to parse the row column and then try row as a fallback.
-component        ::= row | column | row column /* broken */
+component        ::= row column | column | row

If it doesn't work, write here and I'll try to help.

Ah, that fixed it. Thank you!


runtime: TestGdbBacktrace failures due to GDB "internal-error: wait returned unexpected status 0x0"

2020-12-07T21:01:46-7ad6596/linux-mips64le-mengzhuo
2020-10-23T15:11:15-646531c/linux-mips64le-mengzhuo
--- FAIL: TestGdbBacktrace (1.51s)
    runtime-gdb_test.go:77: gdb version 8.1
    runtime-gdb_test.go:437: gdb output:
        Loading Go Runtime support.
        Breakpoint 1 at 0x7ece0: file /tmp/farm/tmp/go-build405377235/main.go, line 17.
        [New LWP 18663]
        [New LWP 18664]
        [New LWP 18665]
        [New LWP 18666]

        Thread 1 "a.exe" hit Breakpoint 1, 0x000000000007ece0 in main.eee (~r0=<optimized out>) at /tmp/farm/tmp/go-build405377235/main.go:17
        17	func eee() bool { return true }
        #0  0x000000000007ece0 in main.eee (~r0=<optimized out>) at /tmp/farm/tmp/go-build405377235/main.go:17
        #1  0x000000000007ecbc in main.ddd (~r0=<optimized out>) at /tmp/farm/tmp/go-build405377235/main.go:14
        #2  0x000000000007ec5c in main.ccc (~r0=<optimized out>) at /tmp/farm/tmp/go-build405377235/main.go:11
        #3  0x000000000007ec0c in main.bbb (~r0=<optimized out>) at /tmp/farm/tmp/go-build405377235/main.go:8
        #4  0x000000000007ebbc in main.aaa (~r0=<optimized out>) at /tmp/farm/tmp/go-build405377235/main.go:5
        #5  0x000000000007ed1c in main.main () at /tmp/farm/tmp/go-build405377235/main.go:22
        ../../gdb/linux-nat.c:2081: internal-error: wait returned unexpected status 0x0
        A problem internal to GDB has been detected,
        further debugging may prove unreliable.
        Quit this debugging session? (y or n) [answered Y; input not from terminal]

        This is a bug, please report it.  For instructions, see:
        <http://www.gnu.org/software/gdb/bugs/>.

        ../../gdb/linux-nat.c:2081: internal-error: wait returned unexpected status 0x0
        A problem internal to GDB has been detected,
        further debugging may prove unreliable.
        Create a core file of GDB? (y or n) [answered Y; input not from terminal]
    runtime-gdb_test.go:439: gdb exited with error: signal: aborted (core dumped)
FAIL
FAIL	runtime	44.687s

See previously #37405 (TestGdbBacktrace hanging on the same builder), #39228 (TestGdbBacktrace failures on Linux), #39204 (meta-bug about runtime GDB test flakiness).
CC @mengzhuo @ianlancetaylor

https://sourceware.org/bugzilla/show_bug.cgi?id=20301

Can finally reproduce after a few tries.
What happens is that another thread calls exit() while I "next" this thread.
Most of the time gdb handles it nicely, but it also happens that I get the internal-error immediately:

greplogs --dashboard -md -l -e 'FAIL: TestGdbBacktrace .*(?:\n    .*)*: wait returned unexpected status' --since=2021-05-12
2022-01-12T00:01:48-8070e70/linux-riscv64-jsing
2021-10-26T22:05:53-80be4a4/linux-riscv64-unmatched

greplogs --dashboard -md -l -e 'FAIL: TestGdbBacktrace .*(?:\n .*)*: wait returned unexpected status' --since=2021-01-27
2022-02-07T21:57:29-911c78f/linux-386-longtest
2022-01-12T00:01:48-8070e70/linux-riscv64-jsing
2021-10-26T22:05:53-80be4a4/linux-riscv64-unmatched
2021-05-10T19:19:34-dc50683/linux-riscv64-jsing

Note that the most recent failure is on linux/386, which is a first-class port.

Given that the failure is within GDB itself, we could resolve this issue by doing one or more of the following:

Getting an upstream fix in GDB and updating the builders to pull it in.
Identifying affected GDB versions and skipping the test on those versions.
Modifying the test to skip itself if it detects this failure mode.
Determining that the scenario under test cannot work reliably and removing the test for it.

There are at least two upstream bugs reported against GDB for this symptom:
https://sourceware.org/bugzilla/show_bug.cgi?id=24628
https://sourceware.org/bugzilla/show_bug.cgi?id=28551

Modifying the test to skip itself if it detects this failure mode.

Actually, we can do that one now, and we should: otherwise, this test may flake for Go users when they run go test all in their own module.


./dashboard.sh terminates with exit code 1

When the following command is executed
./dashboard.sh

I get the error

Error: unknown shorthand flag: 'e' in -execute
See 'influx -h' for help
command terminated with exit code 1

which is thrown from the line
kubectl exec -ti -n $tenant $influxdb_pod -- influx -execute 'CREATE DATABASE jmeter'

How do I solve this?

The problem is the different versions of influx,
i set the influx version in jmeter_influxdb_deploy.yaml the version to:  influxdb:1.8.6
https://github.com/kubernauts/jmeter-kubernetes/blob/a481d707317d71d13cfa9ec16c22c20177c3cc27/jmeter_influxdb_deploy.yaml#L18

i tried with influxdb:1.8.6, still the same error..

I am getting the same error.please help how to fix
GLOBAL OPTIONS:
--help, -h  show help
Error: flag provided but not defined: -execute
command terminated with exit code 1

If i remember correct, the reason was a mismatch between different versions, play around with older versions of influx

I am not getting the data on grafana..data source is working fine..how do I solve it? Any idea..


Remove link to now deprecated Azure Notebook

Remove link to now deprecated Azure Notebook since the page doesn't exist anymore.

@AlvinRamoutar : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@ManojRaheja FYI


Proxy to API should contain the full path

Since commit b0165258f7f43bdd5e79355b1b1c809acc0a9bc7 , the API proxy stopped working for me. Our API server is served over a reverse proxy that doesn't handle /client very well, so we need the proxy forward on /client/api .
I tried several combinations (with/without path etc.) on CS_URL, but none of them work.
Is there a particular reason why this was changed to /client? Is there some CS API that needs to be accessed via /client?

@onitake with the change, now console proxy etc. all work, that's why it was changed. Can you try the latest? What changes did you have to make, to make it work for you?

Ah yes, I forgot about the console proxy. It won't work with only the /client/api redirection.
I don't quite understand with /client doesn't for me. I suspect it's something to do with my management server reverse proxy. Further investigation needed.
On the other hand, this will be obsolete anyway when #21 gets merged.

Per your comment @onitake as https://github.com/apache/cloudstack-primate/pull/21 is merged, closing this as this gets obsolete per your comment.


feature-wip step2: schedule the statistics job and generate executable tasks

Proposed changes
This pull request includes some implementations of the statistics(https://github.com/apache/incubator-doris/issues/6370), it will not affect any existing code and users will not be able to create statistics job.
Problem Summary:
Describe the overview of changes.
Checklist(Required)

Does it affect the original behavior: (Yes/No/I Don't know)
Has unit tests been added: (Yes/No/No Need)
Has document been added or modified: (Yes/No/No Need)
Does it need to update dependencies: (Yes/No)
Are there any changes that cannot be rolled back: (Yes/No)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

The persistence logic is not yet complete.
A separate PR is required to handle the persistence logic WIP.


why my 'workers=4,use_multiprocessing=True' do not work while training?

You can obtain the TensorFlow version with:
TF  2.10
Describe the problem.
Describe the current behavior.
history = model.fit(train_model_input, epochs=1, verbose=1, validation_split=0.0,steps_per_epoch= math.ceil( train_row_len/256), workers=4,use_multiprocessing=True).
As you see, 'workers=4,use_multiprocessing=True'  don't  work while training.I find it only 100% CPU-Util not the expect 400%.
Describe the expected behavior.
I can  increase the utilization of my CPU to 400%.
Standalone code to reproduce the issue.
import tensorflow as tf
from tensorflow.keras import datasets, layers, models
from tensorflow.keras.utils import Sequence
from math import ceil
import numpy as np
import numpy as np
import math
import os
class DataGenerator(Sequence):
def __init__(self, x_set, y_set, batch_size):
    self.x, self.y = x_set, y_set
    self.batch_size = batch_size

def __len__(self):
    return ceil(len(self.x) / self.batch_size)

def __getitem__(self, idx):
    end = min(self.x.shape[0], (idx + 1)*batch_size)
    return self.x[idx*batch_size:end], self.y[idx*batch_size:end]

batch_size = 32
epochs = 100
(train_images, train_labels), (test_images, test_labels) = datasets.cifar10.load_data()
Normalize pixel values to be between 0 and 1
train_images, test_images = train_images / 255.0, test_images / 255.0
training_generator = DataGenerator(train_images, train_labels, batch_size)
model = models.Sequential()
model.add(layers.Conv2D(320, (3, 3), activation='relu', input_shape=(32, 32, 3)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.Flatten())
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(10))
model.compile(optimizer='adam',
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=['accuracy'])
history = model.fit(x=training_generator,
steps_per_epoch=train_images.shape[0]//batch_size,
validation_data=(train_images, train_labels),
epochs=epochs,
verbose=1,
use_multiprocessing=True,
workers=4)
Source code / logs.

@sada-narayanappa,
Could you please confirm whether you are facing the issue in tf-keras or the keras3.0. The related issue was closed and If you need any further assistance, Could you please raise the new request with the reproducible code on keras-team/keras repo for keras3.0 (or) keras-team/tf-keras repo for tf-keras. Thank you!


Support pulling rtmp from other server as source?

Which version are you using?
v0.15.0
Question
paths:
all:
# source of the stream - this can be:
# * record -> the stream is published by a RTSP or RTMP client
# * rtsp://existing-url -> the stream is pulled from another RTSP server
# * rtsps://existing-url -> the stream is pulled from another RTSP server
# * rtmp://existing-url -> the stream is pulled from a RTMP server
# * redirect -> the stream is provided by another path or server
source: record
When I set  rtmp://existing-url, there is error:
ERR: a path with a regular expression (or path 'all') cannot have a RTMP source; use another path

Sorry， I have known the reason.


PWA app

Description :
Pecha.org need to integrate pwa (progressive web apps) so that user can experience the website similar to mobile app.
Implementation steps :

[x] create manifest.json
[x] create service_worker.js
[x] update html to link manifest.json and register service_worker.js
[x] Check Manifest and Service Worker status in dev tool
[x] Test the "Add to Home Screen" feature in mobile device

@lobsam it is solved, can you please test in your mobile in dev.pecha.org:

@Lungsangg "error: base.html could not be found"

Above bug are fixed. The pwa install button will appear for 10 second and if user does not install, then it will disappear until page get reload.
If pwa is installed, the button wont appear again.

@Lungsangg

Install button is disapearing after some seconds, which need to be appear for 10 - 20 seconds.
Current install button needs to be redesign which should includes

Pecha Logo
Cross icon : if user does not want to install and avoid the install button


[Icon Request]: Energy Autarky for house

Icon name
Autarky
Use cases

For solar system generated electricity.
For electricity saving.

Design ideas

House surrounded with electricity.

Checklist

[X] I have searched if someone has submitted a similar issue before and there weren't any. (Please make sure to also search closed issues, as this issue might already have been resolved.)
[X] I have searched existing icons to make sure it does not already exist and I didn't find any.
[X] I am not requesting a brand logo and the art is not protected by copyright.
[X] I am not requesting an icon that includes religious, political imagery or hate symbols.
[X] I have provided appropriate use cases for the icon(s) requested.

Here's my proposal to this issue:
home-plug and home-zap

Sidenote: Let's also keep in mind that #1841 might trigger a redesign of home, maybe we should do that first before adding this.

Okay, let's wait for the redesign. Thanks @karsa-mistmere.


Remove copy command

The shared project moves these files over, so if we can avoid the redundant copy operation, we can save disk space.

Not working on all machines yet


Supervisor can see all his/her topics in admin view

Added new files, waiting for review.

Added new files, waiting for review.


How can i load multiple vite sub apps simultaneously?

Hi, need to load multiple micro apps simultaneously is there any possibility to achieve that with vite-plugin-qiankun?

I found out what is the problem.  loadApp function from qiankun set global (window) object sandboxed. and all life cycles methods including those from vite are set to that global sandboxed state (sandboxed: false, not solves problem because of same problem, i tried). When one loads more than one app simultaneously global object overrides and when application scripts executes only last application will be rendered because both application will have only one global object which was overridden by last loadApp function. In order to fix this issue I had to add two lines of code in loader.ts (qiankun) right before return of the loadApp fn:
//loader.ts (qiankun)
export async function loadApp<T extends ObjectType>(
    app: LoadableApp<T>,
    configuration: FrameworkConfiguration = {},
    lifeCycles?: FrameworkLifeCycles<T>,
): Promise<ParcelConfigObjectGetter> {

    ....

    window.__GLOBAL_CONCURENT_QIANKUN__[appName] = global
    global.__GLOBAL_CONCURENT_QIANKUN__ = window.__GLOBAL_CONCURENT_QIANKUN__

    return parcelConfigGetter
}

and in vite-plugin-qiankun have added some code in two places:
in helpers.ts I added window.GLOBAL_CONCURENT_QIANKUN?.[${appName}] like:
// helper.ts
export const qiankunWindow: QiankunWindow =
    typeof window !== 'undefined'
        ? window.__GLOBAL_CONCURENT_QIANKUN__?.['asma-app-chat'] || window.proxy || window
        : {}

in second place i have reassigned window.proxy = window.GLOBAL_CONCURENT_QIANKUN?.[${appName}] in createImportFinallyResolve function like:
// index.ts
const createImportFinallyResolve = (qiankunName: string) => {
    return `
    window.proxy = window.proxy.__GLOBAL_CONCURENT_QIANKUN__['${qiankunName}']
    const qiankunLifeCycle = window.moduleQiankunAppLifeCycles &&
    window.moduleQiankunAppLifeCycles['${qiankunName}'];

    if (qiankunLifeCycle) {
      window.proxy.vitemount((props) => return qiankunLifeCycle.mount(props));
      window.proxy.viteunmount((props) => qiankunLifeCycle.unmount(props));
      window.proxy.vitebootstrap(() => qiankunLifeCycle.bootstrap());
      window.proxy.viteupdate((props) => qiankunLifeCycle.update(props));
    }
  `
}

I am sure there could be found a more elegant way of solving this. I will be happy to hear for better solutions.
I would like to make a pr if my fix make sense and is usable for more peoples.
but it looks like there is need to add 2 lines of code in qiankun as well.

qiankun3.0 promise support vite, but qinkun3.0 is development. before qiankun3.0 online, we can use this method to fix this problem.

my solution is:
qiankun changes like:
//loader.ts changes (qiankun)
export async function loadApp<T extends ObjectType>(
    app: LoadableApp<T>,
    configuration: FrameworkConfiguration = {},
    lifeCycles?: FrameworkLifeCycles<T>,
): Promise<ParcelConfigObjectGetter> {

    ....

    if (!window.__GLOBAL_CONCURENT_QIANKUN__) {
        window.__GLOBAL_CONCURENT_QIANKUN__ = {};
    }
    console.log('appName:', appName);
    window.__GLOBAL_CONCURENT_QIANKUN__[appName] = global;
    global.__GLOBAL_CONCURENT_QIANKUN__ = window.__GLOBAL_CONCURENT_QIANKUN__;

    return parcelConfigGetter
}

vite-plugin-qiankun changes like:
helper.ts file changes:
// helper.ts changes (vite-plugin-qiankun)

// Discard qiankunWindow export.
// export const qiankunWindow: QiankunWindow = typeof window !== 'undefined' ? window.__GLOBAL_CONCURENT_QIANKUN__?.['idc-admin'] || window.proxy || window : {}

// Obtain qiankunWindow through  getQiankunWindow.
export const getQiankunWindow = (qiankunName: string) => typeof window !== 'undefined' ? window.__GLOBAL_CONCURENT_QIANKUN__?.[qiankunName] || window.proxy || window : {}

// Function renderWithQiankun add argument qiankunWindow.
export const renderWithQiankun = (qiankunLifeCycle: QiankunLifeCycle, qiankunWindow: QiankunWindow) => {
  // 函数只有一次执行机会，需要把生命周期赋值给全局
  if (qiankunWindow?.__POWERED_BY_QIANKUN__) {
    if (!window.moudleQiankunAppLifeCycles) {
      window.moudleQiankunAppLifeCycles = {}
    }
    if (qiankunWindow.qiankunName) {
      window.moudleQiankunAppLifeCycles[qiankunWindow.qiankunName] = qiankunLifeCycle
    }
  }
}

index.ts file changes:
// index.ts changes (vite-plugin-qiankun)
const createImportFinallyResolve = (qiankunName: string) => {
  return `
    window.proxy = window.proxy.__GLOBAL_CONCURENT_QIANKUN__['${qiankunName}']
    const qiankunLifeCycle = window.moudleQiankunAppLifeCycles && window.moudleQiankunAppLifeCycles['${qiankunName}'];
    if (qiankunLifeCycle) {
      window.proxy.vitemount((props) => qiankunLifeCycle.mount(props));
      window.proxy.viteunmount((props) => qiankunLifeCycle.unmount(props));
      window.proxy.vitebootstrap(() => qiankunLifeCycle.bootstrap());
      window.proxy.viteupdate((props) => qiankunLifeCycle.update(props));
    }
  `
}

my solution is:
qiankun changes like:
//loader.ts changes (qiankun)
export async function loadApp<T extends ObjectType>(
    app: LoadableApp<T>,
    configuration: FrameworkConfiguration = {},
    lifeCycles?: FrameworkLifeCycles<T>,
): Promise<ParcelConfigObjectGetter> {

    ....

    if (!window.__GLOBAL_CONCURENT_QIANKUN__) {
        window.__GLOBAL_CONCURENT_QIANKUN__ = {};
    }
    console.log('appName:', appName);
    window.__GLOBAL_CONCURENT_QIANKUN__[appName] = global;
    global.__GLOBAL_CONCURENT_QIANKUN__ = window.__GLOBAL_CONCURENT_QIANKUN__;

    return parcelConfigGetter
}

vite-plugin-qiankun changes like:
helper.ts file changes:
// helper.ts changes (vite-plugin-qiankun)

// Discard qiankunWindow export.
// export const qiankunWindow: QiankunWindow = typeof window !== 'undefined' ? window.__GLOBAL_CONCURENT_QIANKUN__?.['idc-admin'] || window.proxy || window : {}

// Obtain qiankunWindow through  getQiankunWindow.
export const getQiankunWindow = (qiankunName: string) => typeof window !== 'undefined' ? window.__GLOBAL_CONCURENT_QIANKUN__?.[qiankunName] || window.proxy || window : {}

// Function renderWithQiankun add argument qiankunWindow.
export const renderWithQiankun = (qiankunLifeCycle: QiankunLifeCycle, qiankunWindow: QiankunWindow) => {
  // 函数只有一次执行机会，需要把生命周期赋值给全局
  if (qiankunWindow?.__POWERED_BY_QIANKUN__) {
    if (!window.moudleQiankunAppLifeCycles) {
      window.moudleQiankunAppLifeCycles = {}
    }
    if (qiankunWindow.qiankunName) {
      window.moudleQiankunAppLifeCycles[qiankunWindow.qiankunName] = qiankunLifeCycle
    }
  }
}

index.ts file changes:
// index.ts changes (vite-plugin-qiankun)
const createImportFinallyResolve = (qiankunName: string) => {
  return `
    window.proxy = window.proxy.__GLOBAL_CONCURENT_QIANKUN__['${qiankunName}']
    const qiankunLifeCycle = window.moudleQiankunAppLifeCycles && window.moudleQiankunAppLifeCycles['${qiankunName}'];
    if (qiankunLifeCycle) {
      window.proxy.vitemount((props) => qiankunLifeCycle.mount(props));
      window.proxy.viteunmount((props) => qiankunLifeCycle.unmount(props));
      window.proxy.vitebootstrap(() => qiankunLifeCycle.bootstrap());
      window.proxy.viteupdate((props) => qiankunLifeCycle.update(props));
    }
  `
}

How to use it? Do you have any examples，Thank you!

Has anyone encountered this error after using the edited version of qiankun? I have both Vue 2 and Vue 3 micro apps, and this error occurred in a Vue 2 micro app that uses the Select component from Element-UI. An exception occurs when clicking the input to open the select dropdown.
TypeError: Illegal invocation
    at window.addEventListener (qiankun.js?v=43329dcf:1188:17)
    at global2.addEventListener (qiankun.js?v=43329dcf:4288:32)
    at Popper._setupEventListeners (popper.js:457:1)
    at new Popper (popper.js:195:1)
    at VueComponent.createPopper (vue-popper.js:117:1)
    at VueComponent.updatePopper (vue-popper.js:137:1)
    at VueComponent.updatePopper (db-el-widgets.common.js:4676:1)
    at VueComponent.eval (db-el-widgets.common.js:4666:1)
    at invokeWithErrorHandling (vue.runtime.esm.js:3017:1)
    at Vue.$emit (vue.runtime.esm.js:3716:1)

Has anyone encountered this error after using the edited version of qiankun? I have both Vue 2 and Vue 3 micro apps, and this error occurred in a Vue 2 micro app that uses the Select component from Element-UI. An exception occurs when clicking the input to open the select dropdown.
TypeError: Illegal invocation
    at window.addEventListener (qiankun.js?v=43329dcf:1188:17)
    at global2.addEventListener (qiankun.js?v=43329dcf:4288:32)
    at Popper._setupEventListeners (popper.js:457:1)
    at new Popper (popper.js:195:1)
    at VueComponent.createPopper (vue-popper.js:117:1)
    at VueComponent.updatePopper (vue-popper.js:137:1)
    at VueComponent.updatePopper (db-el-widgets.common.js:4676:1)
    at VueComponent.eval (db-el-widgets.common.js:4666:1)
    at invokeWithErrorHandling (vue.runtime.esm.js:3017:1)
    at Vue.$emit (vue.runtime.esm.js:3716:1)

I checked qiankun's commit history and found this: https://github.com/umijs/qiankun/commit/cbd6cc064624be31a5f5f972d37075471ac7b15a. This might be a faulty fix or something else. I reset it to tag v2.10.16, and now everything works again 🎉


Asset management

Hey all.  I can't quite figure what category asset management would fall under in the Are We Web Yet site.  I've brought the web asset pre-packaging, packing, manifest handling, cache invalidation benefits from Webpack & Webpacker to Rust with webpacker-rs.  I think this should bring us a long way towards being web ready although it's merely a wrapper over some Ruby and JavaScript libraries.

Looking through the website, I don't see any category where I would search for something like webpacker-rs. Maybe creating a new category would be apropriate. Is webpacker-rs still maintained? Do you know of other libraries that would fit a "Asset management" category?

It does not seem like webpacker-rs is being maintained. This can be reopened if any other crates come up that would fall under "Asset Management"


Bing imagery viewer not working

URL
No response
How to reproduce the issue?

enable bing imagery viewer
select an imagery point
the viewer sometimes flashes the imagery, before showing a white screen with an error.
ticking the high resolution box freezes the whole editor.

Screenshot(s) or anything else?

Which deployed environments do you see the issue in?
Released version at openstreetmap.org/edit
What version numbers does this issue effect?
2.29.0
Which browsers are you seeing this problem on?
Firefox

the error is "the file {data:image/*} could not be accessed."

As this feature still works fine on externally hosted instances of iD (e.g. https://ideditor-release.netlify.app), this bug must have something to do with the integration into the OSM website. Most likely this was caused by https://github.com/openstreetmap/openstreetmap-website/pull/4627 – I'm taking a look right now

fixed upstream with https://github.com/openstreetmap/openstreetmap-website/pull/4840

thank you! 😊


Fix Maximum call stack size exceeded error in grid and hexagon aggreg…

#866 #793

@heshan0131 , are there any pending changes for this, can we merge?

@ib, yes it can be merged


Specify late day exceptions for a rubric that doesn't exist yet

The current work-around is to create a dummy, empty rubric.
But this is error-prone as the instructor might forget about the placeholder rubric and make a new rubric when they actually want to setup the questions & points.

I think a better solution is waiting for when systems are merged and then the workflow would be:

Instructor creates assignment on server
Instructor creates a rubric for that assignment
Instructor adds late days exception (and this could be done before step 2)

I'm marking it "wontfix" (but leaving open and milestoning it for 1.0 release) since it's going to be indirectly fixed.


fix build failures

Checklist

[x] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found some lint.
Here's what I've got...
For recipe/meta.yaml:

❌ requirements: host: setuptools <= 72.2.0 should not contain a space between relational operator and the version, i.e. setuptools <=72.2.0
❌ requirements: host: importlib_metadata<=7.0.1 must contain a space between the name and the pin, i.e. importlib_metadata <=7.0.1
❌ requirements: host: numpy < 2.0 should not contain a space between relational operator and the version, i.e. numpy <2.0
❌ requirements: host: twine < 5.0.0 should not contain a space between relational operator and the version, i.e. twine <5.0.0

For recipe/meta.yaml:

ℹ noarch: python recipes should usually follow the syntax in our documentation for specifying the Python version.

For the host section of the recipe, you should usually use python {{ python_min }} for the python entry.
For the run section of the recipe, you should usually use python >={{ python_min }} for the python entry.
For the test.requires section of the recipe, you should usually use python {{ python_min }} for the python entry.
If the package requires a newer Python version than the currently supported minimum version on conda-forge, you can override the python_min variable by adding a Jinja2 set statement at the top of your recipe (or using an equivalent context variable for v1 recipes).

ℹ PyPI default URL is now pypi.org, and not pypi.io. You may want to update the default source url.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12306543527. Examine the logs at this URL for more detail.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.
I do have some suggestions for making it better though...
For recipe/meta.yaml:

ℹ Use importlib-metadata instead of importlib_metadata
ℹ noarch: python recipes should usually follow the syntax in our documentation for specifying the Python version.

For the host section of the recipe, you should usually use python {{ python_min }} for the python entry.
For the run section of the recipe, you should usually use python >={{ python_min }} for the python entry.
For the test.requires section of the recipe, you should usually use python {{ python_min }} for the python entry.
If the package requires a newer Python version than the currently supported minimum version on conda-forge, you can override the python_min variable by adding a Jinja2 set statement at the top of your recipe (or using an equivalent context variable for v1 recipes).

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12306694962. Examine the logs at this URL for more detail.

@conda-forge-admin, please rerender


Round edges when using header

Problem
When using layout>name as header the top corners are not rounded like the bottom corners when using a custom theme. When using Layout>name as inside all the corners are rounded like they should be according to the theme.

Suggested feature / solution
Make the header bar reference corner rounding from themes.
Thanks for making an EPIC card!!

@OckertM thanks for opening the issue and for the nice words!
I added border-radius in version 1.0.1. You can customize it by setting the time-picker-border-radius theme variable, but it should get the default border radius from your theme.