Why does SqlClient for .Net Core not allow an authentication method 'Active Directory Interactive'?

I have been investigating what a way to use AzureAD Interactive authentication for Azure SQL Database on .Net Core runtime.
I created very cheap interactive authentication method for netcoreapp using MSAL.NET, realizes to use interactive authentication with .Net Core console application.
But the SqlConnection doesn't allow an authentication parameter with value Active Directory Interactive it throws a System.ArgumentException: Invalid value for key 'authentication'.
// my custom provider
var provider = new LocalhostInteractiveSqlAuthenticationProvider(parameter.AzureClientId);
SqlAuthenticationProvider.SetProvider(SqlAuthenticationMethod.ActiveDirectoryInteractive, provider);

using var connection = new SqlConnection(parameter.ConnectionString); // ConnectionString: "...;Authentication=Active Directory Interactive;..."

// ...

Unhandled exception. System.ArgumentException: Invalid value for key 'authentication'.
   at Microsoft.Data.Common.DbConnectionStringBuilderUtil.ConvertToAuthenticationType(String keyword, Object value)
   at Microsoft.Data.SqlClient.SqlConnectionString.ConvertValueToAuthenticationType()
   at Microsoft.Data.SqlClient.SqlConnectionString..ctor(String connectionString)
   at Microsoft.Data.SqlClient.SqlConnectionFactory.CreateConnectionOptions(String connectionString, DbConnectionOptions previous)
   at Microsoft.Data.ProviderBase.DbConnectionFactory.GetConnectionPoolGroup(DbConnectionPoolKey key, DbConnectionPoolGroupOptions poolOptions, DbConnectionOptions& userConnectionOptions)
   at Microsoft.Data.SqlClient.SqlConnection.ConnectionString_Set(DbConnectionPoolKey key)
   at Microsoft.Data.SqlClient.SqlConnection.set_ConnectionString(String value)
   at Microsoft.Data.SqlClient.SqlConnection..ctor(String connectionString)
   at InteractiveAuthenticationTest.Program.Run(Parameter parameter) in C:\temp\InteractiveAuthenticationTest\Program.cs:line 41
   at InteractiveAuthenticationTest.Program.Main(String[] args) in C:\temp\InteractiveAuthenticationTest\Program.cs:line 33
   at InteractiveAuthenticationTest.Program.<Main>(String[] args)

I edited TryConvertToAuthenticationType method to allow SqlAuthenticationMethod.ActiveDirectoryInteractive, then authentication works fine!
Now I know an interactive authentication can be work on .Net Core runtime, but SqlClient blocked to set interactive authentication. Why?
Or is there another way to use interactive authentication with SqlClient?
I want to use this over the EntityFrameworkCore, eventually.
Information:
The original authentication provider implementation and short testing code
Env:
.NET Core SDK (reflecting any global.json):
 Version:   3.1.100
 Commit:    cd82f021f4

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.18363
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\3.1.100\

Host (useful for support):
  Version: 3.1.0
  Commit:  65f04fb6db

Hi @acple
We tried to support AAD Interactive for .NET Core when we implemented it for .NET Framework, but we were facing problems for cross platform support. Although it works in some scenarios, there are still some cases where MSAL.NET doesn't work as expected.
It is in our backlog and things to do, which will be picked up when it's re-prioritized.

When would you use interactive authentication to a database access other than through a tool like management studio?

I see, is there no way to use interactive authentication with SqlClient now?
@Wraith2
Originally we want to use LINQPad6 with EF Core as a database acccess tool. It worked with older version that is on .Net Framework.

Hi @acple
This has been addressed with v2.0.0, closing issue as fixed.


Add web CI checks

Add checks for the web code (both locally and in CI). Checks should include:

Lint (including md)
Prettier (including md)
Type check

Closed by #10


Can't run on CPU

