Configuring each kubelet in your cluster using kubeadm

So when I copy The kubelet drop-in file for systemd - "--kubeconfig=/etc/kubernetes/kubelet.conf" comes in the next line, which I suppose should continue in the first Environment field.
[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf
--kubeconfig=/etc/kubernetes/kubelet.conf"
Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"
EnvironmentFile=-/var/lib/kubelet/kubeadm-flags.env
EnvironmentFile=-/etc/default/kubelet
ExecStart=
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS
This is how it should look like :)
[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"
Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"
EnvironmentFile=-/var/lib/kubelet/kubeadm-flags.env
EnvironmentFile=-/etc/default/kubelet
ExecStart=
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS

@rashed-k Thank you for the report.

URL: https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/#the-kubelet-drop-in-file-for-systemd
File: https://github.com/kubernetes/website/blob/main/content/en/docs/setup/production-environment/tools/kubeadm/kubelet-integration.md?plain=1#L174-L175

Proposed solution:
-Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf
---kubeconfig=/etc/kubernetes/kubelet.conf"
+Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"

And it will be great if someone performs a test for the proposed solution!
/kind bug
/triage accepted

/language en
/sig cluster-lifecycle

/assign

So when I copy

if you don't have a package manager you should be following this guide (see "without a package manager...)
https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#installing-kubeadm-kubelet-and-kubectl
instead of copying the contents from https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/#the-kubelet-drop-in-file-for-systemd
and baking your own systemd files.
is there are external guide that misled you to proceed with such a step?

The kubelet drop-in file for systemd - "--kubeconfig=/etc/kubernetes/kubelet.conf" comes in the next line, which I suppose should continue in the first Environment field.

is this actually causing problems?

as explained above ^ adding a note is the best thing we can do and that block serves as just an example.
closing, given https://github.com/kubernetes/website/pull/31966 merged.
/close


Add odinuge to members

👋
Ref. the contributor ladder, I'm nominating myself as a member so that I can easier trigger testing on my PRs, without having to bother the rest of you!
I've mostly been doing, and plan to continue, do scaleability work; https://github.com/cilium/cilium/issues?q=commenter%3Aodinuge
So far I've fixed a handful of scaling issues we have had internally, as well as reduced the memory usage of the agents with ~50% to 80%. I've also fixed a few policy leaks and other perf stuff.
Thanks all!

Would appreciate +1 from some of you; @aanm @christarazi @ungureanuvladvictor @michi-covalent 😄


Presentation -- after soft return, the following paragraphs appear formatted as code block

This is a bad bug, will get on it today

I just tried testing and it seemed to put the entire text into one line instead of a code block. Do you have example markdown I could use to reproduce?


ci: disable integration tests

Warnings

:warning:

:mag: Can't find junit reports at ./junit_report-ui.xml, skipping generating JUnit Report.

Messages

:book:

:white_check_mark: All tests are passing
Nice one! All 32 tests are passing.

:book:

:floppy_disk: Here's the built vsix for this change.

  Generated by :no_entry_sign: dangerJS against bc3718d6c35362efadadb1d499d28b864d1fe487


Initial setup of dagster with Karma3

I currently am working on a branch with the goldsky data but I figured I should merge this in before that work is done.

Closes #1007


[HW] Saqib Rahman

Name: Saqib Rahman
Email<EMAIL_ADDRESS>Linkedin Profile: https://www.linkedin.com/in/rahmansaqib/
Attach the homework screenshots below for both step II and step III:

Creating the users_by_city table

Creating the comments_by_user, comments_by_video

Inserting data into the comments_by_user table.

Inserting data into the comments_by_video.

Cassandra Data Modeling Scenario

Cassandra Query Language Scenario

Hey Saqib Rahman, great job! Congrats! Here is your badge! https://api.badgr.io/public/assertions/A65iU1RTQb-_LNkCZUMpfQ


Fix a bunch of bugs

On Windows, whenever the data folder gets updated, the folder doesn't get deleted because rm -rf directory doesn't work on Windows and there are 2 read only files in the .git folder. This should fix it on Windows by changing all files in the data folder to not be read only and then deleting them using a method that should work on all operating systems. This should be tested on Linux, since I only tested it on Windows.
also fixed killing an entity without a weapon, dialogue with jacob, and a few fishing bugs

Inventory is also set to 80 slots in 1 place and 36 slots in another, and I'm not sure which is intended, so I didn't change it


The Witcher 3 shadows flickering on ANV

When playing The Witcher 3 (from Steam) on a Kabylake Core i7-8650U on a Dell notebook with a UHD620 I get a weird texture flickering when items are in shadow.
Generally the game is too dark,
I did a video recording https://drive.google.com/open?id=1MohQ4EGNQ94PDaS6a9wbjy5yIdYirE5G to highlight the issue.
This is using DXVK 0.94 bundled with Proton 3.16-6.
Software information
The Witcher 3 from Steam, 1280x720 all lowest except for texture resolution which is medium.
System information

GPU: Intel UHD620
Driver: AMV from mesa git (also happened on MESA 18.3.0)
Wine version: Wine 3.16 bundles with Proton 3.16-6
DXVK version: DXVK 0.94 bundled with Proton 3.16-6
OS: Gentoo Linux, 4.20.1 (and the same on 4.19.8), KDE5 desktop with compositing disabled.

I unfortunately did not do an APITrace. Generally the game runs as expected, except for the dark/flickering issue.
I understand this is below the minimum spec of the game, but is otherwise playing and enjoying the game, just the dark/flicker issue I am wishing to resolve here.

@werman Should I create a new issue on freedesktop.org to track the mesh flickering issue? Do you need anything from me that will help?

Yes, please create one. You can add apitrace with the flickering.
And unfortunately this flickering is random even in apitrace so I wasn't able to quickly find the cause.

@werman I created the issue here: https://bugs.freedesktop.org/show_bug.cgi?id=109616
Could you please attach the apitrace you did to the issue?

@grigi Yes, I add it tomorrow.

Mesa bug https://bugs.freedesktop.org/show_bug.cgi?id=109404 has been fixed and merged to master and eligible for backport to stable.
I'm keeping this open for the related mesa bug https://bugs.freedesktop.org/show_bug.cgi?id=109616

@grigi: https://bugs.freedesktop.org/show_bug.cgi?id=109616 appears as RESOLVED FIXED.

Nice, closing this then.


No license?

Hi,
I might use your implementation of IW but the fact that your code doesn't declare any license could be a show-stopper. Would it be possible for you to add an open license?
thx

Hi, What kind of license do you need? There are many options and not sure what are your needs. In principle, I won't have a problem to add a license. What kind of use do you have in mind?

Well it really depends on your targets for the project.
In our case (usage in corporate environment), I would suggest one that does not enforce copyleft.
Among of the simplest ones and largely used in research is the MIT license or the BSD license which are basically just here to protect your copyright and avoid any responsibilities in the use of your code.

Done! BSD-3 license. If you find the software useful, let me know. I'll be happy to know that someone has found a practical use of the software. Enjoy!

Thx a lot!
I'll make sure your work is credited on our usage/communication.


add install instruction for brew.

cross ref #1

I apologize for the delay. I always try to reply within 24 hours, but a lot has been on my plate in the past two weeks. I've got to tell you I've been anxiously waiting to review your patch. Homebrew support would be awesome!
It could be another day or two before I can get back to you. Just wanted to give a heads up and let you know that your contribution is very welcome, and I definitely haven't forgotten it. Thanks for the patience. :bow:

Cudos for the feedback, and no worries, I know how it is when there's more you want to do, than can fit into the time you've got. :)

I don't have access to an OSX box, but I trust you that it works. :)
On the documentation I have a few suggestions. Some of which seem like nitpicking. I haven't slept much. I apologise in advance.

We should point out that, in contrast to other installation methods, homebrew installs system-wide. Simply including the word system-wide somewhere should suffice. For example, as in "OS X users can use Homebrew to install libraries system-wide."
The note on automatically installing bats-support and bats should explicitly mention that it's done so because they are dependencies. This may not be readily apparent to newcomers.
You have a typo in variuos.
Spell out utils instead of abbreviating. Looks better in my opinion.
Add an example to the Loading section. Just below the npm example is fine. If HOMEBREW_PREFIX can be detected in the environment, the example should use that. I'm not actually sure if this is possible. If not the default is okay.

Homebrew support is great! Thanks a lot again!

I appologise for the massive delay. I'm not promising that it won't happen again, but I'll do my best to be more responsive. Hopefully I can return to my normal <24 hours delays soon. Thanks for the patience again. :bow:

Rebased and squashed a new commit, addressing your comments.
Didn't get your reference to where I had abbreviated utils, though.
When installing (as well as on info output, as shown below), there's a notice message describing how to load the libs, as a nice complement to the docs... ;)
$ brew info bats-assert
kaos/shell/bats-assert: stable 0.3.0, HEAD
Common assertions for Bats
https://github.com/ztombol/bats-assert
/usr/local/Cellar/bats-assert/HEAD (16 files, 82.8K) *
  Built from source
From: https://github.com/kaos/homebrew-shell/blob/master/Formula/bats-assert.rb
==> Dependencies
Required: bats-support ✔
==> Caveats

To load the bats-assert lib in your bats test:

    load '/usr/local/lib/bats-support/load.bash'
    load '/usr/local/lib/bats-assert/load.bash'

$

