Re-introduce "support" for decrypting messages without MDC

In PR #101 decryption of symmetrically encrypted packets without MDC (Tag 9) has been disabled.
While this follows the recommendation in the current IETF Crypto Refresh Draft, it can cause problems when interacting with old clients. I think it's valid to block these interactions by default, but would like to propose offering an opening for cases where this can't be avoided.
An easy possible fix might be to introduce a package wide global variable that toggles support for MDC (and defaults to "not allowed"). When set to "allowed", this check would be rendered ineffective.
I would even more prefer the ability to decide about this on a per-decryption basis (vs a global variable), but at the point where this check is made, there is no access to any configuration passed from the outside and refactoring that would probably not be worth it for such a fringe case.
WDYT about allowing decryption of messages without MDC again (via opt-in)?

Hello :wave: Sorry for the delay - I'm off this week so may be slow to respond.
First off, a nitpick, as I said in #101, that PR wasn't what disabled reading messages without MDC, that was done much longer ago.
That being said, having an option to allow it seems reasonable. However, I would prefer not to have a global variable for this. Adding a config option in config.go seems better.

Ah dammit I am sorry. I missed that this guard was just moved there. I only saw the added lines and therefore it looked like a fresh addition.
At a first look it also seemed like I have no way to access the config from the place where parsing/reading takes place, without a refactoring that would change the signature of the Read function.
I'll dive into this again to check if there is a better way than in my current PR.

Ah of course the check can be pulled a few layers up, then it should work in relation to the config.

I updated my PR accordingly.