File "D:\python-project\LightGlue-ONNX-main\test.py", line 17, in
print(runner.run(image0, image1, scales0, scales1))
File "D:\python-project\LightGlue-ONNX-main\onnx_runner\lightglue.py", line 53, in run
matches0, mscores0 = self.lightglue.run(
File "C:\Users\admin\AppData\Local\Programs\Python\Python38\lib\site-packages\onnxruntime\capi\onnxruntime_inference_collection.py", line 220, in run
return self._sess.run(output_names, input_feed, run_options)
onnxruntime.capi.onnxruntime_pybind11_state.RuntimeException: [ONNXRuntimeError] : 6 : RUNTIME_EXCEPTION : Non-zero status code returned while running MultiHeadAttention node. Name:'MultiHeadAttention_0' Status Message: Packed QKV of shape (B, L, N, 3, H) not implemented for CPU

Hi @XL634663985, thank you for your interest in LightGlue-ONNX.
I just added CPU support (#46). You can try out the models with *_fused_cpu.onnx at https://github.com/fabio-sim/LightGlue-ONNX/releases/tag/v1.0.0.

Thank you so much! This problem is solved!


Add picowireless to Pico W

I am aware that the Pico W firmware, is without the "piocwireless" module, as the Pico W already has WiFi capability.
But I would like to have a second WiFi, possibly with the ESP32 chip.
Would it be possible to modify the make files to add "piocwireless" to the Pico W?
If so, where should this be done?

I made a custom .cmake file in "micropython/modules" that only contained.
include_directories(${CMAKE_CURRENT_LIST_DIR}/../../)

list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/../")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/../../")

include(pico_wireless/micropython)

And then followed the guide at:
https://github.com/virgesmith/pimoroni-pico/blob/main/micropython-build.md
To make the firmware.


Control + Alt eats input without doing anything

VSCode Version: 1.36.1
OS Version: Windows 10

Steps to Reproduce:

Type CONTROL - ALT
"Alt" access keys no longer work and any keyboard combo which uses CONTROL+ALT+* no longer work.

Does this issue occur when all extensions are disabled?: Yes
Asked a friend to repro on a different computer from mine (who knows what system setting could be messing with it) and he succesfully reprod.
I would like Control+Alt+* commands to be possible, mostly because I do control+alt+left/right to navigate between tabs on my Mac and would like to have parity on my PC.
Thank you!

@sanboxrunner Does VS Code receive the keybinding?

Yes, it records the input in the keybindings pane, but then it does not react to that input when trying to use it elsewhere. There is so "when' clause in this keybinding

@sanboxrunner Let's pick one specific keybinding. I'm assuming VS Code receives "ctrl+alt+right". Please double check that in the keybindings input.
Can you please comment everything else and add precisely the following to your keybindings.json:
{ "key": "ctrl+alt+right", "command": "actions.find" }

Does pressing ctrl+alt+right result in the find widget showing up?

Success! Yes!
These are the raw keybindings I have for my desired output:
    {
        "key": "ctrl+alt+left",
        "command": "workbench.action.focusPreviousGroup"
    },
    {
        "key": "ctrl+alt+left",
        "command": "-workbench.action.moveEditorToPreviousGroup"
    },
    {
        "key": "ctrl+alt+right",
        "command": "workbench.action.focusNextGroup"
    }

Control alt + left/right still does not work, even though the widget does work!

@sanboxrunner This works for me in keybindings.json:
// Place your key bindings in this file to overwrite the defaults
[
  {
    "key": "ctrl+alt+left",
    "command": "workbench.action.focusPreviousGroup"
  },
  {
    "key": "ctrl+alt+right",
    "command": "workbench.action.focusNextGroup"
  }
]

When I press ctrl+alt+left the focus moves to the group to the left and when I press ctrl+alt+right the focus moves to the group to the right:


Added a multiclass classification example on CIFAR-10 dataset

Linked issue(s):
Fixes KOL-2331
What change does this PR introduce and why?

Added a multiclass classification example on CIFAR-10 dataset

CIFAR-10 test on Kolena (default configuration)
CIFAR-10 test on Kolena (configuration = threshold @ 0.5)
Please check if the PR fulfills these requirements

[ ] Include reference to internal ticket and/or GitHub issue "Fixes #NNNN" (if applicable)
[ ] Relevant tests for the changes have been added
[ ] Relevant docs have been added / updated

Code is clean and the end result on the platform is super nice!

Are we planning to remove kolena.classification.multiclass in favor of this example?

I think we should. We want to encourage customers to build their own workflow or use a pre-built. Any customers that are using kolena.classification.multiclass?

Are we planning to remove kolena.classification.multiclass in favor of this example?

I think we should. We want to encourage customers to build their own workflow or use a pre-built. Any customers that are using kolena.classification.multiclass?

We shared the code with one customer, but it wasn't ever actively used. The only things ever pushed up were examples that we provided.


issue#938 virtual facial jewellery

Includes the notebooks for nose stud jewellery and forehead dot jewel
(for GSSOC22 )

@akshitagupta15june since  you have approved #1115 shall I remove this PR and create a new branch under that issue ID ?
And also shall I keep it under virtual makeover or place in a new directory under root?


Side by side view

Problem/Need:
#3

HTML string is a one-liner in https://html-template-generator.surge.sh/ but looks right in https://codepen.io/hchiam/pen/jOBOaqm?editors=0010


[MM-37686] Invert colours for teams button to "fix" starkness on light backgrounds

Summary
This PR "fixes" the starkness of the button when using a light sidebar background colour by inverting the colours.
Ticket Link
https://mattermost.atlassian.net/browse/MM-37686
Checklist

[x] Added or updated unit tests (required for all new features)
[x] Has UI changes
[ ] Includes text changes and localization file updates

Device Information
iPhone Simulator (iPhone 12, iOS 14.5)
Screenshots

Release Note
NONE

Is this still a wip?

Nope, forgot to remove.


New source table

same as before but removes additional issues

Hi @sophiemiddleton , did you try to compile and then run the fcl test file? Once my comments are addressed and you confirmed that the trigger exe run fine I think we are ready

@sophiemiddleton I think you might have forgotten to add the placeholder for caloHitRecn0SourcePS in trigFilters.fcl

Yes, I will fix this up tomorrow. Most of these comments are due to a quick copy and paste to the new clone. I did compile the previous code....it should work if I fix the few cp errors

Perfect. Did you try to run the trigger test fcl?

I did not, although I'm able to run normal reco/digi with this setup. Where is the test?

To test properly your new trigger you should:

change the presale factor from -1 to 1 in the physics menu json in the section related to the online config of your trigger;
run the fcl mu2e_trig_config/test/triggerTest.fcl over 10k NoPrimary events;
check in the Trigger-path summary the counts counts; I expect a non negligible fraction of passed events by your trigger;

If the test succeed, you should open the Offline PR right away so that we can merge both the same day.

I checked and the test works. I have a filter for Offline too. I guess I need to put in a PR. there before this can be merged?

Yes, please. Open the Offline PR mentioning this one in the description field so that we can run the CI properly.

OK, will do. I'll try to get this in today, or over the weekend (was at a conference the last few days)

I pushed the latest code, using the minBias for now, we may add a custom filter eventually, but we need to do some effort to understand what we would want there. This is a separate task (Analysis)


Microsoft 365 Enterprise E1 ?

Hello,
This doc says that Microsoft Business Voice can be added to Microsoft 365 Enterprise E1/E3 but as far as I know, Microsoft 365 E1 doesn't exist or at least, I can't find that SKU.
Thanks

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

ID: abae7324-861d-7ca7-7239-a5df8fd927d5
Version Independent ID: 8a30bd2f-9bc3-a0a8-8b31-d53836ead4d0
Content: Microsoft Teams add-on licenses - Microsoft Teams
Content Source: Teams/teams-add-on-licensing/microsoft-teams-add-on-licensing.md
Service: msteams
GitHub Login: @cichur
Microsoft Alias: v-cichur

This SKU GUID (18181a46-0d4e-45cd-891e-60aabd171b4e) is for Office 365 E1, not Microsoft 365 E1.
The doc lists both Microsoft 365 E1/E3 and Office 365 E1/E3 on two lines if you scroll down on that page where the Small business (<300 people) table is located.

Hmm, you're right, there is some confusion here, sorry if I contributed even more to it. I just assumed those were the only ones remaining after this change

But then again, perhaps I was wrong or the not all the docs were yet updated...

Its ok, don't worry ;)
Office 365 E1 and Office 365 E3 still exists and as far as I know its not supposed to disappear.
Microsoft 365 E3 and Microsoft 365 E5 was introduced as a new SKU, I believe, in the same period of the products rename.
As far as I know, Microsoft 365 E1 has never been a thing.


Filter calibration problems + sweep app

I made a test app on the "SweepBandwidth" branch to reveal some issues setting some of the available bandwidth filter settings:
RX direction
python SoapyLMS7/test_sweep_bandwidths.py --step=0.5e6 --start=1e6 --stop=60e6 --chan=0 --dir=RX

1 MHz - RxLPF frequency out of range, available range from 0.7 to 65 MHz
1.5 MHz - CFB_TIA_RFE step size out of range
2 MHz - C_CTL_LPFL_RBB step size out of range
2.5 MHz - C_CTL_LPFL_RBB step size out of range
3 MHz - CFB_TIA_RFE step size out of range
3.5 MHz - CFB_TIA_RFE step size out of range
22 MHz - C_CTL_LPFL_RBB step size out of range
31 MHz - C_CTL_LPFH_RBB step size out of range
31.5 MHz - C_CTL_LPFH_RBB step size out of range
32 MHz - C_CTL_LPFH_RBB step size out of range
32.5 MHz - C_CTL_LPFH_RBB step size out of range
33 MHz - C_CTL_LPFH_RBB step size out of range
33.5 MHz - C_CTL_LPFH_RBB step size out of range
34 MHz - C_CTL_LPFH_RBB step size out of range
34.5 MHz - C_CTL_LPFH_RBB step size out of range
35 MHz - C_CTL_LPFH_RBB step size out of range
35.5 MHz - C_CTL_LPFH_RBB step size out of range
36 MHz - C_CTL_LPFH_RBB step size out of range
36.5 MHz - C_CTL_LPFH_RBB step size out of range
37 MHz - C_CTL_LPFH_RBB step size out of range
37.5 MHz - C_CTL_LPFH_RBB step size out of range
44 MHz - TuneVCO(CGEN) - failed to lock (cmphl != 2)
44.5 MHz - TuneVCO(CGEN) - failed to lock (cmphl != 2)
45 MHz - TuneVCO(CGEN) - failed to lock (cmphl != 2)
45.5 MHz - TuneVCO(CGEN) - failed to lock (cmphl != 2)
46 MHz - TuneVCO(CGEN) - failed to lock (cmphl != 2)
46.5 MHz - TuneVCO(CGEN) - failed to lock (cmphl != 2)
47 MHz - TuneVCO(CGEN) - failed to lock (cmphl != 2)
47.5 MHz - TuneVCO(CGEN) - failed to lock (cmphl != 2)
48 MHz - TuneVCO(CGEN) - failed to lock (cmphl != 2)

TX direction
python SoapyLMS7/test_sweep_bandwidths.py --step=0.5e6 --start=1e6 --stop=60e6 --chan=0 --dir=TX

1 MHz - Tx lpf out of range 2.5-16 MHz and 25-65 MHz
1.5 MHz - Tx lpf out of range 2.5-16 MHz and 25-65 MHz
2 MHz - Tx lpf out of range 2.5-16 MHz and 25-65 MHz
2.5 MHz - Tx lpf out of range 2.5-16 MHz and 25-65 MHz
3 MHz - Tx lpf out of range 2.5-16 MHz and 25-65 MHz
3.5 MHz - Tx lpf out of range 2.5-16 MHz and 25-65 MHz
4 MHz - Tx lpf out of range 2.5-16 MHz and 25-65 MHz
4.5 MHz - Tx lpf out of range 2.5-16 MHz and 25-65 MHz
5 MHz - RCAL_LPFS5_TBB step size out of range
5.5 MHz - RCAL_LPFS5_TBB step size out of range
6 MHz - RCAL_LPFS5_TBB step size out of range

Just to add to this, here is a user reported random failure setting the Rx bandwidth: https://gist.github.com/docprofsky/36daeba0e8f45a21263727210553c530#file-limesdr-soapy-probe-txt

Was this a bug or simply a result of out of specification tuning? Should we merge this: https://github.com/myriadrf/LimeSuite/commit/e6c2c7fd64082d12e62be75e35e5b6dde673266e

The RF and IF frequencies were mixed up and some searches had value overflows. I merged in the SweepBandwidths branch.
Rx
python test_sweep_bandwidths.py --step=0.5e6 --start=1.5e6 --stop=130e6 --chan=0 --dir=RX
For some reason these frequencies fail when used from the python script, but passes when used from LimeSuite GUI, needs further investigation.

1.5 MHz - CFB_TIA_RFE step size out of range
2 MHz - CFB_TIA_RFE step size out of range
2.5 MHz - CFB_TIA_RFE step size out of range
3 MHz - CFB_TIA_RFE step size out of range
3.5 MHz - CFB_TIA_RFE step size out of range
36 MHz - C_CTL_LPFH_RBB step size out of range

Tx
python test_sweep_bandwidths.py --step=0.5e6 --start=5e6 --stop=130e6 --chan=0 --dir=TX
All tests passed

+1, I'm seeing these errors when setting receive bandwidths lower than 4 MHz. It would be nice to access these bandwidths for oversampling or for lower sample rates.
[ERROR] setBandwidth(Rx, 0, 3 MHz) Failed - CFB_TIA_RFE step size out of range

Seeing these running Gnuradio.  Causes the block to fail.
No idea if this is significant but in Gnuradio terminal escape sequences are printed to the Gnuradio output window. Those sequences are only meant for a term window. But maybe that's irrelevant here and is a Gnuradio issue.

Seeing these running Gnuradio. Causes the block to fail.

What bandwidth was used when this happened?

Also (but do not know if this is significant) in Gnuradio terminal escape sequences are printed to the Gnuradio output window. Those sequences are only meant for a term window. But maybe that's irrelevant here and is a Gnuradio issue.

SoapySDR by default prints the logger to stdout with escape sequences (for unix). So that wont come up right when GRC reads it and prints it in a gui text output. I think this is reason for the logging to be redirected with a custom handler to the gr logging facilities inside the gr-osmosdr soapy blocks.

Is this what we're looking for? It's possible that I am doing something wrong and I have tried different things. I don't want to pollute this issue but this seems to be the only place to mention this error.
[ERROR] setBandwidth(Rx, 0, 1.5 MHz) Failed - CFB_TIA_RFE step size out of range
Will look at gr logging, didn't know about that, pardon the noise.

The error is not showing up.  I started a new grc block and no errors now.  I also realized that for my osmocom source I had not specified an antenna.
I also do see a warning from libusb: libusb: warning [libusb_exit] application left some devices open and I am using libusbv1.0.20 and there is a .21 release now.

Nothing new to say except the problem persists. I am using latest git for all components.
This is all I did to trigger it. https://github.com/romeojulietthotel/flografs/blob/master/adsb.grc

You need to update the udev rules. Just do ./udev-rules/install.sh from the LimeSuite repository root.

Filter calibrations has changed a lot since this issue was opened. I think it is fixed.


Removing broken link

Hey @tuvtran
just removing a broken link here.
Cheers!

Looks fine, link is broken.


Add Edit parser unit test

Codecov Report

Merging #216 (8465d94) into master (abfd3eb) will increase coverage by 3.15%.
The diff coverage is 63.88%.

@@             Coverage Diff              @@
##             master     #216      +/-   ##
============================================
+ Coverage     54.98%   58.14%   +3.15%
- Complexity      658      689      +31
============================================
  Files           120      120
  Lines          2886     2903      +17
  Branches        346      346
============================================
+ Hits           1587     1688     +101
+ Misses         1203     1092     -111
- Partials         96      123      +27

Impacted Files
Coverage Δ

...main/java/seedu/address/commons/core/Messages.java
0.00% <ø> (ø)

...ain/java/seedu/address/model/tuition/Timeslot.java
58.10% <0.00%> (+4.05%)
:arrow_up:

...java/seedu/address/model/tuition/TuitionClass.java
66.25% <0.00%> (ø)

...seedu/address/logic/commands/EditClassCommand.java
28.00% <4.76%> (+28.00%)
:arrow_up:

...main/java/seedu/address/model/student/Student.java
74.46% <20.00%> (-0.54%)
:arrow_down:

...edu/address/logic/commands/DeleteClassCommand.java
48.57% <71.42%> (+11.07%)
:arrow_up:

...va/seedu/address/logic/commands/DeleteCommand.java
70.45% <79.16%> (+4.74%)
:arrow_up:

...java/seedu/address/logic/commands/EditCommand.java
86.95% <83.33%> (-4.72%)
:arrow_down:

...in/java/seedu/address/logic/parser/ParserUtil.java
88.11% <88.88%> (+21.79%)
:arrow_up:

...u/address/logic/commands/RemoveStudentCommand.java
27.02% <100.00%> (+27.02%)
:arrow_up:

... and 19 more

Continue to review full report at Codecov.

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


Allow multiplayer between two quests using the same login

Right now you get a CFR-3 if two quests logged in with the same ID try to join the same lobby.
Of course the best fix would be for Facebook to add proper multi-account support, but feels like we might be waiting a while for that.
In case it's 'easy', could BeatTogether reuse the Scoresaber ID if the Scoresaber mod is installed? Or a similar system where a different ID can be generated.

Sadly this is how most multiplayer games work and there won't be a change introduced to go around it. You can't typically have two IDs within a same session.
Scoresaber does the same thing in fact. It uses the internal ID if gets from either Steam or Oculus.
I do hope they allow the ability to share purchases with a system update for multi accounts. That would be a solution that I think is being worked on.

Sadly this is how most multiplayer games work and there won't be a change introduced to go around it. You can't typically have two IDs within a same session.
Scoresaber does the same thing in fact. It uses the internal ID if gets from either Steam or Oculus.
I do hope they allow the ability to share purchases with a system update for multi accounts. That would be a solution that I think is being worked on.

Huh, I thought scoresaber uses a different system, and that's why you need a version of the mod that's tailored to your stream id.

Huh, I thought scoresaber uses a different system, and that's why you need a version of the mod that's tailored to your stream id.

Nope. They use either the Oculus ID or the Steam ID when you set that up.
The reason that works is because it isn't a multiplayer game. It can be setup to use another individuals Steam ID and post to that steam user. Ours uses whatever came from the system and is a online game. One games typically don't allow you to be signed in from two locations. In this case, it doesn't allow the new session in.
Hopefully this makes sense! Sorry that I have no solution to this other than buying the game again on a new Oculus account.

Nope. They use either the Oculus ID or the Steam ID when you set that up.
The reason that works is because it isn't a multiplayer game. It can be setup to use another individuals Steam ID and post to that steam user. Ours uses whatever came from the system and is a online game. One games typically don't allow you to be signed in from two locations. In this case, it doesn't allow the new session in.
Hopefully this makes sense! Sorry that I have no solution to this other than buying the game again on a new Oculus account.

Thanks for taking the time to respond! I'm just curious at this point, so feel free to stop replying if you have better things to do 😀
Could this mod use a stream ID in a manner similar to Scoresaber? That means two Quests could have different versions of the BeatTogether mod, each containing a different steam ID (same way Scoresaber works). That means, even through the platform ID of each Quest is the same, the ID they'd use for online play would be different, since it'd be encoded into the mod (again, same as Scoresaber).

Thanks for taking the time to respond! I'm just curious at this point, so feel free to stop replying if you have better things to do 😀
Could this mod use a stream ID in a manner similar to Scoresaber? That means two Quests could have different versions of the BeatTogether mod, each containing a different steam ID (same way Scoresaber works). That means, even through the platform ID of each Quest is the same, the ID they'd use for online play would be different, since it'd be encoded into the mod (again, same as Scoresaber).

In theory, it could be done like how Scoresaber sets up the plugin. However this would require us to change our distribution model and setup process with the plugins. So this sort of thing is out of the cards as well. Since the idea is suppose to be as painless as possible to install.

In theory, it could be done like how Scoresaber sets up the plugin. However this would require us to change our distribution model and setup process with the plugins. So this sort of thing is out of the cards as well. Since the idea is suppose to be as painless as possible to install.

That's why I was wondering if it could somehow detect that the Scoresaber mod was installed, and read the ID from there (defaulting to the platform ID if Scoresaber isn't there).
That means you wouldn't need to change your model, but yeah it's a jump in complexity.