Don't worry about nit-picking, I'm one myself too.. 😃 though, my native tongue is not English, so I do miss the occasional grammar or spelling.. 😝
There's also a way to run the test suite for the lib, using brew test bats-assert for instance. I left it out of the docs for the time being, as it didn't work for me just now (it did work last time I was at it, so not sure what's changed..)

Spelling
I meant spelling out utilties instead of abbreviating it as utils.

The forumlae are in a tap for various shell utils by @kaos, so enable the tap kaos/shell first.

Loading
In the Loading section, I think you are missing a /lib in the parenthesis.

For brew installations, load the libraries from $(brew --prefix)/lib/ (which is /usr/local**/lib** by default):

The example should use $(brew --prefix) instead of hard-coding the default to be generally useful.
TEST_BREW_PREFIX="$(brew --prefix)"
load "${TEST_BREW_PREFIX}/lib/bats-support/load.bash"
load "${TEST_BREW_PREFIX}/lib/bats-assert/load.bash"

Storing the prefix in a variable avoids invoking an extra subshell every time.
It was a good idea to add a note on load only appending .bash when the given path is relative.
Testing
Thanks for mentioning testing! We don't need to add brew test bats-assert for now. The other installation methods don't mention testing either.
Since the beginning I've intended this repo to be a specification for bats helpers. But didn't want to say that explicitely before adding exact constraints on behaviour (e.g. loading has no side-effects, directory structure) and guidelines (as well as a skeleton) for writing new libraries.
Don't sweat the spelling mistakes! I'm not a native speaker of English myself. :)

Right, will spell out utilities. So used to utils that I didn't even consider it a abbreviation.
I were considering the options there.. and opted for brevity, with a hint of how to find out the current value, also as the output when installing, as well as on brew info you'll get correct values. But, it's an easy fix, will do ;)
Regarding missing /lib in the parenthesis, I was referring to the default for brew --prefix which is /usr/local.. perhaps I should make that clearer).

I understand. I considered the same when writing the Installation section for git. I think, the portable version would demonstrate a better practice than hardcoding the values.

... $(brew --prefix)/lib/ (which is /usr/local by default):

To me "which" refers to $(brew --prefix)/lib/, which in turn is /usr/local/lib. But it's easy to understand what you meant, so I think I'm just being too pedantic.. :smile:
I leave it up to you. :)

Ok, I've addressed your last comments, and pushed a amended commit to keep the changes in a single commit.

@kaos Looking good! Merging, finally... Sorry, I put this off for way too long. This is an important addition! Thank you very much for your hard work. And thanks again for the patience. :bow:

Thanks :)
lör 21 maj 2016 kl. 14:04 skrev Zoltán Tömböl<EMAIL_ADDRESS>
Merged #8 https://github.com/ztombol/bats-docs/pull/8.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/ztombol/bats-docs/pull/8#event-667945956


Foundation 6 - callout font color not used

Seems like $callout-font-color isn't being used at the moment:
https://github.com/zurb/foundation-sites/blob/develop/scss/components/_callout.scss
I searched the whole project but only find these definition, no actual use.
I only realized it because I wanted to modify the font color of a callout.
Let me know if I'm missing something. Thanks

It is actually not being used at all. Seems like a TODO in the list.


feature/TECH 488 namespace logic

Monorepo counterpart: https://github.com/Vandebron/Vandebron/pull/11058

Add ci flag for health check -> if we run build health in jenkins, it reported errors that jenkins is not configured correctly
Check for duplicate project names when we run projects lint -> will fail the build if you try to merge a duplicate project name
Validate namespace substitution for PR target when running mpyl project lint --extended

📕 TECH-488 Validate namespace replacement logic
Check namespace replacement
URLs should be interpolated with the name of the project
Add a command to mpyl build health to validate unique project names

after loading all the projects, validating the yamls then check project names
fail pipeline if project name is not unique
check all project names in lower case -> give suggestions if there's a case-sensitity issue

create post about this logic + add it to mpyl documentation
🏗 Build 6 ✅ Successful, started by Daniel Koves
🚀 cloudfront-service, job, kong-sync, nodeservice, sbtservice, sparkJob

@koeves, the logic is complicated quite a bit by the fact that the validation is done against a (PR) subset of projects. Would it be possible to validate all env vars of all projects all the time instead?

I'd say we should only lint changed projects (like it's not really meaningful to someone that another teams project linkage is broken). Same idea as the project yaml linking before, we've had feedback that failing a build because some else committed breaking changes is not really useful in that sense. So I would keep a more complicated logic if that stops people from committing breaking changes, while keeping the error messages relevant for that person

What is the usecase for allowing to merge broken project.yml to master? Is there a fundamental difference to merging code that does not compile?
Fail fast, zero tolerance is generally a saner approach IMO. You could even add a merge rule to prevent broken configurations from being merged to master. It's something that can be validated quite quickly, so I don't think it should have a negative impact on the feedback cycle.

What is the usecase for allowing to merge broken project.yml to master? Is there a fundamental difference to merging code that does not compile? Fail fast, zero tolerance is generally a saner approach IMO. You could even create a merge rule to prevent broken configurations from being merged to master. It's something that can be validated quite quickly, so I don't think it should have a negative impact on the feedback cycle.

I meant we shouldn't validate every project on every build, because it's not relevant for the person working on some projects. We still validate the changed projects and fail fast if they are invalid.

Why not validate everything all the time? That way you can't have broken project.yml in master by definition. And you don't need to even think about this complicating scenario.

I agree with you Sam, but I lost the discussion as you can see 😉 important detail though: we came to a comprimise that for now we only lint changed projects since breaking changes can still be merged (and build via MPL), and we would look into maybe a github action to block merging breaking changes after the migration is complete. After that we can lint/validate everything all the time

Why not validate everything all the time? That way you can't have broken project.yml in master by definition. And you don't need to even think about this complicating scenario.

We can, but until everyone is using MPyL people will merge broken yamls.. All it takes is one project for your build to fail, and then what do you do? Do you correct another teams project in your PR? You're basically blocked until they fix it, or you spend time fixing others' projects.

I added the option that we lint all projects for everything. It looks like the namespace linkup fails for the projects that use the project overrides.. This is not ideal because we didn't add the project overrides to MPyL. Also came up in a meeting that teams will get rid of this functionality sometime. So for now we can stick to linting changed projects

@koeves I see 🤔. In that case maybe it would be better to exclude these projects altogether? Make them effectively invisible to MpyL I mean.
We don't want them to be included in builds either, as long as we don't support overrides.
As a temporary hack we could filter out a list of projects (perhaps via csv env var) here https://github.com/Vandebron/mpyl/blob/211775ceb648d7b266b19bf627cbb9e67705d8be/src/mpyl/utilities/repo/init.py#L223-L232
I feel that would be a simpler temporary hack than looking at whatever project has changed.
For the override stuff we could perhaps take inspiration from (or just use) the application sets in argocd https://argo-cd.readthedocs.io/en/stable/operator-manual/applicationset/.


Ability to create a new item when list is empty

I want to be able to create a new item when there is no data on the list yet. Right now the form just does not show up despite JS views working correctly.

Adding new item on empty list is definitely possible. What do you mean by "form just does not show up"?

It seems that the button that triggers the new item form only shows up when there is a table element. When there are no elements, the table is nonexistent and the triggering button just does not show up even when I define it with the new_item function.

item_new is by default designed to be used within a table. If you want to use it outside the table, you need to customize it i.e. by overwriting smart_listing/_item_new.html.erb partial.
Simple solution would be to show table always, even if no list items.

Ok, that' s fine with me.


[Bug]: Improve the loading time for Fosscu Resource Pages for frontend https://fosscu.org/roadmap

Contact Details
<EMAIL_ADDRESS>What happened?
The current time to load the https://fosscu.org/roadmap page is very high. We need to reduce it.
Stats

Problem and the Solution
I think the YouTube-embedded links have the problems as shown in the network tab logs under inspect section, so we need to find a good solution to load those YouTube videos in the resource page faster.
What browsers are you seeing the problem on?
Chrome
Relevant log output
Request URL: https://static.doubleclick.net/instream/ad_status.js
Referrer Policy: strict-origin-when-cross-origin
Provisional headers are shown
Learn more
Referer: https://www.youtube.com/
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1

Code of Conduct

[X] I agree to follow this project's Code of Conduct

@Mr-Sunglasses Can it done by using YouTube iframe api ??

I would like to work on this issue, please assign it to me.

@Mr-Sunglasses Please assign me this issue. I want to work on this.

@Mr-Sunglasses #189


[Fix][UI] Fix the port in the datasource edit.

Purpose of the pull request
close #11553

Brief change log

Verify this pull request

This pull request is code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:

(or)
If your pull request contain incompatible change, you should also add it to docs/docs/en/guide/upgrede/incompatible.md

Codecov Report

Merging #11624 (d1089a3) into dev (3e73829) will decrease coverage by 0.00%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev   #11624      +/-   ##
============================================
- Coverage     39.80%   39.80%   -0.01%
+ Complexity     4703     4698       -5
============================================
  Files           992      992
  Lines         37732    37714      -18
  Branches       4202     4195       -7
============================================
- Hits          15021    15012       -9
+ Misses        21142    21131      -11
- Partials       1569     1571       +2

Impacted Files
Coverage Δ

...er/master/dispatch/host/assign/RandomSelector.java
77.77% <0.00%> (-5.56%)
:arrow_down:

...e/dolphinscheduler/remote/NettyRemotingClient.java
50.00% <0.00%> (-2.78%)
:arrow_down:

...r/plugin/task/sqoop/parameter/SqoopParameters.java
55.12% <0.00%> (-1.29%)
:arrow_down:

...rver/master/runner/task/BlockingTaskProcessor.java
75.86% <0.00%> (-0.55%)
:arrow_down:

