Add isbn-verifier exercise

Problem specification and test data

Thanks @tejasbubane, I've just squashed my changes into ce73506 :D
I'm not familiar with nextercism so I just used the same unlocked by as the one in the ECMAScript track. I've noticed both unlocked by and difficulty differ from the Go track. What do you / any other reviewers think?

Thanks @tejasbubane, I've just squashed my changes into ce73506 :D

Awesome!

I'm not familiar with nextercism so I just used the same unlocked by as the one in the ECMAScript track. I've noticed both unlocked by and difficulty differ from the Go track. What do you / any other reviewers think?

Honestly, even I am not familiar with that. I will leave it up for other reviewers to have a look. Apart from that, this one looks pretty good to go! Thanks for the contribution 👍


Layer Export - select all defaults when it shouldnt

Select all checkbox is selected however layer is not (only one layer present). You can replicate by trying to export a layer(select all) and then exporting a feature.  Come back to layer and select is still checked.

Could you please explain this more? I don't think I understand what you are saying. Are you using 'feature' correctly, or did you mean layer?
My testing was:
-Run query
-use export button (no checkboxes selected)
-clicked the 'all' box
-exported
-click export toggle again
-Nothing was checked
I also did
-Run query
-use export button (no checkboxes selected)
-clicked the 'all' box
-exported
-exported a POINT
-Clicked export toggle again
-Nothing was checked

this is OBE..closing


Managed Identity seems to be failing for Azure Container Apps for secret manager integration

Where is the problem?
The current way to use Managed Identity didn't specify specific Azure products in the way to set  [Managed Identity] in Kong(https://docs.konghq.com/gateway/latest/kong-enterprise/secrets-management/backends/azure-key-vaults/#configure-azure-key-vaults). We have tested with Azure Container App and it seems like its not working for Azure Container apps.
From lua-resty-azure we only mentioned Managed Identity only being tested for Azure Instance(VM) or Azure Function App
What is your suggestion?
Would be good to have a mention in the doc on what have been tested with Managed Identity here in the documentation.
Code of Conduct and Community Expectations

[X] I agree to follow this project's Code of Conduct
[X] I agree to abide by the Community Expectations

@khaikong I can't access the link to salesforce that you provided. Is the doc update that needs to be added simply that:
"Secrets management via Azure Vault is supported on Azure Instance (VM) and the Azure Function App.
It is not currently supported on Azure Container App."

@lena-larionova my bad. I fixed the link. It not supposed to be a salesforce link.

I can't access the link to salesforce that you provided. Is the doc update that needs to be added simply that:

"Secrets management via Azure Vault is supported on Azure Instance (VM) and the Azure Function App.
It is not currently supported on Azure Container App."

Yes.


Summon-Block is summoning on any trigger state change.

The function public void trigger(EnumTriggerState state) is missing a if-check to prevent summoning if the trigger-state is anything but ON.
This line has to be added at the beginning of the function:
if( ! on.equals(EnumTriggerState.ON) return;

Fixed


Update README.md

As the JSON isn't valid and GH borks visually at it, I suggest not tagging it as JSON so it renders plaintext

🤷🏽 I thought it was pretty 🤷🏽♂

I thought you'd made a typo in your JSON 🤷

Nah, I was just too lazy to convert it to JS 😅


Add support for datetime2 encoding

when sending a param as datetime2 type or when sending a datetime where
{{_,_,_},{_,_,_,us}}
where us is a number > 0 the driver attempts to encode as a string type instead of datetime2.

pr #12

:bowtie:


RemoteFX is not enabled

Right after installation I got this message:
RemoteFX is not enabled.
Please enable it for lower bandwidth overhead.
See: https://github.com/neutrinolabs/xrdp/issues/1026

Issue solved by editing the RDP file:
connection type:i:6
session bpp:i:24


Add unit tests for gpu functions

This PR adds unit tests that compare the cpu and gpu versions of the functions implemented in gpu_specter.extract. All of the gpu functions in gpu_specter.extract.gpu have been updated to match the interface and functionality of their versions in gpu_specter.extract.cpu.
There are just a few functions left that do not have a gpu version, notably, gpu_specter.extract.cpu.ex2d_padded and numpy.polynomial.legendre.legval.
The new gpu_specter.extract.both.xp_ex2d_patch is a version of gpu_specter.extract.cpu.ex2d_patch that is compatible with inputs from either numpy.ndarray or cupy.ndarray.
The figure below compares the runtime for a single patch using the numba optimized gpu_specter.extract.cpu.ex2d_patch, the new xp_ex2d_patch with cupy.ndarray inputs, and the newxp_ex2d_patch with numpy.ndarray inputs. The projection matrix shape for this patch corresponds to A4.shape = (ny, nx, nspec, nwave) = (102, 46, 5, 50). The benchmark was performed in a jupyter notebook on a cori shared gpu node.

The fastest runtime is in the 20ms range, is the plan to have multiple patches?  I'm happier when I see the fastest implementation have enough work to take a few seconds.  Maybe that's a separate test?

Thanks.

I see that you have wrapped cupy imports in try/except blocks so that the code continues to be useable without cupy (and I checked this on my laptop) — good.
At the level of testing, do we have a clean way to test if the host machine has a GPU installed (not just cupy installed)?  If cupy is installed and we're on a machine that has a GPU, I think we should run the tests without requiring special user options.  But if cupy is installed and a GPU isn't available (like @lastephey mentioned if we install cupy as part of desiconda), then it shouldn't count as a failed test.

put another way: if a GPU is installed, it should run additional tests to compare GPU and CPU, but also continue to run the same CPU-based tests.  It's not clear to me if that is what happens here, or if the presence of a GPU causes it to run a different set of tests.

For the future: At the level of running spex, I'd prefer to keep cpu as the default and require the user to do something special to trigger it to use GPUs.  IIUC, this PR is laying the groundwork for GPU extractions but hasn't yet propagated all the way up to spex yet (ok).
Your PR post emphasized the timing with a plot, but to confirm: do the CPU/GPU tests all pass, for the functions that they compare?
It's interesting to see the per-patch timing, but I agree with Rollin that our main timing benchmarking comparisons should focus on larger amounts of work once the GPU wrappers around ex2d_patch are ready.

@rcthomas A typical full frame extraction with this patch size would require about ~4700 patches. The current benchmark for a full frame extraction with this patch size on cori haswell node with 32 mpi ranks is around 1 min.
@lastephey Those are good points. Currently, the only entry point to the cupy enabled functions is through the test suite which will have a problem if it's run on non-gpu node in environment with cupy and numbda.cuda. I can add a simple test can be added to the try-except import block to solve that problem.
This PR does not change the default behavior of the code. A developer would have to explicitly import a function from the from the gpu_specter.extract.gpu module or from the gpu_specter.extract.both module and pass arguments of the appropriate array type. I have a hard time imagining a developer would ever want to completely replace numpy with cupy in heterogenous computing environment so I agree that we would not want to do that.
I think the idea is that a user would pass the --gpu argument to spex to specify they want to use the gpu version (like how the --mpi argument works).

@sbailey I think my previous reply addresses most of your points. Sorry I didn't see it before I posted.
Regarding CPU/GPU tests, yes, I forgot to mention that they are all passing.
Setup gpu test environment:
ssh cori.nersc.gov
cd desi/gpu_specter
git checkout implement-gpu-extraction
source activate desi-gpu
export PYTHONPATH=$(pwd)/py:$PYTHONPATH
module load esslurm python cuda
salloc -C gpu -N 1 -t 30 -c 10 -G 1 -A m1759

Run the test suite:
dmargala@cgpu11:~/desi/gpu_specter> srun python -m unittest --verbose gpu_specter.test.test_suite
test_basics (gpu_specter.test.test_ex2d_patch.TestEx2dPatch) ... ok
test_compare_specter (gpu_specter.test.test_ex2d_patch.TestEx2dPatch) ... skipped 'specter not available'
test_compare_xp_cpu (gpu_specter.test.test_ex2d_patch.TestEx2dPatch) ... ok
test_compare_xp_gpu (gpu_specter.test.test_ex2d_patch.TestEx2dPatch) ... ok
test_basics (gpu_specter.test.test_projection_matrix.TestProjectionMatrix) ... ok
test_compare_gpu (gpu_specter.test.test_projection_matrix.TestProjectionMatrix) ... ok
test_compare_specter (gpu_specter.test.test_projection_matrix.TestProjectionMatrix) ... skipped 'specter not available'
test_basics (gpu_specter.test.test_psfcoeff.TestPSFCoeff) ... ok
test_compare_gpu (gpu_specter.test.test_psfcoeff.TestPSFCoeff) ... ok
test_compare_specter (gpu_specter.test.test_psfcoeff.TestPSFCoeff) ... skipped 'specter not available'
test_gpu_basics (gpu_specter.test.test_psfcoeff.TestPSFCoeff) ... ok
test_basics (gpu_specter.test.test_spots.TestPSFSpots) ... ok
test_compare_gpu (gpu_specter.test.test_spots.TestPSFSpots) ... ok
test_compare_specter (gpu_specter.test.test_spots.TestPSFSpots) ... skipped 'specter not available'

----------------------------------------------------------------------
Ran 14 tests in 4.087s

OK (skipped=4)

I also the test suite in an environment with specter and confirmed that those tests still pass as well.

It looks like there is a cupy.is_available() function that returns True for me on a gpu node and False on non-gpu node using same conda environment with cupy. I'll update the try-except blocks in the test suite to use this.
And just to clarify, the presence of the cupy/numba.cuda runs additional tests. I implemented the gpu tests in the same fashion as the specter comparison tests.

@sbailey To answer your question about a non-cupy way to check for the GPU, the best thing I can think of is the command nvidia-smi. It's a little messy but this will tell you if you have access to an (NVIDIA) gpu.
There could be something like:
import subprocess

subprocess.run(["nvidia-smi"])

For a GPU the output is:
Fri May 29 10:59:24 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 440.33.01    Driver Version: 440.33.01    CUDA Version: 10.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Tesla V100-SXM2...  On   | 00000000:1A:00.0 Off |                    0 |
| N/A   29C    P0    39W / 300W |      0MiB / 16160MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

And without a GPU the output is:
Traceback (most recent call last):
  File "is_there_gpu.py", line 3, in <module>
    subprocess.run(["nvidia-smi"])
  File "/usr/common/software/python/3.7-anaconda-2019.10/lib/python3.7/subprocess.py", line 472, in run
    with Popen(*popenargs, **kwargs) as process:
  File "/usr/common/software/python/3.7-anaconda-2019.10/lib/python3.7/subprocess.py", line 775, in __init__
    restore_signals, start_new_session)
  File "/usr/common/software/python/3.7-anaconda-2019.10/lib/python3.7/subprocess.py", line 1522, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'nvidia-smi': 'nvidia-smi'