That's why I was wondering if it could somehow detect that the Scoresaber mod was installed, and read the ID from there (defaulting to the platform ID if Scoresaber isn't there).
That means you wouldn't need to change your model, but yeah it's a jump in complexity.

Problem is with this method is Scoresaber isnt particularly stable within multiplayer for Quest. It crashes pretty much everytime you end a song in a session. So as much as I'd like to find a solution to this problem, there is a bunch of obstacles in the way to making it seamless.

Problem is with this method is Scoresaber isnt particularly stable within multiplayer for Quest. It crashes pretty much everytime you end a song in a session. So as much as I'd like to find a solution to this problem, there is a bunch of obstacles in the way to making it seamless.

Fair enough! Thanks for your work on this stuff. Looking forward to playing with it more when FB land profile support.

Fair enough! Thanks for your work on this stuff. Looking forward to playing with it more when FB land profile support.


pm: Remove unused fields in pm_device

Several fields on struct pm_device are just necessary when
built with PM_DEVICE_RUNTIME.
Signed-off-by: Flavio Ceolin<EMAIL_ADDRESS>

Fixes #42622


Add a commandline parameter to disable cluster sniffing

This is useful in setups where only some nodes are accessible, e.g. due to network/vpn-setup

Thanks fro your contribution.


Strange Unicode characters pass validation, but fail actually sending an email

bad_character = 8203.chr
bad_email =<EMAIL_ADDRESS>
ValidateEmail.valid?(bad_email)
# => true

However, when attempting to send an email to that address via the mail gem, I receive this error: https://github.com/mikel/mail/issues/1126
I'm not entirely sure which gem is the best place to fix this issue, but in my head, this input "should" have been caught by valid_email. Hence, I'm filing the issue here.

I'll note that although the codepoint is described as a zero-width space, it does not match Ruby's /\s/ or /[[:space:]]/ character classes.

I did a little bit of digging into this…
My first thought was to check what category the zero-width space belongs to in order to see if the whole category could be blacklisted. It turns out that it's a member of Cf[1] (which explains why it doesn't get caught by the space regex above), and the other characters don't seem like they ought to be in email addresses. Somewhat hopeful, I went looking for confirmation of this.
But!
RFC 6531, section 3.2 has this cryptic little note:

Although the characters in the  are permitted to contain non-ASCII characters, the actual parsing of the  and the delimiters used are unchanged from the base email specification [RFC5321].

So… :confused:
What does RFC 5321 say?
The local-part is either a dot-string or a quoted-string.
A dotted string is an Atom followed by 0 or more ".", Atom pairs.
An Atom is 1 or more instances of atext.
An atext is…not defined in this spec. Surprise!
It's actually in RFC 5322 section 3.2.3
atext is an (ASCII) alphabet character, a digit (again, ASCII), or one of !#$%&'*+-/=?^_{|}~`
~So far, not a lot of room for zero-width space…or any other Unicode character, really…~
~So let's back up to quoted-string…~
~quoted-string is 0 or more QcontentSMTP entities surrounded by a DQUOTE on either side. (What's a DQUOTE? It's a normal double-quote character ", but to verify that, you need to consult RFC 5234, Appendix B-1)~
~A QcontentSMTP is either a qtextSMTP or a quoted-pairSMTP…~
Ha…nevermind!
atext gets redefined in RFC 6531 section 3.3 so that it also includes UTF8-non-ascii, which via RFC 6531, section 3.1 is any Unicode character whose UTF8 representation requires 2, 3, or 4 bytes (per RFC 3629, Section 4)[2]
So!
It turns out that a valid email address CAN include a zero-width space, but only if the SMTP server supports the SMTPUTF8 extension defined in RFC 6531.
This leaves two major possibilities:

The server we use doesn't support SMTPUTF8, in which case we should refuse to accept any non-ASCII character in an email address prior to performing address validation
The server we use does support SMTPUTF8 and is non-compliant with the spec. (yay!)

In either case, I believe that the valid_email gem is probably correct in allowing this character in an email address.
[1] 'Other, Format' https://www.fileformat.info/info/unicode/category/Cf/list.htm
[2] Interestingly, UTF-8 can include characters that are represented with up to 8 bytes, but the last four were probably added after RFC-3629 was introduced. There's probably an RFC that corrects the definition of non-ASCII UTF-8, but I'm not going to look for it. :weary:

Thank you for the investigation @wenley and @david-mitchell
I will try to read the other RFC to see which non-ASCII UTF8 characters are allowed

Hi! I wanted to revise this thread because I found another example where valid? is returning true where I'm pretty sure it should not return true:
<EMAIL_ADDRESS>=> true

Hi @alexevanczuk,
Thank you for the report. Re-reading this thread, I thought that one of the solution would to only add an option to only allow ASCII characters. That depends on the use case of course. Either add it in this gem, or as a another validation in the application.

@hallelujah I am under the impression that many non-ASCII characters are legitimately allowed in email addresses these days, but emojis are not. I was thinking the emoji change could be made to the existing API and folks can create a "ASCII-only" API later if they want. What do you think?

Actually – looking more into it turns out emojis are just a type of unicode character, hence the existence of this gem: https://github.com/ticky/ruby-emoji-regex.
Given this, it probably makes sense to handle this like other unicode characters. Although – if we can find evidence in the email RFC that some unicode characters (perhaps those used in other non-English alphabets) are allowed, but some (e.g. emojis) are not, that might make more sense to include in the existing API without a separate flag.


Permission problem when running Powershell as a different user

I have Console setup up to run a powershell as a different user. However on a new install of Console <IP_ADDRESS>38 I am getting the error below when I attempt to do anything. Running Powershell directly as this user works as intended.
Oops, something went wrong.  Please report this bug with the details below.
Report on GitHub: https://github.com/lzybkr/PSReadLine/issues/new
Last 7 Keys:
w h o a m i Enter
Exception:
System.UnauthorizedAccessException: Access to the path 'C:\Users\Default\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadline' is denied.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.Directory.InternalCreateDirectory(String fullPath, String path, Object dirSecurityObj, Boolean checkHost)
at System.IO.Directory.InternalCreateDirectoryHelper(String path, Boolean checkHost)
at Microsoft.PowerShell.PSConsoleReadLine.WriteHistoryRange(Int32 start, Int32 end, Func2 fileOpener)    at Microsoft.PowerShell.PSConsoleReadLine.MaybeAddToHistory(String result, List1 edits, Int32 undoEditIndex, Boolean readingHistoryFile, Boolean fromDifferentSession)
at Microsoft.PowerShell.PSConsoleReadLine.InputLoop()
at Microsoft.PowerShell.PSConsoleReadLine.ReadLine(Runspace runspace, EngineIntrinsics engineIntrinsics)

Turns out Windows 10 has PSReadline 1.1 installed which did not work. Using "Install-Module PSReadline -Force" updated to 1.2 and resolved the issue.

I did make a change to improve the experience.  Are you getting a warning about history not being saved now? Or is history actually being saved properly (so when you open a new instance of PowerShell, the history can be recalled from the previous session.)

History works - Very nice feature! Had not even noticed it but this can really boost my experience!


chore(dev-deps): remove supertest package [skip ci]

:tada: This PR is included in version 2.14.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Use last byte of error text as numeric error code

Fixes #352

Coverage increased (+0.2%) to 90.388% when pulling 112ccbd820449b85d7a7541d6b39cb31bdbb1bbb on phst:bug352 into 271ffda903d2b64e3971f41a3e03af1ad0ddc217 on akheron:master.

Merged, thanks!

Good PR, btw. Documentation, tests, all included. Happy to merge! :)


Improve cluster creation doc for AKS to include how to set up Dapr via the AKS Dapr extension

Thank you for helping make the Dapr documentation better!
Please follow this checklist before submitting:

[x] Commits are signed with Developer Certificate of Origin (DCO - learn more)
[x] Read the contribution guide
[x] Commands include options for Linux, MacOS, and Windows within codetabs
[x] New file and folder names are globally unique
[x] Page references use shortcodes instead of markdown or URL links
[x] Images use HTML style and have alternative text
[x] Places where multiple code/command options are given have codetabs

In addition, please fill out the following to help reviewers understand this pull request:
Description
In the Kubernetes cluster creation doc page, added instructions on how to install Dapr via the AKS Dapr extension
Issue reference
https://github.com/dapr/docs/issues/2102

Feedback on how Dapr is deployed to K8s clusters

In the kubernetes-deploy.md doc the Create cluster section (see copied below) is inconsistent. It should
a) include a link to the KiND cluster that has been added
b) The links should be to the GKE doc here https://docs.dapr.io/operations/hosting/kubernetes/cluster/setup-gke/ with this GKE article being updated to have the link to the GKE quickstart, this one https://cloud.google.com/kubernetes-engine/docs/quickstart

Create cluster
You can install Dapr on any Kubernetes cluster. Here are some helpful links:
[Setup Minikube Cluster]({{< ref setup-minikube.md >}})
[Setup Azure Kubernetes Service Cluster]({{< ref setup-aks.md >}})
Setup Google Cloud Kubernetes Engine
Setup Amazon Elastic Kubernetes Service