...eduler/api/service/impl/DataSourceServiceImpl.java
27.90% <0.00%> (ø)

...cheduler/server/master/utils/DependentExecute.java
0.00% <0.00%> (ø)

.../dolphinscheduler/plugin/task/datax/DataxTask.java
0.00% <0.00%> (ø)

...phinscheduler/plugin/task/chunjun/ChunJunTask.java
0.00% <0.00%> (ø)

...cheduler/plugin/task/api/ShellCommandExecutor.java
0.00% <0.00%> (ø)

...nscheduler/service/process/ProcessServiceImpl.java
31.80% <0.00%> (+0.02%)
:arrow_up:

... and 6 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Uploaded Gd_Algorithms to the notebooks section

Hello, and thank you for your interest! I closed this PR because it is not appropriate to add to this repository a notebook authored by another person. I marked this PR as spam because this appears to be related to hacktoberfest, which has been generating a lot of noisy PRs lately. Please let me know if I've assumed incorrectly. All the best!

No this notebook is written by me but if you want you can add.
On Fri 2 Oct, 2020, 12:49 AM Jake Vanderplas<EMAIL_ADDRESS>wrote:

Hello, and thank you for your interest! I closed this PR because it is not
appropriate to add to this repository a notebook authored by another
person. I marked this PR as spam because this appears to be related to
hacktoberfest, which has been generating a lot of noisy PRs lately. Please
let me know if I've assumed incorrectly. All the best!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jakevdp/PythonDataScienceHandbook/pull/265#issuecomment-702345324,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARCGF5INO3M2X46X7VWWZZTSITI5BANCNFSM4SACCFTQ
.


[FEATURE]: Change Text-Color on User Interface

Is your feature request related to a problem?
Yes
Description
At the Adminpanel you can change the Color for the "Countdown" and the "Cheese". Actually you can´t change the Color and the bold/italic of the following Textphrases: "Start Screen", "Start Screen (Subtitle)", "Event Text Left", "Event Text Right" and "Hidden Trigger".
It is very helpful to change the Font, Font-Color and Bold/Italic of the single Phrases to have more Options to match with the background. F.e. i have for the Christmas Event a Background with Darkgreen or Brown Color. A lighter Color was perfect to match with the Background. And i other Scenes you can match the Font to the Single Event f.e. a Wedding

Describe the solution you'd like
Because there are many texts and customization options, I have two ideas:
First: An extra menu item for Customation of Text
or
Second: Little Option Gears after the Textfield

The First one I think is easier to implement. But i dunno - i´m just an User ;)
Describe alternatives you've considered
I dont know if there are alternatives. Because this is only a feature request.
Additional context
Here an idea how it can look like