It's not "clean" and would require a little work to parse, but it should return the presence of a GPU independent of framework (with the caveat that we have done module load cuda.)


wvd

[Enter feedback here]

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

ID: 80970cb8-947b-60cb-d28d-f0197cebb803
Version Independent ID: 031f04e5-03fb-09c7-c7ab-25676ec6bc88
Content: Troubleshoot Remote Desktop client Windows Virtual Desktop - Azure
Content Source: articles/virtual-desktop/troubleshoot-client.md
Service: virtual-desktop
GitHub Login: @Heidilohr
Microsoft Alias: helohr

Is this resolved?

Hi yes, sorry raised in error.
On Fri, 22 May 2020 at 01:39, Karishma Tiwari - MSFT <
<EMAIL_ADDRESS>wrote:

Is this resolved?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/55408#issuecomment-632416014,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE3EUXUTCJKK6IHY76PMVHDRSXCTLANCNFSM4NHEWGQA
.


Encoding Issue on TempBlob.Blob.CreateInStream ?

Hi, my first post here, I will try my best, I think I found a bug, but maybe I'm doing something wrong too.
I'm trying to export data to a csv file through the csvbuffer in an extension for Sandbox on http://businesscentral.dynamics.com, but I can't get the encoding to be Windows instead of UTF-8 no matter what I do.
This means my Danish characters (ÆØÅ) get messed up if you try and open the file in eg. Excel, as the default expected encoding is Windows. It works if I import it as text file and manually select UTF-8 as encoding.  I thought TextEncoding::Windows should fix it, but it doesn't work for me.
Example below, am I doing something wrong, or is it a bug?

            csvbuffer: Record "CSV Buffer" temporary;
            tempblob: Record TempBlob temporary;
            InStr: InStream;
            ClientFileName: Text;
            begin
                csvbuffer.InsertEntry(1,1,'THIS IS DANISH LETTERS:ÆØÅæøå');
                csvbuffer.SaveDataToBlob(tempblob,';');
                TempBlob.Blob.CreateInStream(inStr,TextEncoding::Windows);
                ClientFileName := 'encoding.csv';
                DownloadFromStream(InStr,'Download','','*.csv|*.csv',ClientFileName);
            end;

Hi @podgaard ! I think the documentation is outdated. The part about If you set the text encoding to Windows, you can import and export text files that are based on the Windows codepage on the user’s computer. only applies if the user is running the Windows client. If the user is using the web-client and you set the text encoding to Windows, the server's default encoding is used, which is English.

Hi @podgaard ! I think if you try to put Textencoding on outsream then it should work, i did this on NAV 2018 webclient using AL extension. earlier using your code I was getting the same challenge but if you put the encoding on OutStream then it is working fine for me , also I don't have SaveDataToBlob to function in my build so you might have to change the code there it self or may be you can do that by making a replica of this function.
@atoader : if this work then we can put this on the W1 build if possible to avoid this issue in future.

@rishiaurrishabh  Thanks this helped and solved my issue !
So I guess my request if anything, would be to make csvbuffer.SaveDataToBlob have a parameter that sets the encoding, like you can when you write text to the OutStream.
@atoader
Thanks also for response.
@all I will close this issue I guess.


Small shift of resized thumbnail?

https://raw.githubusercontent.com/nodeca/sharp-resize-test/master/images/calendar.gm.jpeg
https://raw.githubusercontent.com/nodeca/sharp-resize-test/master/images/calendar.sharp.jpeg
https://raw.githubusercontent.com/nodeca/sharp-resize-test/master/images/calendar.pica.jpeg

Open images in separate tabs, and switch between those. I don't see difference between gm & pica, but sharp is slightly shifted. Can anyone confirm or negate? I'm not 100% sure that everything was done right at my side.
https://github.com/nodeca/sharp-resize-test - here are scripts to build test samples.

Hello, when sharp switched to use libvips' new reduce-based resizer, I was seeing some small round down errors.
Are you able to remove the + 0.1 from the end of pipeline.cc#L262 to see if this helps?
Alternatively, perhaps try + 0.05 as I believe a small addition is required to help prevent round down later. vipsthumbnail performs a similar addition.

@lovell, I tried removing + 0.1, and I'm afraid it has no effect at all (the code above actually uses fixed height/width, tried removing + 0.1 from lines 224-225 - same thing).
I can confirm that this glitch appeared in 0.15.0, in 0.14.1 there was no such shift.

Zooming in, it looks like sharp is stretching slightly vertically. The pen at the far right does not move if you flip between sharp and pica, but the pen at the bottom moves up.
Could sharp be giving slightly different numbers to reduceh and reducev due to rounding?

IMHO horizontal shift exists too.
Could it be fractional miss (or error) after 1D box passes? I remember, we spend a noticeable time with tiler to properly calculate pixel compensations for lanczos filter init.

Thanks all for the feedback - I hope to take a closer look at this over the weekend.

Quick update: I've found the source of this small error and will commit the fix for it later today along with (an attempt to create) a test case to prevent it occurring again.
In summary, after the initial box shrink operation, the x and y factors are recalculated independently but then erroneously locked to the same value. This means if the shrink operation rounded up along one dimension, it could then also round up the reduce operation on the same axis, leading to a slight stretching effect.

Commit 7d261a1 should improve things. Thanks for reporting this!

v0.15.1 now available.


Static List of Servers Option?

I know Exhibitor doesn't support a static list of Zk servers out of the box, but before I go ahead and write my own backend to support this feature (where I would present 'n' number of Zk hosts to Exhibitor and it would configure the zoo.cfg with those IPs) I wanted to know if anyone had suggestions for hacking this in with the currently available backends?
I've tried doing a shared fs where I manually edit the properties but of course exhibitor will just overwrite that. I'm not sure if this is a tunable feature and I couldn't find anything in the docs/manpage that would enable something like that.
Any suggestions greatly appreciated.
Thanks.

@malnick
Not sure of your deployment scenario, but I am in AWS with chef deployments. I set a tag on the instances "zookeeper" with cloudformation. Then, in Chef on each box, I query AWS for all instance IPs with that tag, then populate the exhibitor.properties file with these IPs formatted correctly. Good to go!

Closing this for now. You can re-open if there are further comments.


Apply tenantId on every insert.

Hi, first of all thank you for this library. It makes query side of implementing multi tenancy very easy.
I have a question regarding applying multi tenant on insert.
I was wondering if there was a way to set a tenantId  on every insert? Currently, I have implemented this feature by overriding the saveChanges method see below.
public override int SaveChanges()
{
         var entries = context
                .ChangeTracker
                .Entries<ITenant>()
                .ToList();

        foreach (var entityEntry in entries)
        {
            entityEntry.Property(m => m.TenantId).CurrentValue = _tenantId;
        }

   return base.SaveChanges();
}

But the problem I have with this is that the consumer must override SaveChanges method in dbcontext. Unlike the Filter extension method. The filter extension method can be applied outside of the dbcontext method.
Is there a similar way of achieving the saveChanges function using extension method?

Hello @john1452 ,
It's definitely possible to create a feature for this but unfortunately, we don't have the time on our side at this moment for such development.
So you will need to look if some other libraries already support this features
Best Regards,
Jonathan

Hi Jonathan,
Thanks for the reply. Off the top of your head, can you think of a way this can be implemented? I am just looking for a hint to start.
If I figure it out I will definitely submit a PR.

Hello @john1452 ,
Which version of Entity Framework are you using? Just to make sure that's possible ;)

Thanks Jonathan,
I am using Entity Framework Core 2.1.

Damn, it makes thing harder since EF Core has not added interceptor yet.
I'm not sure if that would be possible in EF Core.
Unless your users inherits from your context class or use your own version of the SaveChanges method as we do for SaveChanges(audit), it would be hard.
I believe the easiest way to start is to add an extension methods SaveChangesTenant (or whatever you call it). At least you will own the method and be able to do whatever you want.
If you find out a way to hook inside the SaveChanges method, I would be happy to know how.
Best Regards,
Jonathan

Thanks for your input Jonathan.
Looks like in 2.1 RC they have added events to change tracker.
ChangeTracker.StateChanged
I am going to play around with this for now.

Oh wow,
That will make TenantId, auditing field, soft deleted, etc. very easy to do with this event ;)
Thank a lot for sharing, I have added a note to look at it on my side.
Best Regards,
Jonathan


test-branch/execute-job/wrong-commit-sha-on-pr/901709d9-2720-4976-bf96-b54520e5833f

PR for testing 25f97781c3e8baef118aa260067f355ca4f866aa

/canonical/self-hosted-runners/run-workflows 931ad21dd9ace68aaa0a7d341e94de96ad93fa6b


Create dependabot-bundler-nokogiri-1.11.7

[x] Have you followed the contributing guidelines?
[ ] Have you explained what your changes do, and why they add value to the Guides?

Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.

Yodag7354:main

Yodag7354:main

@bungfut


Transactions history is empty after manual refresh

Description
Transactions history is empty after manual refresh
Environment

Browser: Chrome
Wallet: MetaMask
Safe: any
Environment:

production (any network )

Steps to reproduce

Go to history list on any network
refresh the page manually
Current result: the list is empty