(Closed by #130.)


Home Assistant Lights live preview on layout don't seem to work

[x] I confirm that this is an issue rather than a question.

Bug report
Home Assistant lights don't work properly. I am able to configure the home assistant lights. When i press the identify button the light turns on.
Besides that it doesn't seem to update with the screen content. Updating just startet to work.
When i setup the layout and i enable live preview i get the following error message: "TypeError: event.response.result is undefined".
I'm using the xcb screen grabber.
The global live preview in the top bar works fine.
This only happens with home assistant lights.My wled lights work just fine.
Steps to reproduce
Configure the xcb screen grabber
Configure a home assistant light
Try to enable live preview in layout setup.
What is expected?

That live preview works just like on e.g. wled lights
2. This is the main thing: that the led changes colors based on the screen content.

What is actually happening?

I get a error message as soon as i enable live preview on home-assistant lights layout configuration
~~2. The lights never update based on screen content. ~~

System
Hyperion Server:

Build:              ()
Build time:        Jan  1 1980 00:00:00
Git Remote:
Version:           2.0.17-beta.2
UI Lang:           de (BrowserLang: de)
UI Access:         expert
Avail Screen Cap.: framebuffer,x11,xcb,qt
Avail Video  Cap.: v4l2
Avail Audio  Cap.: audio
Avail Services:    boblight,cec,effectengine,forwarder,flatbuffer,protobuffer,mDNS,SSDP,borderdetection
Config database:   /home/gamer/.hyperion/db/hyperion.db
Database:          read/write
Mode:              GUI

Hyperion Server OS:

Distribution:      NixOS 25.05 (Warbler)
Architecture:      x86_64
CPU Model:         AMD Ryzen 7 5800X3D 8-Core Processor
CPU Type:          33
Kernel:            linux (6.11.10-xanmod1 (WS: 64))
Root/Admin:        false
Qt Version:        5.15.15
Python Version:    3.12.7
Browser:           Mozilla/5.0 (X11; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0

I'm using a hyperion-ng build from this commit: 179ee316d029288cb1cc22a6ecc488fcaadd76e1
Since i'm building on a nixos system, some data like e.g. the build time gets stripped for reproducibility reaons. (I'm not sure what Build or Git Remote should contain normally).

Hi
I assume the UI pulls a JS set which is different from the build one.
Suggest  you update the "Document Root" pointing to the ".../asserts/webconfig directory where you did the build (see screenshot).
Then refresh the page and see, if it is working.

@ChrisOboe Fixed by #1814


Feature protobuf grpc

GRPC & ProtoBuf

RPC client running in UnitTest without server started up in CI, so the checks failed. The clients will be removed from UnitTest later.


Add dependencies of IPOPT.

This PR aims to add the dependencies for IPOPT.

@AkshayThiru Please just rebase and merge if you didn't find any dummy issues...


Add Mutations to Relay Plugin

Another feature request. Would it be possible to add a mutation type that is relay compatible? That is, it follows the Relay Specification for Mutations.
The relay-graphql library has a helper for this and there's a nexus plugin that does something similar.
Thanks again. I'm digging this system.

Yup, I think I can add that.
Would probably look something like:
t.relayMutation({
  fields: inputFields,
  ... otherOptionsForInputType
}, {
  resolve,
  ...otherOptionsForResolve,
}, {
  fields: payloadFields,
  ...otherOptionsForPayloadType
})

Which is a bit dense/verbose.   I'll think a bit more on if there is a cleaner way to do this, but one of GiraphQLs features is to allow required fields to be added to any options object.  This means we need to expose an options object for all 3 pieces (the input object, the mutation field, and the payload object).  This is a little more complicated than the global connection fields, but should be doable relatively soon.

Yeah, Relay is often dense/verbose, but it is what it is ...
In the reference implementation, the mutation object has four properties. It would be great if we could keep the property names consistent.
const mutationType = ({
  name: '',
  inputFields: {},
  outputFields: {},
  mutateAndGetPayload: async (src, args, ctx, info) => {}
})

@litewarp PR for adding this feature is up (#73).  No docs yet, but you can look at the PR description (or source) for example usage, still need to add more tests.
Regarding matching options the relay reference implementation.  Using the same API won't work, but I've update the the options for defining fields to be inputFields and outputFields to help readability.  I am going to leave resolve as is rather than using mutateAndGetPayload.
Let me know if this looks good to you.  If you have a chance to try out the preview versions, any feedback would be appreciated.

Will pull the alpha packages and give them a try later today. You rock.

released


OTS fails on various Noto fonts

Moved from googlei18n/noto-fonts#172
We still need new tests according to the original thread.

cc @behdad @roozbehp

We certainly have to fix this issue if still present. However, I'm not sure if it's required by Android. @roozbehp
Anyway, we have to rerun OTS over Noto fonts and see what are still broken. BTW, why is this  bug in nototools instead of notofonts?  Isn't this about Noto fonts not passing OTS?

It is needed by Android, as far as I can understand. It seems that WebView runs OTS on fonts at runtime and rejects fonts that don't pass.

Really? WebView runs OTS for local (aka system) fonts (as opposed to web fonts)?
Anyway, this should be in notofonts bug tracker if it's about Noto fonts failing OTS unless there's a tool issue that I don't know of.

I went through googlei18n/noto-fonts#172 and it seems like there are some OTS issues to fix. With them fixed, at least some of warnings/errors will go away. If there are still warnings/errors from OTS after that, we need to determine which is to blame, fonts or OTS.

Re system vs web fonts for OTS, I actually don't know the answer. But I know that some apps use the system fonts as "web" fonts by referring to them in a URL.

Re system vs web fonts for OTS, I actually don't know the answer.

I'm pretty sure that Blink does not run OTS over 'system' font.

I know that some apps use the system fonts as "web" fonts by referring to them in a URL.

However, the above will be indeed an issue. BTW, how could they do that? The last time I tried 'local(Noto Sans Foobar)' didn't work on Android-Chrome. 'url(/system/fonts/NotoSansfoobar.ttf)' does not work, does it?

This bug should be about :
https://github.com/googlei18n/noto-fonts/issues/172#issuecomment-110100795
in which @roozbehp asked Doug
"Doug, can you add tests for these to noto_lint fixes to autofix_for_release?"

BTW, how could they do that? The last time I tried 'local(Noto Sans Foobar)' didn't work on Android-Chrome. 'url(/system/fonts/NotoSansfoobar.ttf)' does not work (due to webview being sandboxed), does it?

local(internal font name) doesn't work on Android, but url(file:///...) should work. But I haven't tested myself, so I don't know.
Anyway, I still think the fonts should pass OTS, as otherwise there are probably bugs in them that causes various things to stop working. We have not necessarily discovered the bugs, since most of the buggy fonts are in the minority scripts.

the fonts should pass OTS

I fully agree. We're dealing with it in googlei18n/noto-fonts#172


 I used regex validation and printed a char array of the characters to the console to make sure it didn't contain any incorrect characters. I even checked the length of the string and compared it to the input value and converted the string to a UTF-16 code array to make sure it didn't contain any unwanted characters. My SignIn Method and the call of it are below:
`  Future<void> signInWithEmailAndPassword(
    String email,
    String password,
    void Function(FirebaseAuthException e) errorCallback,
  ) async {
    try {
      await FirebaseAuth.instance.signInWithEmailAndPassword(
        email: email,
        password: password,
      );
    } on FirebaseAuthException catch (e) {
      errorCallback(e);
    }
  }`

Method Call:

`applicationState!.signInWithEmailAndPassword(
                          pwd,
                          mail,
                          (e) => {
                                print(e),
                              });
                    }),`

I tried it in Local Emulator and on production firebase env. I use an arm64 Mac. Thx for help! Mike

@mikexkllr
Can you provide flutter doctor -v, pubspec.yaml and the complete exception log ?

An exception "T" occurs on the
FirebaseAuth.instance.signInWithEmailAndPassword(email: email, password: password) method
also following exception occurs:
Exception has occurred.
"Error: Error: The email address is badly formatted.

    at Object.createErrorWithStack (http://localhost:49541/dart_sdk.js:5080:12)
    at http://localhost:49541/dart_sdk.js:40576:44
    at _RootZone.runBinary (http://localhost:49541/dart_sdk.js:40445:59)
    at _FutureListener.thenAwait.handleError (http://localhost:49541/dart_sdk.js:35374:33)
    at handleError (http://localhost:49541/dart_sdk.js:35947:51)
    at Function._propagateToListeners (http://localhost:49541/dart_sdk.js:35973:17)
    at _Future.new.[_completeError] (http://localhost:49541/dart_sdk.js:35823:23)
    at async._AsyncCallbackEntry.new.callback (http://localhost:49541/dart_sdk.js:35859:31)
    at Object._microtaskLoop (http://localhost:49541/dart_sdk.js:40708:13)
    at _startMicrotaskLoop (http://localhost:49541/dart_sdk.js:40714:13)
    at http://localhost:49541/dart_sdk.js:36191:9"

This is my flutter doctor -v output:
[✓] Flutter (Channel stable, 2.10.2, on macOS 12.2.1 21D62 darwin-arm, locale
    en-DE)
    • Flutter version 2.10.2 at /opt/homebrew/Caskroom/flutter/2.8.1/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 097d3313d8 (3 days ago), 2022-02-18 19:33:08 -0600
    • Engine revision a83ed0e5e3
    • Dart version 2.16.1
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
    • Android SDK at /Users/devmikekeller/Library/Android/sdk
    • Platform android-32, build-tools 32.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.11.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2020.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[✓] VS Code (version 1.64.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.34.0

[✓] Connected device (1 available)
    • Chrome (web) • chrome • web-javascript • Google Chrome 98.0.4758.102

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

THX!


Update manifests to clarify device support

This integration currently only supports BLE but does support more devices than just the Primadonna, so have renamed it to DeLonghi BLE.

Removing


chore: bump docs dependencies to the latest versions

Changes proposed in this pull request

This PR bumps the documentation dependencies to the latest versions, notably the astro-graphql-plugin (https://github.com/interledger/astro-graphql-plugin), which needed a desperate update but nobody got around to it

Context

Closes #2293
Checklist

[x] Related issues linked using fixes #number
[ ] Tests added/updated
[x] Documentation added
[ ] Make sure that all checks pass
[ ] Bruno collection updated

So why is the deploy preview failing?


feat: assert_not_emitted

Closes #1409
Introduced changes
Adding a assert_not_emitted check to verify an event was not emitted. The counterparty to assert_emitted.
I've also renamed the assert_if_emitted helper function to is_emitted because 1) it didn't assert and 2) there's no operation on "if emitted". I'm guessing it's just a relic from some refactoring.
Checklist

[x] Linked relevant issue
[x] Updated relevant documentation
[x] Added relevant tests
[x] Performed self-review of the code
[x] Added changes to CHANGELOG.md

I'm not 100% sure how the event tests work (just got an intuition from looking at the code), but I think the 2 added test cases cover the functionality well.
Also not sure if I ought to add more docs somewhere. If so, please point me to the right place and scope and I'll update the PR.


Version 1.8: Constant high CPU usage (JS files only)

Prerequisites

[x] Can you reproduce the problem with Debug -> Reload Without Extensions?
[x] Did you perform a cursory search to see if your bug or enhancement is already reported?
[x] Did you read the Troubleshooting guide?

Description
Version 1.8: Constant high CPU usage (JS files only)
I discovered high CPU usage (50%+ on single-core PC, 25-30% on dual-core laptop) after upgrading to Brackets 1.8. Some details:

limited to only one of my projects
only occurred when viewing JavaScript files
occurred even with new, completely blank JS files
persisted after disabling/removing extensions, re-installing Brackets, and deleting all AppData content
was present after moving the project to a different location, and copying to a second machine

After some digging, I tracked the problem down to one specific file, with peculiar behaviour. The file is a JS package for PouchDB: pouchdb-quick-search. Specifically the minified version - I have tried replicating with the non-min version, without the same results.
The problem occurs only when there are two or more copies of the file in the project. The files can be in different folders, or at the same level with different names. If you open a project with two copies of that file in it, you're going to have a bad time.
For now, I've just reverted to Brackets 1.7 as a temporary solution.
Steps to Reproduce
Download this ZIP of a Certified Buggy Project™, or:

Download pouchdb-quick-search.min.js.
Create a new project folder, and put 2 copies of the file in (rename one, or put it in a subdirectory).
Open the project in Brackets 1.8 and view either file, or create a new .js file. Viewing any JS file will cause persistent high CPU usage.
As a comparison, create/view an HTML file. CPU usage should be normal.

Expected behaviour: Normal CPU behaviour (spike on loading, return to low/0).
Actual behaviour: CPU usage climbs to one full thread and persists indefinitely.
Versions
Windows 10, Brackets Release 1.8 build 1.8.0-17108
Behaviour was not present on version 1.7.

@eKoopmans Thanks for raising the issue with critical details and detailed analysis from your side. After looking at your analysis, to me it looks like a looping issue in Tern inference engine. But this is just an assumption. Can you please let me know the following details ?

Which process shows the spike ( Brackets or Node )?
If you have the minified js files in your project at a nested level and open some JS file at root level , are you able to reproduce the issue?

Hi @swmitra:

The CPU spike is in the Brackets background process (it also climbs from ~50MB to ~120MB memory usage in my test case and stays there).
Yes, the issue exists even if both min files are at a nested level and I open a JS file at the root.

@swmitra moving tern analysis to node might help this, but I'd propose doing something that I've already implemented in Brackets-Electron, which is to separate node domains into separate processes instead of running them under single process as Brackets does it now. It's a bit of work but it's definitely worth the performance gain.

@zaggino Unless I'm missing something, this isn't an issue of performance gain - there is some logic error that is causing Brackets to get stuck continually computing. Are you suggesting that having separate processes would prevent the infinite loop? Have you tested whether the bug is present in Brackets-Electron?

@eKoopmans I'd bet with about 99% certainty that the JS code analysis (which is currently done in browser process) is blocking everything else, hence freezing (this happens in Electron too). It is probably not looping indefinitely, but parts of it are synchronous in nature and that's why we'd want to push it to node (so it doesn't block browser process) and even better, push it to separate node process (so it doesn't block other node stuff).

Even if it's looping indefinitely, it's better to have "code hints stopped working but everything else is fine" bug instead of "everything crashed" bug.

Okay, well I agree that separating the processes would be better behind the scenes. I should point out though that Brackets is not freezing, the browser process isn't being blocked, everything is still responsive. I just have constant high CPU usage in the background.
So in that sense it doesn't sound like separating the processes would be a solution to the current problem, which is that something behind the scenes (i.e. the JS code analysis) is getting confused and eating up as much CPU as it can get its hands on. But yes, if you were then monitoring that process and killing it if it was misbehaving, then that sounds like a solution.

Could you also try the tern demo and see if there is a CPU hit there too?

Good idea @ficristo :+1. But if this was a problem with the tern version that we are using and later got fixed in latest tern then it might not be reproduced in the demo.  But still it's worth trying.

I just noticed there is a new release of tern https://discuss.ternjs.net/t/tern-0-21-0-released/110

Thanks for the suggestion @ficristo! I tried the tern demo, created two "new files" with the contents of the problem file, and... nothing. No performance hit. As @swmitra mentioned, it might just be the different version of tern...

@ficristo @zaggino As part of porting JS code hints to node, shall we upgrade Tern and Acorn?
Looks like there are quite a few fixes which has gone in Tern.

@swmitra yes, we I believe that we should use the latest version of both before we merge that PR to avoid going through the upgrade process soon

Hi, has anyone managed to replicate (or not replicate) this problem?

I can only replicate code hints crashing my entire Brackets installation, but have removed them since then.

Cool, thanks @zaggino. Didn't want to be causing problems if I was the only one with the issue.

Opened https://github.com/adobe/brackets/pull/13136 which will allow disabling default extensions like JS Code Hints

FYI, there are already preferences for disabling all code hints (showCodeHints) or individual types of code hints (e.g. codehint.JSHints).


laravel/ui Authentication

I have a problem.
in tenant.php
Route::middleware([
'auth',
'web',
InitializeTenancyByDomain::class,
PreventAccessFromCentralDomains::class,
])->group(function () {
Route::get('/', 'DashboardController@dashboard')
->name('index');

Route::get('dashboard', 'DashboardController@dashboard')
->name('dashboard');

});
error:
Symfony\Component\Routing\Exception\RouteNotFoundException
Route [login] not defined.
Help Please.!

update:
Route::middleware([
// 'auth',
'web',
InitializeTenancyByDomain::class,
PreventAccessFromCentralDomains::class,
])->group(function () {
Route::middleware(['universal'])->group(function () {
Auth::routes();
});
Route::get('/', 'DashboardController@dashboard')
->name('index');

Route::get('dashboard', 'DashboardController@dashboard')
->name('dashboard');

});
This worked for me, any other better restraint? Thank you :)

my problem now is that it does not validate the sessions of the tenants it takes me the same :(

suggestions ??? :(

So what's the issue? Session scoping is covered in documentation.

@epirir are you suggesting both tenants now use same session? because in my setup i am not able to replicate your issue.

Do we now need to add Auth::routes(); in the routes/tenant.php ?

Seems I have the same kind of errors as @epirir.
I need to manually insert the Auth::routes() in tenant.php in order to have the login route available on the tenant app but I have some odd error then :

Undefined variable: errors
$errors is undefined

It seems the ShareErrorsFromSession::class middleware is not loaded ? :/

Undefined variable: errors
$errors is undefined

I can't help when I don't see a stack trace.
Also, your Auth::routes() being in tenant.php doesn't do anything. They need to be inside the GROUP with web and the tenancy middlewares.
Then, inside that group, create another group with auth MW.

Thank you @stancl , that's working perfectly !
@epirir Here is an exemple of my routes/tenant.php in order to get the Auth working as in the v2 :

Glad to hear that

thanks to all, I was just going to discuss a similar solution :)
Route::middleware([
'web',
InitializeTenancyByDomain::class,
PreventAccessFromCentralDomains::class,
])->group(function () {
Route::middleware(['universal'])->group(function () {
Auth::routes();
});
Route::middleware(['auth'])->group(function () {
    //Routes of the app.
});

});

so if this is resolved @epirir  can you close this one ?

@hardikdangar Stancl closed it yesterday :)

I'm currently using v3.2 of the package with Laravel 8 and I am experiencing similar issues to what's discussed here but following the suggestions here, it doesn't seem to have fixed the issue.
My issue;
In Laravel 8 when trying to authenticate inside a Tenant instance. It authenticates just fine but the 'auth' middleware seems to NOT recognise that the user is authed and keeps redirecting to the login route. I have no clue how to even go about fixing this, would I have to make the Laravel 'auth' middleware aware of the tenant or something? It's taken up some hours of my day so far so I'll kick myself if the answer is really simple :smile:
Auth Routes setup inside tenant.php
Route::middleware([
    'web',
    'universal',
    InitializeTenancyByDomain::class,
])->group(function () {
    Auth::routes();
});

// All routes in this next group just keep throwing back to the login routes inside the 'auth' middleware
Route::middleware([
    'auth',
    'web',
    InitializeTenancyByDomain::class,
    PreventAccessFromCentralDomains::class,
])->group(function () {

I'm not sure if this would be a separate issue but seemed relevant.

@mwikala reading your issue, i think what we have is similar. I am using laravel 8 as well and having trouble in Auth.
Referance: #510

@mwikala reading your issue, i think what we have is similar. I am using laravel 8 as well and having trouble in Auth.
Referance: #510

Hello @alsahlawi so after debugging this with @stancl we able to figure out that it was an issue with my Routes setup inside  tenant.php. You need make sure that you only have ONE parent route group which initializes tenancy, then place all other groups inside.
Here is an example of what that looked like in my case;
Route::middleware([
    'web',
    InitializeTenancyByDomain::class,
    PreventAccessFromCentralDomains::class,
])->group(function () {

    Auth::routes();

    // management experience
    Route::middleware(['auth'])->prefix('/')->group(function () {

        // All the routes that require the user to authorized

    });

});

I hope that helps if it doesn't and you can't find an issue in this repository that resolves your issue, then please feel free to reach out in the package's Discord and you can get some help from the community there.

Hello  @mwikala, @alsahlawi and @stancl,
I am desperate for help. I have setup this tenancy on Laravel 8x, with Jetstream/livewire scaffold.
I can see the dd(\App\User::all()) as suggested in docs. Now I just cant login as a tenant when using Auth.
Set-up
My my central-domain does not have any users table. My two test tenants have their own users tables.
When I go to the tenant page, I can see the dump (without any login).
Now when I try to login with Auth, I get this error
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'best.users' doesn't exist (SQL: select * from users where email =<EMAIL_ADDRESS>limit 1) error.
This means to me that it is looking for users table in centra_domain than the tenant's users table. How do I solve it?
I have exactly configured the tenant routes as stated in the post above by @mwikala.
Thanks in advance for all the help.

if you went on discord, which is the place where support questions belong, you'd see that I sent @mwikala an entire working step by step solution

can you please give any link @mwikala on this topic, i am already logged in discord

Hello  @mwikala, @alsahlawi and @stancl,
I am desperate for help. I have setup this tenancy on Laravel 8x, with Jetstream/livewire scaffold.
I can see the dd(\App\User::all()) as suggested in docs. Now I just cant login as a tenant when using Auth.
Set-up
My my central-domain does not have any users table. My two test tenants have their own users tables.
When I go to the tenant page, I can see the dump (without any login).
Now when I try to login with Auth, I get this error
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'best.users' doesn't exist (SQL: select * from users where email =<EMAIL_ADDRESS>limit 1) error.
This means to me that it is looking for users table in centra_domain than the tenant's users table. How do I solve it?
I have exactly configured the tenant routes as stated in the post above by @mwikala.
ps: when i request the login page, the sessions table of the centra_domain makes an entry and no entries in the tenants sessions table. Only manually login using login::attempt makes entries in tenants session table but does not maintain the session status as I can't see authenticated users name or other info.
Thanks in advance for all the help.

Try using the TenantConnection trait on your User model.
// user class
uses TenantConnection;

// rest of your code

@mwikala , When i have inserted the TenantConnection, first time i am getting a new error: Database connection [tenant] not configured.

Support questions belong to Discord. Please respect the role of the issue tracker.
Reading support discussions on GitHub isn't something I have time for.

@mwikala , When i have inserted the TenantConnection, first time i am getting a new error: Database connection [tenant] not configured.

That error tells me you're either not on a tenant domain e.g. foo.localhost or that you haven't initialized tenancy on your routes using either of the below middleware;
https://tenancyforlaravel.com/docs/v3/tenant-identification/#domain-identification

My routes are exactly as stated by you. In fact after facing the problem two days, I saw this post an hour ago and did exactly as stated. I do feel, the tenancy is not getting initialized. However, when I do dd(\App\User;;all()) in respective tenant domain pages, as suggested in tutorial, I do see respective users in those domains dummy home landing page. Hence, I suppose, tenancy is initialized.

working solution is on discord


Unable to run yarn build:api-reports on Windows

Expected Behavior
Running yarn build:api-reports should work and generate the reports as needed on all environments including Windows
Current Behavior
When we run yarn  build:api-reports on Windows we are getting the following error even though storybook has been excluded
Error: Error parsing C:\forks\backstage\packages\storybook:
The "mainEntryPointFilePath" path does not exist: C:\forks\backstage\dist-types\packages\storybook\src\index.d.ts
    at Function.prepare (C:\forks\backstage\node_modules\@microsoft\api-extractor\src\api\ExtractorConfig.ts:976:13)
    at runApiExtraction (C:\forks\backstage\scripts\api-extractor.ts:162:45)
    at main (C:\forks\backstage\scripts\api-extractor.ts:549:3)

Possible Solution
We found that changing the / to \\ for SKIPPED_PACKAGES paths here: https://github.com/backstage/backstage/blob/d0d78ebc7cf12d2d9eef5ebe50547000d0bc70d5/scripts/api-extractor.ts#L95
This got things working on Windows but that is not a permanent fix for this.
We did also try changing this line: https://github.com/backstage/backstage/blob/d0d78ebc7cf12d2d9eef5ebe50547000d0bc70d5/scripts/api-extractor.ts#L128
To this: if (!SKIPPED_PACKAGES.includes(normalize(packageDir))) { but this did not work as the same error came up. normalize is from the path package
Steps to Reproduce
In a Windows environment:

Clone Backstage
Run yarn install, yarn tsc, and yarn build
Now run yarn  build:api-reports

Notice that you get and error similar to this:
Error: Error parsing C:\forks\backstage\packages\storybook:
The "mainEntryPointFilePath" path does not exist: C:\forks\backstage\dist-types\packages\storybook\src\index.d.ts
    at Function.prepare (C:\forks\backstage\node_modules\@microsoft\api-extractor\src\api\ExtractorConfig.ts:976:13)
    at runApiExtraction (C:\forks\backstage\scripts\api-extractor.ts:162:45)
    at main (C:\forks\backstage\scripts\api-extractor.ts:549:3)

Context
I submitted a PR and one of the related builds fails due to the API Report being missing. I then tried to run the command to create it when is when I ran into this error. this is blocking me from fixing my PR.
Your Environment
The key to this issue is being on Windows

I've also tried if (!SKIPPED_PACKAGES.includes(win32.normalize(packageDir))) { but that results in the same error as well

Thank you for reporting!
Shipping a fix in #7202. The final tricky bit is that Node does some weird sh*t on Windows when resolving a relative path between a relative and an absolute one. You end up with a somewhat unexpected relative path that broke the comparison. Making sure the relative path resolution was between two absolute paths fixes it.

Thanks @Rugvip! And also @timbonicus for the help in Discord on this. From looking at your fix this was clearly not something I was going to figure out on my own.


Fix grammatical mistakes and Create .whitesource

Summary of the Pull Request
Fix grammatical mistakes and Create .whitesource.yml for security.

PR Checklist

[X] Closes: #34537
[X] Communication: I've discussed this with core contributors already. If work hasn't been agreed, this work might be rejected
[X] Tests: Added/updated and all pass
[X] Localization: All end user facing strings can be localized
[X] Dev docs: Added/updated
[X] New binaries: Added on the required places

[X] JSON for signing for new binaries
[X] WXS for installer for new binaries and localization folder
[X] YML for CI pipeline for new test projects
[X] YML for signed pipeline

[X] Documentation updated: If checked, please file a pull request on our docs repo and link it here: #xxx

Detailed Description of the Pull Request / Additional comments
Fix grammatical mistakes and Create .whitesource.yml

Validation Steps Performed
1.Configure Mend-Bot-for-GitHub (Create .whitesoure file)
2.Update README.md

Meeting Room

Grammar here is opinion based. It included another file that is outside scope as well.


Duplicated  select2.full.js

I got double select2 span in my admin inline if I use dal in it's parent page.
I found selec2.full.js is loaded twice
They are
http://<IP_ADDRESS>:8000/static/vendor/select2/dist/js/select2.full.js
http://<IP_ADDRESS>:8000/static/admin/js/vendor/select2/select2.full.js
if I block one of them, everything works.
How to resolve the problem?

I can fix it by update my Django version from 2.1.14 to 2.2.12.
Both selec2.full.js  are  still loaded in the page, but this time, they works well, no duplicated selects.
So, what's the problem? how can I resolve it if I downgrade back to Django version 2.1.14?

Honestly I'm not sure anymore, I can't seem to find a recipe that works
with all use cases.
As such, anything works for me really, as long as it passes the selenium
tests which do test admin inline.


feat: add no-drafts-import rule

The /drafts endpoint in @primer/react has been deprecated in favor of
@primer/react/experimental. This PR adds a new rule, no-drafts-import, that checks for this violation and automatically fixes drafts imports to experimental.

Do we need to configure an auto-reviewers group on this repo? 🤔

@lesliecdubs great question, this prompted me as well 😂 Updated this over in: https://github.com/primer/eslint-plugin-primer-react/pull/88 (the CODEOWNERS file was just in the wrong place)

Thanks for taking care of that! ✨


Baruch College CUNY: Recipe configuration detection #64 has failed

@rsaksida this college is flagged as "supported" with the course tracking sheet https://docs.google.com/spreadsheets/d/1qW5k0X9TlO4qU87QvNvG-gXFmAeMgGwLK2G5b5GWMN4/edit?gid=0#gid=0.
The correct URL was used https://baruch-undergraduate.catalog.cuny.edu/courses.
Per the email sent, pasted below,

https://master.ai-course-crawler.development.c66.me/catalogues/28/recipes/64
Configuration Error
AI Course Crawler failed to detect a valid configuration for this recipe.
You can adjust the URL, or try again.
Failure reason:
Could not find every example

@jeannekitchens Reviewing that page now, I think assigning it to "Supported" was a bad call. The URL structure matches what we do perfectly, but the way the page loads courses via JavaScript makes it tricky to extract the catalogue without building in support for that specific page. It fetches courses with an API request that is initiated after the API is loaded, and they don't prerender the courses in the HTML.
So this is a case where would need to build specific support for the catalogue. I defer to you guys to decide whether and when we should pursue that.

Ok.  we should not prioritize it now. I'll change it to unsupported.


[Bug] merging crash

Device information

Neko version: <IP_ADDRESS>
Android version: Android 9

Steps to reproduce

Open manga https://mangadex.org/manga/14676/
Try to merge

Expected behavior
Neko merging correctly
Actual behavior
Neko crashes

fixed in latest


Scss file containing @import of mixin gets weirdly formatted

Operating System (+Version): Mac OSX 10.13.6
VS Code Version: 1.26.0
beautify Version: 1.3.2

Provide the settings you use:
VS Code:
{
    "editor.formatOnSave": true,
    "workbench.iconTheme": "vscode-icons"
}

.jsbeautifyrc
No special settings, just the default extension settings
Action performed
Format .scss file with the following line somewhere on line 100 (not at the beginning of the file):
@include box-shadow(0, 5px, 8px, rgba(0, 0, 0, 0.1));
box-shadow is a mixin that is defined in a different file.
Expected results
@include box-shadow(0, 5px, 8px, rgba(0, 0, 0, 0.1));
Actual results
	@include box-shadow(0,
	5px,
	8px,
	rgba(0,
	0,
	0,
	0.1));

Fixed in new version.


some Mac-osx tweaks to approach sublime (based on andsve)

Features:

andsve's  DPI fix for Mac
sublime color theme
sublime monospace font (monaco.ttf)
tree-view and tab-view sizing
smooth scrolling 60fps and low CPU usage on idle

This works beautifully. Why was this PR closed?


[QUERY] Why is AZURE_TENANT_ID required by azure-security-keyvault-secrets?

Query/Question
I am currently migrating from the old com.microsoft.azure:azure-keyvault SDK to com.azure:azure-security-keyvault-secrets.
When using EnvironmentCredential, the new SDK requires the AZURE_TENANT_ID environment variable to be set.  This was not the case with the old SDK, which required only AZURE_CLIENT_ID and AZURE_CLIENT_SECRET.
From looking at the authentication flow, the /{tenant}/oauth2/token API, and my local testing, I think the old SDK returns the tenant-id in the WWW-Authenticate header.
Does this mean that the authentication flow is different between the two SDKs?  Is there any way to use the new SDK to get/set Key Vault secrets without setting the AZURE_TENANT_ID env var?
Why is this not a Bug or a feature Request?
Trying to clarify my understanding.
Setup (please complete the following information if applicable):

macOS
com.azure:azure-security-keyvault-secrets:4.1.5
com.azure:azure-identity:1.0.9

Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

[x] Query Added
[x] Setup information Added

/cc @g2vinay @schaabs @jianghaolu

@chris-j-h
Our Track 2 KV package com.azure:azure-security-keyvault-secrets uses our Identity SDK com.azure:azure-identity.
Identity SDK offers AAD authentication support for all Azure SDKs. So, the EnvironmentCredential in our Identity SDK is designed to require AZURE_TENANT_ID, as this design works well for all azure SDKs using Service Principal authentication.
In your scenario, is there any concern with supplying the AZURE_TENANT_ID to the application?

This means that migration from old to new SDK now requires additional configuration and as a result is something we cannot trivially move to.
Given that AZURE_TENANT_ID is not required for the key vault is there any workaround for this?  I see in this API doc that common can sometimes be used for "tenant-independent tokens".

@chris-j-h
I was investigating this.
There is a way to authenticate with azure-security-keyvault-secrets without tenantID.
To authenticate with KV SDK without the tenatID, currently a custom pipeline with a custom credential policy needs to be created.
I've attached a sample app that shows how to achieve this. The logic defined in the app will need to live in the user code.
keyvaultauthsample.zip
We will look into supporting this on the SDK side in the coming months.
CC: @schaabs

@chris-j-h, let me know if you've any further questions around this or would like reopen this issue.
Closing this issue.


[Issue] Showing suggestions when not needed

Describe the Bug:

Search something and allow suggestions to suggest some common search queries.
Click on any search suggestion and let the app load the results.
Now tap on any result, and interact with the movie screen.
Press back & search suggestion will open again.

(It may not occur the first time but it has unexpected behavior.
Expected Behavior:
This should not happen

Release v1.6 was a complete rewrite of the app, this has been fixed.


⚠ Bofrost.be has degraded performance

In 4dcd0a2, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1301 ms

Resolved: Bofrost.be performance has improved in 0d557d5 after 6 minutes.


Expose error message setter on default error state

When using the default error state, one can switch to it using showError { myRetryCallback() } setting thereby a click listener on the retry button.
But, unlike the default error state retry button, there is no way to access the default error state message textView.
Suggestion: add a showError("there was a glitch, try again") { retry() } extension function.

Good idea 😄


Receiving "Can't set headers after they are sent." error

I'm seeing the intermittent error listed below whenever I call appInsights.client.trackRequest(req, res);
Any guidance would be very helpful?
Thanks,
Erik
Error
Error: Can't set headers after they are sent.
    at new Error (native)
    at Error.AppInsightsAsyncCorrelatedErrorWrapper (/gitRepo/appinsights-test-node/node_modules/applicationinsights/out/AutoCollection/CorrelationContextManager.js:141:18) [<root>]
    at ServerResponse.OutgoingMessage.setHeader (_http_outgoing.js:357:11) [<root>]
    at expressInit (/gitRepo/appinsights-test-node/node_modules/express/lib/middleware/init.js:30:42) [<root>]
    at Layer.handle [as handle_request] (/gitRepo/appinsights-test-node/node_modules/express/lib/router/layer.js:95:5) [<root>]

your Application Map)
n your Application Map)Please call trackRequest as soon as possible in your code. This is a sign trackRequest is being called sometime after you have started sending a response back.
Calling trackRequest as soon as you get the req/res pair from your server object is necessary so that we can accurately record the amount of time processing took for the request. It is also necessary that trackRequest receives the res object before the response has begun being sent so that we can add correlation headers to your response (this allows you to correlate a request from one server to another)

If possible, consider using automatic request collection, it will handle all of this for you - removing the need for manual trackRequest calls :smile:

Closing this for now. Feel free to re-open if this didn't help resolve the issue!


add liga

The liga files are uploaded, with some bug (due to version compatibility) fixed. Readme is updated. @sbillinge

Can you please replace this with entire git history as I sent in the email?

Sure! I have replaced the last commit with the one you sent me.

Thank you Ling, but I think it would be good to preserve the git history as it was so it is possible to see what changes were done together and why.
git can be initially quite confusing - would you mind if I prepare a replacement PR later today?
BTW, the .DS_Store, .sconsign.dblite and all files in .sconf_temp and build directories are temporary derived files and should not be included in the repository.  Some of these should be covered by the .gitignore file in the initial code.  For the .DS_Store files it is good to use a global gitignore which excludes them by default.

No problem! Thank you for telling me -- I am learning these "common sense" these days :)

@sbillinge, @lanikaling - done.  I have rebased (re-applied) Simon's commits on top of the previous code history.
This is normally not supposed to be done, because it rewrote the entire history of the main branch (ie, Simon's 2 commits are not included as they originally were), but I think in this case it was acceptable as a one-time action to initialize the GH repository.  I have also added 4 tags (v1.0, v1.1, v1.2, v1.2.1) that were in the original group-only repository.
For sake of safety I have stored the initial main branch as a new branch main-tmp-backup.  This can be deleted If you are OK with the updated main branch as is.
Otherwise, please make sure any new work is started from the updated main (commit a5ba35e836bad2af11db3cb05dd613bdb6dd0722 or its descendants) and not from its previous state.
If you have an unmodified clone of this repo, you can sync it to the updated main using
git fetch origin
git reset --hard origin/main

If you made some changes - modified files / created new commits - the safest is to clone this repository in a new folder and just reapply any changes there.
Hope this works.

Thank you so much, Pavol! It looks nice!

yes, thanks so much @pavoljuhas .  It is really exciting to have this on GitHub!  I wish we had GitHub back when the code was written!


[EI Tooling] AI mapping generation in DataMapper

Description:
Adding the capability to generate mapping configuration automatically using Artificial Intelligence to the data mapper tool.

Fixed in https://github.com/wso2/devstudio-tooling-esb/pull/1090


fix: motd when no image tag is in use

#517 and #519
This adds preventative logic to make motd work when no image tag is in use, and adds a warning about the issue.

looks good, can you provide a screenshot of this in action?


release automation

readme on dependencies, gpg, python > 3.5
dependent packages installation

PR #242


Properly group multiple inherent impls

"properly" meaning "group items like rustdoc HTML does it", which means each inherent impl is presented separately (i.e. no de-duplication)
Closes #251
Depends on #269

Had to rebase to trigger CI, but we should not get this problem in the future (see https://github.com/Enselic/cargo-public-api/pull/269#issuecomment-1374435468)

Does moving a function from one impl to another trigger a change with cargo public-api diff --deny changes ?

Good question! I wasn't sure at first, so I wrote a test for it, which I have now pushed. Turns out there is no diff for this case. IMHO that is correct since the public API has not changed.
The reason there is no diff triggered is because the diffing algo is based on HashBags. So the sorted order of items does not matter. (The first version of the algorithm depended on sort order however, but about half a year ago the diff algo was rewritten to not depend on sort order.)

Wait, I forgot to make the fns pub, and when I fix that there is a diff that shows up :scream: Need to investigate a bit more here...

Since the "impl name" of the moved item changes, a diff is triggered. I think we need to somehow differentiate between a "sortable path" and a "ID path". Might require some significant conceptual changes...

One easy way to solve this is to make Eq and Hash only take PublicItem::tokens into account. When diffing, an item that looks the same (and from an API point of view is the same) will then be considered equal. In that sense, I like that solution.
The downside is that now two items might be Ordering::Equal but not eq to each other. I'm unsure if this is a problem. It is clearly stated that Eq and Hash needs to match, but I see no such thing for Cmp.
So maybe it is fine to do it like that? If yes, the PR in its current state is production ready.
But if Cmp should/must be in sync with Eq, I think we should make Cmp consistent with Eq/Hash and instead use a special key when sorting. I'm unsure what the best way forward is here.

What do you mean with Cmp?

Sorry, I meant Ord (which has a cmp method)

If you mean PartialOrd::PartialOrd then yes, it's a violation of

a == b if and only if partial_cmp(a, b) == Some(Equal).

Ah right, there it is, thanks
I pushed a commit now that should make things well again

yes, my bad I could've linked it!

feel free to squash without adding me as co-author :) or merge/squash merge as is :D

The commit history ended up too messy for my taste, so I force-push a better commit structure. No code changes were made. Soon merging, thanks :)


Improve the memory usage while evaluation

Instead of load the evaluation data once for all, load the data one by one to save the memory usage dramatically.

I need to tune the code. Will submit the code again after test with larger files.


Copy & Paste Keybindings

Environment
Windows build number: 10.0.18362.86
Windows Terminal version (if applicable):

Steps to reproduce
In the standard Windows 10 console, you can enable the use of Ctrl+C/V for copy and paste. Windows Terminal doesn't have this, and it is extremely frustrating.
Expected behavior
Enable the use of Ctrl+C for copy and Ctrl+V for paste.
Actual behavior
Ctrl+C doesn't copy anything, and Ctrl+V just writes ^V at the prompt.

This sounds right up @carlos-zamora's alley

Or actually, anyone could hop on this. You'd want to set up copy and paste actions in App.cpp (like _Scroll, for example) that trigger the appropriate actions on the TermControl. There should already be Copy and Paste ShortcutActions, so it's just a matter of registering defaults for them, and wiring the actions to the bindings (see HookupKeyBindings or similar in App.cpp).

I must insist that the default bindings for this not be Ctrl+-only.

Agh, sorry, I didn't intend to close this issue.

I must insist that the default bindings for this not be Ctrl+-only.

I know why you're saying that, and that's of course why the normal console has it behind a setting one must enable. But having them behind Ctrl+Shift or something similar defeats the purpose. It's the muscle memory that make these the keybindings worth having.
For me, having Ctrl+V enter ^V has never been useful and I suspect that this is true for a very significant number of people. Would it be possible to enable this as a setting?

Maybe we'll need profile-specific key bindings. Right now, all binds are re-bindable :smile:

I like the way that WSL+Bash handles copy/paste. Ctrl+C only copies when something is selected. If nothing is selected then Ctrl+C behaves as usual and sends an SIGINT.

@namatoj That's perfect; exactly the way it should be.

I guess we should at least support Ctrl-Insert/Shift-Insert/Shift-Delete if Ctrl-C/V/X may have conflicts?

IMO the options should be:

"Smart" behaviour, where CTRL-C is copy only if something is selected.
Custom behaviour, with keybindings that default to CTRL-SHIFT-C/V.
No behaviour, copy is available in the right-click menu on selection.

All of the discussion about "CTRL+C being copy only if something is selected" ignores CTRL+V -- there's no indicator to know that we should paste, and if one values consistency above all else it's problematic to say "CTRL+C only works when X, but CTRL+V works always". The alternative, "CTRL+C if selected, CTRL+SHIFT+V otherwise" isn't particularly consistent either.

But CTRL-C is universally "send a SIGINT", there's a huge ambiguity there. Ubuntu's terminal resolves this by using CTRL-SHIFT-C/V for copy/paste; the MacOS terminal resolves it by using CMD-C for copy and CTRL-C for interrupt.
CTRL-V has no such conflict. Some emacs users might bind it to things, but if you're enough of an emacs power user to be rebinding keys, you're probably using capslock as your meta key anyway.
I think the main risk of making the "smart" behaviour the default is just that users will accidentally interrupt a process because they missed their selection. If that's a concern or we want consistency then I would say to just copy Ubuntu and make the default bindings for both CTRL-SHIFT-C/V.

By implementing Customised Keybindings per profile, this could allow the default Ubuntu keyboard shortcuts to behave as they should, or allow the user to change them to allow Windows clipboard shortcuts to behave as they should.

@mikepurvis The smart Ctrl-C behavior is used in many Windows terminals with no issues.  I like how https://github.com/Eugeny/terminus does it where it flashes a short pop-up to indicate text has been copied or pasted.

@mikepurvis The smart Ctrl-C behavior is used in many Windows terminals with no issues. I like how https://github.com/Eugeny/terminus does it where it flashes a short pop-up to indicate text has been copied or pasted.

Tooltips for Copied would be good, especially where Ctrl+C is not always assigned to Copying

Gnome Terminal have a consistent keybinding that's not intuitive at first, but easy to adopt, and not too far from the usual CTRL + C for copy.
CTRL + C : Cancel
CTRL + Shift + C : Copy
CTRL + Shift + V : Paste
No logic for selection, always works a specific way. I think it's perfect.

@NatoBoram  That is fine as an option.  But many people like the smart behavior.  Everywhere else in Windows, Ctrl+C is copy and it is hard to adjust the behavior for one app, so I want the smart behavior.

Also, since the Conhost also lives here; the effects of pasting text obtained with Ctrl+C and Ctrl+Shift+C has different effects.

The way the buffer is read is correct for the Ctrl+C shortcut (with the line endings).
All terminal-like apps have this issue (CMD, Powershell, WLS-apps) and since the brains behind all of them lives here, thought I'd post it.

Everywhere else in Windows, Ctrl+C is copy

And in Linux and in MacOS. Windows isn't any different in that regard.

It is hard to adjust the behavior for one app

Yes, which is why Microsoft decided that it would be a great idea to use Enter for copy and Right Click for paste.
*Ahem*
I mean, it is hard to adjust the behavior for one Operating System. 🌊

Throwing in another vote for an option of configuring the smart behavior. I for one would configure smart behavior for copy and CTRL+v for paste always. If I have text highlighted and I want to send a SIGINT I expect to hit ESC and then CTRL+c.

Same here, I'd love an option to make ctrl+v paste always, and ctrl+c to copy when selected and SIGINT when no selection exists.  This is the behaviour I currently have in conemu.

🎉This issue was addressed in #1093, which has now been successfully released as Windows Terminal Preview v0.3.2142.0.🎉
Handy links:
* [Release Notes](https://github.com/microsoft/terminal/releases/tag/v0.3.2142.0)

* [Store Download](https://www.microsoft.com/store/apps/9n0dx20hk701?cid=storebadge&ocid=badge)

Adding these key bindings does the trick
{                 "command" : "copy",                 "keys" :                  [                     "ctrl+shift+c"                 ]             },             {                 "command" : "paste",                 "keys" : [                     "ctrl+shift+v"                 ]             }

How come nobody thought about doing this the putty way? Currently the entire user base is using putty or cygwin. Select to copy, right click to paste. Nothing easier. Please, serve your users!

nobody thought about

You mean #524 and #2152 (which is a pull request by one of the team members?)

On a small side note, why does pasting text copied over with Ctrl+C and Ctrl+Shift+C seem to have different effects in powershell (described above in one of the comments, repeated here, 🙈 sorry!)?

Personally I prefer "dumb" copy-behavior i.e. separate binding for it instead of binding ctrl+c (usually SIGINT) to copy, when something is selected and messing with default behavior of many shells. This has potential to become annoying when you accidentally shutdown the application, which is running on foreground, when you're trying to only copy something. The current implementation is great!

I added bindings for Ctrl+C (which copies if selected and sends a SIGINT) and Ctrl+V which work perfectly fine and are very intuitive to me.

As @aolchawa said, adding
        {
            "command" : "copy",
            "keys" :
            [
                "ctrl+c"
            ]
        },
        {
            "command" : "paste",
            "keys" : [
                "ctrl+v"
            ]
        }

to keybindings results in the "Smart" behavior @mikepurvis defined above.
I don't fully understand how the terminal chooses between SIGINT and Ctrl+C right now, I don't see a change in #1093, that defines this, I see on #46 we are now passing trimWhitespace to CopyTextEventArgs.
I suppose that must be the part of the change that causes the desired (to me) behavior.
There does not appear to be a configuration in profiles.json or the profile schema that can be leveraged to toggle the behavior.
At any rate this is the behavior I was looking for hopefully my rambling here will save someone a few moments digging through the PR to figure out whats going on.

@ltomes So, the change that made Terminal choose between SIGINT and Ctrl+C was actually #2446. Now, the title is a little misleading: what it really implements is "if a keybinding action says it didn't do anything (or was unhandled), give the Terminal a second shot at handling it". :smile:

Thanks for the followup/explanation @DHowett-MSFT! I feel more sane now seeing that change, I thought I was to tired to function. 🤣

Thanks for the keybindings.
Now Windows Terminal works like Windows cmd. :) (I was actually surprised that it didn't work like default Windows cmd)

Gnome Terminal have a consistent keybinding that's not intuitive at first, but easy to adopt, and not too far from the usual CTRL + C for copy.
CTRL + C : Cancel
CTRL + Shift + C : Copy
CTRL + Shift + V : Paste
No logic for selection, always works a specific way. I think it's perfect. It would also harmonize with other OSes, since this behaviour is consistent across Linux and MacOS.
Really, I don't think we have any excuses since Command Prompt uses Enter for copy and Right Click for paste.

I always override Gnome Terminal to use CTRL+C / CTRL+V instead. Having this one single application using different bindings for copy/paste than the rest of the entire system is infuriating for me.

Workaround via manual adding keybinding is helpful, but let's call a spade a spade: the issue is not resolved until there's a default keybindings for copy-paste feature. Which of course should be able to be overridden.

Any particular reason for Ctrl+Insert registering as ;5~ and Shift+Insert registering as ;2~ and therefore not working as keybinding for copy/paste?
I just love these keys and can't understand why that shouldn't work

@darthcabs Would you mind sharing your config file? The only thing that springs to mind is that you may be using chorded binds instead of individual binds:
chorded binds (this will not work, and when it does it will not have the intended effect)
"keybindings": [
	{ "command": "copy", "keys": ["ctrl+shift+c", "shift+ins"] }
]

individual binds (this should work; #3324 suggests a problem that we cannot reproduce)
"keybindings": [
	{ "command": "copy", "keys": ["ctrl+shift+c"] },
	{ "command": "copy", "keys": ["shift+ins"] }
]

@DHowett-MSFT I was replying to you when I figured what the problem was... In my laptop's keyboard, the INS key is the same as F12 key.
Before I tried to type INS by pressing FN+F12, but as it turns out, it's easier to map copy/paste in Terminal to ctrl+f12/shift+f12 respectively.
Thanks a lot for the inspiration, lol!

@darthcabs Would you mind sharing your config file? The only thing that springs to mind is that you may be using chorded binds instead of individual binds:
chorded binds (this will not work, and when it does it will not have the intended effect)
"keybindings": [
	{ "command": "copy", "keys": ["ctrl+shift+c", "shift+ins"] }
]

individual binds (this should work; #3324 suggests a problem that we cannot reproduce)
"keybindings": [
	{ "command": "copy", "keys": ["ctrl+shift+c"] },
	{ "command": "copy", "keys": ["shift+ins"] }
]

For me what worked in shift+insert, not shift+ins - posting here just in case it helps anybody.

As we can see, this is a constantly occurring problem because it's unintuitive. See https://github.com/ayugioh2003/today-i-learned/issues/281
Ctrl+C, Ctrl+V should "just work", and there is no way of going around that. The users have made (and keep on doing) their verdict.
And as the new command line tool (not this one) works "correctly", ie. as expected, this one should too. If you developers are fond of another scenario, please add it as a setting and let the popular behavior be the default.

I appreciate your input here. Thanks! Just to underscore a couple of points:

It is a setting today! These key bindings can be set in profiles.json.
A preliminary look at the landscape of users who have customized their profiles shows that less than 1% of Terminal users are binding ctrl+c/v. It appears as though the popular behavior has been set as the default.

But that's assuming people know how to change it. Pardon my bad manners.
A more meaningful metric would be how many pressed Ctrl+V having something
in their clipboard, and then got the ^V, then erased it, or simply ended in
quitting the application ...
Den tors 19 mars 2020 02:31Dustin L. Howett (MSFT<EMAIL_ADDRESS>skrev:

I appreciate your input here. Thanks! Just to underscore a couple of
points:

It is a setting today! These key bindings can be set in profiles.json
.
A preliminary look at the landscape of users who have customized
their profiles shows that less than 1% of Terminal users are binding
ctrl+c/v. It appears as though the popular behavior has been set as the
default.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/terminal/issues/968#issuecomment-600939789,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFDEAFUVLWUENA64R652ODRIFYXDANCNFSM4HPKW2SA
.

For anyone landing on this thread from Google: the default keybindings are Ctrl+Shift+C and Ctrl+Shift+V. I have not found these in my settings, so I wasn't sure what the default are.
Also, I don't see this discussed here, but I think it is worth mentioning: Enter to copy and right-click to paste does not work either.

From an accessibility standpoint having combinations of 3 keys, or a mouse click+key is very difficult if not impossible for people with one hand or otherwise limited hand function. This is a big reason why I can't use emacs and stuck with vi/vim.
The default behavior that we have had in Linux/Xwindows for the last 20yrs is the most accessible.  DoubleClick to select a word, tripleclick the line, and right click pastes.  This appears to work within a Terminal frame but it doesn't reliably populate the clipboard.  Note - ConEmu has this functionality - I can select text in a terminal and it populates the clipboard.

    : Media disconnected
Connection-specific DNS Suffix  .    : Yes
Autoconfiguration Enabled . . . .  : Media disconnected
Connection-specific DNS Suffix  .   : Yes
Autoconfiguration Enabled . . . .  : Media disconnected
Connection-specific DNS Suffix  .   : Yes
Autoconfiguration Enabled . . . .  : Media disconnected
Connection-specific DNS Suffix  .   : Yes
Autoconfiguration Enabled . . . . : Yes
Wireless LAN adapter Wi-Fi:
Connection-specific DNS Suffix  .   : Yes
Autoconfiguration Enabled . . . .    : Media disconnected
Connection-specific DNS Suffix  .   : Yes
Autoconfiguration Enabled . . . . : Yes
Ethernet adapter vEthernet (Default Switch):
Connection-specific DNS Suffix  .   : No
Autoconfiguration Enabled . . . .   : Enabled

@DHowett-MSFT, I was also stuck not understanding why copy/paste doesn't work just like every other terminal on Windows or Linux (which is what lead me to this github issue after some searching). I don't think that people prefer this setting, they just have no clue how to change it and don't feel comfortable editing the keybindings file.

doesn't work just like every other terminal on Windows or Linux

That's a little dramatic, given that the present default behaviour of Terminal (Ctrl-Shift-C/V) matches exactly what the default terminal on Ubuntu does.

That's a higher-level question; who should we optimize for? Clearly not the
windows users ...
Den tors 9 apr. 2020 19:08Mike Purvis<EMAIL_ADDRESS>skrev:

doesn't work just like every other terminal on Windows or Linux
That's a little dramatic, given that the present default behaviour of
Terminal (Ctrl-Shift-C/V) matches exactly what the default terminal on
Ubuntu does.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/terminal/issues/968#issuecomment-611642181,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFDEAFRDQKLUPTQ2FGT6PLRLX6I5ANCNFSM4HPKW2SA
.

I'm just calling out that it's unfair to be clutching our pearls and claiming the Terminal team have made the wrong call here because it's different from "every other terminal on Windows or Linux", when every other terminal on Windows is a third party affair and the team here has copied as defaults what the leading Linux distribution has been doing since forever.
And the only reason this isn't an issue on Mac OS as well is that cmd and ctrl on that system happen to be separate buttons.

All fair points Mike, but let's face it, most windows users will not know
how to paste in this terminal.
That's my only problem here. Not only mine, but many people, lots of people
being quite proficient in windows but no experience at all with linux, and
there's a problem with noone knowing just how many. Do we want these people
to use terminal or dismiss it as feature-incomplete?
If we're content with the current state of affairs, then at the very least,
let's measure how many try pasting but can't.
If we don't want telemetry on this, then how about a small counter and when
you've tried it 3 times in 3 minutes, show a notification with a link to
this issue.
... I'm kidding, instructions on how to change it.
Den tors 9 apr. 2020 19:57Mike Purvis<EMAIL_ADDRESS>skrev:

I'm just calling out that it's unfair to be clutching our pearls and
claiming the Terminal team have made the wrong call here because it's
different from "every other terminal on Windows or Linux", when every other
terminal on Windows is a third party affair and the team here has copied
as defaults what the leading Linux distribution has been doing since
forever.
And the only reason this isn't an issue on Mac OS as well is that cmd and
ctrl on that system happen to be separate buttons.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/terminal/issues/968#issuecomment-611667090,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFDEAE457MF42X2JRHGFLLRLYECFANCNFSM4HPKW2SA
.

For telemetry's sake, I just downloaded and build this terminal today, and this is my only major complaint so far. There's an option in Preferences that indicates to me that Ctrl-C/V should work, but it quite obviously doesn't. Please enable the "Smart Ctrl-C" feature mentioned above, it's been my #1 complaint about CMD since the dawn of time. :)

I want to point out that I found this issue searching for how Windows Terminal implemented copy paste. One of the biggest complaints I hear from developers working on both Linux and Windows is that Windows copy/paste is inconsistent with whatever third party shell is installed and between Linux. Nearly every Linux distribution / terminal uses ctrl+shift+c/v, so I am glad that Windows Terminal also has that set as the default.

Why not have both Ctrl+C/V and Ctrl+Shift+C/V though?

@bjorn-ali-goransson We actually just changed the default settings file to include both, so users can easily opt-out of Ctrl+C/Ctrl+V if they want.
See this PR and #5187

It appears as though the popular behavior has been set as the default.

Nonsense.  It means people abandon trying to fix it, or don't know that it can be fixed.
It's the reason I am on this thread at all now.

@soilstack thanks. Consider reading the most recent messages on this thread.

It is truly astounding to me that you guys can't figure out how to make something as fundamental as this work! This is a huge deal. I love everything else about the Terminal app, but this basic flaw catches me out every time I use it.

@SteveIves You know you can change your keybindings to be whatever you'd like, right? If you want Ctrl+C/V as copy-paste, go ahead and add those to your keybindings. If you want Ctrl+Shift+C/V, you can use those too. If you want alt+q as copy and shift+0 as paste, go for it.
As of 1.0, the defaults include Ctrl+Shift+C/V as copy-paste, and new users will also get Ctrl+C/V as copy/paste in their settings file.

@zadjii-msft yes, I know this, and as a dev I can do this. But if you want Terminal to replace cmd.exe then you need to fix this.

Out of curiosity, what part of

As of 1.0, the defaults include Ctrl+Shift+C/V as copy-paste, and new users will also get Ctrl+C/V as copy/paste in their settings file.

is us not fixing this?

Ctrl+Shift+C/V is not natural. Also not right-click menu? I find Windows Terminal useful, but the lack of the menu and Ctrl+C/V is making me reconsider my options.

Yeah, this thread has run its course. Anybody who is inclined to comment: read the most recent four comments. It says all you need to know.


Bigger compression dara stream than madler/zlib

After we tested, we noticed that zlib-ng is much faster than madler/zlib, but compressed data stresms are always bigger than madler/zlib.
Is this a limitation or any setting to be defined?

If the file contains a lot of short matches (3 bytes), it is possible that zlib-ng creates larger compressed data streams as optimized functions can only find and compare multiples of 4 bytes. Almost none of the current processors is able to compare 3 bytes directly and in the past the 4th byte has been masked out before comparing, or compared byte by byte which is really slow.

Zlib-ng tries to make the best trade off between compression speed and size.
The deflate compression levels between Zlib and Zlib-ng are different and the comparison is documented in the Wiki. There are a few algorithms we have that Zlib does not.

PR #828 has my latest benchmarks if you are interested.


Cannot find module 'react-simple-di' & "There is no route for the path: /"

I cloned the correct version of the repo, ran npm install, and then started meteor. The app starts up fine, but the browser is blank with these two errors in the console.
Cannot find module 'react-simple-di'

There is no route for the path: /

I assume this might be some sort of module issue.  I am still in the process of learning how to use modules. The mantra sample blog app works fine for me. Any ideas on what might be going wrong? Thanks!

Same problem here!

Same


How is an ongoing updater route arranged?

The examples are all structured similarly.
The route is set up, the updater is started, data is transmitted, and finally the updater is stopped again.
updater.startComponent();
System.out.println("UPDATER STARTED");
System.out.println("PUBLISH EVENT");
publishNewDatapoint();
publishNewDatapoint2();
System.out.println("EVENT PUBLISHED");
checkIfPropertyIsUpdated();
updater.stopComponent();
I'm looking for a way, to keep the updater going for a indefinite amount of time, until one actively terminates the process.
When removing the "updater.stopComponent()" command, the program terminates nevertheless.
The only way I managed to have the desired result of an ongoing updater route, was by integrating a "Thread.sleep()" command with a large time argument.
There must be a better way, right?

Yeah, the while true option is probably better.
Thanks!

I also found an example in the  basyx examples repo, wich inspires the following steps to achieve a similar behavior without while(true):

First add the following list to your class

private List<IComponent> startedComponents = new ArrayList<>();

Add a method to create and append the updater as IComponent. No while(while) is required ...

/**
* Starts the updater
*/
private void startUpdater() {
    ClassLoader loader = PrometheusAASRouter.class.getClassLoader();
    RoutesConfiguration configuration = new RoutesConfiguration();

     [... configuration part skipped here ...]

    updater = new UpdaterComponent(configuration);
    updater.startComponent();
    startedComponents.add((IComponent) updater);  // add the updater component
    System.out.println("UPDATER STARTED");
}

Finally add a non-static method to execute the startUpdater. In this case I just used the constructor (I guess) for my class AASRouter

    public static void main(String[] args) throws InvalidFormatException, IOException, ParserConfigurationException, SAXException {
        new AASRouter();
    }

    public AASRouter() throws InvalidFormatException, IOException, ParserConfigurationException, SAXException {
        startUpdater();
    }


Andrew Prellwitz

Repository Link: https://github.com/prellwitza/AnnEwingCollection
Website Link: https://prellwitza.github.io/AnnEwingCollection/
The collection is from a Ripon College alumna, who went on to become a science writer and coined the term "black hole".
I was able to change the config file but my images don't seem to be showing. Help!

Hi Andrew, looks like you just need to add your metadata filename (annewingmetdata) to the "metadata" variable under "Collection Settings" in the _config.yml file (copying over "demo-metadata"). Your objects should show up in your collection then!

It worked! Thank you!
Andrew Prellwitz
Director of Lane Library
Associate Librarian - User Services
Ripon College
300 W. Seward St.
Ripon, WI 54971
(p)<PHONE_NUMBER>
(he/him/his)
[image: Ripon Flickr] http://www.flickr.com/photos/ripon_college/
This email is intended solely for the person or entity to which it is
addressed and may contain confidential and/or privileged information.  Any
review, dissemination, copying, printing, or other use of this email by
persons or entities other than the addressee is prohibited. If you have
received this email in error, please contact the sender immediately and
delete the material from your computer.
On Tue, Jun 8, 2021 at 1:52 PM owikle @.***> wrote:

Hi Andrew, looks like you just need to add your metadata filename
(annewingmetdata) to the "metadata" variable under "Collection Settings" in
the _config.yml file (copying over "demo-metadata"). Your objects should
show up in your collection then!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/CollectionBuilder/dhsi-demo/issues/7#issuecomment-857012307,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AUMN74K3IBAB4HUHYM2EFB3TRZRGBANCNFSM46KP7NHA
.


What is the nuget Xamarin.Auth.XamarinForms package?

What is the nuget Xamarin.Auth.XamarinForms package?

Have a look here: https://github.com/xamarin/Xamarin.Auth/wiki/Details#xamarinforms-support
If you are using Xamarin.Forms then you should use the Xamarin.Auth.XamarinForms package if you are wanting to use custom renderers.

@biapar
Xamarin.Forms comes with 2 implementations

Presenters which have no dependency on Xamarin.Forms packages, but can be used for Xamarin.Forms. This is in Xamarin.Auth itself.
Custom Renderers which are in Xamarin.Auth.XamarinForms package. This implementation is not tested as well as Presenters.

@jenart Thanks for pointing this out.

hi, is there any sample code or sample app to see how to use it and how different this than xamarin.auth package? Do we do all coding in shared code or we still have to code something on native level for each project type?


Invalid character in default release version

Hi @Jean85, I'm getting:

I don't know which character is invalid, but a str_replace could fix the issue.

Moving this under sentry-php because it's not something bound to the bundle.
@HazAT is it normal that the / or @ char is considered invalid for a release?

Yeah, / is not allowed, @ is ok.
Our documentation around this is poor but I would recommend using the commit sha.

@VincentLanglet then it's up to you, you used the / in the branch name probably, right?

Yes.
But the name is generated by https://github.com/Jean85/pretty-package-versions
I would have expected the library do replace the / by something else.


Annotations not appearing on project

Describe the bug
Annotations made via Audacity not appearing on a published project page despite appearing to have been successfully imported.
To Reproduce
Steps to reproduce the behavior:

Create project using IIIF manifest from HRC website.
Create annotations using Audacity; export as txt file.
Add annotations to the audio in AA; receive no error message.
View the published page—no annotations appear.

Expected behavior
The annotations should be showing up given that I can see they've been added on my editing page.
Screenshots
Annotations successfully added:

No annotations visible:

Additional context
Link to the project with missing annotations
Link to IIIF manifest used
Link to source of IIIF manifest
txt file uploaded: Annotations.txt

So I just tried again and got another error message.
In this project, I tried uploading this .tsv (zipped it just so I can attach it here)(https://github.com/hipstas/AudiAnnotate/files/8400622/AudiAnnotate.Annotations.Template.-.Annotations.Layer.2.tsv.zip) to both the Alice Walker interview and the John Beecher audio. Both times I got this error message:

Just fyi—just got the exact same error message uploading a .tsv to a non-imported audio file (i.e., one for which I created the manifest).

Good catch!  It turns out that we weren't handling rows with a blank end-time as point annotations; instead assuming that all point annotations would have start-time matching end-time.
I've updated the code to handle blank end-time columns, and we've deployed it.


author required for references but not enforced by kramdown

This might ultimately not be a problem with kramdown, but I don't know the underlying citation policy that is relevant.
I had a document that had normative and informative references in my .md that only had title and target associated, which ultimately led to a very obscure and somewhat misleading exception from xml2rfc on the .xml to .html conversion, although not on .txt.   Adding an author that included either name or organization obviated the exception so the .html could be produced.
I'll be filing a ticket against xml2rfc about that too, but raise the issue here because if the format of Internet-Draft references requires that an author be present, then kramdown should reject the input when it's absent.  If the citation format does not require its presence then this ticket can just be closed and it is entirely xml2rfc's problem.

Hmm, I'm a bit weary of including too much detailed knowledge about xml2rfc in kramdown-rfc, as xml2rfc is changing a lot.  However, both RFC7749 and RFC7991 do require at least one author (which may include a name and/or an organization), so I'll keep this issue open until I have developed a better policy for warning about (or not at all) generating invalid XML.  (One approach might be to fill in one surrogate author automatically from kramdown-rfc.)


Polish JVM base plugins

These plugins often do very similar things. This PR updates the Scala, Java, and Groovy base plugins to use the same names, patterns, initialization order, and method abstractions as each other (for the most part).
Additionally, any remaining conventions used by these plugins have been updated to emit deprecation warnings if any of their methods are called.

@bot-gradle test qfl

OK, I've already triggered the following builds for you:

QuickFeedbackLinux build

@bot-gradle test qfl

OK, I've already triggered the following builds for you:

QuickFeedbackLinux build

@bot-gradle test this

OK, I've already triggered the following builds for you:

PullRequestFeedback build


Fix layout to avatar title on top / menu below

If I make my browser window narrow enough, the layout switches to having the avatar / website title / menu stacked on top of each other.
Since the usual layout doesn't give me enough space for the menu, I was wondering whether it is possible to switch to this setup entirely?
Thanks!

I fixed this issue by adding a padding-top element to site-info in style.css@190
.site-info {
  float: left;

  @include mobile {
    float: none;
    display: block;
    margin: 0 auto;
    padding-top: 20px;
  }
}


Come up with workshop tasks

We need a list of tasks that will comprise the bulk of the workshop. We should plan for about 2.5 hours of work, people working in pairs. Tasks should initially be simple, then increasingly interesting/complex. The final task could be creating a Slack App. Note Slack apps do not scale well if they use conversations or the RTM API, but if we just want to run this as a single process, this would be a fine example.
Here is the final interaction we want to get to:
1. So you want "pizza"? Where do you want to eat it?
*Give your Address*
2. Here are some domino "pizza" shops near you?
    .....
*Select store*
3. Lets get your order
4. show menu -> get order -> loop
* selects item on menu*
5. Ok, ready to go? [yes, cancel]
*yes*
6. We placed your order, your order number is XXXX

*Track my order: (order number or phone)*
1. Here is your order status…

Note: we could simplify the menu section... or have show menu be a separate command to simplify the interactions.

Once groups have formed, they should create a new channel in Slack with their group name. Avi and will assign each group a Slack token and teach them how to set the token. All these tasks take place once that is done.

Fork/clone repo
Setup .env file with Slack Token
npm start and interact with your bot (will come with some out of the box welcome interaction)
List nearby stores for current zip code (hard coded). Display a list of IDs and addresses. Only show stores that are open, online, and online capable.
Ask user for an address, then display nearby stores. (First step into conversations. We should stop at this point to talk about conversations, and how to build them without things getting out of hand.)
Ask user to choose a store (by ID) to order from. Display their menu.
Ask user what they want from the menu. This can happen in a loop until user says "That's all".
Ask user to confirm order. Print what they ordered and store address. This could be done with message buttons ("Gimme Pizza", "Nevermind"). I'm not sure how well buttons play with conversations. We may need a phone number?
Place order and let user know the ID.
"Track my order ." Print order status.
Take this working bot, convert to Slack App (this is relatively easy, but does require some special tools like ngrok, and will require them to set this up in the Slack UI.) This is a stretch goal, and could just be a final 2-3 slides.


Fix param syntax in xcrdutil.psm1

Removed the trailing comma and added a missing one in the params list, which caused these errors respectively:

Missing expression after ','.
Missing ')' in function parameter list.

Thx!


sample rss feed

We need to publish this before we can test it.
The feed should be accessible at:
https://docs.microsoft.com/en-us/azure/architecture/data-guide/feed.xml
If this works, we'll come up with a better way to curate it.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/docfx.json
:white_check_mark:Succeeded

docs/feed.xml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Add readme for docker/jenkins directory

This also removes the bin/{build.sh,test.sh} scripts that are now
located in .jenkins/{build.sh,test.sh}. The rationale for this is
that these scripts don't care about Docker specifically and are also
run for, for example, macOS builds.

@pjh5 Thanks!


Puppet functions to query serf members?

What do you think about puppet functions that could return serf members for use in manifests? Like:
$webserver_array = serf_members("webserver")
notify { $webserver_array: }

I'm thinking it would take a parameter of the role and maybe an optional param for alternate RPC addresses.
Do you think this would be useful to others? It isn't very "serf"-like, but it would be eventually consistent. It would have to execute the serf cli on the puppet master, which could be confusing to some. It would also have to scrape the output, which would probably break as serf changes. (until they have a stable api)
If you think this would be useful, would you accept a PR if it did this + tests?

I'm going to close this for now. I agree that RPC with a type/provider


Add support for ArcGIS Enterprise 11.4 on Windows and Linux

Add support for ArcGIS Enterprise 11.4 to arcgis-enterprise-base-linux, arcgis-enterprise-base-windows, and arcgis-server-linux  templates for AWS.

Added support for ArcGIS Enterprise 11.4 to aws/arcgis-enterprise-base-linux, aws/arcgis-enterprise-base-windows, and aws/arcgis-server-linux templates.
Added support for Ubuntu 24.04 to aws/arcgis-enterprise-base-linux template.


set window size of headless chrome

Hi,
It seems like the window-size of a headless chrome couldn't be configured.
Some components of my application are only visible if the width is bigger than 960px, but protractor couldn't find them. If I run the test without "--headless"-attribute everything works fine.
Does anyone solve this problem?

Node Version: 6.10.1
Protractor Version: 5.11
Angular Version: 1.5.8
Browser(s): Chrome
Operating System and Version: Ubuntu 16.04
Your protractor configuration file:

capabilities{ browserName: 'chrome', chromeOptions:{ args:[ "--headless", "--disable-gpu", "--window-size=1000,1000" ] } }

Hi there!
Your question is better suited for StackOverflow or Gitter. Please ask a question there with the 'protractor' tag or post in the Gitter Channel to get help.
From the the getting help section of the README:

Please ask usage and debugging questions on StackOverflow (use the "protractor" tag) or in the Angular discussion group. (Please do not ask support questions here on Github.)

Thanks!

Headless mode is cool, but stuff like changing the window size is exactly the sort of thing I'd expect to not work. I'd recommend running with Xvfb for now until --headless is a bit more mature.

Oh I didn't know that.
Thank you

Hi there!
Your question is better suited for StackOverflow or Gitter. Please ask a question there with the 'protractor' tag or post in the Gitter Channel to get help.
From the the getting help section of the README:

Please ask usage and debugging questions on StackOverflow (use the "protractor" tag) or in the Angular discussion group. (Please do not ask support questions here on Github.)

Thanks!

Do you have an answer or are you with the indications?


fix: remove buildTimeImportMetaUrl

Description
This error happens for almost all users.
Error: cannot test case insensitive FS, CLIENT_ENTRY does not point to an existing file: D:\documents\GitHub\vite\packages\vite\dist\client\client.mjs

This does not happen only for a user which is using self-built Vite and the generated dist directory is not removed.
It is p5 but since #8743 is not released yet, a new release is not urgent.
refs #8743
refs https://github.com/vitejs/vite-ecosystem-ci/pull/83
Additional context
https://github.com/vitejs/vite/blob/f018f135ffa5a2885c063d4509d39958c788120c/packages/vite/src/node/constants.ts#L63-L70
https://github.com/vitejs/vite/blob/c2b09db1bf78c09df20d209a28568b0851ce5c31/packages/vite/src/node/utils.ts#L171-L186
This is the code throwing the error.
Also IIUC a code like this will be broken if it is replaced on build time.
https://github.com/vitejs/vite/blob/c2b09db1bf78c09df20d209a28568b0851ce5c31/packages/vite/src/node/config.ts#L988

What is the purpose of this pull request?

[x] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[x] Read the Pull Request Guidelines and follow the Commit Convention.
[x] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

pnpm test-build-legacy-cjs passed in my local.

Since the bug is fixed, we can remove this workaround. @sodatea let us know if you think something should still be done here.

I think in the end, we'll still need the plugin. Resolving import.meta.env at runtime makes its behavior implicitly dependent on the chunk layout. Such implicit dependency doesn't look good for long-term maintenance.
I'll find a better way to fix it, though.


chore: fix failing notebooks

Related Issues/PRs

#xxx
What changes are proposed in this pull request?
Briefly describe the changes included in this Pull Request.
How is this patch tested?

[ ] I have written tests (not required for typo or doc fix) and confirmed the proposed feature/bug-fix/change works.

Does this PR change any dependencies?

[ ] No. You can skip this section.
[ ] Yes. Make sure the dependencies are resolved correctly, and list changes here.

Does this PR add a new feature? If so, have you added samples on website?

[ ] No. You can skip this section.
[ ] Yes. Make sure you have added samples following below steps.

Find the corresponding markdown file for your new feature in website/docs/documentation folder.
Make sure you choose the correct class estimators/transformers and namespace.
Follow the pattern in markdown file and add another section for your new API, including pyspark, scala (and .NET potentially) samples.
Make sure the DocTable points to correct API link.
Navigate to website folder, and run yarn run start to make sure the website renders correctly.
Don't forget to add <!--pytest-codeblocks:cont--> before each python code blocks to enable auto-tests for python samples.
Make sure the WebsiteSamplesTests job pass in the pipeline.

/azp run

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (90ded80) 85.84% compared to head (5cbcecb) 23.77%.

Additional details and impacted files
@@             Coverage Diff             @@
##           master    #2134       +/-   ##
===========================================
- Coverage   85.84%   23.77%   -62.08%
===========================================
  Files         312      312
  Lines       16470    16470
  Branches     1458     1458
===========================================
- Hits        14138     3915    -10223
- Misses       2332    12555    +10223

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


MaxBreadcrumbs setting is not respected and leads to failures to ingest events

Environment
How do you use Sentry?
Sentry SaaS (sentry.io) or self-hosted/on-premise (which version?)
Which version of the SDK?
0.18
How did you install the package? (Git-URL, Assetstore)
git
Which version of Unreal?
5.4.4
Is this happening in Unreal (editor) or on a player like Android, iOS, Windows?
All desktop platforms at least
Steps to Reproduce

Call SentrySubsystem::AddBreadcrumb or SentrySubsystem::AddBreadcrumbWithParams more times than the MaxBreadcrumbs config, which is 100 by default
Send a Sentry event

Expected Result
I'd expect the breadcrumbs to truncate or include the most recent MaxBreadcrumbs breadcrumbs instead of growing a TArray and including the whole thing indefinitely.
Actual Result
All of the breadcrumbs added, including those over the limit, are included in the event or the event is completely rejected for being too large
Any logs or screenshots

@riot-pmaconi which platform are you targeting? (Windows/iOS/etc)?

@bruno-garcia Linux and Windows. The problem areas are some combination of these:
https://github.com/getsentry/sentry-unreal/blob/1737695aa0a83637c34ebd499d1e971d24dca23c/plugin-dev/Source/Sentry/Private/Desktop/SentryScopeDesktop.cpp#L36
https://github.com/getsentry/sentry-unreal/blob/1737695aa0a83637c34ebd499d1e971d24dca23c/plugin-dev/Source/Sentry/Private/Desktop/SentryScopeDesktop.cpp#L266
https://github.com/getsentry/sentry-unreal/blob/1737695aa0a83637c34ebd499d1e971d24dca23c/plugin-dev/Source/Sentry/Private/Desktop/SentryScopeDesktop.cpp#L294

The cap of breadcrumbs should be kept by sentry-native. We can see here that on Android we do the same thing, just add the breadcrumb without consideration of how many are already there:
https://github.com/getsentry/sentry-java/blob/0438c6f3581c589a0772ec049e5bc374588cbeba/sentry-android-ndk/src/main/jni/sentry.c#L154-L216
That goes into sentry-native here:
https://github.com/getsentry/sentry-native/blob/7c1d428b4d8a05fcd15c3b191628d370bbe297d3/src/sentry_core.c#L640-L657
And the ringbuffer lives here:
https://github.com/getsentry/sentry-native/blob/7c1d428b4d8a05fcd15c3b191628d370bbe297d3/src/sentry_value.c#L646-L678
The event that got dropped had more than 100 (default) breadcrumbs?
Or perhaps these crumbs are super long strings that by themselves push through the max size of the payload?

Do you have a snippet we can use to repro this? (or even a basic AddBreadcrumb with a short string will already repro it?

Sure.
USentrySubsystem* SentrySubsystem = GEngine->GetEngineSubsystem<USentrySubsystem>();
for (int i = 0; i < 1000; ++i)
{
	SentrySubsystem->AddBreadcrumbWithParams(FString::FromInt(i), "Warning", FString(), TMap<FString, FString>(), ESentryLevel::Warning);
}
SentrySubsystem->CaptureMessage("TestMessage", ESentryLevel::Error);

A little more detail about my last response:
The 1,000 looped breadcrumbs will go through without failing to ingest and all 1000 will show up in the event. If you loop 10,000 times, it will return a 400 and the event will be rejected.

That's definitely buggy. Thanks for raising it!


Always template vendor source and targets

what
This change improves the templating within vendor manifests slightly: It officially adds support for the Component field to both source and targets.
These features were already supported but mostly undocumented and hidden behind an implicit switch: The templating was only triggered if the Version field was set. Which was also the only officially supported field.
In reality though all fields from the current source definition were available but in the state they were currently in, depending on the order of the templates.
With this change

It is clearly documented which fields are supported in which YAML values.
Only the two static fields are supported.
The values are always templated.

Theoretically this could be a breaking change if somebody used no version field but curly braces in their paths. Or relied on the half-populated source data structure to refer to unsupported fields. If xkcd 1172 applies it should be possible to amend this logic to add more officially supported fields.
why
I was looking for a way to restructure our vendoring like the examples in examples/demo-vendoring/vendor.yaml to avoid copy and paste errors when we release new component versions.
I actually only found out about that demo when I was done writing this code since the templating was never triggered without a version field and the documentation didn't mention it.
references

https://github.com/cloudposse/atmos/blob/v1.88.1/examples/demo-vendoring/vendor.yaml
https://atmos.tools/core-concepts/vendor/vendor-manifest/#vendoring-manifest

Summary by CodeRabbit

New Features

Enhanced vendoring configuration with support for dynamic component referencing in vendor.yaml.
Improved handling of source and targets attributes for better organization and flexibility.

Documentation

Updated documentation for vendoring configuration, including clearer instructions and examples for managing multiple vendor manifests.
Added explanations for included_paths and excluded_paths attributes to improve understanding.

@coderabbitai full review

@mss can you join us in SweetOps slack? I think this might have broken something. @jamengual reported an issue.
slack.cloudposse.com

@mss can you join us in SweetOps slack in #atmos? I think this might have broken something. @jamengual reported an issue.
slack.cloudposse.com

the {{{{  ...   }}}}  did the trick


GetMetrics grpc method is not called

Why doesn't the GetMetrics method get called when using an external scaler, but all the other grpc methods work fine?  version 2.8.2

@zroubalik @JorTurFer Do you know?
@Jimyhjy can you provide some more details please?


Update auto-generated documentation

Repository: openmicroscopy/ome-documentation
Already up-to-date.
Generated by build OMERO-DEV-latest-docs-autogen#1196.

--no-rebase

Everything is displayed correctly


Support generating a commit message for a given changeset

Feature request
Instead of requiring that files have to be locally staged to generate a commit message, it would be possible to generate a commit message for a given diff, e.g. origin/main..my-feature-branch.
$ aicommits generate origin/main..my-feature-branch

Instead of committing with the generated commit message it would just output message for usage elswhere.
This obviously means that the diffs would probably be too large for OpenAI - so the per-file diff solution mentioned in the roadmap would likely need to be implemented as well for this to be useful.
Why?
We'd love to be able to use this tool to generate a commit message for the entire diff in a PR!
Alternatives
No response
Additional context
No response

Good idea!
Maybe aic diff branchA branchB?

Yeah that sounds good to me!


Add ESP32 LED control (LEDC)  template

The LED control (LEDC) peripheral is primarily designed to control the intensity of LEDs although it can also be used to generate PWM signals.

Hi @mtuxpe, firstly thanks contributing!
This repo is tied to the WWDC 2024 Session: "Go Small with Embedded Swift" and we're not current accepting additional examples for this repo. That said the LEDC example might be a better fit for https://github.com/apple/swift-embedded-examples do you might porting the code over to that repo and we can review the PR there?

got @rauhul thanks


Unbeatable mode added in tic-tac-toe

Unbeatable mode is added using minimax algorithm and reusing the available functions for decision making.

Recreating for Hacktober


add save repo; remove code, we should always create a new one

@acosferreira the error on the check seems to be related to not finding imgs on quay.io, we need to fix this before the merge.

/retest

/retest