Can re reorder the Index here https://docs.dapr.io/operations/hosting/kubernetes/ so that is goes

Overview of Dapr on Kubernetes
Kubernetes cluster setup
Deploy Dapr on a Kubernetes cluster
in that order

@msfussell can you clarify where this should be added

with this GKE article being updated to have the link to the GKE quickstart, this one https://cloud.google.com/kubernetes-engine/docs/quickstart

Closing this PR since merge conflicts were complex. New PR with feedback incorporated targeting v1.6 base branch here: https://github.com/dapr/docs/pull/2103


xorg.libX11: 1.7.2 → 1.8.1

Description of changes
Required by https://github.com/NixOS/nixpkgs/pull/182618.
Possible issues: https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/157
https://gitlab.freedesktop.org/xorg/lib/libx11/-/compare/libX11-1.7.2...libX11-1.8.1

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] 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/)
22.11 Release Notes (or backporting 22.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
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Last update: https://github.com/NixOS/nixpkgs/pull/125997
cc @TredwellGit

Maybe fvwm: https://bugs.gentoo.org/841857#c14


Make selection to link to URL on clipboard

Would really like to see a command and corresponding shortcut to make selected text into link to URL on clipboard. It's a little tedious to manually make:
this a link to somewhere
into
this a [link](https...) to somewhere

Oops like to #20 is already open about this. I see the problem is that no API give you access to the clipboard.
How about a keyboard shortcut where it transforms  this:
this a link to somewhere
into this:
this a [link]() to somewhere
and where the cursor is now placed in the parenthesis so we only have to press paste. It's probably possible via a snippet, but why not build it in? 🙂

As you can see in #20,

BTW, this is the upstream issue vscode #31372 preventing this extension to configure the keybinding out-of-box for you.
But it seems to have a low priority... You can vote for this.

You can add this snippet to your user snippets
{
    "command": "editor.action.insertSnippet",
    "args": {
        "snippet": "[$TM_SELECTED_TEXT]($0)"
    },
    "key": "ctrl+l", // or "cmd+l" on Mac
    "when": "editorTextFocus && editorLangId == 'markdown'"
}

Not feasible for now since this kind of snippet cannot be contributed by extension. (You can find more information in the upstream issue Microsoft/vscode#31372)

I see. I've upvoted the upstream issue, and until then the snippet solution is a good fix. Thanks, and apologies for the duplicate issue.


New Alexa vocal algorithm, different commands and behaviours

Hi, recently I discovered new behaviours, Alexa (in Italian language) doesn't support more shutter's command "open", as in Italian similar to "switch on", it became now more specific and say this object (light, as emulated with this module) doesn't support that function. So I need a shutter device, if I don't want to "switch on" the curtains xD, there can be any idea about it?
Another issue: I've created a device "all" to make me to certain actions when I say "Alexa switch off all", but she understands herself all as an action and turn off everything, including curtains. Any way to overcome it? Thanks

There is any way to force on the Alexa app a light to become a shutter?
For the turn all off I may have this idea, I can filter out all messages from Alexa and delay them a couple of seconds, I can create a special device with a useless name and if there is a m  essage incoming about it I'll reset the last message (on delay node) and execute it, if nothing is coming it will be passed the last command

This module will support only lights. You may use Alexa routines to simulate different types of devices and commands. To support a broader range of devices, an Alexa Skill will be needed. More information can be found in issue #196.


Store origin when a room registration occurs

Signed-off-by: Adam Pilkington<EMAIL_ADDRESS>

This change is

LGTM

Reviewed 1 of 3 files at r1, 2 of 2 files at r2.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

map-app/src/main/java/net/wasdev/gameon/map/models/ConnectionDetails.java, line 59 [r2] (raw file):
This should be stated more simply:
"A token used for mutual identification between the room and the mediator during the initial handshake when the connection is established (optional).

Comments from Reviewable

Reviewed 1 of 1 files at r3.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


Tilde is not allowed in cookie-cache's parameter

Tested with 2.8 only, as HEAD crashes on the same config.

Tilde is allowed and is resolved in configcontainer::get_configvalue().


bug: Fixing existing code does not work

Bug description

main branch
logs:
20240321.txt

Engineer ignores error information in _act_code_plan_and_change()

The error information is excluded when formatting the prompt:

Actually, the error information is stored in docs/bugfix.txt:

I've consolidated all the incremental development-related issues into #1498 to make it easier to follow up. Any new issues will be discussed in this newly opened issue, and the old issue will be closed.


Update skeleton app

Upgrade react version
Upgrade react router version
Upgrade WebPack version

Updating React library will require big changes and it will take a lot of time. For the time been I will leave it as it is now.

done


Resolve warnings when using AEXML on Swift 4.2

Hey @tadija,
I have a dependency depending on your AEXML project, but it's leaking a few warnings into my project. I hope it's okay with you that I've taken the liberty to fix them :)
First commit resolves the compile-time warning
Sources/Document.swift:28:14: 'let' properties are implicitly 'final'; use 'public' instead of 'open'

which occurs because final properties (which let properties always are) are not able to be open and should instead just be public.
Second commit resolves the warning that occurs when installing the AEXML package via Swift Package Mananger.
warning: PackageDescription API v3 is deprecated and will be removed in the future; used by package(s): AEXML

This occurs because the Package.swift is using an outdated syntax.
As part of updating the syntax, I have also moved the source files from Sources/ to Sources/AEXML/ because that's where SPM expects the sources to be now.
That folder structure was already used for the tests, so I have left them be as they were.

I just noticed that this fixes https://github.com/tadija/AEXML/issues/149

Hi @stjernegard,
thank you very much for the detailed description and this pull request in general.
It's now merged in the latest version (4.3.1).
Cheers


Automate integ test using RPM bundle.

Currently our integ tests are working only for using tarball distribution. We now have workflow to generate RPM bundle. We need incorporate the automated integ tests for RPM bundle.

Re-open as we add the functionality but not added to distribution pipeline yet.

Close this from our side as dashboards is handled by @tianleh team.


Addresses the issue with help getting stuck on remote.

Added more logging and info text to diagnose this better.

👍

👍


There is no option to give passphrase to open db in browser

You can do this in the Gradle:
If for example, PERSON is the database name. DB_PASSWORD_{VARIABLE}
debug {
resValue("string", "DB_PASSWORD_PERSON", "password")
}

Dear Amit,
Thanks for the reply.
I want to tell you that, you people are doing great work for android
community.
Keep it up.
Thanks and Regard,
Mahesh
On Thu, 5 Mar 2020 at 3:37 PM, AMIT SHEKHAR<EMAIL_ADDRESS>wrote:

You can do this in the Gradle:
If for example, PERSON is the database name. DB_PASSWORD_{VARIABLE}
debug {
resValue("string", "DB_PASSWORD_PERSON", "password")
}
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/amitshekhariitbhu/Android-Debug-Database/issues/182?email_source=notifications&email_token=AIXBFTRS6JDYRQT3R74YZILRF52UHA5CNFSM4LCDZ3OKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEN4SHHQ#issuecomment-595141534,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIXBFTXVM24SZW62CW57FG3RF52UHANCNFSM4LCDZ3OA
.

--
Thanks & regards ,
Mahesh

@amitshekhariitbhu , in my case password is created dynamically in runtime and could have different values even on a single device.  So passing value in compile time is useless. Is it possible to pass password in runtime?


Keep getting errors when trying to run a Fabric Pattern

Whenever I try to run a Fabric Pattern I downloaded,
I get this error -

The plugin recognizes the pattern when I search for it but after running the plugin I am getting this error every time.
I double checked and the files are in the right spot.

Do you have the pattern folder nested? Or at root?

I tried to set it both on a nested folder and on the root folder as
well and I am getting the same error message.
On Wed, Oct 2, 2024 at 11:35 PM Chase Elder @.***>
wrote:

Do you have the pattern folder nested? Or at root?
—
Reply to this email directly, view it on GitHub
https://github.com/chasebank87/mesh-ai/issues/23#issuecomment-2389650184,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AI3PDUTKJV2FKM24LG34GHLZZRKKBAVCNFSM6AAAAABPFK5Y32VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOBZGY2TAMJYGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Noam Naumovsky
Director, Video Editor, Motion Designer
| m: 972-52-6784960 | e: @.***
| w: www.noamn.com/video-works http://www.noamn.com/video-works

https://www.instagram.com/noam_nau/
https://www.linkedin.com/in/noamnaumovsky/ https://wa.me/972526784960
http://discord.gg/fjkTqX4AwE @.***>

Sure, here it is -
[image: image.png]
On Thu, Oct 3, 2024 at 4:21 PM Chase Elder @.***> wrote:

Can you show me a screenshot of how the paths look in settings?Sent from
my iPhoneOn Oct 3, 2024, at 9:13 AM, endlessblink @.***> wrote:
I tried to set it both on a nested folder and on the root folder as
well and I am getting the same error message.
On Wed, Oct 2, 2024 at 11:35 PM Chase Elder @.***>
wrote:

Do you have the pattern folder nested? Or at root?

—

Reply to this email directly, view it on GitHub

<
https://github.com/chasebank87/mesh-ai/issues/23#issuecomment-2389650184>,

or unsubscribe

<
https://github.com/notifications/unsubscribe-auth/AI3PDUTKJV2FKM24LG34GHLZZRKKBAVCNFSM6AAAAABPFK5Y32VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOBZGY2TAMJYGQ>

.

You are receiving this because you authored the thread.Message ID:

@.***>

--
--
Noam Naumovsky
Director, Video Editor, Motion Designer
| m: 972-52-6784960 | e: @.***
| w: www.noamn.com/video-works http://www.noamn.com/video-works

https://www.instagram.com/noam_nau/
https://www.linkedin.com/in/noamnaumovsky/ https://wa.me/972526784960
http://discord.gg/fjkTqX4AwE @.***>
—Reply to this email directly, view it on GitHub, or unsubscribe.You are
receiving this because you were assigned.Message ID: @.***>
—
Reply to this email directly, view it on GitHub
https://github.com/chasebank87/mesh-ai/issues/23#issuecomment-2391407659,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AI3PDUR4C2KQORIWVTCMIVTZZVAEJAVCNFSM6AAAAABPFK5Y32VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOJRGQYDONRVHE
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Noam Naumovsky
Director, Video Editor, Motion Designer
| m: 972-52-6784960 | e: @.***
| w: www.noamn.com/video-works http://www.noamn.com/video-works

https://www.instagram.com/noam_nau/
https://www.linkedin.com/in/noamnaumovsky/ https://wa.me/972526784960
http://discord.gg/fjkTqX4AwE @.***>

It seems like it was indeed something with the path, it is working now that
I created a new folder. Thank you!
On Sat, Oct 5, 2024 at 12:35 PM נועם נאומובסקי @.***>
wrote:

Sure, here it is -
[image: image.png]
On Thu, Oct 3, 2024 at 4:21 PM Chase Elder @.***>
wrote:

Can you show me a screenshot of how the paths look in settings?Sent from
my iPhoneOn Oct 3, 2024, at 9:13 AM, endlessblink @.***> wrote:
I tried to set it both on a nested folder and on the root folder as
well and I am getting the same error message.
On Wed, Oct 2, 2024 at 11:35 PM Chase Elder @.***>
wrote:

Do you have the pattern folder nested? Or at root?

—

Reply to this email directly, view it on GitHub

<
https://github.com/chasebank87/mesh-ai/issues/23#issuecomment-2389650184>,

or unsubscribe

<
https://github.com/notifications/unsubscribe-auth/AI3PDUTKJV2FKM24LG34GHLZZRKKBAVCNFSM6AAAAABPFK5Y32VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOBZGY2TAMJYGQ>

.

You are receiving this because you authored the thread.Message ID:

@.***>

--
--
Noam Naumovsky
Director, Video Editor, Motion Designer
| m: 972-52-6784960 | e: @.***
| w: www.noamn.com/video-works http://www.noamn.com/video-works

https://www.instagram.com/noam_nau/
https://www.linkedin.com/in/noamnaumovsky/ https://wa.me/972526784960
http://discord.gg/fjkTqX4AwE @.***>
—Reply to this email directly, view it on GitHub, or unsubscribe.You are
receiving this because you were assigned.Message ID: @.***>
—
Reply to this email directly, view it on GitHub
https://github.com/chasebank87/mesh-ai/issues/23#issuecomment-2391407659,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AI3PDUR4C2KQORIWVTCMIVTZZVAEJAVCNFSM6AAAAABPFK5Y32VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOJRGQYDONRVHE
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Noam Naumovsky
Director, Video Editor, Motion Designer
| m: 972-52-6784960 | e: @.***
| w: www.noamn.com/video-works http://www.noamn.com/video-works

https://www.instagram.com/noam_nau/
https://www.linkedin.com/in/noamnaumovsky/ https://wa.me/972526784960
http://discord.gg/fjkTqX4AwE @.***>

--
Noam Naumovsky
Director, Video Editor, Motion Designer
| m: 972-52-6784960 | e: @.***
| w: www.noamn.com/video-works http://www.noamn.com/video-works

https://www.instagram.com/noam_nau/
https://www.linkedin.com/in/noamnaumovsky/ https://wa.me/972526784960
http://discord.gg/fjkTqX4AwE @.***>

Thanks!


investigating e2e cypress bug

fixes #125

I believe this file might have a typo on it.. looking into that now.. let's hold up on the review until this is rectified.

This is now open for review please! TY!


Floating point exception in billboard path display when path size greater than 16384

To reproduce:
- Have a node publish a path message greater of length 16385 or greater.
- Attempt to view the path in RViz with Line Style set to "Billboards".
- RViz crashes with floating point exception.
Appears to display fine with path sizes <= 16384.
I'm running Indigo on Ubuntu 14.04.
Possibly related: #957

Also happens with LINE_STRIP markers.

@jacobperron, or @ojura, if you have a bag file or Python script that can produce a sample path which causes the problem, that would save me some time in debugging it.

In reference to https://github.com/ros-visualization/rviz/issues/1067#issuecomment-315837689:
I have not, I'm trying to work through my backlog as fast as I can. If you don't provide a Python script or bag file then I'll still get to asap, but it always helps to have something from the reporting party to make sure I'm not making some assumptions you're not, which might end up being important.

@wjwwood Here is a bag containing a long path: https://drive.google.com/open?id=0B9O4b91VYXMdNWpCcTdzejUxMk0
Viewing as Line is good, but viewing as Billboards results in crash.

Thanks @jacobperron I'll have a look as soon as possible.

Here's a bag and an rviz config for the LINE_STRIP marker.
https://www.dropbox.com/s/oa3jlijzrvygj9p/rviz_linestrip_crash.zip?dl=0

So, I figured out how to make it not crash, see: https://github.com/ros-visualization/rviz/tree/fix_large_billboard_line_chain
But I'm not sure that's the correct solution, or put another way, I'm not sure why there is a MAX_ELEMENTS and I'm not sure defaulting lines_per_chain_ to 1 when drops below that is the right thing to do. Since I don't know what it should look like rendering, I don't know if this change makes it not crash but then doesn't render it correctly.
I don't know what I'm going to do to try and test it out. I could find a regular shape, which I can predict what it should look like and then see if it renders correctly with the change. But my next step is to just try and understand why the limit is hardcoded in there and try to understand what exceeding it (resulting in a value between 1 and 0) actually means.

To test rendering correctness, could you not just duplicate the path topic where one is visualized as lines (presumably correct) and the other as billboards? They should overlay each other perfectly.

@jacobperron that's a good idea, though it might be hard to see when the set is so big. I think I'd basically have to zoom in and pan over the entire thing. When you zoom way out you get some strange rendering artifacts with the billboards, but I don't there's anything to be done about that.

when drops below that

How can lines_per_chain_ be less than zero? Sounds like there's an integer overflow somewhere in the billboard pipeline, and having more than 16384 points results in some calculation turning out a negative result.

@ojura I don't think lines_per_chain_ is becoming less than zero, but I think it was becoming zero and I think that is because MAX_ELEMENTS / max_points_per_line_ is integer division and if max_points_per_line_ is ever greater than MAX_ELEMENTS the result will be zero, e.g. 1 / 2 = 0 in integer division. Since this is a division operation, I think it is unlikely that there is an integer overflow or underflow. Also the set we're talking about is nowhere near the signed or unsigned capacity of a 32-bit integer.

Yes, I was reading your words too literally. I have tried running git blame to see who introduced the MAX_ELEMENTS, but the line originates from an earlier SVN repo (https://code.ros.org/svn/ros-pkg/stacks/visualization_common), which is offline.

The proposed workaround results in a crash of RViz caused by too many elements.
rviz: /build/ogre-1.9-mqY1wq/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreBillboardChain.cpp:673: virtual void Ogre::BillboardChain::updateIndexBuffer(): Assertion `((e + seg.start) * 2) < 65536 && "Too many elements!"' failed.
The bag file used for testing containing a path with 148,520 points is attached.
2018-06-21-12-36-27.bag.zip

@MatthiasNieuwenhuisen thanks for the sample bag file. I won't have time to look into this, though others might pick it up out of the backlog.

This is still an issue in melodic for me, I get the following:
rviz crashed with SIGFPE in rviz::BillboardLine::setupChains()
I fixed it on my application side by downsampling the path once it got long:
std::vector<geometry_msgs::PoseStamped> poses_imu;
nav_msgs::Path path_arr;
for(size_t i=0; i<poses_imu.size(); i+=std::floor(poses_imu.size()/16384.0)+1) {
    path_arr.poses.push_back(poses_imu.at(i));
}

This happens here http://docs.ros.org/jade/api/rviz/html/c++/billboard__line_8cpp_source.html#l00151
uint32_t lines_left = num_lines_ % lines_per_chain_;

If lines_per_chain_ is zero the modulo will become division by zero.

Fixed via #1662.


[Workers KV] Create advanced-kv-guide.md

Write up tips and tricks that might be relevant to advanced users.

@vlovich reading through this, great content, it reads as if it was a document we should've always had. I'm glad we're finally writing this.
@Maddy-Cloudflare wants to break into sections to make it a bit more readable. I agree, but feel that the current proposed sections dont present topically different information. Please work with her to improve the information design to make it a bit more digestable
Only critique is we should probably discuss "How to get early access to get sub 1 minute consistency latency." as a team and with our leadership before bringing to our customers. Lets split that out into a separate commit once we align there

@Maddy-Cloudflare please feel free to make whatever structural changes are needed & update this PR.

Closing this PR out externally... but moving to an internal ticket for tracking and prioritization.
PCX-10697 for reference.


Change RTK to base64

Instead of using a string for the (binary) RTCMv3 corrections, I want to change this to a base64 encoded string.
This would be the same as it's done in LogStreaming.

This issue has been mentioned on Discussion Forum for PX4, Pixhawk, QGroundControl, MAVSDK, MAVLink. There might be relevant details there:
https://discuss.px4.io/t/gps-rtcm-data-not-recognized-by-f9p-chip-u-center/30915/7


Bump Going.Plaid to 4.15.1

This fails in dependabot, so will need to be done manually
Error: /home/runner/work/PlaidQuickstartBlazor/PlaidQuickstartBlazor/Server/Controllers/FetchController.cs(490,23): error CS0029: Cannot implicitly convert type 'Going.Plaid.Entity.TransferNetwork' to 'string' [/home/runner/work/PlaidQuickstartBlazor/PlaidQuickstartBlazor/Server/PlaidQuickstartBlazor.Server.csproj]
Error: /home/runner/work/PlaidQuickstartBlazor/PlaidQuickstartBlazor/Server/Controllers/FetchController.cs(491,24): error CS0029: Cannot implicitly convert type 'Going.Plaid.Entity.AchClass' to 'string' [/home/runner/work/PlaidQuickstartBlazor/PlaidQuickstartBlazor/Server/PlaidQuickstartBlazor.Server.csproj]
Error: /home/runner/work/PlaidQuickstartBlazor/PlaidQuickstartBlazor/Server/Controllers/FetchController.cs(492,20): error CS0029: Cannot implicitly convert type 'Going.Plaid.Entity.TransferType' to 'string' [/home/runner/work/PlaidQuickstartBlazor/PlaidQuickstartBlazor/Server/PlaidQuickstartBlazor.Server.csproj]

This was created by Plaid API 1.181.1, where TransferCreate request moved from enums to string
https://plaid.com/docs/api/products/transfer/#transfercreate

FYI: plaid devs agreed that input values would be enums and output values would be strings. This is so that output values are not restricted to updates. I would expect future changes of this kind, though they may not affect this demo directly.


Different Map for Selected Item

I propose to add a new function to NonEmptyArray to map different functions depending on if an item in the list is selected or not. You can find the function definition below.
I am currently creating an interface inspired by Gmail's tablet interface: a list view on the left, and a detail view on the right. The user would select an item from the list, and the app would display its details in the view to the right. The design asks for the selected item to be visually distinct from the rest of the items.
Whenever I want to select or modify one element in a list without knowing beforehand its position in the list, I reach for Array and its  get and set functions. Other users solve this problem using List and its indexedMap and foldl functions by checking if the index matches the one given. I avoid this since these functions traverse the whole list, which is always going to be slower compared to Array especially as the list grows longer. NonEmptyArray benefits the app since I know that there is always going to be at least an item, so I can use getSelected without dealing with Maybe.
I created two functions Int -> Item -> Html Msg, one for when the item is selected and the other for the other items. I also created a function that maps the items with these two functions:
indexedMapSelected : { selected : Int -> a -> b, other : Int -> a -> b } -> NonEmptyArray a -> NonEmptyArray b
indexedMapSelected { selected, other } array =
    let
        choose index =
            if index == NonEmptyArray.selectedIndex array then
                selected index
            else
                other index
    in
    NonEmptyArray.indexedMap choose array

Yesterday, I mentioned to this package owner the List.Selection.mapSelected function as inspiration for the function I created, but that was before I realize I need the index in the Array to pass in a Msg.
mapSelected : { selected : a -> b, other : a -> b } -> NonEmptyArray a -> NonEmptyArray b
mapSelected { selected, other } array =
    let
        choose index =
            if index == NonEmptyArray.selectedIndex array then
                selected
            else
                other
    in
    NonEmptyArray.indexedMap choose array

This looks good to me and I would be willing to add the two functions.
Here is one thing I would like to discuss: I'm not sure about the benefit of using a record type in the type signatures of the functions. If I had written the functions I would have written them like this:
mapSelected : ( a -> b ) -> ( a -> b ) -> NonEmptyArray a -> NonEmptyArray b
mapSelected selectedFn otherFn array =
   ...

indexedMapSelected : ( Int -> a -> b ) -> ( Int -> a -> b ) -> NonEmptyArray a -> NonEmptyArray b
indexedMapSelected selectedFn otherFn array =
   ...

That's also how most library functions would be defined for similar use cases. I would prefer this way unless there are very good reasons for using the record type.
So, if you want to prepare a PR for this (including documentation and tests) I will merge it. Note that almost all functions have executable examples in their doc comments, so I would appreciate if the two new functions also have those (see tests and elm-verify-examples)
Aside: When you mentioned the idea on the Elm slack and cited List.Selection.map as an inspiration I thought that this new function should also support multiple selected elements which would not be a good fit for Array.NonEmpty but with only one selected element it fits in nicely.

I can prepare that PR.
Using a record as an input: The problem I see is that the compiler can't distinguish between the function to map the selected item and the function to map the other items, because they share the same type. That means that a programmer can accidentally place the two functions in the wrong spot in the arguments. The solution implemented by List.Selection.mapSelected is to have a record, so that the keys of the record provide some meaning to the functions used as its values. Another possibility is to create types for the two spots and export them in the library. Besides that it's a little heavy-handed, the compiler will now have the information to distinguish between the two functions, but then we just moved the problem from the function to the creation of the types. What do you think?
Aside to your aside: I corrected the link in the original issue for List.Selection.mapSelected. Both this and List.Selection has only one selected item.

I think I would still prefer just two functions, accepting that the client code has the responsibility to pass the functions in the right order. However, I do not really have a strong opinion here and I see your point. If you want to go with the record type, that's also fine.
Aside to your aside to my aside: I though you were talking about http://package.elm-lang.org/packages/TheSeamau5/selection-list/latest.

I actually prefer the API from the link you provided: http://package.elm-lang.org/packages/TheSeamau5/selection-list/1.0.0/SelectionList#selectedMap
What do you think? Add a Bool argument to the beginning of the functions that is True when the item is selected? It would make the function type shorter and the user can compose the function using the other two functions that they have.

So it would become something like this:
mapSelected : (Bool -> a -> b) -> NonEmptyArray a -> NonEmptyArray b
mapSelected function array =
    let
        innerFn index =
            function (index == NonEmptyArray.selectedIndex array)
    in
    NonEmptyArray.indexedMap innerFn array

Yes, I like that! Let's go with that.


Test core functionality

Testing 3 files for now:

core/alert
core/compatible
core/get_modules

@ChakshuGupta : let me know if you think any other file should be tested and is missing in here.

One test seems to be failing - test_virtual_machine_container_names.


run example/warpctc/lstm_ocr.py

`begin fit
infer label shape: 128
2016-07-01 09:54:48,300 Start training with [gpu(3)]
infer label shape: 128
infer label shape: 128
infer label shape: 128
iter
Traceback (most recent call last):
File "lstm_ocr.py", line 165, in
batch_end_callback=mx.callback.Speedometer(BATCH_SIZE, 50),)
File "../../python/mxnet/model.py", line 788, in fit
sym_gen=self.sym_gen)
File "../../python/mxnet/model.py", line 221, in _train_multi_device
for data_batch in train_data:
File "lstm_ocr.py", line 66, in iter
img = self.captcha.generate(num)
File "/usr/local/lib/python2.7/dist-packages/captcha/image.py", line 40, in generate
im = self.generate_image(chars)
File "/usr/local/lib/python2.7/dist-packages/captcha/image.py", line 220, in generate_image
self.create_noise_curve(im, color)
File "/usr/local/lib/python2.7/dist-packages/captcha/image.py", line 132, in create_noise_curve
Draw(image).arc(points, start, end, fill=color)
File "/usr/lib/python2.7/dist-packages/PIL/ImageDraw.py", line 164, in arc
self.draw.draw_arc(xy, start, end, ink)
TypeError: must be sequence of length 4'

when I sudo pip install -U Pillow,I correct my mistake

@Yang507
I compiled warp-ctc and mxnet successful.
I add warp-ctc in config.mk,
but when I run lstm_ocr.py, the problem disapper
/*
sm = mx.sym.WarpCTC(data=pred, label=label, label_length = num_label, input_length = seq_len)
AttributeError: 'module' object has no attribute 'WarpCTC'
*/
Did you have idea about this?

You install warp-catch in which directory, I installed it in my home path,$warp-ctc=/home/user/warp-ctc, the path should match with your path of config.mk, then make mxnet again !
发自我的 iPad

在 2016年7月10日，下午8:48，Everal<EMAIL_ADDRESS>写道：
@Yang507
I compiled warp-ctc and mxnet successful.
I add warp-ctc in config.mk,
but when I run lstm_ocr.py, the problem disapper
/*
sm = mx.sym.WarpCTC(data=pred, label=label, label_length = num_label, input_length = th seq_len)
AttributeError: 'module' object has no attribute 'WarpCTC'
*/
Did you have idea about this?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@Yang507
I am not install in $HOME path, but I modify the path in the config.mk.

$Home maybe /home/user/, you can try to modify the path in the config.mk. You can follow with me installed warp in your home path and don't change the path in the config.mk if the problem is not be solved.
发自我的 iPad

在 2016年7月10日，下午10:52，Everal<EMAIL_ADDRESS>写道：
@Yang507
I am not install in $HOME path, but I modify the path in the config.mk.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@Yang507
Thanks for you advice, I solve the problem already.
my path is right, but i am not notice that I need copy the config.mk to mxnet_root.
Thank you very much.


Move headers to implementation area

This moves jsoncharutils.h, numberparsing.h, and simdprune_tables.h to src/ because they only appear to be used by the parser implementation.
There is assuredly more that can be moved, but I can't tell which of the headers/functions are intended to be inlined for users, so I left most stuff alone.

Merge at will!


fix/provider-now-also-checks-pool-before-preparing

Codecov Report

Merging #312 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff           @@
##           master    #312   +/-   ##
======================================
  Coverage    58.6%   58.6%
======================================
  Files          41      41
  Lines        3464    3464
  Branches      392     392
======================================
  Hits         2030    2030
  Misses       1342    1342
  Partials       92      92

Impacted Files
Coverage Δ

vmpool/endpoint.py
70.54% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Call functions and procedures

What is the correct way to call functions and procedures in NPoco? I'm using Oracle.
I looked at the source in 2.0 and 3.0 and the CommandType on IDbCommand object is never changed, so I always get: ORA-00900 invalid SQL statement.
Why isn't it possible to override the IDbCommand.CommandType property to CommandType.StoredProcedure so it can be executed as a function or a procedure, and not as CommandType.Text (SQL query). I need to be able to execute a function and get the return value without having to execute it as a SQL query and in a PL/SQL block with begin and end.
Normally, without going through NPoco, I would do something like:
using (var connection = new OracleConnection())
{
    connection.ConnectionString = "MyConnectionString";
    connection.Open();

    using (var cmd = new OracleCommand())
    {
        cmd.Connection = connection;

        cmd.CommandText = "myFunction";
        cmd.CommandType = CommandType.StoredProcedure;

        cmd.Parameters.Add("Return_Value", OracleDbType.Varchar2);
        cmd.Parameters["Return_Value"].Direction = ParameterDirection.ReturnValue;
        cmd.Parameters["Return_Value"].Size = 20;

        cmd.Parameters.Add("param1", param1);
        cmd.Parameters.Add("param2", param2);

        cmd.ExecuteNonQuery();
    }
}

This has always worked for me.
db.Execute("call sp_mysp(@0)", "myparamdata");

or for a function
db.ExecuteScalar("select f_myfunc(@0) from dual", "myparamdata");

Note, that "myparamdata" can be an actual OracleParameter object as well.

@schotime If the function has some DML (insert, update, delete) it cannot be used like this: select f_myfunc(@0) from dual. You would have to mark the function with a PRAGMA AUTONOMOUS_TRANSACTION - but I wouldn't recommend it, because it creates a new nested transaction.
Why not give the possibility in NPoco to override the CommandType and use the built-in functionality of the Oracle Provider to run a sproc/func properly?

Suggest away....not easy without breaking everything.

Are you sure? How about creating an overloaded method that accepts CommandType as a parameter. Change CreateCommand() so it will accept it as an optional parameter, and pass it in. If passed (not null), assign it to the IDbCommand instance. If not, it's default Text.
This way, the default works, but you now have an option to choose a CommandType.

Go for it.
Firstly there would need to be 25+ overloads and then we would break all
the interceptors as they would need to take the command type as well.
Happy to take a PR though.

Might be able to get this in for the next release. For Execute and ExecuteScalar that take the Sql object.

@schotime That would be awesome and highly appreciated. This is the only thing that distincts NPoco from great micro-ORMs like Dapper. I insisted to my team to use NPoco, because the API is great, easy to mock in tests, has fluent mapping capability, query builder, etc. but the lack of this has been disappointing for me and my team, because we went from Dapper to NPoco and Dapper has this option. But NPoco is superior to Dapper, so I would hate to have to stop use it.
However, I was going to contribute but was not able to run the tests because I'm not familiar with NUnit or. NET Core. It would be nice to add a contribution guide for those who are not familiar with the environment around the project.
I'm very much looking forward to this. Do you have some kind of release notes so I can know when this feature lands? Also would this only be in 3.x? We're still in 2.x but we'll upgrade as soon as this is added.
Thank you very much for your hard work. This is an awesome project.

This has landed in Nuget 3.4.0 with support for dotnet core 1.0.
To run tests navigate to test\NPoco.Tests and from the command prompt run dotnet run
I'll try and get this added somewhere.

Awesome, thank you! Does it also support .NET non-Core ?

One question, will this also be available for: Execute(string sql, params object[] args) and ExecuteScalar<T>(string sql, params object[] args) in next releases?
If the reason for not adding it was the params arguments then C# has had named arguments since version 4.0 and Dapper uses them for this purpose.
So the function could be specified as:
public int Execute(string sql, params object[] args, CommandType commandType)```

and called like this:

int result = Execute("someProc", arg1, arg2, arg3, commandType: CommandType.StoredProcedure);

What do you think?

Also, I looked at 79e1bc and I can't see that you're assigning the input parameter commandType to cmd.CommandType ... this doesn't do anything, except changes the public API for Execute and ExecuteScalar<T>  :confused:
Going to reopen this.

Firstly, that is a bug. My bad.
Secondly, you can't have named and positional arguments. The example you have specified is not possible.

Sorry. Then how about an overload with CommandType infront of params:
public int Execute(string sql, CommandType commandType, params object[] args);

I'm going to close this issue, I see that this has been fixed in 3.4.1. Great job!

The only difference I can see is that the new CreateStoredProcedureCommand() method doesn't use the AddParameter() method like CreateCommand() does, so I can't use @0, @1 parameters.

This doesnt work for Oracle.ManagedAccess.Client.
Got the following error:
Unable to cast object of type 'Oracle.ManagedDataAccess.Client.OracleParameter' to type 'Oracle.DataAccess.Client.OracleParameter'.
Find my snippet below:
var retVal = new RacDetailsResponse();
try
{
using (var context = InternalDb.GetInstance())
{
var param1 = new OracleParameter("P_ACCOUNT_NUMBER", OracleDbType.Varchar2, phone, ParameterDirection.Input);
var param2 = new OracleParameter("P_PROD_TYPE", OracleDbType.Varchar2, productType.ToUpper(), ParameterDirection.Input);
                //var param3 = new OracleParameter("P_OUT", OracleDbType.RefCursor, DBNull.Value, ParameterDirection.Output);
                var param3 = new OracleParameter("P_AMOUNT", OracleDbType.Decimal, 0, ParameterDirection.Output);
                var param4 = new OracleParameter("P_REASON", OracleDbType.Varchar2, 3999 ,"" , ParameterDirection.Output);
                string proc_name = "PKG_GH_LOAN_CALCULATOR.PRC_PAYDAYLOAN_CALCULATOR";
                context.Execute(proc_name, CommandType.StoredProcedure, param1, param2, param3, param4);
                var amt = param3.Value.ToString();
                var reason = param4.Value.ToString();

                if (reason == "Eligible")
                {
                    retVal.ResponseCode = "00";
                    retVal.amount = amt;
                }
                else
                {
                    retVal.amount = "0";
                    retVal.ResponseCode = "02";
                    retVal.FullDescription = reason;
                }

            }

How to handle output parameters?


CHM encoding of HTML content inside topics should always be UTF-8

One of our users had the following problem:
Let's say I have a DITA topic, I have no language specified to it's considered to be en-us.
At a certain point in the topic I use a certain non-ASCII character <ph>✓</ph>.
After publishing to CHM, the character is replaced with an invalid character in the HTML output.
This happens because the "org.dita.dost.util.ConvertLang" Java task has looked into the /org/dita/dost/util/codepages.xml and considered that for en-us it should use "iso-8859-1" which cannot encode that specific character. Looking in the same codepages.xml file the encoding is UTF-8 for certain languages.
In my opinion the encoding used for the HTML content obtained from the DITA topics (not for the HHP and HHC files which are created separately) should always pe UTF-8 and the codepages.xml should be eliminated.
What I could find on the web about this:

If the HTML is encoded as Unicode (UTF-8 or UTF-16 aka UNICODE) non-English chars won't be handed correctly in the HH navigation (TOC, Index, Search). The embedded browser (content area on right of the help viewer) will however display the topic text fine since this is a UNICODE enabled control.

Or at least for en-us we could use utf-8 because it is a perfect superset of ASCII which can encode all English chars.

I'm unable to test this as Windows is needed. Can someone confirm that CHM will work on "all" cases if the actual content pages are output as UTF-8 and only TOC, index, and search are converted to language specific encoding?

We've been using UTF-8 for the content for years, while converting the HHP, HHC, and HHK files to a specific codepage for the locale. It's worked for all of the languages we use (all those currently in the toolkit).

Looking at this again - it looks like there were a couple of closed pull requests but the function hasn't been added yet in 2.2. I think this would be a good change. It might also take care of #1383, at least for text in the content (at least for those not in the TOC / index / search).

I think I closed this one myself because there were failed tests after my changes. Maybe you could try to make changes on your side and run the tests, see if they should be rectified in some way.

+1
Had one more end user using reserved chars in the DITA content like "" and expecting them to be carried as such to the HTML content in order to be displayed with a custom font they have.

3.0.1 fixed the project files so that they use Windows code pages and avoid entities when possible. I'd forgotten about this one, otherwise it probably would have made sense to make the same change at the same time. As mentioned in 2016, I think it's a good idea to leave the HTML as-is, because the system browser used to handle it can handle UTF-8 without any problems. This would also mean we don't need to convert any entities in the HTML files for HTML Help -- only the project files would need to be converted.

Another encoding problem, let's say the title of the DITA Map contains the character "³". The ".hhp" contains this map title and when the "ConvertLang" is run, it will convert the character to "³" which will appear as it is in the opened CHM help. This conversion to an entity reference is done even if the "windows-1252" encoding can encode this specific character.

👍 Just had another end user encounter this problem.

👍 and yet another client using Chinese content with DITA to CHM output complained about this.

Spent some more time today on this.
About the problem with "³" being shown in the window title bar as ³, the code in:
org.dita.dost.ant.ConvertLang.convertEntityAndCharset(File, String)
seems to prefer using the entity reference although sometimes the output encoding can encode a certain character.
The patch I made on my side was to first check that the output encoding can or cannot encode a character before using the entity reference equivalent. Something like:
        //START OXYGEN PATCH FOR EXM-44494
        CharsetEncoder outputCharsetEncoder = null;
		try {
			Charset outputCharset = Charset.forName(charset);
        	outputCharsetEncoder = outputCharset.newEncoder();
        } catch(Exception ex) {
        	//This should not happen
        	ex.printStackTrace();
        }
        //END OXYGEN PATCH FOR EXM-44494

        //read a character
        int charCode = reader.read();
        while(charCode != -1) {
            final String key = String.valueOf(charCode);
            //Is an entity char
            if (entityMap.containsKey(key) &&
                    !entityExceptionSet.contains(charCode)) {
                //START OXYGEN PATCH FOR EXM-44494
            	if(outputCharsetEncoder != null && outputCharsetEncoder.canEncode((char)charCode)) {
            		//Can be encoded, no need to convert to entity
            		writer.write(charCode);
            	} else {
                //END OXYGEN PATCH FOR EXM-44494
            		//get related entity
            		final String value = entityMap.get(key);
            		//write entity into output file
            		writer.write(value);
            	}
            } else {
                //normal process
                writer.write(charCode);
            }
            charCode = reader.read();
        }


TypeError when using properties, super(), and slots=True

Below is an almost exact replica of issue 102, which is persisting in 19.3.0.
import attr

@attr.s(slots=True)
class A:
    @property
    def f(self):
        pass

@attr.s(slots=True)
class B(A):

    @property
    def f(self):
        super().f()

B().f()

produces
TypeError: super(type, obj): obj must be an instance or subtype of type.

This doesn't seem to be an issue anymore? I'm getting TypeError: 'NoneType' object is not callable which makes sense because you're trying to call a property that returns a None. Feel free to ping if I'm missing something.


Added matrix calculator

Fixes Issue🛠

Closes #37
Description👨💻
A web-based matrix calculator supporting basic operations (addition, subtraction, multiplication), determinant calculation, matrix inversion, and transpose, designed for square matrices of sizes 2x2, 3x3, and 4x4.

Type of change📄

[x] New feature (non-breaking change which adds functionality)

This has been tested✅

Checklist✅

[x] 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
[x] I have added demonstration in the form of GIF/video file
[x] I am an Open Source Contributor

Screenshots/GIF📷

Pls resolve the conflicts and add screenshot in Readme.md file @pankhuri92

Pls resolve the conflicts.
Add screenshot in Readme.md file.
Handle NaN values in the calculator.

@pankhuri92

The conflicts have been resolved. And other necessary changes are done.

Merged!! 🎉✨ @pankhuri92


Blobstore/Archival Interfaces

This was just to preview diff with Venkat, CR was not yet ready for review.


mapnik-config: not found

During installation of blend package from npm, build fails with:
[...]
/bin/sh: 1: mapnik-config: not found
gyp: Call to 'mapnik-config --cflags' returned exit status 127 while in binding.gyp. while trying to load binding.gyp
gyp ERR! configure error
[...]

Ideally, the mapnik(-config) dependency is just stripped from this module.

This module depends on node-mapnik. By default node-mapnik is installed via a binary and therefore no external dependencies are needed. If mapnik-config is being looked for that means the binary install of node-mapnik did not work for your platform. In that case please provide a detailed error reporting to https://github.com/mapnik/node-mapnik/issues with your platform and node version.


How to get cursor position.

How to get a cursor position of editor. I have a button outside of editor and whenever I will click on that button I need a cursor position of editor.
import { VueEditor, Quill } from 'vue2-editor'
Inside the method, I am printing
console.log(quill.getSelection())
But getting this error "New.vue:113 Uncaught TypeError: __WEBPACK_IMPORTED_MODULE_1_quill_dist_quill_js___default.a.getSelection is not a function"

Listen to focus and blur events like

<vue-editor @focus="toggleFocus($event)"
            @blur="toggleFocus($event, false)"/>

Get quill from the parameter like

elementToggleFocus: function(event, id, focused = true){
   this.quill = focused ? event : {};
}

Then from there you can use it like console.log(quill.getSelection())
Hope this helps.

quill.getSelection()  is null..

This issue is stale because it has been open for 60 days with no activity.

This issue was closed because it has been inactive for 7 days since being marked as stale.


Fix: Moving default-features to root Cargo.toml

Fix for: https://github.com/atlassian-labs/atlaspack/actions/runs/11470088844/job/31918601541

https://github.com/atlassian-labs/atlaspack/pull/151/files


There is no Digital Object Identifiers (DOI) to make the code citable for academic references

URL(s) with the issue:
https://github.com/tensorflow/tensorflow/blob/master/README.md
Description of issue (what needs changing):
The source code should be made citable for academic references: https://guides.github.com/activities/citable-code/
Clear description
"A DOI, or Digital Object Identifier, is a string of numbers, letters and symbols used to permanently identify an article or document and link to it on the web. A DOI will help your reader easily locate a document from your citation."  - source.
Usage example
See GitHub instructions on "making your code citable":  https://guides.github.com/activities/citable-code/

https://www.tensorflow.org/about/bib could help

@mihaimaruseac it's good but it doesn't allow us to cite specific versions of the framework so that the published paper ages well in terms of reproducibility.

Looking for an owner from the product team for this.

We can use another specific entry for the library: https://ctan.org/tex-archive/macros/latex/contrib/biblatex-contrib/biblatex-software

@bhack that wouldn't produce a DOI, though.

If you want an automated DOI we could explore https://guides.github.com/activities/citable-code/
/cc @MarkDaoust @lamberta

@bhack, yes. That's what's in the description of this issue.

FWIW, the Google quantum projects have started doing this with Zenodo: https://quantumai.google/cirq/citation
But, yes, currently we point to the TensorFlow white paper for the citation.
cc: @theadactyl @joanafilipa

cc / @iamtimdavis from product

@angerson implemented a solution for this and we should have a DOI with the 2.5 release.

@mihaimaruseac that's great to hear! Looking forward to it.

TensorFlow now has a DOI page set up with Zenodo: https://doi.org/10.5281/zenodo.4724125
I added a badge on the README and made a change that should appear on tensorflow.org/about/bib in the next few days.

@angerson Great! Thank you to everyone who made it happen. I look forward to referencing the TensorFlow DOI on my next publication.


on method question

Hello,
As part of my evaluation of Drawflow I noticed the on method, which registers events. dispatch uses the events object to call events. Where are events actually registered? What I mean is, on does not appear to be called anywhere?
Thanks!

It is to listen for events in your code.
See in the documentation: https://github.com/jerosoler/Drawflow#events
For example, when you delete a node, save to the database...

Ah, I understand now. on is not used by Drawflow and is there as an API method that allows users to add listeners. All of the dispatch calls are "in-case" the user has added listeners.
Thanks for the expeditious response!

So you can extend the functionalities without modifying the library.
Example simple:

https://github.com/jerosoler/Drawflow/issues/438

Example complex:

https://github.com/jerosoler/Drawflow/issues/423


LEM consumes too many slots

Even after #674, the number of slots for the LEM remains too high.
For example, hash6 slots are only used to construct and deconstruct functions. And yet, we are using 3 slots of that kind. 2 would seem fine because we do deconstruct a function to construct another in the same path once.
Is this correct?

In order to solve this issue, we will have to do some path analysis in the slot allocation algorithm. As of now, in a sequence of func calls we just add the slots taken by each func. To make it optimal, we'd have to take the maximum slot usage for each possible path going through all funcs, ignoring the impossible paths. Doing it naively is very bad however, since the paths grow exponentially. There should be some good heuristic however, to compute, at least an approximation to the optimal slot allocation

Slot allocation needs to follow all the paths. It should definitely be finite. Can't you effectively inline all the funcs?
The 'right' answer is probably to get this hooked up to FOIL, but I guess you need to figure out something more short-term.
I'm not sure what this exponential growth is about. LEM is only creating flat circuits, and relatively small ones. There aren't that many actual paths to follow, right?


Question: Update a published image or some other High availability setup

Ubuntu 16.04 LTS
driver: lxc
driverversion: 2.0.5
kernel: Linux
kernelarchitecture: x86_64
kernelversion: 4.4.0-45-generic
server: lxd
serverpid: 32040
serverversion: 2.0.5
storage: zfs
storageversion: "5"
I have a couple ubuntu 16.04 servers that I use for LXD. I wan't to create a highly available solution and I'm wondering what the best way to do this is. I had thought I could just publish an image like lxc publish Nginx/current --alias NginxHA and then on my other machines run lxc image copy lxd:NginxHA local: --copy-aliases --auto-update I have set config's for these machines so they will update the image every hour. Now if I write a script to rerun lxc publish Nginx/current --alias NginxHA every hour, will the downstream LXD machines continue to pull that image? Or will the fingerprint change and become an issue?
I had also just though of creating a snapshot, pushing it to the remote LXD servers as a new container (but not starting it) and then deleting the local snapshot.
Any thoughts?
Thanks,
Levi
edit: answered my own question error: The image already exists: c5609842381e2fee2370e527702f2d0f09c59a384f9950cd82366d9b90bfb011
The funny thing is... it took the time to create the image first, then issued the error. So can we get a feature that would allow you to update an image that would not effect downstream servers that have that image and are set to receive updates from it? Or do we already have this and I'm doing it wrong?

That "image already exists" error, hints that you somehow managed to publish "exactly" the same thing twice, resulting in the same image fingerprint. The image fingerprint is the SHA256 of the compressed image tarball.
The rest of what you described is perfectly fine, if you do "lxc image copy" based on a source alias (as opposed to the fingerprint), the target LXD will record the source alias and update from that. So if you change the alias to point to some other image on the source server, the downstreams server will download the new image.

Hmm. I did change the image though, but only by a little. I ran touch
test.txt. I then deleted snapshot "current", remade that snapshot. Then ran
the same publish command as before which gave the error.  I then deleted
the published image, and reran the publish command which succeeded, The
root size changed by .3mb when running lxc image info. However my down
stream server didn't pick it up, even though it was subscribed to that same
alias. Oh and they finger prints are different but it still failed with the
image already exists.
Let me run through the process again tonight, document my steps better.
Maybe I did something silly. Thanks for the great blog, it's been my main
resource.
On Nov 15, 2016 11:13 AM, "Stéphane Graber"<EMAIL_ADDRESS>wrote:

That "image already exists" error, hints that you somehow managed to
publish "exactly" the same thing twice, resulting in the same image
fingerprint. The image fingerprint is the SHA256 of the compressed image
tarball.
The rest of what you described is perfectly fine, if you do "lxc image
copy" based on a source alias (as opposed to the fingerprint), the target
LXD will record the source alias and update from that. So if you change the
alias to point to some other image on the source server, the downstreams
server will download the new image.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/lxc/lxd/issues/2613#issuecomment-260685442, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AQTJt7w-JMBVyt8FKvj4Cm-mrCVbWIhqks5q-dnigaJpZM4KyJ88
.

Ah, the already exists may be coming from the alias already existing rather than the fingerprint.
To limit downtime, I'd recommend you do something like:
# Record old fingerprint
OLD=$(lxc image info new-image | grep ^Fingerprint | cut -d' ' -f2)

# Publish a new image
lxc publish Nginx/current --alias new-image
NEW=$(lxc image info new-image | grep ^Fingerprint | cut -d' ' -f2)

# Update the alias
lxc image alias delete NginxHA
lxc image alias create NginxHA $NEW
lxc image alias delete new-image

# Remove the old image
lxc image delete $OLD

That's certainly not the most obvious way of doing this. The fact that we don't have a command to re-target an alias atomically should certainly be fixed as we do support that over the API.
I'm also not opposed to adding a flag to API and publish command that'd let you override an existing alias, though you'd still be left with a leftover image in your store you'd need to eventually clean, so not sure how much more convenient that'd be in the end.

Re-targeting an alias sounds like a winner. The command could be something
like lxc image update NginxHa Niginx/current. Maybe even allow fingerprint
as well or with a switch. I'm basically using it as a backup solution. I
plan on using keepalived to automate bringing up the containers on another
host should one of my lxd machines go down. I hope this becomes a feature.
I'll use the method you describe above for now.
Also when I first tried to publish a container, it complained that it was
running so I made a snapshot, but couldn't it make a  temporary snapshot
for me, then delete it after the image is published? Do it all seamless and
in the background? I'm just being picky though.
Thanks for all your hard work on this. You guys rock.
Levi
On Nov 15, 2016 11:41 AM, "Stéphane Graber"<EMAIL_ADDRESS>wrote:

Ah, the already exists may be coming from the alias already existing
rather than the fingerprint.
To limit downtime, I'd recommend you do something like:
Record old fingerprint
OLD=$(lxc image info new-image | grep ^Fingerprint | cut -d' ' -f2)
Publish a new image
lxc publish Nginx/current --alias new-image
NEW=$(lxc image info new-image | grep ^Fingerprint | cut -d' ' -f2)
Update the alias
lxc image alias delete NginxHA
lxc image alias create NginxHA $NEW
lxc image alias delete new-image
Remove the old image
lxc image delete $OLD
That's certainly not the most obvious way of doing this. The fact that we
don't have a command to re-target an alias atomically should certainly be
fixed as we do support that over the API.
I'm also not opposed to adding a flag to API and publish command that'd
let you override an existing alias, though you'd still be left with a
leftover image in your store you'd need to eventually clean, so not sure
how much more convenient that'd be in the end.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/lxc/lxd/issues/2613#issuecomment-260694547, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AQTJtxwX9F56nz0X8zMrPxBDcFefJxQ7ks5q-eCogaJpZM4KyJ88
.

personnaly, i always republish the image with the --alias parameter:
 lxc publish template-inx --alias ubuntu-xenial-infranix

it overrides the existing one.
the old one is still there but without any alias and i deleted it with its fingerprint after doing "lxc image list"
i didn't find any better way for now.

We ever get a better way to do this?

I believe that there should be other better way to update images. I' currently struggle from issue with updating images... After I publish new version of an image and then delete the old one it disappears from lxd but seems that it is still available as ZFS dataset (under zpool/containers/deleted...) and also all containers that are created from deleted image got its origin pointing to deleted image dataset. So updating an image by removing old one is leading to other issue especially when ZFS is used as a storage backend.

ZFS requires the parent dataset to always exist. So when you delete a LXD image, LXD will remove the tarballs from disk and will either remove it from ZFS completely if nothing depends on it or rename it to deleted/ if something depends on it.
As soon as all containers that depend on the image are gone, so will the deleted/ image.
We don't have a choice there. If we force the deletion in ZFS, all downstream datasets would be destroyed.
So there's nothing wrong with how LXD does things, it does the best that can be done given the limitations of the various filesystems.

Yep I totally agree with you that LXD operating correctly with ZFS. Just wanted to emphasize that it will be a good idea to implement an LXD image update functionality. Especially with ZFS as a back-end storage this seems to be not so hard task. Each update can be simple snapshot which will save space and effort to manage many images in cases when images are updated regularly. And again this is only a suggestion not a complain about how LXD working :)

Closing as there is nothing clearly actionable on this and workflow discussions are better handled by our forum (https://discuss.linuxcontainers.org).


BUG: Vulnerabilities check "Failed to resolve version"

Describe the bug
Running the Vulnerabilities check on some projects consistently throws a "failed to resolve version" warning. Some Vulnerabilities are found, but I'm unsure if that's all of them or if some are missed due to whatever caused the warning.
Reproduction steps
Steps to reproduce the behavior:

scorecard --repo apache/arrow --checks Vulnerabilities --show-details --format json

Failed to resolve version of org.apache.arrow:arrow-memory-core: property "project.version" could not be found
Failed to resolve version of org.apache.arrow:arrow-memory-netty: property "project.version" could not be found
Failed to resolve version of org.apache.arrow:arrow-vector: property "project.version" could not be found
Failed to resolve version of org.apache.avro:avro: property "dep.avro.version" could not be found
[... many more ...]

{
  ...
"checks": [
    {
      "details": [
        "Warn: Project is vulnerable to: GHSA-22wj-vf5f-wrvj",
        "Warn: Project is vulnerable to: GHSA-45hx-wfhj-473x",
        "Warn: Project is vulnerable to: GHSA-h376-j262-vhq6",
        "Warn: Project is vulnerable to: GHSA-ww39-953v-wcq6"
      ],
      "score": 6,
      "reason": "4 existing vulnerabilities detected",
      "name": "Vulnerabilities",
      ...
    }
  ],
  "metadata": null
}

Expected behavior
The warning should not be thrown.
Additional context
The error also happens with:

antlr/antrl3
apache/httpcomponents-core
apache/tomcat
bufbuild/protoc-gen-validate
google/guava
googleapis/google-http-java-client
googlecloudplatform/cloud-sql-jdbc-socket-factory
haraldk/twelvemonkeys
jetbrains/kotlin
netty/netty
netty/netty-tcnative
openjdk/jdk
openjdk/jdk19u
protocolbuffers/protobuf
qos-ch/slf4j
raphw/byte-buddy
unicode-org/icu

This is something osv-scanner outputs, so remedy would be upstream. They attempted it a bit in https://github.com/google/osv-scanner/pull/186, but closed the PR.
Fixing individual errors is possible, but in general the output is a side effect of using osv-scanner.