https://user-images.githubusercontent.com/338622/144252991-c65125c6-a4a8-48d2-9a2f-5bbf1744391d.mov
Expected result
the list should be refreshed and all transactions from history should be displayed
Workaround
Switch network in the app and come back to the safe history list

@liliya-soroka fixed in #3087


EmojiIndex include option doesn't seem to respect order

new EmojiIndex(emojiData,
  include: [
    "foods",
    "smileys",
  ]
})

will put smileys before foods

@Brecert I've just pushed a version 7.0.6 with a fix, please check if it works for you.


Seems that path.sh doesn't contain bin under libtorch/fc_base/openfst-build

Cannot find binary files like fstcompile after calling . ./path.sh
I want to build the WFST in stage 7 in aishell/s0 script by calling ./run.sh --stage 7 --stop-stage 7 (previous steps have been completed). But the command reported an error:
tools/fst/compile_lexicon_token_fst.sh:行59: fstcompile：未找到命令
tools/fst/compile_lexicon_token_fst.sh:行60: fstarcsort：未找到命令

However I have followed the Installation(Training and Developing) to build required binary files about fst.
It's seems that the path.sh only contains:
export OPENFST_PREFIX_DIR=${BUILD_DIR}/../fc_base/openfst-subbuild/openfst-populate-prefix

To Reproduce
Steps to reproduce the behavior:
0. Follow the Installation(Training and Developing) to build required binary files.

Go to 'wenet/examples/aishell/s0'.
Call . ./path.sh.
Type fstcompile.

Expected behavior
fstcompile cannot be found.
Solution
Edit the path.sh to be:
export WENET_DIR=$PWD/../../..
export BUILD_DIR=${WENET_DIR}/runtime/libtorch/build
export OPENFST_PREFIX_DIR=${BUILD_DIR}/../fc_base/openfst-subbuild/openfst-populate-prefix
export OPENFST_BIN=${BUILD_DIR}/../fc_base/openfst-build/src
export PATH=$PWD:${BUILD_DIR}/bin:${BUILD_DIR}/kaldi:${OPENFST_PREFIX_DIR}/bin:${OPENFST_BIN}/bin:$PATH

# NOTE(kan-bayashi): Use UTF-8 in Python to avoid UnicodeDecodeError when LC_ALL=C
export PYTHONIOENCODING=UTF-8
export PYTHONPATH=../../../:$PYTHONPATH

Maybe, you need modify the cmake param. I follwed the ReadME of this repo to make the runtime, the fstcompile also doesn's exists.

Build the runtime with -DGRAPH_TOOLS=ON before you use it.

I have finish the following the commands, while the problem remain.
# runtime build requires cmake 3.14 or above
cd runtime/libtorch
mkdir build && cd build && cmake -DGRAPH_TOOLS=ON .. && cmake --build .

So I manually add ${BUILD_DIR}/../fc_base/openfst-build/src to the PATH.


Dev.e.k.bug2

going to work with second problem.

working on my conflicts which occurred while creating pull requests.


Fix bundling/path errors, sidecar support, iOS/Android simulator support, asset hotreload fixes, serverfn hotrelad, native tailwind support

Attempt fixes for:

[x] https://github.com/DioxusLabs/dioxus/issues/2526
[x] https://github.com/DioxusLabs/dioxus/issues/2386
[x] https://github.com/DioxusLabs/dioxus/issues/2379
[x] https://github.com/DioxusLabs/dioxus/issues/2429
[x] https://github.com/DioxusLabs/dioxus/issues/2176
[x] https://github.com/DioxusLabs/dioxus/issues/232
[x] https://github.com/DioxusLabs/dioxus/issues/2692
[x] https://github.com/DioxusLabs/dioxus/issues/2509
[x] https://github.com/DioxusLabs/dioxus/issues/2312
[x] https://github.com/DioxusLabs/dioxus/issues/2093
[x] https://github.com/DioxusLabs/dioxus/issues/2762
[x] https://github.com/DioxusLabs/dioxus/issues/2344 (because we're joining from cwd instead of the asset dir)
[x] https://github.com/DioxusLabs/dioxus/issues/2487
[x] https://github.com/DioxusLabs/dioxus/issues/2155
[x] https://github.com/DioxusLabs/dioxus/issues/2304

Misc cleanup:

[x] fix all cache thrashing
[x] get mobile + fullstack working
[x] change fullstack to be a binary yes/no thing
[x] helpful warnings when running fullstack w/o server functions
[x] refactor CLI staging to include bundles (and thus, bundled hotreloading)
[x] lay groundwork for #2754
[x] adds run command (like serve without the TUI)

Currently cutting out:

[x] parse env!() as std::env::var or meta tags in html
[x] drop dep count on cli-config
[x] dioxus-hotreload should be dioxus-devtools

Pending to be cut out:

[x] change "hotreload" crate to "devtools"
[x] adds http-server command
[x] adds doctor command for tooling
[x] rename "hotreload" feature to "devtools"

Cut out of this PR (and merged):

[x] move hotreload context into core-types
[x] move bubbles fn into core-types
[x] new core-types crate
[x] new isrg crate https://github.com/DioxusLabs/dioxus/pull/2969
[x] remove oidc example (wasn't compiling) https://github.com/DioxusLabs/dioxus/pull/2966
[x] rsx-hotreload is a dedicated crate instead of a feature flag https://github.com/DioxusLabs/dioxus/pull/2971
[x] hoist project examples up to example-projects folder https://github.com/DioxusLabs/dioxus/pull/2959
[x] Clean cruft from web crate https://github.com/DioxusLabs/dioxus/pull/2957
[x] remove old/unused deps
[x] cut down deps and compile times by 50% (other half, manganis, still wip)

Cut out and pending merge:

[x] eval is behind document and not a "free" function
[x] move Title/Stylesheet/Link behind document module (ie document::Title {}
[x] completely change launch function to not warn us with deprecation lints
[x] router uses document navigation abstraction
[x] remove channel Evalutor (todo: move this to sdk? separate crate?)
[x] new dioxus-document crate (pulled out of html)
[x] remove websys from html (via newtypes in web)
[x] remove js gen from dioxus-html

Punted:

[ ] https://github.com/DioxusLabs/dioxus/issues/1454
[ ] https://github.com/DioxusLabs/dioxus/issues/451
[ ] https://github.com/DioxusLabs/dioxus/issues/2754
[ ] https://github.com/DioxusLabs/dioxus/issues/1474
[ ] https://github.com/DioxusLabs/dioxus/issues/2718

We have many "dioxus rebuilds too frequently errors" and mostly it's due to cache thrashing because of env!() in build scripts and rustflags being incompatible.

Doing a bunch of splitting to get heavy crates out of our build script crate graph and generally minimize the number of feature flags on any one crate.
cargo can be pretty aggressive with duplicating dependencies in the graph if you don't get features right, so did as much as possible to get websys only into the web crate, among tweaks.
That's making the diff of this PR huge.
That, and there's generally a lot of cleanup that needed to happen.
I ripped out the evaluator channel stuff... I don't think we should support something so bespoke, especially given how hard it is to properly support across all the platforms.

Getting close to done here, lots and lots of cleaning old code and fixing uses of various async tidbits.
At least the diff is huge :)

Needed to get iOS bundles working properly in manganis and decided to add the ~20 or so lines to get ios support :)
https://github.com/user-attachments/assets/0db44709-2e55-4fa5-8442-7e8c77fa4a77

opening up to get checks, done with everything CLI-related, need to decide what to do with manganis.
will likely just push changes back into the manganis repo and only apply the fixes from this PR


HDDS-6555. Container Deletion should not depend on usedBytes being zero