For this Idea i´ve copied the functional div into a new order
frontpage:event_textLeft => Textfeld
frontpage:ui_skip_welcome => On/Off Button
frontpage:ui_admin_shortcut =>  On/Off Button
pictures:textonpicture_font_color => Color
pictures:textonpicture_font => Font picker
When you make one Grid Element with two checkboxes (for me Bold and italic have to get together) you have the original 4 Column Grid.
Or you do it with a special css only for the Text Customizing with a 5 column Grid (i think its harder to implement und crash the flexibility of the Site.

Structur:

[ ] Add Menu Item (f.e. Custom Text)
[ ] Add Adminsection
[ ] Add Gridsystem to the new Adminsection
[ ] Move existing Flex Objects to the new Gridsystem:

[ ] Textfield Maintitle
[ ] Textfield Subtitle
[ ] Textfield Trigger Button
[ ] Event Text Left
[ ] Event Text Right

[ ] Add new Flex Objects in Gridsystem (per Text-Object):

[ ] Text Option Bold & Italic (summarized in one Flex-Object)
[ ] Text Color
[ ] Font

Translations:

[ ] Add Translation for Flex Objects:

[ ] Textfield
[ ] Text Option Bold & Italic
[ ]  Text Option Bold & Italic Tooltip

Functionallity/Changes:

[ ] Implement Variables to the Sourcecode of the Frontpage:

[ ] Textfield
[ ] Text Option Bold & Italic
[ ] Text Color
[ ] Font

Hope i don´t forget a Step. This is also to work on the pull request.

I´ve build the new Adminsection in the

\lib\configsetup.inc.php

for that i moved the existing ones to the new Section and add some new Parameters to the Section for the new Options.
Foreach of

Maintitle
Subtitle
Event Text Left
Event Text Right
Buzzer Text

i´ve added the Option to change the

Fontweight
Italic
Fontcolor
Fontfamily

For the moved Parameters i had to change some entrys in the

\template\components\stage.start.php
\template\components\actionBtn.php`

I als had to change the Defaults in the

\src\Configuration\PhotoboothConfiguration.php

and add some new Entrys for the new Options
Now i have to check if everything is perfectly written to the Personal Config

\config\my.config.inc.php

And change the Translations in the

\resources\lang*.json

In this Files i have to move the existing 7 Entries for the Objects:
"frontpage:button_buzzer_message": "###",
"frontpage:event_textLeft": "###",
"frontpage:event_textRight": "###",
"general:start_screen_subtitle": "###",
"general:start_screen_subtitle_visible": "###",
"general:start_screen_title": "###",
"general:start_screen_title_visible": "###",
and the 7 Entries for the Tooltips:
"manual:frontpage:button_buzzer_message": "###",
"manual:frontpage:event_textLeft": "###",
"manual:frontpage:event_textRight": "###",
"manual:general:start_screen_subtitle": "###",
"manual:general:start_screen_subtitle_visible": "###",
"manual:general:start_screen_title": "###",
"manual:general:start_screen_title_visible": "###",
Also i have to add the new Objects and Tooltips for
"custom_text:start_screen_subtitle_bold": "###",
"custom_text:start_screen_subtitle_italic": "###",
"custom_text:start_screen_subtitle_color": "###",
"custom_text:start_screen_subtitle_font": "###",
"manual:custom_text:start_screen_subtitle_bold": "###",
"manual:custom_text:start_screen_subtitle_italic": "###",
"manual:custom_text:start_screen_subtitle_color": "###",
"manual:ustom_text:start_screen_subtitle_font": "###",

After that everything is done for the Structur Part. Enough for today. GN8


Show UAC before the loading screen

Summary of the pull request

DSC Configuration flow: Show UAC  before run as admin is invoked
E2E flow: Show UAC in the review page
UAC is required to proceed to the loading page

References and relevant issues

https://task.ms/46416786

Detailed description of the pull request / Additional comments
Validation steps performed
PR checklist

[ ] Closes #xxx
[ ] Tests added/passed
[ ] Documentation updated

I considered this approach. Although I agree with your suggestion and at the moment it will also help resolve the bug addressed in this PR, I do prefer to think about it more in context of the bigger picture for the navigation enhancements. (For example, is it possible in the future that another situation would require the navigation hooks method to return something else to communicate different behavior?)

#1494


404 at: /engine/reference/builder/

URL: /engine/reference/builder/
The top Google search result for docker commands is still this URL.

Duplicate.


Add clearscreen feature to hugo server command

Like https://rollupjs.org/guide/en/#watchclearscreen

Why do people want this?

To live in the present?

To live in the present?

Isn't that what ... scrolling is for?

When sometimes (most of the time?) you don't need to see the history of precedent builds/watch, then there's no point in cluttering the screen with it. I think that's the main reason why "people want this".

I think that's the main reason why "people want this".

Sure, I need to play a little devils advocate on these "nice to have" issues. You are the first to ask for this, though. And I, myself, am very much used to look at the server output as a tail -f of a server log. But that's me. Let other chime in, if you get a fair amount of "thumbs up", we can do this.

I actually want to see the history - sometimes to see if the build was taking longer or shorter, sometimes just to see which parts have been recently rebuilt. For me there is no point in the clearing (i actually hate it when tools do that).

I actually want to see the history - sometimes to see if the build was taking longer or shorter, sometimes just to see which parts have been recently rebuilt. For me there is no point in the clearing (i actually hate it when tools do that).

It would be an option.


Add support for bulk spawn.

We can spawn multiple computation in parallel, at the same time.

The first question that popped in my mind while starting my review is: why do we need a special type to represent a collection of futures? Is there a way we could use Array or Buffer?

The first question that popped in my mind while starting my review is: why do we need a special type to represent a collection of futures? Is there a way we could use Array or Buffer?

We can, but that would be inefficient. We would essentially be needing escaping futures, and thus we have one memory allocation for each computation. Using bulk_spawn we only need one memory allocation for the entire frame.


132 running wrapup without git credentials configures results in an incorrect error message

Looks really good 👍 Thanks for the contribution


Typescript files containing invalid code crash the TS server and prevent it from loading upon restart.

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.62.1
OS Version: Ubuntu 20.04

Additional info:
Version: 1.62.1
Commit: f4af3cbf5a99787542e2a30fe1fd37cd644cc31f
Date: 2021-11-05T10:56:50.217Z
Electron: 13.5.2
Chrome: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Linux x64 5.4.0-90-generic

Steps to Reproduce:
I have tested this both on my daily Linux system, and on a separate clean install on a virtual machine.

Download VSCode.
Install the .deb package either by using apt, or alternatively just install VSCode with snap. The but is reproducible either way.
Install TypeScript globally via npm
Make a directory and create two files inside - crash.ts and empty.ts, then Open that folder with VSCode.

wget https://az764295.vo.msecnd.net/stable/f4af3cbf5a99787542e2a30fe1fd37cd644cc31f/code_1.62.1-1636111026_amd64.deb
apt install ./code_1.62.1-1636111026_amd64.deb
npm i -g typescript
mkdir typescript-bug && cd typescript-bug && touch crash.ts empty.ts && code .

Open both crash.ts and empty.ts in two separate tabs inside the editor, then paste the following text inside crash.ts:

Property 'toUppercase' does not exist on type 'string'

To reproduce crashing the TS Server, simply click on the empty.ts tab to switch to it, you don't have to necessarily save crash.ts before doing so.

Finally, to reproduce the server crashing upon launch, simply save the crash.ts file, then reload VSCode.

Error log:
Info 0    [22:56:17.513] Starting TS Server
Info 1    [22:56:17.513] Version: 4.4.3
Info 2    [22:56:17.513] Arguments: /usr/share/code/code /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js --serverMode partialSemantic --useInferredProjectPerProjectRoot --disableAutomaticTypingAcquisition --cancellationPipeName /tmp/vscode-typescript1000/41cb87bc88cc60f7d51f/tscancellation-bc34ad5d28180b17cbaf.tmp* --logVerbosity verbose --logFile /home/tsc-vbox/.config/Code/logs/20211111T225448/exthost1/vscode.typescript-language-features/tsserver-log-5ZFcPh/tsserver.log --globalPlugins typescript-vscode-sh-plugin --pluginProbeLocations /usr/share/code/resources/app/extensions/typescript-language-features --locale en --noGetErrOnBackgroundUpdate --validateDefaultNpmLocation --validateDefaultNpmLocation
Info 3    [22:56:17.513] Platform: linux NodeVersion: 14 CaseSensitive: true
Info 4    [22:56:17.513] ServerMode: 1 syntaxOnly: false hasUnknownServerMode: undefined
Info 5    [22:56:17.572] request:
    {"seq":0,"type":"request","command":"configure","arguments":{"hostInfo":"vscode","preferences":{"providePrefixAndSuffixTextForRename":true,"allowRenameOfImportPath":true,"includePackageJsonAutoImports":"auto"},"watchOptions":{}}}
Info 6    [22:56:17.572] Host information vscode
Info 7    [22:56:17.573] Host watch options changed to undefined, it will be take effect for next watches.
Info 8    [22:56:17.573] response:
    {"seq":0,"type":"response","command":"configure","request_seq":0,"success":true}
Perf 9    [22:56:17.574] 0::configure: async elapsed time (in milliseconds) 1.3780
Info 10   [22:56:17.574] request:
    {"seq":1,"type":"request","command":"updateOpen","arguments":{"changedFiles":[],"closedFiles":[],"openFiles":[{"file":"/home/tsc-vbox/Desktop/typescript-bug/crash.ts","fileContent":"Property 'toUppercase' does not exist on type 'string'","projectRootPath":"/home/tsc-vbox/Desktop/typescript-bug","scriptKindName":"TS"},{"file":"/home/tsc-vbox/Desktop/typescript-bug/empty.ts","fileContent":"","projectRootPath":"/home/tsc-vbox/Desktop/typescript-bug","scriptKindName":"TS"}]}}
Info 11   [22:56:17.576] Loading global plugin typescript-vscode-sh-plugin
Info 12   [22:56:17.576] Enabling plugin typescript-vscode-sh-plugin from candidate paths: /usr/share/code/resources/app/extensions/typescript-language-features,/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js/../../..
Info 13   [22:56:17.576] Loading typescript-vscode-sh-plugin from /usr/share/code/resources/app/extensions/typescript-language-features (resolved to /usr/share/code/resources/app/extensions/typescript-language-features/node_modules)
Info 14   [22:56:17.589] typescript-vscode-sh-plugin active for version < 4.2 and JS/JSX files. Current version : 4.4.3
Info 15   [22:56:17.589] Intercepting getEncodedSemanticClassifications and getEncodedSyntacticClassifications.
Info 16   [22:56:17.589] Plugin validation succeeded
Info 17   [22:56:17.590] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Err 18    [22:56:17.739] Exception on executing command {"seq":1,"type":"request","command":"updateOpen","arguments":{"changedFiles":[],"closedFiles":[],"openFiles":[{"file":"/home/tsc-vbox/Desktop/typescript-bug/crash.ts","fileContent":"Property 'toUppercase' does not exist on type 'string'","projectRootPath":"/home/tsc-vbox/Desktop/typescript-bug","scriptKindName":"TS"},{"file":"/home/tsc-vbox/Desktop/typescript-bug/empty.ts","fileContent":"","projectRootPath":"/home/tsc-vbox/Desktop/typescript-bug","scriptKindName":"TS"}]}}:

    Debug Failure.

    Error: Debug Failure.
        at /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:19293:89
        at String.replace (<anonymous>)
        at formatStringFromArgs (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:19293:21)
        at Object.createDetachedDiagnostic (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:19309:20)
        at parseErrorAtPosition (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30704:42)
        at parseErrorAt (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30711:13)
        at parseErrorAtCurrentToken (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30698:13)
        at parseErrorForInvalidName (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30936:17)
        at parseErrorForMissingSemicolonAfter (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30908:21)
        at parseExpressionOrLabeledStatement (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:34798:21)
        at parseStatement (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:35035:20)
        at parseListElement (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:31487:20)
        at parseList (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:31472:31)
        at parseSourceFileWorker (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30440:30)
        at Object.parseSourceFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30274:26)
        at Object.createSourceFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30072:29)
        at Object.createLanguageServiceSourceFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:156325:29)
        at acquireOrUpdateDocument (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:129083:37)
        at Object.acquireDocumentWithKey (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:129049:20)
        at getOrCreateSourceFileByPath (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:156728:41)
        at Object.getOrCreateSourceFile [as getSourceFile] (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:156675:24)
        at findSourceFileWorker (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:113090:29)
        at findSourceFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:113000:26)
        at /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:112952:85
        at getSourceFileFromReferenceWorker (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:112919:34)
        at processSourceFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:112952:13)
        at processRootFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:112759:13)
        at /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:111624:67
        at Object.forEach (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:194:30)
        at Object.createProgram (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:111624:16)
        at synchronizeHostData (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:156605:26)
        at Proxy.getProgram (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:156737:13)
        at InferredProject.Project.updateGraphWorker (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:161733:53)
        at InferredProject.Project.updateGraph (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:161662:42)
        at ProjectService.assignOrphanScriptInfoToInferredProject (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:163828:25)
        at ProjectService.assignProjectToOpenedScriptInfo (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:165517:26)
        at /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:165791:97
        at Object.flatMap (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:519:25)
        at ProjectService.applyChangesInOpenFiles (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:165791:41)
        at Session.handlers.ts.Map.ts.getEntries._a.<computed> (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:166949:46)
        at /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:168880:88
        at IOSession.Session.executeWithRequestId (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:168871:28)
        at IOSession.Session.executeCommand (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:168880:33)
        at IOSession.Session.onMessage (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:168906:35)
        at Interface.<anonymous> (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:171511:31)
        at Interface.emit (events.js:315:20)
        at Interface._onLine (readline.js:337:10)
        at Interface._normalWrite (readline.js:482:12)
        at Socket.ondata (readline.js:194:10)
        at Socket.emit (events.js:315:20)
        at addChunk (internal/streams/readable.js:309:12)
        at readableAddChunk (internal/streams/readable.js:284:9)
        at Socket.Readable.push (internal/streams/readable.js:223:10)
        at Pipe.onStreamRead (internal/stream_base_commons.js:188:23)
Info 19   [22:56:17.740] response:
    {"seq":0,"type":"response","command":"updateOpen","request_seq":1,"success":false,"message":"Error processing request. Debug Failure.\nError: Debug Failure.\n    at /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:19293:89\n    at String.replace (<anonymous>)\n    at formatStringFromArgs (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:19293:21)\n    at Object.createDetachedDiagnostic (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:19309:20)\n    at parseErrorAtPosition (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30704:42)\n    at parseErrorAt (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30711:13)\n    at parseErrorAtCurrentToken (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30698:13)\n    at parseErrorForInvalidName (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30936:17)\n    at parseErrorForMissingSemicolonAfter (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30908:21)\n    at parseExpressionOrLabeledStatement (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:34798:21)\n    at parseStatement (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:35035:20)\n    at parseListElement (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:31487:20)\n    at parseList (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:31472:31)\n    at parseSourceFileWorker (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30440:30)\n    at Object.parseSourceFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30274:26)\n    at Object.createSourceFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:30072:29)\n    at Object.createLanguageServiceSourceFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:156325:29)\n    at acquireOrUpdateDocument (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:129083:37)\n    at Object.acquireDocumentWithKey (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:129049:20)\n    at getOrCreateSourceFileByPath (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:156728:41)\n    at Object.getOrCreateSourceFile [as getSourceFile] (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:156675:24)\n    at findSourceFileWorker (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:113090:29)\n    at findSourceFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:113000:26)\n    at /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:112952:85\n    at getSourceFileFromReferenceWorker (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:112919:34)\n    at processSourceFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:112952:13)\n    at processRootFile (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:112759:13)\n    at /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:111624:67\n    at Object.forEach (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:194:30)\n    at Object.createProgram (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:111624:16)\n    at synchronizeHostData (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:156605:26)\n    at Proxy.getProgram (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:156737:13)\n    at InferredProject.Project.updateGraphWorker (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:161733:53)\n    at InferredProject.Project.updateGraph (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:161662:42)\n    at ProjectService.assignOrphanScriptInfoToInferredProject (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:163828:25)\n    at ProjectService.assignProjectToOpenedScriptInfo (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:165517:26)\n    at /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:165791:97\n    at Object.flatMap (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:519:25)\n    at ProjectService.applyChangesInOpenFiles (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:165791:41)\n    at Session.handlers.ts.Map.ts.getEntries._a.<computed> (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:166949:46)\n    at /usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:168880:88\n    at IOSession.Session.executeWithRequestId (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:168871:28)\n    at IOSession.Session.executeCommand (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:168880:33)\n    at IOSession.Session.onMessage (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:168906:35)\n    at Interface.<anonymous> (/usr/share/code/resources/app/extensions/node_modules/typescript/lib/tsserver.js:171511:31)\n    at Interface.emit (events.js:315:20)\n    at Interface._onLine (readline.js:337:10)\n    at Interface._normalWrite (readline.js:482:12)\n    at Socket.ondata (readline.js:194:10)\n    at Socket.emit (events.js:315:20)\n    at addChunk (internal/streams/readable.js:309:12)\n    at readableAddChunk (internal/streams/readable.js:284:9)\n    at Socket.Readable.push (internal/streams/readable.js:223:10)\n    at Pipe.onStreamRead (internal/stream_base_commons.js:188:23)"}

Now a logical question one might ask here is, why on earth would someone save a file with such weird contents that aren't even valid TypeScript code. The answer here is very simple, by accident. As a matter of fact, this exact sentence that breaks the TS server - Property 'toUppercase' does not exist on type 'string'. Did you mean 'toUpperCase'? is taken directly from the TypeScript docs website.

The code box lets you select everything, and that includes the error message, which ironically caused the problem here as well. I do not know exactly why that exact text causes these issues, but for example the following code, even though is still invalid does not cause the same crashes:
names.forEach((s) => {
  Property 'toUppercase' does not exist on type // <= this is fine
  Lorem ipsum dolor sit amet, consectetur adipiscing elit... // <= and so is this
});

EDIT: I forgot to mention that the problem can be reproduced on Windows 10 as well, using the same steps as the ones described above.

Please try upgrading your workspace to use typescript@next by installing this extension. Does that fix the issue?

Hey @mjbvz, thank you for reaching out. Yes indeed, it does appear that this makes the issue go away, tried reproducing this with the extension installed and the TS server doesn't crash on launch or when switching editor tabs.
May I ask you though, what is the reason for that? Is it because these Nightly builds are using an upcoming version of TypeScript (I am seeing that it's using 4.6.0-dev.....) where this bug is already fixed, or is it because of something else and I have to use this extension as a permanent solution for this problem?
Forgive my ignorance and if I am mistaken about something, but if I'm understanding correctly the Nightly builds are using all the latest and greatest, while the downside being potential bugs, where I would prefer stable builds, at least in the long-term.


Build instructions fail with "hpc: can not find mtl..."

Following the build instructions ends with the test run failing with the following.
Running 1 test suites...
Test suite kontiki-test: RUNNING...
Test suite kontiki-test: PASS
Test suite logged to: dist/test/kontiki-<IP_ADDRESS>-kontiki-test.log
hpc: can not find mtl-<IP_ADDRESS>/Control.Monad.Writer.Class in ["./.hpc","./dist/hpc/mix/kontiki-<IP_ADDRESS>","./dist/hpc/mix/kontiki-test"]

Version info.
$ cabal --version
cabal-install version <IP_ADDRESS>
using version <IP_ADDRESS> of the Cabal library

$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 7.8.3

Try running without --enable-library-coverage. I'm not sure that should be in the README in the first place, actually...

That fixed it. Thanks!


End tag of paragraph open

Fixed paragraph tag which was not closed correctly
So sorry for the duplicates. Finally figured Github out. Loving MDL!

Perfect! Thank you.


Run initial ReloadMappings call during async load

Fixes a case of potentially querying a data source in LoadComplete causing an unknown overhead. No real reason not to run this initial call at the end of the async load process. Note that this can't go into the load() method directly as overridden implementations of this may depend on dependencies that are not yet available.

This actually.. might work against me with my latest round of changed. Closing tentatively.

This actually.. might work against me with my latest round of changed. Closing tentatively.

This actually.. might work against me with my latest round of changed. Closing tentatively.

This actually.. might work against me with my latest round of changed. Closing tentatively.


Update huggingface nemo docker version

Is your feature request related to a problem? Please describe.
Squeezeformer arcitecture support was added in nemo_toolkit==1.12.0
But looks like huggingface docker has nemo_toolkit==1.10.0
Without it, I can't tun my model via inference API
https://huggingface.co/theodotus/stt_uk_squeezeformer_ctc_ml
Describe the solution you'd like
Here in nemo docker images there is no precise version of nemo to install
So it's server side docker conteiner update required
https://github.com/huggingface/api-inference-community/tree/main/docker_images/nemo

cc @Narsil could you help re-triggering a build for nemo please? :pray:


Converted over to a mono repo

@stopyoukid,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Keyboard capture failing on macos apps

I'm trying to capture keyboard data using the SharpHook library in a Mac OS environment, as per the example on the website.
Everything works great, except if the machine is accessed via AnyDesk.
On Intel processors, only some keys are recognized, as below (such as CTRL, ALT or SHIFT) and the rest do not trigger events. The other keys such as 'Q', 'W', '1', etc., all do not work.
On ARM processors, all keys are recognized as 'A' (except special keys such as CTRL, ALT or SHIFT).
Mouse events are working correctly (via AnyDesk or physically on the machine). Keyboard events only work correctly using the machine physically.
Is there any solution?
Here is an example of my PublishProfile:
<?xml version="1.0" encoding="utf-8"?>
<Project>
  <PropertyGroup>
    <Configuration>Release</Configuration>
    <Platform>Any CPU</Platform>
    <PublishDir>bin\Release\net6.0\publish\osx-x64\</PublishDir>
    <PublishProtocol>FileSystem</PublishProtocol>
    <_TargetId>Folder</_TargetId>
    <TargetFramework>net6.0</TargetFramework>
    <RuntimeIdentifier>osx-x64</RuntimeIdentifier>
    <SelfContained>true</SelfContained>
    <PublishSingleFile>true</PublishSingleFile>
    <PublishTrimmed>false</PublishTrimmed>
  </PropertyGroup>
</Project>

Here is the source code:
using SharpHook;
using SharpHook.Providers;
using SharpHook.Reactive;
using System.Reactive.Concurrency;
using System.Reactive.Linq;

namespace _005_SharpHook
{
    internal class Program
    {
        static void Main(string[] args)
        {
            var provider = UioHookProvider.Instance;
            Console.WriteLine("System Info:");
            Console.WriteLine($"Auto-repeat  rate: {provider.GetAutoRepeatRate()}");
            Console.WriteLine($"Auto-repeat delay: {provider.GetAutoRepeatDelay()}");
            Console.WriteLine($"Pointer acceleration multiplier: {provider.GetPointerAccelerationMultiplier()}");
            Console.WriteLine($"Pointer acceleration threshold: {provider.GetPointerAccelerationThreshold()}");
            Console.WriteLine($"Pointer sensitivity: {provider.GetPointerSensitivity()}");
            Console.WriteLine($"Multi-click time: {provider.GetMultiClickTime()}");

            var screens = provider.CreateScreenInfo();

            foreach(var screen in screens)
            {
                Console.WriteLine($"Screen #{screen.Number}: {screen.Width}x{screen.Height}; {screen.X}, {screen.Y}");
            }

            Console.WriteLine("---------- Press q to quit ----------\n");

            var hook = new SimpleReactiveGlobalHook(TaskPoolScheduler.Default);

            hook.HookEnabled.Subscribe(OnHookEvent);
            hook.HookDisabled.Subscribe(OnHookEvent);

            hook.KeyTyped.Subscribe(OnHookEvent);
            hook.KeyPressed.Subscribe(OnHookEvent);
            hook.KeyReleased.Subscribe(e => OnKeyReleased(e, hook));

            hook.MouseClicked.Subscribe(OnHookEvent);
            hook.MousePressed.Subscribe(OnHookEvent);
            hook.MouseReleased.Subscribe(OnHookEvent);

            hook.MouseMoved
                //.Throttle(TimeSpan.FromSeconds(1))
                .Subscribe(OnHookEvent);

            hook.MouseDragged
                .Throttle(TimeSpan.FromSeconds(1))
                .Subscribe(OnHookEvent);

            hook.MouseWheel.Subscribe(OnHookEvent);

            hook.Run();

        }

        static void OnHookEvent(HookEventArgs e)
        {
            Console.WriteLine($"{e.EventTime.ToLocalTime()}: {e.RawEvent}");
        }

        static void OnKeyReleased(KeyboardHookEventArgs e, IReactiveGlobalHook hook)
        {
            if(e.Data.KeyCode == SharpHook.Native.KeyCode.VcQ)
            {
                hook.Dispose();
            }
        }
    }
}

If it helps, I noticed that when holding the ctrl key and pressing keys like A, B, C, keyboard events are fired correctly via anydesk.

Hi! Thanks for posting this issue! I will try installing AnyDesk and reproducing this issue. In the meantime, could you please share the libuiohook debug logs? Maybe, they will contain some interesting info.

Hi @TolikPylypchuk , thank you very much for your feedback!
I am attaching the logs below.
I captured the logs in a Mac environment with an ARM processor, and with an Intel processor, to check the differences.
In both tests, I typed '123456' in sequence to see what happened. These characters are included in the logs to check the order in which they were entered (lines that begin with 'Log received').
Logs MAC Intel Processor (Mac Mini with Intel Core I5)
Log received: hook_set_dispatch_proc [53]: Setting new dispatch callback to 0x114d23124.
Log received: run [391]: Accessibility API is enabled.
Log received: run [402]: CFRunLoopGetCurrent successful.
Log received: create_event_runloop_info [304]: CGEventTapCreate Successful.
Log received: create_event_runloop_info [316]: CFMachPortCreateRunLoopSource successful.
Log received: create_event_runloop_info [334]: CFRunLoopObserverCreate successful.
Log received: dispatch_event [63]: Dispatching event type 1.
123456Log received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20040001)
Log received: dispatch_key_press [131]: Key 0XA011 pressed. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20000000)
Log received: dispatch_key_release [186]: Key 0XA011 released. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 5.
16/10/2024 16:04:17 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>022; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
16/10/2024 16:04:17 -03:00: UioHookEvent: Type = KeyReleased; Time =<PHONE_NUMBER>250; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
123456Log received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20040001)
Log received: dispatch_key_press [131]: Key 0XA011 pressed. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 4.
16/10/2024 16:04:24 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>696; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
Log received: event_to_unicode [713]: Using no runloop for key typed events.
^ALog received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20000000)
Log received: dispatch_key_release [186]: Key 0XA011 released. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 5.
16/10/2024 16:04:29 -03:00: UioHookEvent: Type = KeyReleased; Time =<PHONE_NUMBER>924; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
123456Log received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20040001)
Log received: dispatch_key_press [131]: Key 0XA011 pressed. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
16/10/2024 16:04:45 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>768; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =

Logs MAC ARM Processor (MacBook Pro - Apple M1)
Log received: hook_set_dispatch_proc [53]: Setting new dispatch callback to 0x30002c160.
Log received: run [391]: Accessibility API is enabled.
Log received: run [402]: CFRunLoopGetCurrent successful.
Log received: create_event_runloop_info [304]: CGEventTapCreate Successful.
Log received: create_event_runloop_info [316]: CFMachPortCreateRunLoopSource successful.
Log received: create_event_runloop_info [334]: CFRunLoopObserverCreate successful.
Log received: dispatch_event [63]: Dispatching event type 1.
16/10/2024 16:09:03 -03:00: UioHookEvent: Type = HookEnabled; Time =<PHONE_NUMBER>113; Mask = None; Reserved = None
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
16/10/2024 16:09:05 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>954; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:05 -03:00: UioHookEvent: Type = KeyTyped; Time =<PHONE_NUMBER>954; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
1Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>265; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyTyped; Time =<PHONE_NUMBER>265; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
2Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>594; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyTyped; Time =<PHONE_NUMBER>594; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
3Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>867; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyTyped; Time =<PHONE_NUMBER>867; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
4Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:07 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>093; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
16/10/2024 16:09:07 -03:00: UioHookEvent: Type = KeyTyped; Time =<PHONE_NUMBER>093; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
5Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:07 -03:00: UioHookEvent: Type = KeyTyped; Time =<PHONE_NUMBER>523; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
16/10/2024 16:09:07 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>523; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
6Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20040001)
Log received: dispatch_key_press [131]: Key 0XA011 pressed. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
16/10/2024 16:09:12 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>868; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
Log received: dispatch_key_press [131]: Key 0X43 pressed. (0X8)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X43 typed. (c)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:13 -03:00: UioHookEvent: Type = KeyPressed; Time =<PHONE_NUMBER>058; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcC; RawCode = 8; KeyChar =
16/10/2024 16:09:13 -03:00: UioHookEvent: Type = KeyTyped; Time =<PHONE_NUMBER>058; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcC; RawCode = 8; KeyChar = c
^C

Thanks a lot, I will look into it when I have some spare time.


aggr argument in EdgeConv

The parameter can't be passed because it is hard-coded in the call to init of the base class.

Codecov Report

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

@@          Coverage Diff          @@
##           master   #596   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files         129    129
  Lines        3962   3962
=====================================
  Hits         3962   3962

Impacted Files
Coverage Δ

torch_geometric/nn/conv/edge_conv.py
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Perfect, thank you!


Match.check(1, Number) throws an exception in iOS Chrome or desktop Safari

Match.check(1, Number) throws an exception in iOS Chrome or desktop Safari causing operations like below fails to run
AnyCollection.find({}, { limit:1 })

because it fails to validate the type of the limit argument as Number
I suspect that the pbastowski:angular-babel package, which angular-meteor depends on, is doing something funny with the Number constructor
Any idea how to get this working please?

Hi @super5354,
Can you provide a running example?
Also, did you try to check pbastowski:angular-babel, for known issues?
Thanks.

The problem can be reproduced using the simple-todo example (https://www.meteor.com/tutorials/blaze/creating-an-app) with below modifications.
simple-todos.html

  <title>simple-todos</title>

Welcome to Meteor!

  {{> hello}}

<template name="hello">

Check Number = {{test}}

</template>

simple-todos.js
if (Meteor.isClient) {
  // counter starts at 0

  Template.hello.helpers({
    test: function () {
      return Match.test(1, Number);
    }
  });
}

if (Meteor.isServer) {
  Meteor.startup(function () {
    // code to run on server at startup
  });
}

packages
# Meteor packages used by this project, one per line.
# Check this file (and the other files in this directory) into your repository.
#
# 'meteor add' and 'meteor remove' will edit this file for you,
# but you can also edit it by hand.

meteor-base             # Packages every Meteor app needs to have
mobile-experience       # Packages for a great mobile UX
mongo                   # The database Meteor supports right now
session                 # Client-side reactive dictionary for your app
jquery                  # Helpful client-side library
tracker                 # Meteor's client-side reactive programming library

standard-minifiers      # JS/CSS minifiers run for production mode
es5-shim                # ECMAScript 5 compatibility for older browsers.

autopublish             # Publish all data to the clients (for prototyping)
insecure                # Allow all DB writes from clients (for prototyping)
check
templating
pbastowski:angular-babel

The left screen is desktop safari with the wrong result. You will find the same if you view the page with iOS chrome with iPhone.

I checked the github of angular-babel (https://github.com/pbastowski/angular-meteor-babel/). There is no outstanding issue.

@pbastowski

Guys, I will look into this in a few hours.

@super5354
Could you please post your .meteor/versions file here?
I just tried Match.test(1, Number)  in my Chrome 47.0.2526.80 console and it works fine, see below. Yes, I know you mentioned Chrome on IOS, but I needed a baseline :)

In Safari 9.0.2 on OS X it also works fine

@super5354
It would help if you could upload a repo to github that reproduces the issue. Then, I can examine the exact same code and configuration as you are experiencing problems with.

@pbastowski here you go https://github.com/super5354/check-number.git
Sorry, I should be more specific. Chrome Windows works fine for me too; while Safari Windows 5.1.7, iOS Chrome and iOS Safari do not work. I am using angular-meteor for web/mobile app development. I found this issue when testing it with iPhone using browsers.

Windows Safari 5.1.7 is not supported, sorry.
What IOS version are you testing with?

iOS: 8.3 (12F70)
iOS Chrome: 47.0.2526.107

this maybe related to this one: https://github.com/pbastowski/angular-meteor-babel

@super5354 can you check if the error disappears if you add the pbastowski:angular-babel package before the other packages (put it on top of the packages file)

@super5354 I confirm that on IOS 8.4 the test fails. On IOS 9, however, it works just fine.
@mxab Moving angular-babel to the top of the packages file does indeed fix the problem. Thanks for the workaround. Now, how do we fix it?

@mxab Thanks! The workaround does work. As long as the angular-babel package is placed before the mongo package, it starts to work probably because it is where the check package gets first reference and forces the check package to use the overridden Number function.

https://github.com/zloirock/core-js/issues/38#issuecomment-76114855

@super5354 I have published v1.0.10 of pbastowski:angular-babel, which should fix this problem for you. Could you try it and let me know if it does? Thanks.

@pbastowski It seems that the latest version is v1.0.9 not v1.0.10 but it still works like a charm. Thanks very much!
$ meteor update pbastowski:angular-babel
Changes to your project's package version selections from updating package
versions:
pbastowski:angular-babel  upgraded from 1.0.7 to 1.0.9

@super5354 you are correct. Apparently 1.0.10 is not published on Atmospherejs yet. I'll do that on Tuesday when I get back home.

Hi Paul, I want to release a new version and update the dependency, is the new version of angular-babel out?  thanks!

@pbastowski

@Urigo I have checked and 1.0.9 is indeed the latest version for Meteor 1.2+. I got confused with 0.1.10, which is for Meteor 1.1 :)


Perpetual task should not continue if there is an open device with correct SN

Experimenting with the p1 meters the original p1 at ip .30 was being scanned for perpetually, even if I had connected another p1 meter that indeed connected to the correct meter sn.
It would make more sense to not try to open the old device if there is already an open connection to the device.

Mabe this is a larger issue that we should not at all try to connect to devices that we are already connected to. This could even be on the connection settings level. e.g. same ip and port as it could be very problematic for some devices to get additional connections e.g. killing the other connection.


Analytics impl

Need https://github.com/angular/angular/pull/29382 to go in first.

@jenniferfell For the messaging in packages/angular/cli/models/analytics.ts.

The x-user-analytics bits are sprinkled around, and should have a sequence - I know it's documented in the readme, but maybe we should have a golden file test to verify later changes?
The readme content could be the golden file

I'm adding a validation script to check that x-user-analytics are properly kept in sync with the analytics.md file.


Server crash due to gas pipes

The server seems to crash when ever I get near gas pipes. I have the latest of Mekanism (Mekanism-1.7.10-<IP_ADDRESS>) and I'm running it on a custom mod pack. Please fix this!
Server crash report: http://pastebin.com/RPj67byP

are you using enderio gas pipes?
if so use build 377 http://ci.tterrag.com/job/EnderIO/
also maybe update to the latest mekanism and forge


JSON coloring is off

Clone: https://github.com/Microsoft/vscode-eslint.git
open the top level package.json
go to contribution eslint.validate

Dark+

Light+

The grammar seems to be ok to me. Maybe an issue with the theme you use?

(also we have tests for this...)


Wrong cell_type in cell_data_dict

Reading the med file attached and looking at cells and cell_data_dict one gets the wrong cell_type keys in the latter for the RES_____FERRAILLAGE field. I list below the length of the data for each cell type:
"cells": {
    "vertex": 2,
    "quad": 45,
    "line": 45,
    "triangle": 4
},
"cell_data": {
    "RES_____FERRAILLAGE": {
        "vertex": 45,
        "quad": 4
    },
    "cell_tags": {
        "vertex": 2,
        "quad": 45,
        "line": 45,
        "triangle": 4
    }
}

Basically, for RES_____FERRAILLAGE in this case vertex should be quad and quad should be triangle.
The issue here is that:

This field that applies to each cell (one value per cell - type is ELEM) is defined only for some of the cell types, not all.
The construction of cell_data_dict here is based on cell_data which essentially does not contain any information of the cell type and it is assumed that every field contains all cell types by default.

A similar issue (#383), although different in that there were missing values within a given cell type, was tackled in #384 by adding None values. Since cell_data are essentially unaware of the cell type I wonder if a solution could be to add any missing cell type within a field with None values as well. This would allow to fix the issue modifying only the _med.py file, if this issue has not been observed for other formats as well.
output.med.zip

Does #927 fix your concerns?

Almost. It gives the following error when trying to access cell_data_dict
File "/home/jesusbill/miniconda3/envs/ifc/lib/python3.8/site-packages/meshio/_mesh.py", line 164, in cell_data_dict
    cell_data_dict[key][cell_type] = numpy.concatenate(val)
  File "<__array_function__ internals>", line 5, in concatenate
ValueError: zero-dimensional arrays cannot be concatenated

Modifying this line to have None in a list itself does the trick and returns the correctly attributed data to cell type.
cell_data[name] = [[None]] * len(cell_types)

Note, however, that trying to convert the med file to another format still returns an error. Does not affect me directly at the moment, though, probably others
 File "/home/jesusbill/miniconda3/envs/ifc/bin/meshio-convert", line 8, in <module>
    sys.exit(convert())
  File "/home/jesusbill/miniconda3/envs/ifc/lib/python3.8/site-packages/meshio/_cli/_convert.py", line 43, in convert
    write(args.outfile, mesh, **kwargs)
  File "/home/jesusbill/miniconda3/envs/ifc/lib/python3.8/site-packages/meshio/_helpers.py", line 144, in write
    return writer(filename, mesh, **kwargs)
  File "/home/jesusbill/miniconda3/envs/ifc/lib/python3.8/site-packages/meshio/vtu/_vtu.py", line 574, in write
    data[k] = dat.astype(dat.dtype.newbyteorder("="), copy=False)
AttributeError: 'list' object has no attribute 'astype'

Thanks @tianyikillua for looking into this and your prompt response

cell_data[name] = [numpy.array([])] * len(cell_types)

should do the trick.
However the problem is that VTU assumes we have a cell data for each cell type.

@nschloe
What's the standard way for cell data not defined for a specific cell data? Use None?
cells = [("quad", ...), ("hexahedron", ...)]
cell_data = [np.array([...]), None]

@tianyikillua Good question. None seems reasonable, go for it.

Is this fixed?

No, current master still raises the ValueError of 2020-09-26.

I have been looking at this issue today. Looks like a tough case to resolve ...
With the last modification from @tianyikillua back in September the first part of the issue was handled but the functionality is still not there, as these files are not currently readable by meshio. Looks like neither None or np.array([]) are good choices for non existent cell_data. The latter could be a partial resolution as it would allow at least to be able to read the med file and even write it back in med, but it does fail to write in other formats like vtu.
I did a test, however, that I believe can guide to an acceptable solution, a solution that allows to read and write such files in all formats. This solution is similar to what was followed for #384 for non existent data outside a subset. And that would be to construct the field for the given cell type with NaN values.
This is the snippet that I used to impose this solution (first I changed None with np.array([]) in order to be able to read the file)
import meshio
import json
import numpy as np

file = meshio.read("output.med", file_format="med")

# Imposing NaN values (field of 7 components) for RES_____FERRAILLAGE for vertex (2 cells) and line (45 cells)
new_cell_data = {}
for key1 in file.cell_data_dict.keys():
    if key1 == "RES_____FERRAILLAGE":
        cell_data = file.cell_data_dict[key1]
        new_cell_data[key1] = []
        for key2 in cell_data.keys():
            if key2 == "vertex":
                new_cell_data[key1].append(np.array([[np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan] for _ in range(2)]))
            elif key2 == "line":
                new_cell_data[key1].append(np.array([[np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan] for _ in range(45)]))
            else:
                new_cell_data[key1].append(cell_data[key2])

meshio.Mesh(
    file.points,
    file.cells_dict,
    # Optionally provide extra data on points, cells, etc.
    point_data=file.point_data,
    cell_data=new_cell_data,
    field_data=file.field_data
).write(
    "output_new.med",
    file_format="med"
)

meshio.Mesh(
    file.points,
    file.cells_dict,
    # Optionally provide extra data on points, cells, etc.
    point_data=file.point_data,
    cell_data=new_cell_data,
    # field_data=file.field_data
).write(
    "output_new.vtu",
    file_format="vtu"
)

What do you think? Should I work on a possible fix in this direction?

Looks like neither None or np.array([]) are good choices for non existent cell_data

Why not None? Seems natural enough to me.

Yeah, I only meant that it breaks the read and write functionality.
I also did some tests keeping None and debugging the read/write functionality.
It would need to modify _mesh.py and every i/o file for each format, whereas I was looking for a solution that would be handled by working only on the med format.
In any case, with None and some minor modifications to handle some exceptions, I get the following error when exporting to vtk or vtu
Traceback (most recent call last):
  File "io.py", line 48, in <module>
    meshio.Mesh(
  File "/home/jesusbill/Dev-Projects/github.com/Jesusbill/meshio/meshio/_mesh.py", line 182, in write
    write(path_or_buf, self, file_format, **kwargs)
  File "/home/jesusbill/Dev-Projects/github.com/Jesusbill/meshio/meshio/_helpers.py", line 147, in write
    return writer(filename, mesh, **kwargs)
  File "/home/jesusbill/Dev-Projects/github.com/Jesusbill/meshio/meshio/vtk/_vtk.py", line 695, in write
    _write_field_data(f, mesh.cell_data, binary)
  File "/home/jesusbill/Dev-Projects/github.com/Jesusbill/meshio/meshio/vtk/_vtk.py", line 773, in _write_field_data
    values = np.concatenate(values)
  File "<__array_function__ internals>", line 5, in concatenate
ValueError: all the input arrays must have same number of dimensions, but the array at index 0 has 2 dimension(s) and the array at index 1 has 3 dimension(s)

I agree that None makes sense but I don't know if it can be eventually applicable universally.
But, if you think this is the way to go, I can give it a try, just to see what modifications it would require, if I can make it work of course

Yeah, I only meant that it breaks the read and write functionality.

I don't get it. Why would that be the case?

Just do ahead and try it out, I imagine it won't be that hard.

Ok! Will get onto it. Thanks for the feedback


Add more details about the warning and the test being performed

Be more clear about the intent of the 403 test
Add an additional test they could perform as well.
Update the time it takes to run the network update (longer now with firewall policies in place)
Add a hint about the deprecation warning

I've opened a bug upstream about this kubernetes/kubectl#1101

@magrande, thanks for the review.  Going to merge.


avancedStaticPageProcessing breaks on Mac

avancedStaticPageProcessing breaks on Mac/Linux if the path has any spaces in it. Suggest  	adding some single quotes in index.jsp at line 62.
command = "cat '" + path + "/" + content + "'";

Hi Paul, I'm finally able to update AltoroJ. I fixed this in the latest updates. Thank you for your submission and sorry it took so long.


escape to sql

'2000.01.01'::`timestamp without time zone`

21 * `interval '1 day'`

`double precision '3.5' * interval '1 hour'`

So sql macro becomes deprecated?

Allow in operator position, too:
col `~` '^\d+'

Support for both - expressions, operators using back ticks.


How to uninstall znap?

#85 was closed before without providing an answer. How should we remove/uninstall znap?

Sorry about closing and locking that issue. I'm not sure what happened there. I've reopened it now.

what happened here? did he get his answer?

I didn’t, but I followed the following and just deleted the folder.
https://github.com/marlonrichert/zsh-snap/discussions/124


Update Readme.md

ref #754

yeah @kotp I will do explain why the sync is required.

@kotp , done with the sync cause

Thanks @son-vyas.


Draft of WASI support

This is a first pass at implementing support for WASI.  It adds a new TeaVMTargetType of WASI, which is mostly the same as WEBASSEMBLY except it generates a module suitable for execution by a WASI-compatible runtime such as Wasmtime.
Currently supported features:

A simple allocator for supporting the component model canonical ABI calls
CLI argument marshaling
Standard in/out/err
Filesystem operations and I/O
System clock
Environment variables
System random numbers

See tests/wasi/src/main/java/wasi/Test.java and tests/wasi/test.sh for examples.
Not yet implemented:

Networking (i.e. sockets)
Process exit, yield, etc.
DWARF debugging support
Better logging of uncaught exceptions

Note that the current implementation is probably overly paranoid in that all
pointer arguments passed to WASI functions are allocated by the aforementioned
allocator rather than on the Java heap.  I've done this because I'm not clear on
when TeaVM guarantees that object address will not change.  Thus I've assumed
that they could change at any time whatsoever, which is probably not true.
Also note that the filesystem implementation currently throws generic
IOExceptions and ErrnoExceptions rather than those specified by the standard
(e.g. FileNotFoundException).  Additional work will be needed to throw the
correct exception based on the errno value.
The main goal of this PR is to start a discussion about WASI support in TeaVM and answer questions such as:

Is WASI support a reasonable goal for the TeaVM project?
If so, is the approach of this PR roughly correct, or are significant changes needed?
What other features are missing to make this useful?

Signed-off-by: Joel Dice<EMAIL_ADDRESS>

Let's start with discussion: what is the purpose of running Java in WASI? Why not just running JVM?

As for introducing separate target for WASI: currently it looks quite dirty. I'd consider updating wasm-runtime.js to emulate WASI in the browser.

Let's start with discussion: what is the purpose of running Java in WASI? Why not just running JVM?

Haven't we already talked about this? My reasons are:

Ecosystem: I can offer a WASM/WASI plugin system for my application and don't have to worry whether it's C or Java running in there.
Lightness: JVMs are typically huge.
Performance encapsulation: Even if you lock down a class loader fully with a security manager, its classes can still create threads, allocate as much memory as it wants, and run forever. WASM locks down more tightly.

This PR also lacks the way of running classlib tests for WASI target.

As for buffers. TeaVM GC can move objects. However, it does not move any objects to which there are references from stack. This means that for any non-asynchronous call it's ok to use byte array in heap instead of custom allocator.

@konsoletyper First, thanks for all the work you've put into TeaVM.  The WebAssembly support in particular is quite impressive and useful.  I've looked at other similar projects, but TeaVM seems to be the most robust and flexible.

Let's start with discussion: what is the purpose of running Java in WASI? Why not just running JVM?

Excellent question.  @jcaesar mentioned a few reasons related to the precise control and security guarantees you get when embedding untrusted Wasm code in an application.
Another use case is lightweight, multi-tenant cloud computing tasks.  Companies like Fastly, Shopify, and Fermyon (my current employeer) are using WASI and the component model to host and run customer code in a secure, platform-, architecture-, and language-agnostic way.  A traditional JVM is not a great fit for this for a few reasons:

Sandboxing code in a JVM (e.g. via SecurityManager) has a spotty track record, whereas the WebAssembly "shared nothing" approach to isolating modules and components is both simple and reliable.
The JVM is great for languages which were designed for it (e.g. Kotlin, Scala, Clojure, and Java itself), but not a great fit for others like C, Python, Ruby, JS, etc.  GraalVM helps address this somewhat, although it's too heavyweight for many use cases.
The JVM is fundamentally bigger and more complicated than a minimal Wasm runtime, so it's not a great fit for embedded (e.g. IoT and edge computing) workloads.  There are a few lightweight JVMs out there (I helped write one), but they don't help much with the sandboxing and language agnosticism goals mentioned above.
JIT compilation is not a great fit for FaaS (AKA "serverless") workloads where startup time is paramount.  In the WebAssembly world, we can use tools like Wizer to pre-initialize modules and then use Wasmer or Wasmtime to easily pre-compile them to native code, resulting in sub-millisecond startup times even for managed languages such as C#.

As for introducing separate target for WASI: currently it looks quite dirty. I'd consider updating wasm-runtime.js to emulate WASI in the browser.

To be clear, are you suggesting I should remove the WASI target and make the WEBASSEMBLY target generate a WASI-compatible module by default, which would rely on wasm-runtime.js to adapt it for use in the browser.  If so, that sounds reasonable to me.
BTW, a WASI polyfill is already available: https://wasi.dev/polyfill/.  Perhaps we could reuse that?  I haven't looked at the code yet, though -- it might be too heavyweight for this purpose.

This PR also lacks the way of running classlib tests for WASI target.

Good point.  I focused on testing the WASI-specific parts first, but I agree that we should run all the existing classlib tests.  I'll put that on my TODO list.

As for buffers. TeaVM GC can move objects. However, it does not move any objects to which there are references from stack. This means that for any non-asynchronous call it's ok to use byte array in heap instead of custom allocator.

Thanks, that's helpful.  I'll update the code with that in mind.

BTW, a WASI polyfill is already available: https://wasi.dev/polyfill/. Perhaps we could reuse that? I haven't looked at the code yet, though -- it might be too heavyweight for this purpose.

This polyfill is for an older version of WASI (wasi_unstable) and uses emscripten behind the scenes, which means it is about 400kb big. I have written a pure javascript polyfill for a subset of the current WASI version (wasi_snapshot_v0): https://github.com/bjorn3/browser_wasi_shim I believe there are also other wasi javascript polyfills.

This PR is in great shape. Great work on this @dicej. Adding some comments that I believe could be relevant:

it generates a module suitable for execution by a
WASI-compatible runtime

Can we make this PR runtime agnostic? I believe it will be beneficial to have the runtime as an environment variable rather than statically defined. That way we can test easily with Wasmer, Wizer or any other server-side Wasm VM.

BTW, a WASI polyfill is already available: https://wasi.dev/polyfill/. Perhaps we could reuse that? I haven't looked at the code yet, though -- it might be too heavyweight for this purpose.

Wasmer already ships the most popular WASI implementation for JS. It might be worth using it here (it's already used officially by the Ruby ecosystem): https://www.npmjs.com/package/@wasmer/wasi (specially because if tests pass when using Wasmer as a runtime, it will be assured that it will work exactly the same way on the browser). Thoughts?

Thoughts?

How big is WasmerJS's WASI? From what I see, the average TeaVM doesn't need much more than fd_write(2, …) for logging error messages. Maybe 1kB in JS? (Modules targeting the web also have some web-api imports, but they won't be available through WASI in any case.)  Bumping up the size of all TeaVM modules by a mostly unused WASI seems wasteful.

WasmerJS's WASI is around 120Kb gzip-compressed.
From looking at the PR, it seems that the WASI requirements are mainly on the filesystem and clock:
https://github.com/konsoletyper/teavm/pull/610/files#diff-742a3b3321470e2a546d2b28641ed6fe885a0591c96e5fbec7bddd3e921fd15cR54-R119
To implement those properly, you will usually require a in-memory FS (which is where most of the bulk comes from, looking at Wasmer-JS).

Status update: I've removed TeaVMTargetType.WASI and made TeaVMTargetType.WEBASSEMBLY generate a WASI module unconditionally (but see caveat below).  I've also updated wasm-runtime.js to use @bjorn3's browser_wasi_shim, so these modules run fine in either a WASI-compatible runtime (e.g. Wasmer or Wasmtime) or a browser.
I've also added a new WasiRunStrategy class for executing the full test suite.  It takes almost 3 hours to run on my machine, and there are a lot of failures, but that's comparable to a browser-based test suite run for the Wasm target.
Finally, I've implemented support for environment variables and random numbers, as well as pure Java implementations of isNaN, isInfinite, and isFinite.
Caveat: There are still several functions in the class library which require non-WASI imports from the host, including local timezone resolution, character case conversion, and various math functions.  Code which uses any of those features will result in a module that imports functions not provided by WASI and thus won't run on a WASI runtime unless those imports are explicitly satisfied (e.g. by an embedding application).  For timezone resolution, we can use https://github.com/WebAssembly/WASI/issues/467 if/when it is implemented.  The other functions could in principal be implemented in pure Java with no host support, but I'll leave that as a future improvement.
@konsoletyper What do you think?  Is there anything you'd like to see changed or added, or is this something you'd consider merging?

@konsoletyper I'm guessing you're busy and that this PR isn't a high priority for you right now, which is totally understandable.
For the time being, it might be best if I create a friendly fork of the TeaVM repo for further WASI development and publish Maven packages under a different name (e.g. teavm-wasi) and group for anyone to use.  We'd like to start using this at Fermyon, and I know there are others who are interested in using it as well.
Thoughts?

@dicej @konsoletyper we are interested in this PR.

Same here

Per my above comment, I've created a friendly fork of this project and published an initial release to the Maven Central repository under the com.fermyon group.
I'll be using that fork for WASI and Component Model work going forward.  Feel free to open issues and/or PRs there if you're interested in helping out.

I'd like to caution: Java fits Web APIs and JavaScript almost naturally due to its many similarities, an advantage that makes it a great source language for WebAssembly in actual browsers due to sharing many concepts. Neither WASI nor the Component Model share Java respectively Web/JS concepts, but are afaict attempts to establish a new foundation where the disadvantages of the few blessed first-class languages become every other language's disadvantage over mere opinion. This, and especially that this PR now proposes to unconditionally emit WASI modules even when targeting browsers, has a bunch of implications for anything with an almost natural fit for the Web platform - here effectively turning Java's good fit into concrete disadvantages, none of which is mentioned as a caveat by those now trying to persuade TeaVM into supporting (and then indirectly promoting) the imho fundamentally misguided and, frankly, questionable approach to Web standards they are responsible for themselves.
 Would you like to mention any of those "concrete disadvantages" (e.g. like my size comment above) which you criticise others for not mentioning?

this PR now proposes to unconditionally emit WASI

Non-WASI imports will still be emitted when accessing "Web APIs", right?

the imho fundamentally misguided and, frankly, questionable approach […] they are responsible for themselves.

Ow.