What changes were proposed in this pull request?
Container BlockCount and UsedBytes have not been not reliable. HDDS-5359 fixes the issues with how blockCount and usedBytes are updated. HDDS-6234 provides a Container Inspector and Repair tool to fix existing containers with wrong blockCount and usedBytes values in container metadata.
Even after the fix in HDDS-5359, usedBytes cannot be trusted to be an accurate representation of the actual number of bytes in the container. This is because usedBytes is updated in memory first when a chunk is written and then updated in DB during the putBlock call. Also, there could be orphaned chunks in the container which contribute to the usedBytes.
After HDDS-5359,blockCount is reliable for new containers. So SCM should delete a container based on the blockCount = 0 and not check for usedBytes.
Also, when a DN receives a delete container command from SCM, it should double check that there are no valid blocks in the container before deleting it. This is an extra check on the DN side to avoid deleting a non-empty container.
What is the link to the Apache JIRA
(https://issues.apache.org/jira/browse/HDDS-6555)
How was this patch tested?
(Please explain how this patch was tested. Ex: unit tests, manual tests)
(If this patch involves UI changes, please attach a screen-shot; otherwise, remove this)

Thanks for the fix @hanishakoneru. Merging since both datanode and SCM side tests have been added to address the comments.


Add note to triage process about the chocolatey-community user

What New Or Updated Would You Like To See?
A note/warning at the triage process noting that for packages that the chocolatey-community user maintains, issues should be opened at the package source repository, not sent to the site admins.
Why Is It Needed?
There have been a reasonable number of messages sent to site admins about packages maintained by the chocolatey-community user, which wastes the time of all involved. It would be good to redirect at least some of them to the correct place in the docs.
Additional Context?
N/A

I don't feel we should add a note specifically for this user. The package triage process specifically asks users, in step 2, to raise an issue or PR using the package source. That applies for all users.


Yard server crashing when serving docs for one of my modules

You can see the problem when you go here.
Locally, when I run yard server --reload, it crashes as well, and I get this backtrace:
[2011-12-17 11:38:23] ERROR NoMethodError: undefined method `parameters' for #<yardoc module VCR>
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/code_objects/base.rb:331:in `method_missing'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/templates/default/tags/html/tag.erb:13:in `block in _erb_cache_32'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/templates/default/tags/html/tag.erb:5:in `each'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/templates/default/tags/html/tag.erb:5:in `_erb_cache_32'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:238:in `erb'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/templates/default/tags/setup.rb:24:in `tag'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/templates/default/tags/setup.rb:33:in `param'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:314:in `render_section'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:210:in `block (2 levels) in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `each'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `block in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:345:in `add_options'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:206:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:228:in `block in yieldall'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:359:in `with_section'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:228:in `yieldall'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/templates/default/tags/html/index.erb:4:in `_erb_cache_15'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:238:in `erb'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:316:in `render_section'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:210:in `block (2 levels) in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `each'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `block in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:345:in `add_options'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:206:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:91:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:319:in `render_section'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:210:in `block (2 levels) in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `each'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `block in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:345:in `add_options'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:206:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:91:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:319:in `render_section'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:210:in `block (2 levels) in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `each'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `block in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:345:in `add_options'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:206:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:91:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:319:in `render_section'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:210:in `block (2 levels) in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `each'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `block in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:345:in `add_options'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:206:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:228:in `block in yieldall'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:359:in `with_section'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:228:in `yieldall'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/templates/default/layout/html/layout.erb:22:in `_erb_cache_0'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:238:in `erb'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:316:in `render_section'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:210:in `block (2 levels) in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `each'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:207:in `block in run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:345:in `add_options'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:206:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/template.rb:91:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/templates/engine.rb:88:in `render'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/code_objects/base.rb:442:in `format'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/server/commands/base.rb:141:in `render'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/server/commands/display_object_command.rb:11:in `run'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/server/commands/base.rb:95:in `call'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/server/commands/library_command.rb:49:in `call'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/server/router.rb:133:in `route_docs'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/server/router.rb:108:in `route'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/server/router.rb:54:in `call'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/yard-0.7.4/lib/yard/server/rack_adapter.rb:51:in `call'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/rack-1.1.0/lib/rack/content_length.rb:13:in `call'
	/Users/myron/.rvm/gems/ruby-1.9.2-p290@vcr/gems/rack-1.1.0/lib/rack/handler/webrick.rb:48:in `service'
	/Users/myron/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
	/Users/myron/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
	/Users/myron/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'

It works fine for the other classes/modules in my project, and it used to work fine for this module.  I'm not sure which doc comments broke it, but you can see what the current comments are here.
Any ideas how to fix or work around this?

Does this always happen? I can't reproduce it with your repo. Note that the yard server --reload command does not delete elements that you remove from code between reloads, so sometimes you will see methods in the docs that you had previously removed or renamed. This is a design flaw in the server, but the server reload feature is just meant for quickly adding docs, not changing code, so it works well for that use case. If you do end up deleting/moving things, you can quickly delete the .yardoc db and restart the server when you make these kinds of changes. If you delete the .yardoc and restart, does it happen again?

I deleted the .yardoc folder and that fixed it.  Sorry about the noise :(.

No problem. This is also something we should doc better!

I've got repro steps for this now:
cd vcr
git checkout 7e790d655a4eaf673d742eed10208702f4ee7109
rm -rf .yardoc
rm -rf doc
yard server --reload

Browse to the doc page for the VCR module and you'll get the error.  The very next commit fixes the issue.  Apparently the extra comments (that I didn't mean to add and commit) cause the issue; I removed them when I noticed them, not realizing it was related to the error I was getting, so when you tried to repro the error it didn't occur anymore.
This isn't really a problem for me anymore (since the problematic comments have been removed) but it seems like a bug in YARD, so I reopened the issue.

Thanks for managing to reproduce this. Just a minor issue with rendering, it seems. Fixed!

Cool, thanks for the quick fix!


ceph.conf template has defaults that override better defaults in jewel

There are a bunch of tunings and settings in ceph.conf that make sense to apply to older version of ceph, but are replaced by better defaults in jewel. As they change, it would be better to let the newer ceph defaults come into effect, instead of always overriding them in ceph.conf.
It would be great to have a more minimal ceph.conf for jewel and later - perhaps just via a 'no tuning' option - that does not put any of 'rbd default', 'rbd cache', 'osd *', 'filestore *', 'debug *' settings into ceph.conf (with the exception of setup config, like journal size and mkfs options if those are still needed).

perhaps its better to have 'no tuning' which in general doesn't set any defaults for any section and let the user do all the setting.

@jdurgin thanks for raising this one up.
Actually I've been thinking of removing entirely most of the default since they tend to pollute a bit the ceph.conf. I'm saying 'pollute' because we recently release the ability to dynamically overwrite the content of the ceph.conf using simple variables, see: https://github.com/ceph/ceph-ansible/blob/master/group_vars/all.sample#L306-L321
The reason why we have so many defaults is that at some point I wanted to highlight some of the best config options that users might want to tweak.
If I still haven't reworked this part is that changing the ceph.confwill trigger an unnecessary restart of all the ceph daemons... Moreover, this will reset most the settings that users implemented.
Perhaps I can do this for the next release of ceph-ansible and then add a major warning for all the running users.
Let me give a shot at purging the ceph.conf a bit, will put you in cc for review.


Add the ability to untabify or tabify on open also

With a confirmation dialog that can be dismissed forever.

This was a silly idea :laughing:

Hi @lee-dohm , question about why this was a silly idea?  I was thinking of implementing this exact feature.

Because if you have tabify or untabify on Save turned on, then you can simply click the Save key and it's done. It doesn't really offer much benefit.

Oh, that's true.  What I'm trying to do is view the doc with tabs (displayed as two spaces) but persist the file to disk with 4 spaces instead of tabs.  This is because my team uses 4 space indentation but I want to work with the files as if they were indented with two spaces.  I already did a quick hack to this package to display tabs as two spaces and untabify into 4 spaces.  But I'd like to have this happen automatically between editor and disk without having to manually invoke the commands.  Do you think this feature would be useful to some people?  If so I might make the change along with configuration settings and submit a PR for you to review?

I can definitely see how that feature would be useful. That feature is beyond the scope of this package though. This package is designed to keep the in-memory representation and the on-disk representation in sync while making corrections to the file contents. Your feature is essentially to have a completely separate in-memory representation from the on-disk representation (a concept that I explore more thoroughly in a topic on Discuss). This would exponentially increase the complexity of the package, which I'm not prepared to take on the maintenance of :grinning:
Please feel free to take the code I have here as the basis for your own package though. It sounds like what you have in mind would be a very useful package indeed!

Thanks for offering to let me use your code as a starting point, that was going to be my next question!  It's great you already started a thread on discuss about this exact idea.  I think the degree of ambitiousness for my project for now will be strictly tabs and spaces...but I like your idea about making it wider ranging to a wide variety of style preferences.  After all shouldn't we be all debating important things like our software architecture and not how many spaces there are where?? :)
I'll link to my project back here when I publish it.


Support is_cuda

Something like the following should work
import thunder
import torch

def foo(x):
    if not x.is_cuda:
        x = x.to('cuda')
    return x * x

x = torch.randn(3, device='cpu')
jit_foo = thunder.jit(foo)
o = jit_foo(x)

print(thunder.last_traces(jit_foo)[-1])

Above fails with
  File "/home/kkalambarkar/lightning-thunder/thunder/core/proxies.py", line 1234, in __getattr__
    method: None | Callable = resolve_method(attr, self)
  File "/home/kkalambarkar/lightning-thunder/thunder/core/langctxs.py", line 68, in resolve_method
    method: Callable = ctx.get_method(id, *args, **kwargs)
  File "/home/kkalambarkar/lightning-thunder/thunder/torch/langctx.py", line 40, in get_method
    raise AttributeError(f"The {self.name} language context has no method {id}")
AttributeError: The torch language context has no method is_cuda

Hey @kshitij12345! I'm a new contributor here on Thunder. Would it be okay if I look into this and try to come up with a solution?
Thx,
Shahar

@shaharelys Ofcourse, that'd be really great. Do ping here if you require any pointers.
cc: @nikitaved

@kshitij12345 Hi! I am also a new contributor on Thunder :) I had a quick conversation with @shaharelys regarding this issue and he was ok with me taking this issue. Just wanted to let you know that I'll be working on it! (Thank you Shahar!)
Best,
Kaeun

Hello team! I just wanted to check if I am on the right track regarding this issue. I have read the comments of this issue and tried to do something similar. Just a heads up that I may make trivial mistakes and would love to learn as I go through this. It'll be awesome if anyone can take a look and provide me some guidance! :)

I have checked torch.is_cuda implementation and noticed a couple of things:

I noticed that this can be as simple as checking the tensor's device something like the following (from pytorch)

    @property
    def is_cuda(self):
        return self.device.type == 'cuda'

Also, by doing git grep "def device" (as this will include some kind of 'device' operation), I have found some code that seems relevant in core/devices.py and clang/__init__.py.

I am thinking of adding some kind of is_cuda property in the above files. Would this be an feasible approach? If so, in which file exactly would be an appropriate place to work at? Thank you for your help in advance! (cc. @kshitij12345, @nikitaved )

A thing to note is that this is a property and not a method so we should probably implement it like ndim, numel, shape in TensorProxy.
Ref: https://github.com/Lightning-AI/lightning-thunder/blob/393828fa1dd45b3a9ff695f1bdbf005f5a669e5e/thunder/core/proxies.py#L1177-L1188
Example of is_cuda usage:
>>> torch.randn(3, 3).is_cuda
False
>>> torch.randn(3, 3).is_cuda()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'bool' object is not callable

@kshitij12345 , why would we pollute proxies with this info? Proxies are meant to be device agnostic.

Yeah, ideally we should update only torch/__init__.py with a new torchsymbol. I think updating torchsymbol to work with properties might be useful in future as well to implement other missing properties if any.

Hi @kshitij12345 ! I am reaching out as I am struggling to make some progress regarding this issue. Specifically, I am trying to include an argument is_property(and/or property_name) in torchsymbol and somehow use that as a trigger to create a property. I believe, I have to modify class Symbol 's __call__ method along with some modifications in torch/langctx.py.
Are there any references that you can point at that might help me to expand torchsymbol so that it can work with properties? Or do you have any particular suggestions regarding this implementation?
It seems more intuitive to add this to TorchProxy, however, as per the discussion above, I do think this should be included in torchsymbol. Would appreciate any help you can provide!

@k223kim You are right that we will have to update torch/langctx.py and but I don't think we need to update core/symbol.py.
After a cursory look, I think we need to update torchsymbol in torch/__init__.py
https://github.com/Lightning-AI/lightning-thunder/blob/393828fa1dd45b3a9ff695f1bdbf005f5a669e5e/thunder/torch/__init__.py#L73-L75
And probably add something like register_property (similar to register_method) to torch/langctx.py. I think this will also involve updating LanguageContext class to have a notion of property.
https://github.com/Lightning-AI/lightning-thunder/blob/393828fa1dd45b3a9ff695f1bdbf005f5a669e5e/thunder/core/langctxs.py#L17-L19
I think we should keep it simple for now and update TensorProxy. (We can revisit adding this mechanism in future)
cc: @nikitaved for his opinion.
Apologies for the confusion.

Wow, thank you for the warm welcome with such a detailed explanation @mruberry and @kshitij12345! It really helped me understand how torchsymbol worked with attributes. I have tried out the both methods that @mruberry mentioned above and I think they are working as expected (so cool!). I will open a PR with the second approach as I found more value in extending thunder's capabilities to support different languages.


Support Svelte 5

Svelte 5 has been released. It would be great to get support!

Gotcha, I think the only change needed then is to add ^5.0.0 to the svelte in peerDependencies.


Added bandit checker

Note: This PR is on top of PR #75 - review only the last commit and merge only after that PR

Pull Request Test Coverage Report for Build test-63
Details

6 of 9 (66.67%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.5%) to 24.061%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

zhmc_log_forwarder/version.py
5
8
62.5%

Totals

Change from base Build test-58:
1.5%

Covered Lines:
141

Relevant Lines:
586

💛  - Coveralls


1.12.0 password gets garbled with %< in there

I don't know what sort of magic syntax I used this time but this doesn't work:

create entry with pwd xxs%<
show that entry outputs xxs%!<(MISSING) instead

Fixed in 1.12.1. please upgrade


60 colocated upgrade bugfix

Description
Adds logic to the upgrade_kafka_broker.yml playbook to handle colocated zk and kafka, which when you upgrade in that configuration the kafka package will be upgraded during the zk upgrade and in the case of confluent-kafka-2.12, the package even switches names.
Fixes # (https://github.com/confluentinc/cp-ansible/issues/423)
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Manually tested plaintext 3 node zk colocated w 3 node kafka upgrade
Both confluent_server_enabled: true/false
Ran the install, zk upgrade and kafka upgrade
Checklist:

[ ] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] Any dependent changes have been merged and published in downstream modules
[ ] Any variable changes have been validated to be backwards compatible

FYI...you may need to revisit upgrade_zookeeper.yml, since it's checking for the confluent_common-2.12...if that for somereason doesn't exist...it fails

Basically, if you run upgrade_zookeeper.yml, and it get's through the section of removing confluent_common-2.12..and if you rerun upgrade_zookeeper.yml it will fail because it can't remove the already removed JARs.  I guess I would it expect to not error out in that condition because it can't find those packages....it should just continue the upgrade as normal.

@aglahe @JumaX I can confirm running the upgrade_zookeeper.yml in this branch twice does error out. I'll see what I can do!

Ok @aglahe @JumaX I just tested running zk and kafka upgrades twice w this branch, no errors. Can you please review this pr?


Transform Tree Test

https://github.com/RolandPheasant/DynamicData/blob/447b9c1642f0214fdc4e0a4351a25bb352c2ac1e/DynamicData.Tests/Cache/TransformTreeFixture.cs#L133-L134
was reading up on these tree functions and wondered if this is not supposed to be
        _sourceCache.AddOrUpdate(minion);
        _sourceCache.AddOrUpdate(boss);

ie adding the minion first and the boss second... otherwise I don't see any difference between AddMissingParent() and AddMissingChild()

It has been years since I looked at TransformToTree so off the top off my head I cannot say,


Invalid placeholder alert

When browsing docs, often enough when clicking on links I hit an alert that says:

Invalid placeholder ID or element

Mostly can be reproduced by:

open https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-0.html
click on some older article in ToC, e.g. previous release

I've been seeing this for months but disregarded it due to the migration to new docs, but it seems like I must be the only one seeing it otherwise someone would have reported it already.
Chrome 86, Windows

Mhm, it must be an extension — can't repro in incognito.


Spilling caller save register on helper call that always throws

For every helper call to throw in jit, we spill the register to save them. This is not necessary as we never come back from the helper

After a quick investigation, I think the best solution would be to add an attribute to the helper function in JnHelperMethodList.h that marks the helper as AlwaysThrows
Then in LinearScan::KillImplicitRegs you can check if the instr is a helper call and check the attribute to determine if we should spill callerSave register.
See the current check for bailouts
    // Don't care about kills on bailout calls as we are going to exit anyways
    // Also, for bailout scenarios we have already handled the inlinee frame spills
    Assert(LowererMD::IsCall(instr) || !instr->HasBailOutInfo());
    if (!LowererMD::IsCall(instr) || instr->HasBailOutInfo())
    {
        return;
    }


Can't install

Seems to stop on this: http://imgur.com/zlfa42h

What version of node?

Please download and use a pre-built package here https://github.com/billyvg/pokemon-journal/releases


[UWP] Sync release branch with main

Description
Sync the UWP renderer release branch with main.
This includes a custom.props change and the SVG bug fix.
How Verified
Verified that the Visualizer builds and the SVG test card displays correctly.
Microsoft Reviewers: Open in CodeFlow

@anna-dingler your target branch is main, is that what you're intended?:)


Documentation and Code Organization Improvements

This pull request aims to enhance the documentation and code organization of the Strictus class to improve clarity, maintainability, and developer experience. The changes introduce comprehensive PHPDoc comments, stricter typing, and better method grouping to facilitate understanding and usage of the class.
Changes Made

Added detailed PHPDoc comments to each method, providing clear descriptions, parameter types, and return types.
Reorganized the methods to follow a consistent pattern, placing the primary method before its nullable counterpart.
Introduced type declarations (mixed, bool, string, array) for method parameters to enhance type safety.
Enhanced code readability through proper spacing and indentation.

Please review the proposed modifications, and I am open to any feedback, adjustments, or further suggestions to refine the Strictus class. Thank you for your time and consideration!

@tal7aouy Thanks. I don't think this change should be added. We have README for the documentation.

@tal7aouy thanks for the contribution but these doc blocks are not needed since the types are already declared in the functions signatures, the parameters are not hard to understand their meaning and we have the documentation in README


Add small ArgoCD issues notes in the official documentation

There have been a lot of reports of users hitting issues with ArgoCD. This PR adds a documentation page dedicated to ArgoCD issues.
Initially, while writing this documentation, I wanted to describe each known issue and its solution, but while writing, I noticed I wasn't getting all the context (which may be helpful) regarding to each issue and if i tried too, would be a long document.
With that, I approached the issue by listing some of the known issues with links to them on GitHub (all the context and info on the issue). And left a note at the end.
Let me know if my PR works also, any feedback to make this better would be helpful. Cheers.
Signed-off-by: Divine Odazie<EMAIL_ADDRESS>Fixes: #18393
Please ensure your pull request adheres to the following guidelines:

[ ] For first time contributors, read Submitting a pull request
[ ] All code is covered by unit and/or runtime tests where feasible.
[ ] All commits contain a well written commit description including a title,
description and a Fixes: #XXX line if the commit addresses a particular
GitHub issue.
[ ] All commits are signed off. See the section Developer’s Certificate of Origin
[ ] Provide a title or release-note blurb suitable for the release notes.
[ ] Thanks for contributing!

Mistakenly pushed some new commits to the is PR, so I did a reset and closed this PR to keep things clean.
Here is my new PR https://github.com/cilium/cilium/pull/20313


Unbound - Blocklist.site URLs No Longer Working - OPNsense Unable to Download DNSBL Lists from Blocklist.site

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Describe the bug
Just wanted to report that it appears that Blocklist.site lists appear to have changed website/URL for the DNSBL lists. OPNsense now reporting 'Failed to establish a new connection: [Errno 8] Name does not resolve' when attempting to download DNSBL lists from Blocklist.site.
To Reproduce
Steps to reproduce the behavior:

Go to 'Unbound DNS'
Click on 'Log File'
See errors (screenshot attached).

Expected behavior
OPNsense/Unbound should correctly download Blocklist.site DNSBL.
Describe alternatives you considered
As a workaround I have added the below DNSBL to the 'URLs of Blocklists' within Unbound.
https://blocklistproject.github.io/Lists/alt-version/abuse-nl.txt
https://blocklistproject.github.io/Lists/alt-version/drugs-nl.txt
https://blocklistproject.github.io/Lists/alt-version/fraud-nl.txt
https://blocklistproject.github.io/Lists/alt-version/malware-nl.txt
https://blocklistproject.github.io/Lists/alt-version/phishing-nl.txt
https://blocklistproject.github.io/Lists/alt-version/ransomware-nl.txt
https://blocklistproject.github.io/Lists/alt-version/scam-nl.txt
https://blocklistproject.github.io/Lists/alt-version/tracking-nl.txt
https://blocklistproject.github.io/Lists/alt-version/porn-nl.txt
Screenshots

Relevant log files
Log file shown above in screenshot.
Additional context
N/A
Environment
Software version used and hardware type if relevant, e.g.:
OPNsense 23.1.6-amd64
FreeBSD 13.1-RELEASE-p7
OpenSSL 1.1.1t 7 Feb 2023

Sorry - closing. Must of been a once off issue.

Hi @fichtner , I am wondering if the issue described above is what I recently commented on in the following post?
https://forum.opnsense.org/index.php?topic=32052.msg162636#msg162636
If so, should I open up a new issue, or would you like to use this existing one?
Thank you.

if it's about Failed to establish a new connection: [Errno 8] Name does not resolve, I would say the message is quite self-explanatory, name server not (or not correct) configured  on the firewall itself.

Thank you @AdSchellevis for your quick response. It is indeed quite possible it is DNS-related, but not necessarily due to upstream DNS server issue. I am going to post what I mentioned in the forum here in case it helps (as I have some thoughts on what could possibly be going on listed):
"I too have experienced this issue in more recent versions. Unfortunately I am unable to say when I started noticing the change, but here is some information in case it helps determine what could be going on...

Reboot of OPNSense at 2 locations I have running OPNsense 23.1.5_4-amd64 yields the following each time:

Notice   unbound   blocklist: https://adaway.org/hosts.txt (exclude: 0 block: 0)
Notice   unbound   blocklist download: 0 total lines downloaded for https://adaway.org/hosts.txt
Error   unbound   blocklist download : unable to download file from https://adaway.org/hosts.txt (error : HTTPSConnectionPool(host='adaway.org', port=443): Max retries exceeded with url: /hosts.txt (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x8027cf640>: Failed to establish a new connection: [Errno 8] Name does not resolve')))

Manual restarting of Unbound service (e.g. restart service button on Blocklist page) does not appear to initiate download of list (based on not seeing messages such as those listed above).

If I disable Blocklist/Apply, then Enable Blocklist/Apply, it appears to trigger getting data:

Notice   unbound   blocklist parsing done in 0.58 seconds (7355 records)
Notice   unbound   blocklist: https://adaway.org/hosts.txt (exclude: 2 block: 7355)
Notice   unbound   blocklist download: 11782 total lines downloaded for https://adaway.org/hosts.txt
Notice   unbound   blocklist download : exclude domains matching ^(?![a-zA-Z_\d]).*|.*localhost$
NOTE: Even though the data seems to be retrieved, it appears it is not active until I then restart the service* (e.g. restart service button on Blocklist page).
*It also seems as though I need to go through the disable/enable steps then restart service an additional time to have everything fully work. I am not sure if it is always just one time, but I do know that doing the entire process once does not usually get everything working.
DNS config information that may be of interest:

Services->Unbound DNS->Blocklist - "AdAway List" selected and all other fields empty.
Services->Unbound DNS->DNS over TLS - 2 IPv4 and 2 IPv6 servers defined. All 4 using port 853.
Services->Unbound DNS->General - DNSSEC support enabled.
System->Settings->General - No DNS servers manually defined.
System->Settings->General - Allow DNS server list to be overridden by DHCP/PPP on WAN is enabled.

If it is not a setting issue, I am wondering if perhaps the following may relate to what I am seeing:

For bootup situation (DNS resolution error), perhaps a service dependency needs to be made if the blocklist process is launching before DNS resolution services are fully up and running (if that is what is actually happening).

For the manual service restart item, perhaps there are additional processes that need to be restarted behind the scenes as part of the service restart to trigger getting the URL to process the data.

I hope the above is helpful."
Thank you

@Chaskel likely a problem with settings, best investigate local dns access first, check if other hosts are accessible. In case anything goes wrong on Unbounds end, I would expect you can find more information in it's log.

Thank you @AdSchellevis . Both the unsuccessful (system boot) and successful (manually initiated post-boot) log entries I referenced in my last post are actually from the Unbound log file. In both of my OPNsense locations I see local DNS from clients work as well as from as the OPNsense Interfaces: Diagnostics: DNS Lookup tool.
As the issue appears to happen only at boot each time at both of my OPNsense locations, that is what makes me wonder if a dependent process may not be fully starting before Unbound blocklist-related processes are starting up. Is there any possibility that in a configuration like I have where Unbound DNS over TLS is used (or maybe even DNSSEC that I reference having enabled), that those name resolution services are not fully up and running yet when the blocklist-related processes starts up?
Thank you

@Chaskel so dns works on boot, but only not from the local machine at that time? The resolve error is only recorded after boot and a manual download works without issues? (you can trigger this using configctl unbound dnsbl)

@AdSchellevis as far as I am aware, I am not having any issues with clients relating to DNS. What made me realize something was not working correctly is when web browsing clients started getting advertisements (which led me to check out the Unbound logs and discover the name resolution issue).
DNS appears to work for everything except for the Unbound blocklist download process at boot, and yes manual download works, however please note the specifics I previously referenced that after manual download (which I have been using the GUI steps I mentioned), I have to do several steps (and some more than once), to have the actual blocklist start working for the web browsing clients.
Thank you

@Chaskel can you remove /usr/local/etc/rc.syshook.d/start/85-dnsbl and reboot? If that fixes it, an issue might be practical indeed.

Sure @AdSchellevis I can do that. I will need to do a little later as in the last few minutes I had to put a whitelist domain entry in for my family to be able to do some work-related items. I will provide you with an update once I am able to reboot.
Do you think it is worth you reopening this Github issue for now?

@Chaskel if this is the issue, better open a new ticket. I expect it would be better if the previous downloaded data will be used on boot, but that's something we can discuss when there's an issue with a clear cause.

@AdSchellevis I removed the file. I'm listing what I did in case the order, or method used could change outcome:

Enabled root user via web GUI (so that I could remove the file).
SSH'd to OPNsense system, went to shell, and removed the file.
I believe I then did a sudo reboot (I am not sure if I should have done that as it is habit from Linux devices I work with)
Once device was back up I disabled root user via the web GUI.
I looked for instances in Unbound log of blocklist trying to download files and saw none (I suspect this is expect based on removing the file so that /usr/local/sbin/configctl -dq unbound dnsbl does not run on boot)
On Windows client I ran ipconfig /flushdns
I then pulled up some web sites and confirmed no advertisements in web browser.

Would you like me to do anything else, and if not, should I create 2 issues (one for the boot issue and another for the manual load issue - and what what you recommend I title the issue(s))?
@daygle , in case you want to see if the problem you created this particular Github issue for does show back up if you reboot, feel free to share.
Thank you

Oh wow! I woke up this morning and many emails with messages for this issue - wasn't expecting this many replies for my closed case.
@AdSchellevis So are you saying you think that I will receive the error again after a reboot of OPNsense?

@AdSchellevis I suspect that my issue was caused because I made the below change, but not sure?
https://homenetworkguy.com/how-to/redirect-all-dns-requests-to-local-dns-resolver/

Hi @daygle , it is more of a question of curiosity on my part to see if you see the same behavior on reboot.

@AdSchellevis in addition to my last questions for you on if you would like me to try anything else as well as what your recommendation is for creating 1 or 2 new Github issues (and what to title them for you), I wanted to provide the following update.
Just now I reverted the change you had me do earlier today (remove file) and I observed a message I thought I had seen once before prior to me escalating this issue (but I did not have a copy of the exact message from the first time I saw it). I am not sure why this particular message sometimes randomly appears during restart instead of the usual "[Errno 8] Name does not resolve" we have been discussing:
2023-04-23T19:06:35-07:00 | Notice | unbound | blocklist: https://adaway.org/hosts.txt (exclude: 0 block: 0) |
2023-04-23T19:06:35-07:00 | Notice | unbound | blocklist download: 0 total lines downloaded for https://adaway.org/hosts.txt |
2023-04-23T19:06:35-07:00 | Error | unbound | blocklist download : unable to download file from https://adaway.org/hosts.txt (error : HTTPSConnectionPool(host='adaway.org', port=443): Max retries exceeded with url: /hosts.txt (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x8027cf640>: Failed to establish a new connection: [Errno 13] Permission denied')))
Current listing for the directory:
drwxr-xr-x  2 root  wheel    10 Apr 23 19:03 .
drwxr-xr-x  9 root  wheel     9 Feb 21  2022 ..
-rwxr-xr-x  1 root  wheel   921 Mar 30 23:06 10-newwanip
-rwxr-xr-x  1 root  wheel    78 Mar 30 23:06 20-freebsd
-rwxr-xr-x  1 root  wheel   197 Mar 30 23:06 25-syslog
-rwxr-xr-x  1 root  wheel    55 Apr 23 18:56 85-dnsbl
-rwxr-xr-x  1 root  wheel  1539 Mar 30 23:06 90-carp
-rwxr-xr-x  1 root  wheel   106 Mar 30 23:06 90-cron
-rwxr-xr-x  1 root  wheel   121 Mar 30 23:06 90-sysctl
-rwxr-xr-x  1 root  wheel    31 Mar 30 23:06 95-beep
Contents of 85-dnsbl:
#!/bin/sh
/usr/local/sbin/configctl -dq unbound dnsbl
Just like the one time I saw that error before, a following reboot did not show the same:
2023-04-23T19:21:34-07:00 | Notice | unbound | blocklist: https://adaway.org/hosts.txt (exclude: 0 block: 0) |
2023-04-23T19:21:34-07:00 | Notice | unbound | blocklist download: 0 total lines downloaded for https://adaway.org/hosts.txt |
2023-04-23T19:21:34-07:00 | Error | unbound | blocklist download : unable to download file from https://adaway.org/hosts.txt (error : HTTPSConnectionPool(host='adaway.org', port=443): Max retries exceeded with url: /hosts.txt (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x8027ce640>: Failed to establish a new connection: [Errno 8] Name does not resolve')))
Thank you, and I hope this additional information is possibly helpful.

If removing the file makes sure the name resolve doesn't happen on boot, just open a ticket for that. I can think of multiple reasons why other configuration issues may lead to not being able to access the resource, but that really lies outside of community support scope. Let's try to keep this simple and focused to the issue at hand, my time is rather limited.

Hi @AdSchellevis , I greatly appreciate your time and support. Issue 6523 has now been created for this.


Added Docs for matchObject getMatches VG API Endpoint.

Signed-off-by: Kashif Memon<EMAIL_ADDRESS>

Done!


System.Diagnostics Tracing APIs

Closing this one and I am going to open a new one against master with the latest updates


Uppercase first letter for missing translation

'guess' is just changing underscores to spaces. Is it good idea to uppercase first letter for key?
Example:
key - 'empty_data_set'
missing guess - 'Empty data set'
It's just gets first letter of key, uppercase it and than join all letters except first :)

Pull Request Test Coverage Report for Build 676

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 68.519%

Totals

Change from base Build 675:
0.0%

Covered Lines:
296

Relevant Lines:
432

💛  - Coveralls

Travis tests have failed
Hey @klautu,
Please read the following log in order to understand the failure reason.
It'll be awesome if you fix what's wrong and commit the changes.
Ruby: ruby-head
View build log

     rake

Using bundler 2.2.0.dev
Using json 2.3.1
Using docile 1.3.2
Using simplecov-html 0.10.2
Using sync 0.5.0
Using concurrent-ruby 1.1.6
Using gem-release 2.1.1
Using rspec-support 3.9.3
Using simplecov 0.16.1
Using thor 1.0.1
Using appraisal 2.3.0
Using tins 1.25.0
Using i18n 1.8.3
Using rspec-core 3.9.2
Fetching diff-lcs 1.4.4
Using term-ansicolor 1.7.1
Using i18n-js 3.7.1 from source at `..`
Using coveralls 0.8.23
Installing diff-lcs 1.4.4
Using rspec-expectations 3.9.2
Using rspec-mocks 3.9.1
Using rspec 3.9.0
Bundle complete! 7 Gemfile dependencies, 22 gems now installed.
Bundled gems are installed into `./gemfiles/vendor/bundle`

$ bundle exec rake
/home/travis/.rvm/rubies/ruby-head/bin/ruby -I/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/rspec-core-3.9.2/lib:/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/rspec-support-3.9.3/lib /home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/rspec-core-3.9.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb
[Coveralls] Set up the SimpleCov formatter.
[Coveralls] Using SimpleCov's 'rails' settings.
.........................................................................................................

Finished in 0.31189 seconds (files took 0.22527 seconds to load)
105 examples, 0 failures

[Coveralls] Submitting to https://coveralls.io/api/v1
[Coveralls] Job #676.78
[Coveralls] https://coveralls.io/jobs/64827392
Coverage is at 68.35%.
Coverage report sent to Coveralls.

><EMAIL_ADDRESS>test /home/travis/build/fnando/i18n-js
> jasmine-node spec/js

.....................................................................................................FF...................................

Failures:

  1) Translate returns guessed translation if missingBehaviour is set to guess
   Message:
     TypeError: /([a-z])([A-Z])/g.charAt is not a function
   Stacktrace:
     TypeError: /([a-z])([A-Z])/g.charAt is not a function
    at Object.I18n.missingTranslation (/home/travis/build/fnando/i18n-js/app/assets/javascripts/i18n.js:682:57)
    at Object.I18n.translate (/home/travis/build/fnando/i18n-js/app/assets/javascripts/i18n.js:600:19)
    at jasmine.Spec.<anonymous> (/home/travis/build/fnando/i18n-js/spec/js/translate.spec.js:52:25)

  2) Translate returns guessed translation with prefix if missingBehaviour is set to guess and prefix is also provided
   Message:
     TypeError: /([a-z])([A-Z])/g.charAt is not a function
   Stacktrace:
     TypeError: /([a-z])([A-Z])/g.charAt is not a function
    at Object.I18n.missingTranslation (/home/travis/build/fnando/i18n-js/app/assets/javascripts/i18n.js:682:57)
    at Object.I18n.translate (/home/travis/build/fnando/i18n-js/app/assets/javascripts/i18n.js:600:19)
    at jasmine.Spec.<anonymous> (/home/travis/build/fnando/i18n-js/spec/js/translate.spec.js:64:19)

Finished in 0.035 seconds
138 tests, 329 assertions, 2 failures, 0 skipped

npm ERR! Test failed.  See above for more details.
The command "bundle exec rake" exited with 1.
store build cache
$ bundle clean
Removing diff-lcs (1.4.3)
changes detected (content changed, file is created, or file is deleted):\n/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/cache/diff-lcs-1.4.3.gem
/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/cache/diff-lcs-1.4.4.gem
/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/diff-lcs-1.4.3/autotest/discover.rb
/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/diff-lcs-1.4.3/bin/htmldiff
/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/diff-lcs-1.4.3/bin/ldiff
/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/diff-lcs-1.4.3/Code-of-Conduct.md
/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/diff-lcs-1.4.3/Contributing.md
/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/diff-lcs-1.4.3/docs/artistic.txt
/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/diff-lcs-1.4.3/docs/COPYING.txt
/home/travis/build/fnando/i18n-js/gemfiles/vendor/bundle/ruby/2.8.0/gems/diff-lcs-1.\n...
changes detected, packing new archive
uploading cache--linux-xenial-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855--rvm-ruby-head--gemfile-gemfiles/i18n_1_8.gemfile.tgz
cache uploaded

Done. Your build exited with 1.

TravisBuddy Request Identifier: 53e2d980-c158-11ea-9c30-6301f8ea01dd

Since there are many people using translation entry with words
I don't think it should upper case the first letter by default
You can use library like lodash with capitalize
If you need all guessed values to be capitalized, please assign custom missingTranslation function


Fillin translations for same original text

Idea: A button is placed on the right side of the translation box. Displayed when the source text exists in multiple strings, allow the translator to one click to fill in them, and displayed as a different background color for review before submission.

Maybe @yfdyh000 means if you have the ID multiple times in the original file. IMHO, however, that's bad practice and probably causes bad/unexpected browser behavior.

Yeah, that's not something I'm gonna advise.

Like some strings just retelling the extension name, the access key or others with different IDs, it may appear multiple times, I don't want to copy & paste or typed multiple times, but rather have a button or method to quickly/bulk fill the translations from source or translated text.
Or provide an export option to fill the source text to the missing translations (you can check and alert the number) so that I don't want to fill it out.

Hmm, don't get what you talk about IDs. IDs should (and usually even have to) be unique.
However, what I could guess this issue is about - and a feature I would support, is having to "auto-fill" the original string when translating it:

should change to this, once clicked on:

Also notice it should be auto-selected, so you can instantly write your translation if you want to ignore the source string.

I  think I get what you are talking about.. I thought about something similar, a while back, when I had the idea to write some middleware for the web-extension to use instead of the web-extension i18n API.
In that case, I would have allowed to use placeholders in translations.
For example, my extension has the following translations:

Key
Message

extensionName
Forget Me Not

actionTitle
Forget Me Not

actionTitleSnooze
Forget Me Not (temporarily disabled)

logo@title
Forget Me Not

For this case, I would have used this instead:

Key
Message

extensionName
Forget Me Not

actionTitle
${extensionName}

actionTitleSnooze
${extensionName} (temporarily disabled)

logo@title
${extensionName}

And the placeholders would automatically be replaced.
But I put that idea on ice, since that would require a lot of rewriting from extension authors.
If you have ideas how this can be solved without middleware, please let me know.
I don't think a button to copy/paste is very intuitive.

@Lusito I guess we have two use cases in mind.
Yours is "Parts of translations keep getting repeated. It would be good to have a placeholder.". My one is "If I want to add a new translation (aka https://github.com/Lusito/web-ext-translator/issues/27), then I want to copy-paste the original translation and translate it word-by-word or sentence-by-sentence or so 8depending on the length)".


added SetID function

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


  The methods that
save_inventory_multi call may impact the results of that query, so we
should eagerly load the collection.
This fixes:
spec/models/ems_refresh/refreshers/ec2_refresher_other_region_spec.rb

Makes sense.  We had expectations that the deletes was an array of records at this exact time so we should make it an array before passing it down to code with that expectation.  Does this fix the test error on rails4 that #2091 was trying to solve?
:+1:

@tenderlove Cool.  BTW, most of the callers that get the deletion set, do deletes = blah.records.dup.  My question is, what does .dup do on a collection proxy?  In Rails 3.2 it's done so we can manipulate the set of deletes instead of hitting the DB (which is what you are trying to fix here too).

Does this fix the test error on rails4 that #2091 was trying to solve?

Yes, it does.  And I think this change makes it more in-line with the codes expectations (as opposed to #2091)

My question is, what does .dup do on a collection proxy?

I think it will literally dup the collection proxy.  /cc @matthewd

I think it will literally dup the collection proxy. /cc @matthewd

I concur.  I think I saw the exact same thing with my work on rails4.


viewer.add_points fails on proxy viewer

🐛 Bug
Trying to add points to a public only proxy viewer fails:
import napari
from napari.utils._proxies import PublicOnlyProxy

viewer = PublicOnlyProxy(napari.Viewer())
viewer.add_points()

napari.run()

Gives:
Traceback (most recent call last):
  File "/home/jni/projects/play/public-only.py", line 5, in <module>
    viewer.add_points()
  File "/home/jni/projects/napari/napari/utils/_proxies.py", line 72, in __getattr__
    return self.create(super().__getattr__(name))
  File "/home/jni/projects/napari/napari/utils/_proxies.py", line 86, in create
    if not getattr(obj, '__module__', '').startswith('napari'):
AttributeError: 'NoneType' object has no attribute 'startswith'

fwiw since I encountered this while trying to prepare my plugins for the plugins meeting next week, imho we should leave this experiment until after the 16th, as most people are likely to be disrupted by it. (And other npe2-related enhancements since 0.4.12 are required to work with npe2, so sticking to 0.4.12 for the meeting is not an option.)

As mentioned in one on one chat, Im just fine with turning off the proxy for the next release if you want to, but this particular bug is a trivial fix

fixed in #3786

this was introduced by moving from getattr(type(obj), '__module__') to getattr(obj, '__module__') in review of #3777

@tlambert03 yeah, I didn't think it would be a hard fix, but even if nothing else breaks and this starts working as intended, this is bound to be noisy at a time when plugin devs probably want to minimise noise. My 2c and preference, but not dogmatic about it, will just keep reporting issues when/if I encounter them.


Some Microsoft Visual Studio issues

I apologize for my noob question. I am currently on the last stage, trying to execute the command "pip install -r requirements.txt".
The guide does not mention anything about Microsoft Visual Studio 14.0, so I encountered this issue in CMD. I installed Microsoft Visual Studio 14.0 and selected several options, sadly there was no clear mention of the specific components I needed to install. This resolved the error regarding the absence of MVS14, but now I am facing another error that I am unable to resolve.
c:\users\babud\appdata\local\programs\python\python310\include\pyconfig.h(200): fatal error C1083: Cannot open include file: 'basetsd.h': No such file or directory
      error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\cl.exe' failed with exit code 2
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for fairseq
Failed to build fairseq
ERROR: Could not build wheels for fairseq, which is required to install pyproject.toml-based projects

Issue was solved by installing complete packages. Wasted lots of gigs, but it's working now.


Missing inner and outer functions

MLX allows for calculating the inner and outer products for vectors.

https://ml-explore.github.io/mlx/build/html/python/_autosummary/mlx.core.inner.html
https://ml-explore.github.io/mlx/build/html/python/_autosummary/mlx.core.outer.html

These functions were added here: https://github.com/ml-explore/mlx/pull/348

This is fixed as of #32
https://github.com/ml-explore/mlx-swift/blob/main/Source/MLX/Ops.swift#L778


hunspellDicts.ko_KR: init at 0.7.94

Description of changes
https://github.com/spellcheck-ko/hunspell-dict-ko

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/4614

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

1 package built:

hunspellDicts.ko-kr

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/2093


Update regex for HTAN Id

Simply improve the regex on the HTAN Data File ID. If the pattern is correct, it could apply to all other HTAN IDs, like HATN Biospecimen ID.

Close it now - loop back when we need more regrex validation rules.


Merge develop into SDK v2 branch

What does this PR do?
This change does a merge of develop branch into SDK v2 branch to be compatible with ktlint 0.47.1 formatting changes/requirements.
Review checklist (to be filled by reviewers)

[x] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[x] Make sure you discussed the feature or bugfix with the maintaining team in an Issue
[x] Make sure each commit and the PR mention the Issue number (cf the CONTRIBUTING doc)

Codecov Report

Merging #1104 (9b73f57) into feature/sdkv2 (cabffad) will increase coverage by 0.03%.
The diff coverage is 91.95%.

@@                Coverage Diff                @@
##           feature/sdkv2    #1104      +/-   ##
=================================================
+ Coverage          82.66%   82.69%   +0.03%
=================================================
  Files                349      350       +1
  Lines              11229    11301      +72
  Branches            1838     1846       +8
=================================================
+ Hits                9282     9345      +63
- Misses              1388     1394       +6
- Partials             559      562       +3

Impacted Files
Coverage Δ

...droid/core/internal/constraints/DataConstraints.kt
75.00% <ø> (ø)

...android/core/internal/sampling/RateBasedSampler.kt
87.50% <0.00%> (-12.50%)
:arrow_down:

...in/kotlin/com/datadog/android/rum/RumAttributes.kt
0.00% <ø> (ø)

...id/rum/internal/domain/event/RumEventSerializer.kt
99.07% <ø> (ø)

...g/android/rum/internal/domain/scope/RumEventExt.kt
93.75% <0.00%> (ø)

...atadog/android/core/configuration/Configuration.kt
97.35% <40.00%> (-1.11%)
:arrow_down:

...g/android/rum/internal/domain/scope/RumRawEvent.kt
82.47% <80.00%> (-0.08%)
:arrow_down:

...ndroid/telemetry/internal/TelemetryEventHandler.kt
92.06% <80.00%> (+1.74%)
:arrow_up:

.../android/rum/internal/domain/scope/RumViewScope.kt
96.98% <97.30%> (-0.05%)
:arrow_down:

...oid/src/main/kotlin/com/datadog/android/Datadog.kt
71.43% <100.00%> (ø)

... and 34 more


Intermittent dns resolution

The root cause of this issue is the use of a router IP as primary DNS. It seems that the router answers before azk's DNS service.
Workaround: Use Google's DNS (<IP_ADDRESS> and <IP_ADDRESS>)


Simplified Chinese Support

Thank you for the PR! I'm definitely going to merge this, but it would be great if you could add 4 more translations that were added since you opened PR. I'm talking about recent changes in https://github.com/p0deje/Maccy/blob/master/Maccy/en.lproj/Localizable.strings#L21-L24 which show accessibility permissions window when pasting. Could you add these 4 translations to simplified Chinese file?

done

Thank you!


Adding Missing fields

Is it possible to add missing fields that are in the native api but not the nodejs SDK?  For example offsetGLAccount for Vendors is available in the API but not on the SDK.

@mcarson28 / @tehnorm, we can add missing fields :) please let us know of more fields that are missing which your respective teams would like to use so we can add them. Also, thanks for letting us know!

The missing field I was referring to was the following from the Vendor API Docs
APACCOUNT | Optional | string | Default expense GL account number

@dylan-holt-sage it might make sense to audit the API's vs what is in this lib? I needed GL entry COSTTYPEID but there seem to be many others to be added.

@dylan-holt-sage also, I don't see description on order entry.  Is that something that could be added?

@tehnorm / @mcarson28, I'll see what I can do from the audit perspective. May take some time since .NET SDK is next priority. I'll add everything that's explicitly been mentioned for the upcoming release and plan other items for when there is time.

@mcarson28 , which description on order entry are you referring to? The PCB related descriptions? Subtotals has the descriptions there.

Hi there,
I've got two queries I was hoping you could help me with.

I need to create transactions that multiple lines, with different tax solutions on each, however, I can't seem to find the related tax fields that will enable me to do this. Is there a way of me creating them?

The other query I have is in relation to creating advances (payments on account). I'm also unable to find documentation on how to go about this through the NodeJS SDK. Is this something that already exists or is it possible for to create this?

Hi Dylan,
I appreciate your response. I've logged the requirement for advances as an
issue now.
As for my first issue raised, I'm going to run some tests just to be 100%
sure on which transactions will require tax information, and which tax data
points will actually be required. Once I've completed this I'll raise a
separate issue in GitHub.
Kind regards,
Jamie
On Mon, 24 Oct 2022 at 15:05, Dylan Holt @.***> wrote:

@johnsonj081 https://github.com/johnsonj081, Advances haven't been
added to this SDK yet. Please raise a new issue stating that and I'll make
a task for implementing it.
For your first item, can you give me more details in a new issue? What
type of transaction(s)?
Please use the following URLs to see what we offer vs what is in the SDK.
Supported in Intacct production: https://developer.intacct.com/api/
Supported in Intacct NodeJS SDK:
https://intacct.github.io/intacct-sdk-js/index.html
—
Reply to this email directly, view it on GitHub
https://github.com/intacct/intacct-sdk-js/issues/76#issuecomment-1289088804,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJWP7XDAF42ONLNXKIO2PBTWE2JRDANCNFSM5FMJF7QQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi Dylan,
I can confirm that the data points we need are for invoices and adjustments
on both the AP and AR side. For each line within each of these
transactions, we need to be able to add Tax Solutions, Tax Detail
ID's and Tax Amounts.
Just for some context, I am an employee of ION. We're a partner with Sage
and this piece of work is essential to completing an implementation that is
currently in progress.
Kind regards,
Jamie
On Mon, 24 Oct 2022 at 16:16, James Ward-Johnson @.***>
wrote:

Hi Dylan,
I appreciate your response. I've logged the requirement for advances as an
issue now.
As for my first issue raised, I'm going to run some tests just to be 100%
sure on which transactions will require tax information, and which tax data
points will actually be required. Once I've completed this I'll raise a
separate issue in GitHub.
Kind regards,
Jamie
On Mon, 24 Oct 2022 at 15:05, Dylan Holt @.***> wrote:

@johnsonj081 https://github.com/johnsonj081, Advances haven't been
added to this SDK yet. Please raise a new issue stating that and I'll make
a task for implementing it.
For your first item, can you give me more details in a new issue? What
type of transaction(s)?
Please use the following URLs to see what we offer vs what is in the SDK.
Supported in Intacct production: https://developer.intacct.com/api/
Supported in Intacct NodeJS SDK:
https://intacct.github.io/intacct-sdk-js/index.html
—
Reply to this email directly, view it on GitHub
https://github.com/intacct/intacct-sdk-js/issues/76#issuecomment-1289088804,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJWP7XDAF42ONLNXKIO2PBTWE2JRDANCNFSM5FMJF7QQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


Add built-in method for listing docs

Over the years we've had a few different ways to do this. We should standardize a canonical way.
// Docs are generated through a collection object.
1. pod.collection('pages').docs(options)
2. pod.collection('pages').listDocs(options)

// Docs are generated through the pod.
3. pod.docs('pages', options)
4. pod.listDocs('pages', options)

I have a slight preference for (3). Should we support both the syntax for (1) and (3), since there may be a use case for accessing a collection (e.g. its fields)?

We are assuming that 'docs' are only things within /content/ correct?
It would be good to have a set of defined ways to filter that we can use across different parts of amagaki. For instance, in live-edit I use a include/exclude filter as the default way to interact with paths.
I like the idea of supporting the doc listing on both the pod and individual collections. In code I would probably do that as the collection.docs() as a call to the pod.docs() with an extra filter.

Maybe pod.docs(filters: string | Array<Filter>, options: ...) where it can be used as just a simple text matching, or by providing an array of filters that get applied.
docs(filters: string | Array<Filter>, options: OptionsInterface) {
  docFilters: Array<Filter> = []
   if (isString(filters) {
    docFilters.push(new IncludeExcludeFilter({
      included: [filters],
    }
  } else {
     docFilters = filters
  }
  // ...
}

@Zoramite's suggestion looks good. Instead of a custom filter syntax I'm planning to send a PR that uses the glob module: https://www.npmjs.com/package/glob
I'm thinking glob syntax would be the most useful internally within Amagaki and for developers building out templates.