[DO NOT MERGE] Testing Python 3

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

Resolves SR-NNNN.

@swift-ci test clean amazon linux 2

@swift-ci test clean amazon linux 2

@swift-ci test amazon linux 2

Build failed
Swift Test Amazon Linux 2 Platform
Git Sha - a783f7e6eb050338b5a4c3352581a19fc1f28ab4


Roaring -- FlipRange

Implement the FlipRange method in the RoaringBitset class. For each index in the range [start, end) it should add the member to the set if it doesn't exists, or remove it from the set if it already exists. A test for this is present in the BaseBitSetTests class.

I'll do this

I'll take this


Improved Gecco circle for big screen devices

I have improved the size the circle orientation on bigger devices like iPhone 8 Plus.
Before:

After:

This PR will be closed as we have fixed here. Thank you!


Part 2 of #1018: An example of a space that is hyperconnected, ultraconnected, compact, sober, and Alexandrov, but not spectral

This is part 2 of #1018, which adds a space that is hyperconnected, ultraconnected, compact, sober, and Alexandrov, but not spectral. This demonstrates that the hereditarily connected condition in T554 cannot be weakened.

Do you really want to have the formula for $X$ in "display mode" (with double dollars and bigger font)?
On my screen, it looks a little weird because the preceding line is pretty short, so the looks like it's floating by itself in the middle of the line, unconnected to the rest of the paragraph.
Maybe use what was done for https://topology.pi-base.org/spaces/S000201 or https://topology.pi-base.org/properties/P000109, or use an inline formula?

Another trivial remark: Is \frac{1}{n} better than 1/n ?

Will have more substantial remarks tomorrow.

Do you really want to have the formula for X in "display mode" (with double dollars and bigger font)? On my screen, it looks a little weird because the preceding line is pretty short, so the looks like it's floating by itself in the middle of the line, unconnected to the rest of the paragraph.
Maybe use what was done for https://topology.pi-base.org/spaces/S000201 or https://topology.pi-base.org/properties/P000109, or use an inline formula?
Need to experiment. For example using https://topology.pi-base.org/dev/preview (but the lines there are quite short, so one does not get the full effect).

Makes sense. I've changed the formatting to be similar to the S201 example.

Another trivial remark: Is \frac{1}{n} better than 1/n ?

Let me experiment with that a bit to see which one looks better.

Since every space currently on pi-Base that references Alexandrov topology in description (S144 and S166) put the Wikipedia article on Alexandrov topology in its reference list, I've edited to do the same for this proposed space.

Regarding the name and the description of the space, at one point in pi-base we used to do the same thing for spaces that are not canonically known, namely describe the space (and the name in particular) in terms of the properties we wanted to exemplify.  But we realized that was not optimal.  Later on there may be multiple spaces satisfying the conditions and these conditions by themselves will not be enough to distinguish them.  In many cases, we were able to find simple and precise descriptions (e.g., one-point compactification of another well-known space, etc) and we replaced the name.
Anyway, I think it's preferable here to follow the model of S144  (Diamond poset $2\times 2$ with Alexandrov topology).
So we could choose as the name something like:
Poset $\{-1,0_a,0_b\}\cup\{1/n:n=1,2,\dots\}$ with Alexandrov topology
(Poset $\{-1,0_a,0_b\}\cup\{1/n:n=1,2,\dots\}$ with Alexandrov topology)
which is relatively short and fully descriptive.
And no need to describe what properties we wanted to illustrate.  That is already explained in the mathse reference.  The space will stand on its own.  It will have the properties it has, and anyone searching for that particular combination of properties will find the space (and possibly various others in the future).
And  a description similar to what was done for S144 would be all we need.

Regarding the name and the description of the space, at one point in pi-base we used to do the same thing for spaces that are not canonically known, namely describe the space (and the name in particular) in terms of the properties we wanted to exemplify. But we realized that was not optimal. Later on there may be multiple spaces satisfying the conditions and these conditions by themselves will not be enough to distinguish them. In many cases, we were able to find simple and precise descriptions (e.g., one-point compactification of another well-known space, etc) and we replaced the name.
Anyway, I think it's preferable here to follow the model of S144  (Diamond poset 2 × 2 with Alexandrov topology).
So we could choose as the name something like: Poset $\{-1,0_a,0_b\}\cup\{1/n:n=1,2,\dots\}$ with Alexandrov topology (Poset { − 1 , 0 a , 0 b } ∪ { 1 / n : n = 1 , 2 , … } with Alexandrov topology) which is relatively short and descriptive.
And no need to describe what properties we wanted to illustrate. That is already explained in the mathse reference. The space will stand on its own. It will have the properties it has, and anyone searching for that particular combination of properties will find the space (and possibly various others in the future).
And a description similar to what was done for S144 would be all we need.

That works. I'll switch to that.

@prabau Since we are on the topic of naming spaces, I want to ask for suggestion: I'm planning to add the space constructed in this MSE answer as an example of a $T_1$, compact, semiregular, non-Baire space (rationals extended by a focal point is not $T_1$). Do you have a suggestion as to what to call it? It is a compactification of the sum of continuum many copies of rationals, but it is a very ad hoc compactification that compactifies by adding a Stone space of a specific Boolean algebra. I was planning to also do an "example of certain properties" name, but now that you mentioned this, I want to ask if you have a better idea.

For the README, it would be useful to add a paragraph at the end mentioning that the space is described in part 2 of {{mathse:...}}.  That will be useful for context, and also to locate it as the post is quite large.

For the README, it would be useful to add a paragraph at the end mentioning that the space is described in part 2 of {{mathse:...}}. That will be useful for context, and also to locate it as the post is quite large.

@prabau Implemented.

@prabau Since we are on the topic of naming spaces, I want to ask for suggestion: I'm planning to add the space constructed in this MSE answer as an example of a T 1 , compact, semiregular, non-Baire space (rationals extended by a focal point is not T 1 ). Do you have a suggestion as to what to call it? It is a compactification of the sum of continuum many copies of rationals, but it is a very ad hoc compactification that compactifies by adding a Stone space of a specific Boolean algebra. I was planning to also do an "example of certain properties" name, but now that you mentioned this, I want to ask if you have a better idea.

That is not an easy space to describe.  In fact, the same was true for https://topology.pi-base.org/spaces/S000100.  For that one, I went with using the properties, together with your name in there.  That made it at least kind of unique (and by the same token gave recognition to the author of a difficult example).  Maybe Steven will have an idea, but for lack of a better solution one could go with something similar to S100.

@prabau Since we are on the topic of naming spaces, I want to ask for suggestion: I'm planning to add the space constructed in this MSE answer as an example of a T 1 , compact, semiregular, non-Baire space (rationals extended by a focal point is not T 1 ). Do you have a suggestion as to what to call it? It is a compactification of the sum of continuum many copies of rationals, but it is a very ad hoc compactification that compactifies by adding a Stone space of a specific Boolean algebra. I was planning to also do an "example of certain properties" name, but now that you mentioned this, I want to ask if you have a better idea.

That is not an easy space to describe. In fact, the same was true for https://topology.pi-base.org/spaces/S000100. For that one, I went with using the properties, together with your name in there. That made it at least kind of unique (and by the same token gave recognition to the author of a difficult example). Maybe Steven will have an idea, but for lack of a better solution one could go with something similar to S100.
Or there would be a partial description, unique enough to identify it, with more details in the text itself? "Compactification of ... with remainder ..." ?

Many thanks for the suggestion! Though I feel like "Compactification of the sum of continuum many copies of $\mathbb{Q}$ with remainder a Stone space" is overly long... I'll go with the S100 method for now, but ask Steven if he has a better name idea when I propose the PR.

I feel like "Compactification of the sum of continuum many copies of Q with remainder a Stone space" is overly long...

"Compactication of $\mathfrak c$ copies of $\mathbb Q$ with Stone space remainder" ?

I feel like "Compactification of the sum of continuum many copies of Q with remainder a Stone space" is overly long...

@david20000813 "Compactication of c copies of Q with Stone space remainder" ?

@prabau True, but I wrote continuum many copies of Q because it is the name already in pi-Base, namely, S182. Though I suppose I don't have to follow this already existing name.


Issue #23514 - fix invalid hue response

Description:
Based on the discoveries in issue #23514, the periodic lack of response from emulated hue was due to an invalid value (null) being returned. The fix for that issue is the change on line 456, but as an extra precaution, I added a method to entity_to_json to help catch any future issues like this from occuring.
Note: I haven't been able to repro this through unit tests, but 2 different people commented on the issue saying that this does fix the issue (I did cleaned up an unused variable between the commit they tested and this commit)
Related issue (if applicable): fixes #23514
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.
[x] I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[ ] The manifest file has all fields filled out correctly. Update and include derived files by running python3 -m script.hassfest.
[ ] New or updated dependencies have been added to requirements_all.txt by running python3 -m script.gen_requirements_all.
[ ] Untested files have been added to .coveragerc.

If the code does not interact with devices:

[ ] Tests have been added to verify that the new code works.

Will this be merged into 0.93.2, or 0.94.0?


2.0.1 electron 0.30.6

I needed node-serialport to be above v2.0.0 to make serialport-electron to work on Mac OSX 10.11/El Capitan
see https://github.com/voodootikigod/node-serialport/commit/c2e00928759b77e38411f58913402afd3424dac4

The commits seems large but what I did was merge voodootikigod/master into ddm/master and fixed conflicts in package.json and README.markdown

I'm really sorry I never noticed this pull request. I just merged it, hopefully it is still useful to someone.

@mash Sincere apologies for being more than late on this one.
For anyone looking at this, I believe this fork is no longer needed. My understanding is that recent versions of node/electron/serialport might work as expected using the upstream versions. Ping me if this is not the case...

@ddm ok, no problem, I'll try upstream serialport when I need to next time.


Explicitly write out ARO HCP paths

What this PR does
Removes MuxPattern() in favor of explicitly writing out our paths
Pros:

Readability

Cons:

Need to manually ensure future added paths are all lowercase
Easier to have typos

Both of the cons can be mitigated by integration tests, which we do not have yet at this point in the project.

fyi @AldoFusterTurpin if this is what you had in mind


fn: docker compose fixups

fnserver dind requires privileged mode
mysql should be in sync with test.sh/api_test.sh mysql version to avoid errors such as
msg="couldn't ping db" error="this authentication plugin is not supported" url="root:root@tcp(db:3306)/funcs

TODO: fix/investigate why fnserver fails on latest mysql.

@denismakogon could you help me test this with chained fn test case? (#974 )

I’ll test this tomorrow for sure.

@denismakogon ping...

Thanks. Sorry for taking that long. Worked fine.


Remove ansi and gelf gems

Added here https://github.com/alphagov/panopticon/commit/d7808eee6ec2ade95e0ed9ada58f338f14edac27 and here https://github.com/alphagov/panopticon/commit/75652cf09c1cb5813c3cd006ed8a898b22b211e1.
Both of them are not used anymore."

bye!


Fix critical bugs that may affect performance or productivity

Thanks your great Vim plugin. I installed this Vim plugin without any performance delays. Cool.
I found critical bugs that may affect performance or productivity

Very sad. But I'm looking forward to the pull-request from someone who makes the same fix as this one. And it will be crazy funny. thank you.


W1D3 - two tutorial notebooks.

Both tutorial notebooks are now ensured that they match the NMA template style. All video links updated.

I had to re-execute the notebooks as a conflict in merging is resolved. The days should be updated sequentially (e.g., W1D1, W1D2,...,etc)


-app not working for "ng serve" or "yarn start"

What is your Test Scenario?
A localhost served angular app
What is the Current behavior?
The app is not started so the tests fail
What is the Expected behavior?
It should start the app then launch the tests.
The test work correctly when i start the app then the tests in another console.
I'm using the --app --app-init-delay options
"e2e": "testcafe chrome:headless e2e/**/**.spec.ts --app \"yarn start\" --app-init-delay 4000"
I get this error

Error in fixture.beforeEach hook -
An error occurred in ClientFunction code:

Error: Cannot find Angular in development mode.

Environment details:

testcafe version:                   1.1.0
node.js version:                    11.10.0
command-line arguments:  testcafe chrome:headless e2e//.spec.ts --app "yarn start" --app-init-delay 10000
browser name and version:  Chrome 73.0.3683.86
platform and version:          macOS 10.14, Windows 10, Linux

I have found --app argument not working as one would expect. I am using the following command and it works fine:
"e2e": "BROWSER=none yarn start 2>&1 > /dev/null & wait-on http-get://localhost:3000 && testcafe chrome:headless src/test/e2e --hostname <IP_ADDRESS>"

@mledour
Hello.
Could you please try to increase your app-init-delay delay? I tried to run some "hello world" example and all tests were successful with the --app-init-delay 15000 value.
If this issue is still present, could you please provide us with a simple example that demonstrates it?

Ok thank's I got it working but I think is not a reliable solution as it could not work anymore as the app is growing..
Maybe an implementation like npm wait-on. Listening on specific url:port with an options like --app-wait-on-url "localhost:4200" would be more reliable.

Thank you for your inquiry. I think it will be useful to provide a way to delay tests until a tested app can respond to requests. I've created a feature suggestion for it: https://github.com/DevExpress/testcafe/issues/3636, please check it for a workaround and don't forget to add 👍  to it 😄

Hi Andrey
Thank's. 👍added ;-)


What does it mean, empty fields.

From subject: The contact fields are: first name, last name, nickname, phone number, and darkest secret. A saved contact can’t have empty fields.
Is it enough to have a space not to be empty field?

Fixed


creating a preview for actual blogs

@carlosgauci - I was just trying to use your branch to add some articles. This looks great to me! 💯 If we could fix the thumbnail/image issue, that would be perfect too. But if not I'm sure we can manage in the static images folder too. Let me know what you think

Hey @TuanaCelik, the images are working now, I added some lines to the build script to replace the image paths in blog posts when deployed, so you can use the same folder for images.

Thank you @carlosgauci  - I can take this PR from here 🎉 Great work, really amazing!


metrics, observer: purge backend metrics when backend is down for too long

What problem does this PR solve?

Issue Number: close #582
Problem Summary:
The backend metric is never cleared after the backend is down. In auto-scaling workload, the backends change frequently and then the metrics keep growing.
What is changed and how it works:

Purge the backend metrics after it's down for over 2 hours
Remove the status label for BackendStatusGauge. BackendStatusGauge is not used in Grafana so it's fine.

Check List
Tests

[x] Unit test
[ ] Integration test
[x] Manual test (add detailed scripts or steps below)
[ ] No code

Steps:

Update the threshold from 2 hours to 2 minutes and build TiProxy
Create a cluster with tiup playground v8.1.0 --db=2 --tiproxy=1 --tiproxy.version=v1.1.0 --tiflash=0
Run sysbench to create metrics
Scale-in the TiDB <IP_ADDRESS>:4001
Check the metrics immediately and <IP_ADDRESS>:4001 existed

curl -L 127.1:3080/metrics | grep -c <IP_ADDRESS>:4001
204

Check the metrics after a few minutes and <IP_ADDRESS>:4001 disappeared:

curl -L 127.1:3080/metrics | grep -c <IP_ADDRESS>:4001
0

Check the Grafana, the metrics of <IP_ADDRESS>:4001 existed when it was up but disappeared after it was down:

Notable changes

[ ] Has configuration change
[ ] Has HTTP API interfaces change
[ ] Has tiproxyctl change
[ ] Other user behavior changes

Release note

Please refer to Release Notes Language Style Guide to write a quality release note.
- Purge backend metrics when the backend is down for too long

Codecov Report
Attention: Patch coverage is 93.50649% with 5 lines in your changes missing coverage. Please review.

Please upload report for BASE (main@1ace159). Learn more about missing BASE report.

Files
Patch %
Lines

pkg/balance/observer/backend_observer.go
70.58%
4 Missing and 1 partial :warning:

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #585   +/-   ##
=======================================
  Coverage        ?   67.85%
=======================================
  Files           ?       76
  Lines           ?     6953
  Branches        ?        0
=======================================
  Hits            ?     4718
  Misses          ?     1899
  Partials        ?      336

Flag
Coverage Δ

unit
67.85% <93.50%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

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


shell: modules: streamline codebase

This PR includes 4 commits focused on streamlining the codebase in subsys/shell/modules:

shell: utils: omit NULL initialization of endptr
shell: modules: date: omit NULL initialization of endptr
shell: modules: devmem: utilizing shell_strtoul in cmd_dump
shell: modules: kernel: various code cleanups.

Ping @jakub-uC 👀 for a review

Rebased due to merge conflict with this PR #77668

@jakub-uC, @carlescufi
Could you please review this PR?


Once we're up to lowercase package names, data conflict with the keyword

I think we should rename to inductive

Now it's obvious why Lean chose inductive!


quickscrape fails on reinstall on MAC OSX; 'xcodebuild'  error and

An older version of quickscrape failed when running against a new bmc.json file. Decided to reinstall quickscrape using instructions in README.md. install went fine until the following. Assumed this was not fatal, tried to run anyway but it crashed as below
INSTALL>> (clipped until error)
...
npm http GET https://registry.npmjs.org/rimraf
npm http 304 https://registry.npmjs.org/rimraf
npm http 304 https://registry.npmjs.org/mkdirp

<EMAIL_ADDRESS>install /usr/local/lib/node_modules/quickscrape/node_modules/thresher/node_modules/jsdom/node_modules/contextify
node-gyp rebuild

xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer
/CommandLineTools' is a command line tools instance
CXX(target) Release/obj.target/contextify/src/contextify.o
SOLINK_MODULE(target) Release/contextify.node
SOLINK_MODULE(target) Release/contextify.node: Finished
/usr/local/bin/quickscrape -> /usr/local/lib/node_modules/quickscrape/bin/quickscrape.js
<EMAIL_ADDRESS>/usr/local/lib/node_modules/quickscrape
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>├──<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>└──<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>RUNNING:
(bmc.json is actually a copy of mdpi.json which I intended to edit later) ...
localhost:scrapers pm286$ quickscrape -u http://www.trialsjournal.com/content/15/1/481 -s ./bmc.json
info: quickscrape launched with...
info: - URL: http://www.trialsjournal.com/content/15/1/481
info: - Scraper: ./bmc.json
info: - Rate limit: 3 per minute
info: - Log level: info
info: urls to scrape: 1
info: processing URL: http://www.trialsjournal.com/content/15/1/481
TypeError: Cannot read property 'actions' of null
at /usr/local/lib/node_modules/quickscrape/node_modules/thresher/lib/thresher.js:100:16
at Request._callback (/usr/local/lib/node_modules/quickscrape/node_modules/thresher/lib/url.js:89:5)
at Request.self.callback (/usr/local/lib/node_modules/quickscrape/node_modules/thresher/node_modules/request/request.js:236:22)
at Request.EventEmitter.emit (events.js:98:17)
at Request. (/usr/local/lib/node_modules/quickscrape/node_modules/thresher/node_modules/request/request.js:1142:14)
at Request.EventEmitter.emit (events.js:117:20)
at IncomingMessage. (/usr/local/lib/node_modules/quickscrape/node_modules/thresher/node_modules/request/request.js:1096:12)
at IncomingMessage.EventEmitter.emit (events.js:117:20)
at _stream_readable.js:919:16
at process._tickCallback (node.js:419:13)
localhost:scrapers pm286$

There was a historical issue with OSX Mavericks and a particular version of Google's gyp library (used by Node.js), which meant you had to have the full XCode installed to use it. The possible fixes are:

install XCode
update node.js


[Global Styles] Update documentation to reflect removal of $rem-base

$rem-base variable was removed in 6.1, but documentation still instructs users to use it, which is confusing. Please update docs (I am not yet familiar enough with the project to do it myself).

Done! And deployed to the live documentation.


Utilize pre-commit to help devs follow style guidelines

Closes #1485
@matthiask one thing that requires a close look is .pre-commit-config.yaml. Let me know if I should remove any that you think are overly strict. I picked from https://pre-commit.com/hooks.html and matched what we had. I did introduce doc8 since it seems like a positive change.

I'm glad I forced the specific flake8 warnings, TIL. I'll make that change and merge it in.


Job Screen doesn't auto refresh if the job was retried

Once a job fails and auto retries, the job screen no longer auto updates the console data, you have to manually refresh the page.

That's kind of an expected behavior, since there's no way for Console to know if/when the job will be retried. It should be Hangfire itself to refresh the page when the job is retried.


Docker core dumped

Hi,
I followed the instructions below to use docker.
https://github.com/GRChombo/GRChombo/wiki/Getting-started-fast-with-docker
But running this command:  root@34ecf27ece59:/GRChombo/Examples/BinaryBH# ./Main_BinaryBH3d_ch.Linux.64.mpicxx.gfortran.DEBUG.OPT.MPI.OPENMPCC.ex params_very_cheap.txt
gives following error:
qemu: uncaught target signal 4 (Illegal instruction) - core dumped
Illegal instruction

@PawanGu, are you trying to run on an Apple Silicon Mac by any chance?
If so, then I'm not sure this is supported by the Docker image (which only targets the amd64 architecture).

Yes, I am running on apple M1 chip.
Ok, I will then try to run on the LIGO cluster. Do you know if LIGO cluster has all the prerequisites to run it?
https://github.com/GRChombo/GRChombo/wiki/Getting-started

Ok, I will then try to run on the LIGO cluster. Do you know if LIGO cluster has all the prerequisites to run it? https://github.com/GRChombo/GRChombo/wiki/Getting-started

Unfortunately, I do not as it's not a cluster I have access to. You will need to check yourself.

Unlikely it is hard to run on cluster with docker, as it typically requires root access that you often do not have.
So I think I compiled the code on an x86 architecture, so this might be issue for the apple chip.
I cannot experiment or reproduce, since I do not have an M1 chip. The things I would try is to recompile, but also recompile and try to remove the -march=native flags (there are two of them there) in the cd /Chombo/lib/mk/Make.defs.local file


[BUG] Microfilm doesn't install?

Having issues installing microfilm. @pupusam--please add more specifics on this issue here. Should work once Bryce accepts the git request.

Running the default install .yml did not seem to install microfilm. The ModuleNotFound error occurs inside the brieflow conda environment. I cannot manually install the module with conda --- that is the error 'warning libmamba'.

It looks like this is a more holistic error -- also getting install errors with matplotlib and nd2, maybe more.

I used the standard conda env create --file=brieflow_workflows_env.yml to make my environment, which successfully activates with conda activate brieflow_workflows.

Okay, and in using conda env create --file=brieflow_workflows_env.yml, you got no error output? Because that's what would be more helpful in trying to figure out what is going wrong.

@pupasam Are you using the brieflow_workflows environment for the configuration notebooks? The brieflow_configuration should be used for these notebooks. You can generate this environment with the file at brieflow_configuration_env.yml

Follow these steps to install:
https://github.com/cheeseman-lab/brieflow?tab=readme-ov-file#set-up-brieflow-configuration-environment

Yes I'm using the workflows environment and had no install errors. I got around this issue by setting the channel priority to flexible instead of strict and then installing what I needed.

Ok think we solved the problem -- my mistake at not realizing there were two separate environments! Thank you!!


Fix data time of Copyright in license information.

Ⅰ. Describe what this PR does
This pr is to add or normalize license information where the time of Copyright in  ./pkg/ddc/alluxio/operations/base_test.go was wrong.(2023->2020)
Ⅱ. Does this pull request fix one issue?
None

/lgtm

/assign @zwwhdls


Bump adapter API version to 0.7.0

This is needed because #384 introduces an incompatible change.

Per https://github.com/juttle/juttle/pull/384#issuecomment-199910073, merging without review in order to get 0.7.0 out.
@demmer FYI


Custom UserStore for Identity3.0

can I use this --> http://www.asp.net/identity/overview/extensibility/overview-of-custom-storage-providers-for-aspnet-identity
tutorial to have custom user store for identity3.0?
tutorial specifying that it is for identity2.0 I want to know will it also work for identity3.0?
Thanks

@Rick-Anderson One for you again.

@danroth27 please prioritize

There would be nothing better than a pure SQL or Dapper example implementation : )

The article is really good, I wish if it can be updated soon to Identity 3 and if you added  a pure custom SQL implementation that doesn't depend on the EF models.
Everyone seems to have the same struggle when integrating Identity in legacy systems back-ends and the guys here thinks that we have an empty database to throw their implementation in.
Many times I preferred to throw away Identity and resort to simple authentication because I work with lots of legacy back-ends that the companies invested millions in and they have no way to change it.

https://github.com/aspnet/Docs/issues/1162


UnimplementedError (UnimplementedError: Unimplemented Error)

It seems the Windows implementation is not done. Trying to save a file from the Windows app and it keeps throwing an unimplemented error. I saw a PR related to windows support https://github.com/incrediblezayed/file_saver/pull/72. Maybe that will solve anything

Hey, yes, that might solve the issue, will try to merge that asap

Hey @milindgoel15 I just merged the PR can you help me test on windows? I don't have a windows machine..

Just tested out all three save modes (saveAs, saveFile, saveFileOnly) and they work as expected. The saveAs function works in the way described in the PR.


Redmine integration

Hello
Can we have Redmine integration?
I see comments from 2015 from people who want Redmine integration and this page https://wakatime.com/redmine-time-tracking . I thought this integration available only on paid plans but in reality there no additional integrations. I think you need to hide this page until you developed Redmine integration because it is very misleading.
How to help create proper integration with Redmine?

It should be implemented using the official guide http://www.redmine.org/projects/redmine/wiki/Plugin_Tutorial

@gandarez I want to add time spend on a branch to issues in the Redmine. Basically, I need some hook which parses the name of the branch and create TimeEntry in Redmine. I think it need to be implemented on the Wakatime side.
Is that too hard to implement? I think I can play with Bitbucket hooks to query Wakatime and send data to Redmine.

@iho the plugin/extension should be created in order to send data to WakaTime Api.

@gandarez this isn't a plugin for writing time tracking data, but more like the GitHub integration where we read from WakaTime's API and write to Redmine's API.
@iho if WakaTime builds this integration, how would we be able to associate some time tracked on WakaTime with the right issue on Redmine?
Here's some more info about Redmine's time tracking feature:
http://www.redmine.org/projects/redmine/wiki/RedmineTimeTracking

Any update here? @iho


Feature Request: Ability to tag URLs on the Add page and bulk add/remove tags on the list page

Type

[ ] General question or discussion
[x] Propose a brand new feature
[ ] Request modification of existing behavior or design

What is the problem that your feature request solves

Being able to add / remove / edit tags of multiple snapshots at once.
Describe the ideal specific solution you'd want, and whether it fits into any broader scope of changes

I think this feature should work in two different ways.
The first one from the add menus itself, so it is possible to add multiple URL at once with an option to give them tags (one or more). Thus beind able to add multiple URL based on the same subject / tag.
The second way by the snapshot page, selecting the pages to add / remove / edit one or more tag at once.
What hacks or alternative solutions have you tried to solve the problem?

Adding tags one by one (snapshots)
How badly do you want this new feature?

[ ] It's an urgent deal-breaker, I can't live without it
[x] It's important to add it in the near-mid term future
[ ] It would be nice to have eventually

[ ] I'm willing to contribute dev time / money to fix this issue
[x] I like ArchiveBox so far / would recommend it to a friend
[ ] I've had a lot of difficulty getting ArchiveBox set up

Definitely a good idea, we could have a field to add/remove multiple tags on the snapshot admin page (/admin/core/snapshot/) near the search bar.

Definitely a good idea, we could have a field to add/remove multiple tags on the snapshot admin page (/admin/core/snapshot/) near the search bar.

Wouldn't it be easier to do that from the snapshot page ? There is already selection boxes for pages.
What about from the add page as well ?  So it is possible to bulk add pages from the same topic ?
The ability of doing this later on is definitly great but being able to do that in a single step process would make it a lot easier as well. Basically adding a tag field on the add page. Maybe making this possible with specific permission only ?

Wouldn't it be easier to do that from the snapshot page ? There is already selection boxes for pages.
What about from the add page as well ?  So it is possible to bulk add pages from the same topic ?
The ability of doing this later on is definitly great but being able to do that in a single step process would make it a lot easier as well. Basically adding a tag field on the add page. Maybe making this possible with specific permission only ?

Ah yes, definitely also possible to add a tag field to the /add page. That's an easy ticket that anyone can pick up, I'll add the help wanted tag to this issue.

Ah yes, definitely also possible to add a tag field to the /add page. That's an easy ticket that anyone can pick up, I'll add the help wanted tag to this issue.

Both feature requests here are done in v0.6 (see #660 for more):

bulk editing of tags from Snapshot list is possible
tagging URLs directly from the add page and add CLI is possible

These will be out soon with the next release v0.6.


FIX: adjust packet metadata url and apiVersion for new equinix api

adjust packet metadata url and apiVersion for new equinix api
The equinix metadata API changed since they acquired packet, causing issues during boot.
How to use

build
run on equinix
To test an out of stream change on equinix, you'll have to start a machine using ipxe boot, as equinix only allows stable and beta channels

Testing done

[ ] Changelog entries added in the respective changelog/ directory (user-facing change, bug fix, security fix, update)
[ ] Inspected CI output for image differences: /boot and /usr size, packages, list files for any missing binaries, kernel modules, config files, kernel modules, etc.
[ ] ensure instance with image completely starts up on equinix

Notes
Since we're making heavy use of this, we're happy to help testing this out, by ie providing an instance on Equinix for testing

related conversation from k8s-slack --> https://kubernetes.slack.com/archives/C03GQ8B5XNJ/p1723144757084059

Tested this:
# Before:
$ ./coreos-cloudinit --oem=packet
2024/08/19 09:19:32 Checking availability of "packet-metadata-service"
2024/08/19 09:19:32 Checking availability of "packet-metadata-service"
2024/08/19 09:19:32 Checking availability of "packet-metadata-service"
2024/08/19 09:19:33 Checking availability of "packet-metadata-service"
2024/08/19 09:19:33 Checking availability of "packet-metadata-service"
^C
# After:
$ ./coreos-cloudinit --oem=packet
2024/08/19 09:21:29 Checking availability of "packet-metadata-service"
2024/08/19 09:21:29 Fetching meta-data from datasource of type "packet-metadata-service"
2024/08/19 09:21:29 Fetching data from https://metadata.packet.net/metadata. Attempt #1
2024/08/19 09:21:30 Fetching user-data from datasource of type "packet-metadata-service"
2024/08/19 09:21:30 Fetching data from https://metadata.packet.net/userdata. Attempt #1
2024/08/19 09:21:31 Failed to set hostname: error setting hostname: exit status 1
2024/08/19 09:21:31 Authorized SSH keys for core user

Failures are due to running as non-root, so all looks good.


[CLI] Add --gas-limit option when sending transactions in CLI

The current gas limit is 100_000_000, which is insufficient in certain situations. To allow users to customize the gas limit when sending transactions, an option "--gas-limit" should be added to the CLI command， like rooch move run, rooch move publish, etc.

Add to the TransactionOptions.
https://github.com/rooch-network/rooch/blob/4691056cf30b66caf9a9050dc4f429e35c5b394a/crates/rooch/src/cli_types.rs#L70-L71


Dev Tools History does not persist sessions

We’ve noticed with ES 6.7 and OD 0.9
We have Security Plugin in both ES and Kibana
Our dev tools page does not save the commands after logging out.
Instead we are welcomed to the “Welcome To Console Page>Get to Work” Every time one logs in.
My Kibana YML
------------ Basic Server/ES Information ------------------
server.port: 443
server.host: xxx
elasticsearch.url: xxx
elasticsearch.username: xxx
elasticsearch.password:
------------ Server SSL ------------------
server.ssl.enabled: true
server.ssl.certificate: /xxx
server.ssl.key: /xxx
server.ssl.supportedProtocols: [‘TLSv1.1’, ‘TLSv1.2’]
------------ Elasticsearch SSL ------------------
elasticsearch.ssl.certificateAuthorities: “/xxx”
elasticsearch.requestHeadersWhitelist: [“securitytenant”,“Authorization”]
------------ Debugging Settings --------------
logging.dest: xxx/kibana.stdout

Hi @alolita, this issue seems to be related to the clearing of the local storage on browser when we are logging off. Take a look at my comment .

Closing issue here.
Related issue on Kibana repo: https://github.com/opendistro-for-elasticsearch/security-kibana-plugin/issues/118


fix: Table Widget Multiselect Row checkbox alignment

Description
Fix misalignment in the table widget checkbox when using multiselect Row
Fixes #12615
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

Visual

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

Test coverage results :test_tube:
:white_circle: Total coverage has not changed
// Code coverage diff between base branch:release and head branch: fix/table-mutiselect-checkbox-alignment

Status
File
% Stmts
% Branch
% Funcs
% Lines

:red_circle:
app/client/src/selectors/commentsSelectors.ts
83.61 (-1.64)
61.76 (-2.95)
73.33 (0)
88.24 (-2.35)

@Tooluloope Tested this and it is working as expected now

/ok-to-test sha=a892aa6

PR shouldn't be merged till theming is Merged.


Production doesn't serve assets or build directory...

I had to add 2 missing dependencies to the package.json file. Production doesn't serve assets or build directory...
Can you reproduce? Dev seems to work fine

Production server is not meant to server the files, you should use another server such as nginx or apache for it.
If you look in server.js, you will see it's disabled on purpose:
// Serve static files
if (process.env.NODE_ENV !== 'production') {
  const mount = require('koa-mount')
  const serve = require('koa-static')

  for(const [k, v] of Object.entries(config.http.static)) {
    app.use(mount(k, serve(v, {index: false})))
  }
}

Remove the if check to re-enable.

If that’s the case, my mistake I removed the if statement in my PR. My apologies.


Add Windows env in ci

What problem does this feature solve?
There may be some unexpected behavior in the Windows environment. Let's add a Windows monitor to keep an eye on it.
What does the proposed API of configuration look like?
nothing

closed by https://github.com/web-infra-dev/rspack/pull/4772


"More" button in PageHeader command bar when command bar button was not visible on start

The button "more" does not appear when the command bar buttons was not visible from the start.
For example my app starts in VisualStateWide. For any reason, I don't want to display command bar buttons in this state (in XAML the default button visibility is Collapsed).
When my window switches to VisualStateNarrow, I display my buttons. But in this case, my buttons appear but not the "more" button (to show labels).
I hope it is clear.

Sure. What is the technique you are using to hide and show buttons?

Okay, it seems the problem appear just with the 1.1.11-preview-160512 version. I updated to the last preview and it works well.
Otherwise my technic is using visual states directly in XAML.


feat: support eslint flat config

fix #244
Before this PR is merged, you can try it through ni -D @hyoban/vite-plugin-checker

I used your bag. That didn't solve the problem

@17359898647 You need to enable it via useFlatConfig option

@17359898647 You need to enable it via useFlatConfig option

thanks

@hyoban Thank you, it worked!

Thanks for the pull request 🎉
Is there any update on the merge status @fi3ework?

Sorry for the delayed response due to a long period of burn out. Thanks for this great work again!


Error HH404: File @chainlink/contracts/src/v0.8.interfaces/KeeperCompatibleInterface.sol, imported from contracts/Raffle.sol, not found.

Did anyone else experience this error?

Well I guess you have to run npm install @chainlink/contrats inside your working directory, but this issue is not very informative unfortunately.

Yeap!. I fixed it actually. Did just that and it worked. :)

That's great, don't forget to close the issue!

Nice work!


Refactor IKEA Tradfri

As I was adding support for the Tradfri blinds, I realized there is a lot of repeated code in the different files of the Tradfri lib. This is an issue to hold together refactoring of the code.
To-do:

[x] Refactor switch.py
[x] Refactor sensor.py
[ ] Refactor light.py (lights)
[ ] Refactor light.py (groups)
[ ] Refactor cover.py
[ ] Refactor constants
[ ] Refactor observe method (might solve #27119?)

While you're at it, may I drop in a feature request to have the sensors be displayed with Battery icons and properties?

They had a battery icon when I tested the new code yesterday so I believe I've implemented what you request 😊

@SqyD looks like the batteries didn’t make it to version 100 so they’ll be there in 101.


Loosen version restrictions

lower minimum Python supported to 3.8
removed poetry.lock

prevented installation of library in existing envs without serious corruption
see https://python-poetry.org/docs/basic-usage/#as-a-library-developer

Verified all tests and pre-commit hooks pass
Tested on various Python versions on Windows, Ubuntu, macOS

See also: bubblesub/ass_tag_parser#16, bubblesub/ass_renderer#3


[BUG] This application could not be started

Please confirm these before moving forward

[X] I have searched for my issue and have not found a work-in-progress/duplicate/resolved issue.
[X] I have tested that this issue has not been fixed in the latest (beta or stable) release.
[X] I have checked the FAQ section for solutions
[X] This issue is about a bug (if it is not, please use the correct template)

Describe your issue
After update on 3.0.0 i have this windows at WingetUI.exe startup.
WingetUI.exe - This application could not be started
This application requires the Windows App Runtime
Version 1.5
(MSIX package version >= 5001.70.1338.0)
I have installed the package, i have restart and i have same message.
I use Windows 11 x64.
Steps to reproduce the issue
No response
WingetUI Log
WingetUI not yet started

Package Managers Logs
WingetUI not yet started

Relevant information
No response
Screenshots and videos

Please try to uninstall any "App Runtime", "App Sdk", "Ui.Xaml" and "Runtime Singleton" from windows settings. Then, please reinstall WingetUI

I have uninstalled "App Runtime" and "App Sdk". "Ui.Xaml" and "Runtime Singleton" are not installed.
I have reinstalled WingetUI... same issue :

Can you please check the event viewer, on the "Errors" part, for any crash reports about WingetUI?

It's not really a WingetUI but maybe a Windows App crash...
I have theses errors :

I have fixed the issue :

I have remove all Appx policies in regedit : HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Appx
I have restart
I have installed the new SDK 1.5.1 (today release) from https://learn.microsoft.com/fr-fr/windows/apps/windows-app-sdk/downloads

It's not really a WingetUI but maybe a Windows App crash...
I have theses errors :

Google Translate says...

DeploymentExtendedText:Microsoft.WinAppRuntime.DDLM.5001.70.1338.0-x6_5001.70.1338.0_x64__8wekyb3d8bbwe package failed to deploy with the package origin Unknown because there was no valid license or independent upload policy


added end process when item counts is zero

In this case you cut out $this->launchShutdown() call. What is problem with current code? Crash it in some cases?


Check the oracle DB client supports array type manipulation

Description:
$Subject
Related Issues (optional):
https://github.com/ballerina-platform/ballerina-standard-library/issues/124

as go through the code, It is found that in oracledb module, it uses a complex object to support arrays implementation but this current design  need to be changed to support these mix type array support in oracledb module.

PR is merged. Hence closing the issue.


Test script support

Initial commit of test service scripts.

Current coverage is 66.02%

Merging #118 into develop will not affect coverage as of 11df7df

@@            develop    #118   diff @@
=======================================
  Files            11      11
  Stmts          2222    2222
  Branches          0       0
  Methods           0       0
=======================================
  Hit            1467    1467
  Partial           0       0
  Missed          755     755

Review entire Coverage Diff as of 11df7df

Powered by Codecov. Updated on successful CI builds.

I modified the test script to use the client API instead of the thrift libraries.

These changes are included in my latest PR.


[NADE] Add team NADE to CODEOWNERS

Pre-review checklist

[x] I've confirmed that instructions included in README.md are still correct after my changes in the codebase.
[ ] I've added or updated automated unit tests to verify correctness of my new code.
[ ] I've added or updated integration tests to verify correctness of my new code.
[ ] I've confirmed that my changes are working by executing CLI's commands manually.
[ ] I've confirmed that my changes are up-to-date with the target branch.
[ ] I've described my changes in the release notes.
[x] I've described my changes in the section below.

Changes description
Fixing a non-existent file's code ownership for NADE + adding NADE for files that are used regularly by NADE as co-owners.

Closing in favor of https://github.com/snowflakedb/snowflake-cli/pull/1075/files


Implement Statistics Service

Consume block events for creating stats and sending to monitor. Related to issue #392.

@muralisrini
I am not sure if this issue needs to stay open. I am not aware that we we ever decided for the statistics service to be part of the peer code base? Please let me know. Thanks.


Search bar isn't full-width on large screens

Remove max-width: $measure from _input-bar.scss

Fixed in commit bc866b9


Expected date of .net 5 worker for azure functions

Hi All
The documentation states that 'The .NET 5 worker will be generally available in early 2021.'
Can someone throw light on a tentative date of release? We are supposed to go live in PROD and are considering if we should stick to 3.1 based on the timeline.

We, unfortunately, don't have a date we can commit to yet, but hope to be sharing those details within the next couple of weeks.

We, unfortunately, don't have a date we can commit to yet, but hope to be sharing those details within the next couple of weeks.

We'll continue to provide updates here as more information becomes available.

We'll continue to provide updates here as more information becomes available.

We, unfortunately, don't have a date we can commit to yet, but hope to be sharing those details within the next couple of weeks.

Now that three weeks have passed, are there any details to share?

Any update? Thanks!


Add support for GTM custom environments

Add support to insert the gtm_auth, gtm_preview and gtm_cookies_win parameters to the GTM script request. This allows users to use GTM environments.
Also fixed some minor bugs and failing tests.
Resolves #2

Thx man 🥳


Memory efficient densenet

This is a rebased version of https://github.com/pytorch/vision/pull/797
All credits to the implementation goes to @ekagra-ranjan , I've just rebased and improved a bit the tests.

Tests passed, but due to flaky connection one of them failed. I should remove the downloading from http.


[FEATURE] Support SkiaSharp as a Blazor Extension

My understanding is SkiaSharp running on WebAssembly is in progress with a target release of May.  This would allow a "Blazor Client" application to use SkiaSharp and Skia fully running in a supported client browser.
One highly desired feature after that would be supporting the Blazor model of having the option to run the business logic calling SkiaSharp either client or server via a "Blazor Extension".  Running from the server is important for scenarios of smaller download size, thin client support, taking advantage of server capabilities, etc.  I understand the performance would be quite different in the server scenario, but it would still 'work'.
An example of this concept used on an HTML5 Canvas API is here:
https://github.com/BlazorExtensions/Canvas
This isn't rocket science, as the HTML5 canvas is a known API existing in the client browser, and the Blazor Extension wraps the canvas API so when running on the client, the extension simply calls the canvas API directly.  When running on the server, the Extension marshals the API call to the client over the Blazor SignalR connection.  There's some extra magic in that linked Extension to batch calls for performance, but you get the idea.
While I'm not an expert on the SkiaSharp architecture, my assumption is the only way this would work is have Skia still run in the client browser, and SkiaSharp (or a thin wrapper) run on the server to marshal the calls over SignalR.  Alternatively (but probably impossible for this repo) is have Skia marshall the calls over SignalR and have them execute using WebGL or Canvas.
So, ultimately the feature request is once SkiaSharp can run in Client Blazor, please support SkiaSharp as a Blazor Extension.

Moving this discussion to a single location: https://github.com/mono/SkiaSharp/issues/1219

https://github.com/mono/SkiaSharp/issues/1219#issuecomment-611157056

Regarding:
[FEATURE] Support SkiaSharp as a Blazor Extension (#1194)
This is what we are going to be doing here.
When it's a Blazor Extension you can utilize the SkiaSharp API on the Client or Server Blazor deployment model.   I believe what you are doing here is akin to the forked Uno repo, allowing Skia/SkiaSharp to work properly when running under WASM in a client browser.  My specific feature request around making it a Blazor Extension was to also allow the API to run on the server with the rendering happening on the client.
This would most likely mean Skia (and maybe SkiaSharp) would need to be running in the Client Browser, with the SkiaSharp API calls being packaged up and marshaled over the Blazor SignalR connection when the Blazor Extension was running on the server.
An example of this was done with the HTML5 Canvas here:  https://github.com/BlazorExtensions/Canvas
If you look at that GitHub example, they wrote a wrapper around the HTML5 canvas API's which ended up doing one of the following:  (1) If the Blazor Extension was running in a client browser, issued the draw call directly or (2) If the Blazor Extension was running on the server, marshaled the call over the SignalR connection to the client to be executed.
The Blazor server deployment model is valuable in situations where you can't deploy multiple MB's of DLL's down to the client just to draw anything.  (with that multiple MB's NOT being Skia/SkiaSharp, but the business logic using the SkiSharp API.)

Seems that we might need to wait for https://github.com/dotnet/aspnetcore/issues/5466 to be completed so we can link SkiaSharp with the WAM part. Not sure about dynamic linking...

So if I’m reading this correctly, you’re saying we need to wait for AOT compilation in .Net?  That’s been dropped from the .Net 5 release pushing Blazor/SkiaSharp support at least a year out?  That would be extremely bad news if so.
From: Matthew Leibowitz<EMAIL_ADDRESS>Sent: Monday, June 15, 2020 4:00 PM
To: mono/SkiaSharp<EMAIL_ADDRESS>Cc: Chris Coble<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [mono/SkiaSharp] [FEATURE] Support SkiaSharp as a Blazor Extension (#1194)
CAUTION - This message originated outside AVEVA
Seems that we might need to wait for dotnet/aspnetcore#5466https://github.com/dotnet/aspnetcore/issues/5466 to be completed so we can link SkiaSharp with the WAM part. Not sure about dynamic linking...
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/mono/SkiaSharp/issues/1194#issuecomment-644432556, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AM2OVAQLQOXAYV5HV5BC6C3RW2RVNANCNFSM4LU7JY4A.
Please note, my email address has changed to<EMAIL_ADDRESS>Please update in your Contacts list.

AVEVA Group plc is registered in England at High Cross, Madingley Road, Cambridge, England CB3 0HB. Number 2937296.

This is a mix of issues/features. Let me break it down and then maybe you can see where exactly you are needing a feature or if we need to focus on some things.
First, the real basics, SkiaSharp obviously woks just fine on the server as a function/API that you can use as an endpoint for the basic . This is pure server code that uses basic HTML to get the image. I assume this is not what anyone is talking about, but just for general clarity.
For the WASM/client code, this is actually 2 separate cases: Uno or Blazor.
Uno is working just fine and this is currently what the #1333 PR is for. It adds a Uno view and runs SkiaSharp right in the browser today. When ready, this will just be a matter of adding the view to the XAML/code behind and then the browser will draw it for you. Currently, Uno takes advantage of WSL to effectively build your app on Linux under the hood and produce the working website.
Blazor is a bit different as it does not yet support the feature to statically link the app with SkiaSharp libraries. This is what https://github.com/dotnet/aspnetcore/issues/5466 is all about - basically add the features to compile the WASM bits with static libraries. It appears (at the time of writing) that we have to wait for .NET 6 next year or so before we get this feature.

As I write the comment above, there is the fact that Blazor also has the server components. Now, that might just be possible today because the code actually runs on the server and new png/jpg files are sent to the client. I have not investigated this case at this time, but might be useful to look into if it actually helps in the case what you are looking for. I am assuming you are more wanting the code to actually run on the client browser.

@mattleibow Thanks for that detailed description, that helped me considerably. Now I understand how Uno is able to statically link to make this work, compared to Blazor which needs AOT support which was dropped from .Net 5.
We have a C#/.Net engine we wanted to run in the client browser directly, using SkiaSharp to render.  That would have been the ideal solution for speed/performance.  It sounds like the only avenue to that end right now is leveraging Uno/SkiaSharp which we'll have to evaluate once #1333 PR comes in.
That being said, this engine participates in a framework of other components that often have to run on the server right now because of how they were built.  If we could use a SkiaSharp "Blazor Extension" that only supports server side execution (for now), with the forward looking statement that the extension would someday be supported using Client WASM enabled via .Net 6 AOT compilation, that would be valuable.

So does mean that being able to draw using skiasharp in a client side blazor app isn't going to happen until late 2021? (release date .net 6 which will include AOT compilation) :-(

Unfortunately, that looks to be the case, but I can assure you the team is working on this as fast as they can. I'm in the chats and I see all the good words being thrown around.
Not sure when exactly things will go out, but hopefully sooner than later - even if a preview. I think previews usually start early in the year, so it is quite soon.

@mattleibow great work so far!
Sad to hear that we have to wait for AOT compilation from mono. I already tried the Canvas/WebGl Blazor extension, but it is not very performant due to JS Interop calls.
I also tried the .NET binding for WEBL through Webassembly (https://github.com/WaveEngine/WebGL.NET) in Blazor and got it working (see screenshot). Not quite sure how they do the binding to Webassembly in detail, but maybe it is possible with Skiasharp, too?

I had a look and things still have a sad thing. As you saw, going from .NET to JS to C++ is not the best. Especially with the number of calls being made. The WebGL part is not too bad as it is just talking directly to JS. Unfortunately, the libSkiaSharp lives in C++, so we have to hop the bridge twice.
Thinking wildly here, it might be possible to create a Blazor app, and then use Uno as a simple container to hose SkiaSharp things. Like an iframe or maybe set up some communication between the two. The main app can be Blazor, and the drawing part can be an iframe. This obviously depends on the use case... Sort of treat the Uno part as a separate "canvas"...

I made some interesting thing:
https://github.com/mattleibow/SkiaSharpUnoBlazorApp

This looks really great!
Already checked it out and got it working. Investigating the code, i recognized that the communication is done through the iFrame via JS Interop.
This will be a little bit tricky because we are planning to create an editor where the same objects are used in blazor lists and also drawn onto canvas.
So as i understand, using the same object reference in blazor & SkiaSharp will only be possible when AOT compilation arrives?

Sadly yes. Right now, it is 2 entitling different adios, so there is no way to reuse anything.
But, I want to try out a different communication model. Using the messaging. This should allow me to use json objects. But, this will still go out via js.

Wait a sec... I wonder if there is a way to pin memory in js and use that in both sides... I do this, sort of, for skia... I create the pixels and then pass the pointer to js, might be able to read it in uno/blazor

I did an improvement with the communication. No longer using slow fragments, but direct JS.

I have been hacking away on this, and I think I may be able to do something for Blazor server-side: https://github.com/mattleibow/SkiaSharpBlazorComponents

    <SkiaSharpImage OnPaintImage="@PaintImage" />

@{
    void PaintImage(PaintImageEventArgs e)
    {
        var canvas = e.Surface.Canvas;

        canvas.Clear(SKColors.Blue);
    }
}

Great work!
Afaik the API for Blazor Server and Blazor Webassembly for Razor components is identical. So people could start with Blazor Server + Skia and then switch to Blazor Webassembly + Skia when the AOT is ready.

That is the plan!
But the client wasm one also is a bit different with the fact that I can have a canvas view...
I need to investigate if we should use an image for the server and a canvas with a real time render. Or use an image everywhere, and have an additional option for the client...
I am very far from the web space, I will need some help 😅

I would think the best you can get here is drawing an image on the server and having that sync across using the Blazor SignalR connection.
For the client, as long as the draw calls are not going over the JS/Interop boundary to slow it down, whatever solution should work.

@mattleibow Your code only works on Blazor Server model, not work on WASM, because your SkiaSharp version that you used for code can't work on WASM. Actually, your Skia rendering was excuted on server then passed to client through HTTP.

@mattleibow based on the SkiaSharpBlazorComponents  example, how would you improve the code to make SkiaSharp animation possible.

Animation? That is hard. Because only the server can render, the animation might have to be pre-rendered. Not sure if that is going to be nice with latency.
We really need the ability to link native libraries with Blazor. Like reeeeeeaaaaly need it. The only thing that is possible to do now is render a few png and then fake it. But that is not good at all.

The only thing that can work for client rendering is an embedded Uno app.

@mattleibow  have you tried checking the animation performance with embedded Uno app? Perhaps the combination of client side embedded Uno and server side image rendering may be a good use case, during the transition to AOT in the coming .NET6

The embedded Uno app should run at native performance of AOT WASM in an iframe.
I have not done any actual tests, but I was able to get 60fps with a flappy bird game, and that should not be affected by an iframe. And, that game was also just the interpreter.

@mattleibow it takes around 1 min or more to compile the SkiaSharpUnoApp alone through WSL2.

Do you have suggestions what I have done wrong or what I could improve that.

The project works. I still try to understand what "Hack" you used to make embedding UnoApp works within Blazor. I compare that with the https://github.com/unoplatform/Uno.SkiaSharp/tree/uno/samples. It seems there is lot of copying the compile output files from the SkiaSharpUnoApp to that of the SkiaSharpUnoBlazorApp.
I do not have sufficient experience with Uno.SkiaSharp. It is unclear how much I could bring the Unit Tests in Uno.SkiaSharp into the SkiaSharpUnoApp  and SkiaSharpUnoBlazorApp project setup you have implemented.
I hope you will continue your investigation and perhaps we will see your work in coming community asp.net standout or coming Microsoft events.
I also hope the discussion here will speed up the implementation of AOT that you see as key to bringing SkiaSharp to Blazor.

Another related issue for getting better WASM support: https://github.com/dotnet/runtime/issues/44636

@mattleibow   thanks for the tip. I will follow.

Hello @mattleibow, have you thought any further on how SkiaSharp might run as a Blazor Server module?
Option 1: Load Skia and SkiaSharp in the browser.  Abstraction layer sits on top of SkiaSharp API’s on server and marshals draw calls to client.
Option 2: Load Skia only in the browser.  SkiaSharp maintains same surface API and runs on the server, but marshals calls to the remote Skia running in the client browser.

Hello @mattleibow, have you thought any further on how SkiaSharp might run as a Blazor Server module?
Option 1: Load Skia and SkiaSharp in the browser.  Abstraction layer sits on top of SkiaSharp API’s on server and marshals draw calls to client.
Option 2: Load Skia only in the browser.  SkiaSharp maintains same surface API and runs on the server, but marshals calls to the remote Skia running in the client browser.

Hello @mattleibow.
My suggestion is a stepwise approach while we wait for Blazor AOT to come into place:

Start a POC for a SkiaSharp Blazor Server extension leveraging Uno’s SkiaSharp client rendering support.
- This might be as simple as just drawing a rectangle from the server to the client.
Assuming this works, expand out the support with additional SkiaSharp API calls.
As .Net 6 Beta AOT support starts to roll out, update the POC to support SkiaSharp rendering in the client and remove the Uno implementation.
Harden the implementation for a PR back into the SkiaSharp repo.

Hello @mattleibow.
My suggestion is a stepwise approach while we wait for Blazor AOT to come into place:

Start a POC for a SkiaSharp Blazor Server extension leveraging Uno’s SkiaSharp client rendering support.
- This might be as simple as just drawing a rectangle from the server to the client.
Assuming this works, expand out the support with additional SkiaSharp API calls.
As .Net 6 Beta AOT support starts to roll out, update the POC to support SkiaSharp rendering in the client and remove the Uno implementation.
Harden the implementation for a PR back into the SkiaSharp repo.

Just adding my emails here as a way to keep the world informed:

That is pretty much what I think we might be able to do. Think of SKPicture as a binary serialization of the final drawing commands that are going to be sent to the client. Just like the canvas extensions do now with commands, skia does with pictures.
For example, if I want to send a very simple 1024x1024 “image” to the client, it is just 165 bytes (uncompressed) – which I am thinking might be less that the equivalent with canvas extensions.
I have been putting together a little demo of what I mean. I am not to clued up on what to do to make something native like Daniel suggested, but I decided to make a managed “library” that runs in the client browser and just draws.
https://github.com/mattleibow/BlazorSkiaSharp
Unfortunately, I think there might be a bug in the deserialization process in WASM in skia. Everything works on the server and the picture is inflated from the commands. The client can also serialize just fine. There seems to be some issue with deserialization on the client.
I’ll look into this tomorrow, but this might be worth looking at. Instead of sending over drawing commands as a batch, skia will send them over pre-optimized for drawing. This will include any pre-processing for clipping and calculations. This also allows you to leverage the server for any additional logic.
That link attached is what I have in the meantime consists of 2 apps: the Blazor app and the .NET 5 console app (which is the client library). When the server completes drawing some frame, it sends the commands over the wire by calling a JS function. The client then does the rest by basically calling into the console app running on the client. This client then draws the actual frame as pixels and blits it onto a canvas.

Draw the frame as a batch: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/WebApplication1/Pages/Index.razor#L26
Send the commands to the client by calling a JS function: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/WebApplication1/Pages/Index.razor#L47
Trigger the batch processing on the client: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/WebApplication1/wwwroot/js/example.js#L15
Draw the frame for real on the client: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/ConsoleApp1/Program.cs#L38
Update the actual canvas by calling another JS function: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/ConsoleApp1/Program.cs#L48
Blit the frame to the screen: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/WebApplication1/wwwroot/js/example.js#L18

I’ll have a look and see why this is not working at the moment, but maybe this is something you can try? I am using .NET for the client, Google has CanvasKit that is a JS lib and you can totally make your own as there is no real work being done.

Just adding my emails here as a way to keep the world informed:

That is pretty much what I think we might be able to do. Think of SKPicture as a binary serialization of the final drawing commands that are going to be sent to the client. Just like the canvas extensions do now with commands, skia does with pictures.
For example, if I want to send a very simple 1024x1024 “image” to the client, it is just 165 bytes (uncompressed) – which I am thinking might be less that the equivalent with canvas extensions.
I have been putting together a little demo of what I mean. I am not to clued up on what to do to make something native like Daniel suggested, but I decided to make a managed “library” that runs in the client browser and just draws.
https://github.com/mattleibow/BlazorSkiaSharp
Unfortunately, I think there might be a bug in the deserialization process in WASM in skia. Everything works on the server and the picture is inflated from the commands. The client can also serialize just fine. There seems to be some issue with deserialization on the client.
I’ll look into this tomorrow, but this might be worth looking at. Instead of sending over drawing commands as a batch, skia will send them over pre-optimized for drawing. This will include any pre-processing for clipping and calculations. This also allows you to leverage the server for any additional logic.
That link attached is what I have in the meantime consists of 2 apps: the Blazor app and the .NET 5 console app (which is the client library). When the server completes drawing some frame, it sends the commands over the wire by calling a JS function. The client then does the rest by basically calling into the console app running on the client. This client then draws the actual frame as pixels and blits it onto a canvas.

Draw the frame as a batch: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/WebApplication1/Pages/Index.razor#L26
Send the commands to the client by calling a JS function: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/WebApplication1/Pages/Index.razor#L47
Trigger the batch processing on the client: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/WebApplication1/wwwroot/js/example.js#L15
Draw the frame for real on the client: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/ConsoleApp1/Program.cs#L38
Update the actual canvas by calling another JS function: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/ConsoleApp1/Program.cs#L48
Blit the frame to the screen: https://github.com/mattleibow/BlazorSkiaSharp/blob/63bc2350dcf9d3cfb4b336ae553b1c9d63715c72/WebApplication1/wwwroot/js/example.js#L18

I’ll have a look and see why this is not working at the moment, but maybe this is something you can try? I am using .NET for the client, Google has CanvasKit that is a JS lib and you can totally make your own as there is no real work being done.

I finally managed to get everything working, you can check out my repo again: https://github.com/mattleibow/BlazorSkiaSharp
Seems I had explicitly disabled deserialization in the compiler flags 😐
With regards to your questions:

I am using base64 now because I wanted to have a “human readable” message in characters that can appear on the screen, but you can totally send it any way – even as the byte array form.
You can apply those drawing to any canvas, in fact in my example, the page just has one canvas and I keep rendering to that – no DOM changes.
We still need AOT, but we now no longer need to wait for Blazor to get it. In my example, I am using the Uno bootstrapper to take the console app and compile it to WASM. I believe the .NET team has something as well that they use to build their own bits. I was not to familiar with it, so went for the Uno bootstrapper as I wanted to get this to you as soon as I could. You can chat to them and see if they have a nice process that you can use.
With CanvasKit, Google does the AOT and then they have a wrapper in JS. What I am doing is basically making a similar thing, but using .NET so I don’t have to write the JS-native interop code. It is a little weird. However, the benefit of that is there is no dotnet.wasm to download. But you now have to write some C++ interop code: https://github.com/google/skia/blob/master/modules/canvaskit/canvaskit_bindings.cpp This has been done here, but it may not be something that you would be comfortable with.

In my example, the client bit that runs SkiaSharp is not a Blazor app, but just a normal console app. Think of it as a parallel to CanvasKit. Instead of writing binding code in C++ and then wrapping it in JS, I got the binding in C# and the wrapper in C#. Ittotally can be used as a standalone library and can be placed on a npm repository. My example effectively has a blazor app that depends on a drawing library, that just so happens to be a .NET WASM library.

I finally managed to get everything working, you can check out my repo again: https://github.com/mattleibow/BlazorSkiaSharp
Seems I had explicitly disabled deserialization in the compiler flags 😐
With regards to your questions:

I am using base64 now because I wanted to have a “human readable” message in characters that can appear on the screen, but you can totally send it any way – even as the byte array form.
You can apply those drawing to any canvas, in fact in my example, the page just has one canvas and I keep rendering to that – no DOM changes.
We still need AOT, but we now no longer need to wait for Blazor to get it. In my example, I am using the Uno bootstrapper to take the console app and compile it to WASM. I believe the .NET team has something as well that they use to build their own bits. I was not to familiar with it, so went for the Uno bootstrapper as I wanted to get this to you as soon as I could. You can chat to them and see if they have a nice process that you can use.
With CanvasKit, Google does the AOT and then they have a wrapper in JS. What I am doing is basically making a similar thing, but using .NET so I don’t have to write the JS-native interop code. It is a little weird. However, the benefit of that is there is no dotnet.wasm to download. But you now have to write some C++ interop code: https://github.com/google/skia/blob/master/modules/canvaskit/canvaskit_bindings.cpp This has been done here, but it may not be something that you would be comfortable with.

In my example, the client bit that runs SkiaSharp is not a Blazor app, but just a normal console app. Think of it as a parallel to CanvasKit. Instead of writing binding code in C++ and then wrapping it in JS, I got the binding in C# and the wrapper in C#. Ittotally can be used as a standalone library and can be placed on a npm repository. My example effectively has a blazor app that depends on a drawing library, that just so happens to be a .NET WASM library.

This is my repo: https://github.com/mattleibow/BlazorSkiaSharp
So basically folks, I have effectively created a separate JS library to do all this work, and it coincidentally just uses .NET as the main driver. You could replace the .NET with JS bindings.

This is my repo: https://github.com/mattleibow/BlazorSkiaSharp
So basically folks, I have effectively created a separate JS library to do all this work, and it coincidentally just uses .NET as the main driver. You could replace the .NET with JS bindings.

Thanks @mattleibow for all your help and expertise in getting this prototype together.
In your opinion, where do you think this final supported solution should 'live'?  I'm pretty sure I won't be the only person that wants to draw with SkiaSharp in Blazor.  Once we get AOT and can finally compile the client bindings without Uno or CanvasKit, would this be a solution that ends up in the SkiaSharp repo?  A new repo?  Or nowhere and we just figure it out individually?
I realize you feel it doesn't makes sense in the SkiaSharp repo as the core tenant of the repo is a definitive wrapper around Skia, but I would argue this SKPitcure solution will only work with matching SkiaSharp builds on client and server (when rendering on the server), meaning the Skia and SkiaSharp versions need to be aligned.  That would be much easier if the Blazor Client or Server implementation was built directly in the SkiaSharp repo.  Of course one could argue the oppose by looking at the Blazor Canvas repo which obviously don't contain the rendering logic for the browser canvas itself.
At any rate, from a consumer perspective (which is selfishly mine) pulling this entire end to end support from a single repo is the most attractive option. I'll note that link you shared with me regarding System.Graphics had specific implementations for Blazor client and server baked into the framework, and that's a 'wrapper' around the concrete implementation being injected.  Not all that dissimilar to SkiaSharp wrapping Skia.

Thanks @mattleibow for all your help and expertise in getting this prototype together.
In your opinion, where do you think this final supported solution should 'live'?  I'm pretty sure I won't be the only person that wants to draw with SkiaSharp in Blazor.  Once we get AOT and can finally compile the client bindings without Uno or CanvasKit, would this be a solution that ends up in the SkiaSharp repo?  A new repo?  Or nowhere and we just figure it out individually?
I realize you feel it doesn't makes sense in the SkiaSharp repo as the core tenant of the repo is a definitive wrapper around Skia, but I would argue this SKPitcure solution will only work with matching SkiaSharp builds on client and server (when rendering on the server), meaning the Skia and SkiaSharp versions need to be aligned.  That would be much easier if the Blazor Client or Server implementation was built directly in the SkiaSharp repo.  Of course one could argue the oppose by looking at the Blazor Canvas repo which obviously don't contain the rendering logic for the browser canvas itself.
At any rate, from a consumer perspective (which is selfishly mine) pulling this entire end to end support from a single repo is the most attractive option. I'll note that link you shared with me regarding System.Graphics had specific implementations for Blazor client and server baked into the framework, and that's a 'wrapper' around the concrete implementation being injected.  Not all that dissimilar to SkiaSharp wrapping Skia.

It all depends on what the solution finally ends up as. It may fit in with the more official https://github.com/BlazorExtensions, or we could add it to the https://github.com/mono/SkiaSharp.Extended repo (sort of a community toolkit for SkiaSharp).
Because this is mostly independent to skia, we don't really want to tie up a release of this library with the slower SkiaSharp. I agree that this might be better shared, so I would definitely be on board to adding it to one or the other repos.

It all depends on what the solution finally ends up as. It may fit in with the more official https://github.com/BlazorExtensions, or we could add it to the https://github.com/mono/SkiaSharp.Extended repo (sort of a community toolkit for SkiaSharp).
Because this is mostly independent to skia, we don't really want to tie up a release of this library with the slower SkiaSharp. I agree that this might be better shared, so I would definitely be on board to adding it to one or the other repos.

Any updates with the recent .net6 previews? Can we be hopeful running skiasharp wasm in the browser (client side) this year?

@EydenJones I believe we're waiting on preview support of the following before this feature can continue:
https://github.com/dotnet/runtime/issues/44636

Are we moving closer to SkiaSharp as a Blazor Extension => Update

Are we moving closer to SkiaSharp as a Blazor Extension

Yes.
The PR is almost ready: https://github.com/mono/SkiaSharp/pull/1811
A sample repo that you can see the code and try it out right now: https://github.com/mattleibow/SkiaSharpBlazorWebAssembly

Cannot find SkiaSharp.Views.Blazor namespace
"SkiaSharp.NativeAssets.WebAssembly" Version="2.88.0-preview.145" is installed
Do I need any other nuggets ?

@SalimiHabib  please read this first if your OS is Windows

my vs version is Enterprise 2022 Preview (64-bit) Version 17.0.0 Preview 4.1
is there any release for VS 2022 Preview 5 ?

@SalimiHabib  the change has been committed. I will wait for VS 2022 Preview 5

You need the preview feed: https://aka.ms/skiasharp-eap/index.json

I have merged #1811 and will release a public preview of the new client-side, wasm SkiaSharp.Views.Blazor package on NuGet as soon as the build is green.

@mattleibow Is there a timeline when https://www.nuget.org/packages/SkiaSharp.Views.Blazor is going out of pre-release state?

@mattleibow I see that the SkiaSharp.Views.Blazor package still works only for WebAssembly apps:
https://github.com/mono/SkiaSharp/blob/ce7778c0c48b5ea668d91420023b295d5551006f/source/SkiaSharp.Views.Blazor/SkiaSharp.Views.Blazor/Internal/JSModuleInterop.cs#L12-L15
Is there a timeframe for when the functionality will be supported on Server-side Blazor as well? This will allow the full functionality to be available regardless of the Blazor model as otherwise this forces users to stick to wasm apps only, which is not always possible.
If porting this to work on Server-side Blazor is not possible, can you provide more details what are the limitations for it to happen?


Rename proto-compiler cli arg

Changed clone-sdk --path to clone-sdk --out to match readme.

Closes: #419
Description
Rename path to out in order to match Readme command examples.
The shortand is -o, so I assume that the intended argument was --out and not --path.

For contributor use:

[ ] Updated the Unreleased section of CHANGELOG.md with the issue.
[ ] If applicable: Unit tests written, added test to CI.
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Updated relevant documentation (docs/) and code comments.
[ ] Re-reviewed Files changed in the Github PR explorer.

Codecov Report

Merging #420 (b39c5d9) into master (b1b37f5) will increase coverage by 22.8%.
The diff coverage is 67.5%.

@@            Coverage Diff            @@
##           master    #420      +/-   ##
=========================================
+ Coverage    13.6%   36.5%   +22.8%
=========================================
  Files          69     154      +85
  Lines        3752   11092    +7340
  Branches     1374    4129    +2755
=========================================
+ Hits          513    4051    +3538
- Misses       2618    6394    +3776
- Partials      621     647      +26

Impacted Files
Coverage Δ

modules/src/events.rs
0.0% <0.0%> (ø)

modules/src/ics02_client/events.rs
0.0% <ø> (ø)

modules/src/ics02_client/msgs.rs
0.0% <0.0%> (ø)

modules/src/ics02_client/raw.rs
0.0% <0.0%> (ø)

modules/src/ics03_connection/error.rs
13.6% <0.0%> (-19.7%)
:arrow_down:

modules/src/ics04_channel/error.rs
75.0% <ø> (+50.0%)
:arrow_up:

modules/src/ics04_channel/msgs/chan_open_try.rs
67.0% <ø> (ø)

modules/src/ics04_channel/msgs/recv_packet.rs
63.5% <ø> (ø)

modules/src/ics04_channel/msgs/timeout.rs
69.2% <ø> (ø)

modules/src/ics04_channel/packet.rs
70.4% <ø> (+70.4%)
:arrow_up:

... and 282 more

Continue to review full report at Codecov.

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

Thanks @CharlyCst!


implement a travis? cron to detect missing or outdated services

we're not that far off from being up to date with botocore but given that botocore a moving target this project will always be playing catch up. It would be nice for rusoto users for the rusoto project to be on top of those changes when they happen.
I don't know what this would look like but it would be interesting to have some kind of cron that

detects when rusotos botocore version is behind
creates or updates a gh issue as a means of notification
bonus points if that notification could include what services are now outdated or missing

I'm interested in how we can make this work. botocore cuts new releases almost daily. Coming up with a way to keep a GitHub issue up to date would be 💯 . TravisCI supports daily cron jobs and I have experience with them with my day job so that's an option. Appveyor also supports this and may be a better choice since we lean on Travis jobs pretty hard already.

Wow thats impressive shipping schedule!
I've worked with travis crons before but haven't uses appveyor for anything but windows builds.
I thing what's relevant is just changes to the definitions for rusoto. I could picture an mvp that's based on diff checks for that

I've been thinking about this for a bit. Perhaps we can do less work by documenting the shipping schedule of botocore and state our aim for how far behind is acceptable.
Looking at Rusoto's list of open issues, I think our current approach of upgrading botocore as needed is sufficient. This may change as rates of contributions and use change.
To me, seeing a new issue on botocore opened or updated almost daily is more noise than signal. Regular contributors likely know we're always behind and new contributors or users can see that documented in the suggested README change.
Trying to keep this positive 😄 .

Please re-open if this issue is near and dear to your heart. 😄


please help me

I got a very confused problem.
when I use:
ldap_servers xxx{  url ldap://ip:389/dc=xx,dc=xx?sAMAccountName?sub?(objectClass=person); binddn xxx; binddn_passwd psw; group_attribute memberOf; group_attribute_is_dn on; require valid_user;
I open the website it comes out nothing. And I check the error.log, I find an error "Authentication times out"
but when change the url into 'url ldap://ip:389/dc=xx,dc=xx?sAMAccountName?;'
I get the login website, but no matter what I input, it failed and comes up with "could not find user DN"
please help me, thanks

ldap_server ldap_local {
        url "ldap://localhost/dc=Bla,dc=net?uid?sub?(objectClass=posixAccount)";
        binddn "cn=authuser,dc=Bla,dc=net";
        binddn_passwd "blabla";
        require group "cn=config,ou=Group,dc=Bla,dc=net";
        group_attribute "memberUid";
        group_attribute_is_dn off;
        require valid_user;
        satisfy all;
}

what we use with no issues

ldap_server ldap_local {
        url "ldap://localhost/dc=Bla,dc=net?uid?sub?(objectClass=posixAccount)";
        binddn "cn=authuser,dc=Bla,dc=net";
        binddn_passwd "blabla";
        require group "cn=config,ou=Group,dc=Bla,dc=net";
        group_attribute "memberUid";
        group_attribute_is_dn off;
        require valid_user;
        satisfy all;
}

what we use with no issues

Thanks for your reply. I change port into 3268 and it worked magically. It seems like there is different function in port 3268


generated CRUD actors for the models in packages with ACL

generate actors per model, if exists don't
does CRUD
check the ACLS in the generated code: user/circle vs the ACL in the object

info

circles are always defined on the 3bot itself

circles can have sub circles

when user logs in then we have the session, so we know who user is, we should know which circles he is in (local circles)
global circles are:   $circlename.$digitalmeDoubleName
ThreeBot circle manager needs to have a function: is member off (but don't show members)

@andrewayoub you is revisiting to make sure it's aligned with https://github.com/threefoldtech/home/issues/399

bending on https://github.com/threefoldtech/jumpscaleX_core/issues/256

crud actors are implemented and correctly generated, awaiting ACLs.

will create new FR


Flyway migrate with Tags

Which version and edition of Flyway are you using?
flyway:9.16.1
If this is not the latest version, can you reproduce the issue with the latest one as well? (Many bugs are fixed in newer releases and upgrading will often resolve the issue)
yes
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
Command-line docker image : redgate/flyway:9.16.1
Which database are you using? (Type & version)
Yugabyte (PostgreSQL 11.2)
Which operating system are you using?
MacOS
What did you do?
Can we append the release tag while doing the migration in flyway_schema_history? while doing the installation. For example,
docker run --platform linux/amd64 \
-v $(pwd)/sql/dml:/flyway/sql/dml \
-v $(pwd)/sql/ddl:/flyway/sql/ddl:rw \
-v $(pwd)/output:/flyway/output \
--name flyway \
--rm redgate/flyway:9.16.1 \
-licenseKey= \
-url=jdbc:postgresql://localhost:5433/yugabyte \
-user=yugabyte \
-password= \
-connectRetries=60 \
-enterprise \
-cleanDisabled="false" \
migrate \
-X
-tag release=1.0.0

I above command can we make arrangement to pass the parameter  -tag release=1.0.0
So we can track which script is a part of which release
in schema

installed_rank
version
description
type
script
checksum
installed_by
installed_on
execution_time
success
tag

5
<IP_ADDRESS>
Dummy Description Seed
SQL
ddl/V1.0.0_5__DummyFile_Seed.sql
1893389443
yugabyte
2023-05-05 06:08:56.191
247
true
v1.0.1

1
<IP_ADDRESS>
Dummy Description
SQL
dml/V1.0.0_1__DummyFile.sql
898919160
yugabyte
2023-05-05 06:08:48.201
1304
true
v1.0.0

6
<IP_ADDRESS>
Dummy Description Seed update data
SQL
ddl/V1.0.0_6__DummyFile_Seed_update_data.sql
-821658599
yugabyte
2023-05-05 06:08:56.830
167
true
v1.0.1

4
<IP_ADDRESS>
Dummy Description
SQL
dml/V1.0.0_4__DummyFile.sql
-1275434096
yugabyte
2023-05-05 06:08:53.770
1741
true
v1.0.0

2
<IP_ADDRESS>
Dummy Description
SQL
dml/V1.0.0_2__DummyFile.sql
-338398677
yugabyte
2023-05-05 06:08:50.149
1096
true
v1.0.0

3
<IP_ADDRESS>
Dummy Description
SQL
dml/V1.0.0_3__DummyFile.sql
-1193028464
yugabyte
2023-05-05 06:08:51.968
1143
true
v1.0.0

In above Example I can track which V/U script is part of which release by using tag column i have appended for demonstration purpose.
What did you see instead?
Currently I cannot map the release details/notes along with flyway migrations

Thank you for the request ucguy4u,
I was considering this scenario and my first thought was that setting the value in the description would give you the functionality you're looking for, however development being what it is, naming the file before the release has cleared is unreliable and will likely only serve to add complexity and confusion.
While you can easily get the git release tags programmatically in your pipeline, you can't enter that value in flyway. This lead me to consider how else this functionality could be useful to other teams.
Would the ability to set any arbitrary value against a migration (such as shown in your tag column) suffice for your use, instead of explicitly being git functionality?

Could something like this be done with placeholders - https://documentation.red-gate.com/fd/placeholders-184127529.html and maybe an afterMigrateApplied callback - https://documentation.red-gate.com/fd/callback-concept-184127466.html?  It could INSERT INTO A ReleaseTracking table the tag from the placeholder and the version from the max(installed_rank) from the schema_history table.  Then everything from 1 to that installed rank was part of the release tagged 1.0.0, and everything since then to next max installed rank was part of release tagged 2.0.0.
Another option might be organizing your scripts into different release folders, which is explained at https://flywaydb.org/blog/organising-your-migrations.  This would tell you the scripts in the repo, but wouldn't be seen in the database.


DnnImageHandler General Exception Error

DnnImageHandler doesn't work since I moved my website from my local server to a host. I have no Idea How to fix it. The Error occurs whenever DnnImageHandler calls a user's profile image or any other profile property of image type. No user images are shown. Note that on my local development server DnnImageHandler works fine. DnnImageHandler recurring Error:
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.8.4075.0
DNN 9.4.1
AbsoluteURL:/DnnImageHandler.ashx
DefaultDataProvider:DotNetNuke.Data.SqlDataProvider, DotNetNuke
ExceptionGUID:d741bc90-73c2-4a85-af1c-d0f2e21547d4
AssemblyVersion:
ExceptionHash:7kgL5R6baI4X2Yh8vqcikOx2+Bs=
Message:Unhandled Error:
StackTrace:
InnerMessage:Parameter is not valid.
InnerStackTrace:
at System.Drawing.Image.FromStream(Stream stream, Boolean useEmbeddedColorManagement, Boolean validateImageData)
at DotNetNuke.Services.GeneratedImage.ImageHandlerInternal.GetImageThroughTransforms(Byte[] buffer)
at DotNetNuke.Services.GeneratedImage.ImageHandlerInternal.HandleImageRequest(HttpContextBase context, Func`2 imageGenCallback, String uniqueIdStringSeed)
at DotNetNuke.Services.GeneratedImage.ImageHandler.ProcessRequest(HttpContextBase context)
at DotNetNuke.Services.GeneratedImage.ImageHandler.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

I forgot to mention that my local development PC runs Windows 10 64 bit edition while the host server runs Win 32 bit edition. DnnImageHundler runs perfectly on my PC while it passes general exceptions on the host server.

the component being used might not support 32 bit Windows (which is quite uncommon nowadays for servers)

I rechecked and I was wrong the server runs Win 64 bit

Ok Problem solved. I contacted the server administrator. Apparently "Enable 32-bit applications" was enabled in the IIS configuration. Disabling it solved the issue. I appreciate your help Sebastian.

@msr930
Thank you for re-checking it :)


chore: move community page to its own tab

Explanation
Move community page to its own tab.

/cherry-pick release-0.2


Setup testing

This PR introduces Test-Driven-Development into the application

Changes Unknown when pulling 6575b84d1459a8cd7a33a9ad817e86c2c185cc2f on setup-testing into ** on master**.

Changes Unknown when pulling<PHONE_NUMBER>ccfcff7d9005950ef9ace6cbb2b578 on setup-testing into ** on master**.

Changes Unknown when pulling 05347a79ccf7fde4f38fc8163c15c55f83023f3f on setup-testing into ** on master**.

Changes Unknown when pulling 33421ced6c73a37bc71c59081374d0dc8d660750 on setup-testing into ** on master**.

Changes Unknown when pulling 75e45f5f0e2458200528092bf5e5718cf71b2349 on setup-testing into ** on master**.

Changes Unknown when pulling c2a4547fcd83801bc1f94c6b0663de6a7d394e8c on setup-testing into ** on master**.


[FLOC-2055] "Managed" acceptance test node provider/runner

Fixes https://clusterhq.atlassian.net/browse/FLOC-2055
This changes the factoring of the acceptance test "runner" setup to make it easier to extend and it extends it to support a "managed" provider which just points at some already-running nodes.
The new provider isn't 100% feature complete (eg you have to install packages on it yourself).  Further enhancements would make this more usable but just being able to re-use some already-running nodes is already a big win.

There are some semantic conflict to resolve here.

There are some semantic conflict to resolve here.

Could you help me out .. what conflicts are those?

Oh, what, I created this branch at 3am UTC this morning, how does it conflict with master already.

I'll try and resolve the conflict in ManagedRunner. It should now be an INodeRunner and return a Cluster.

Thanks @tomprince
We resolved the conflicts, re-factored a little and tested against some AWS nodes.
See what you think now.

The new provider needs documentation in acceptance-testing.rst

Fails acceptance tests.

Address, and merge when buildbot is actually happy. If FLOC-1932 gets merged first please be careful with the merge, some bad merges will seem to work but end up with us not testing actual tutorial vagrant image behavior.


Add license file and/or SPDX tag

I know the README.md states this is licensed in MIT, but it would be better to have an explicit LICENSE.txt file. There are several variants of MIT license, so which is it?
Even better to have an SPDX tag in each source file.

Hi, thanks for pointing it out - I've added a LICENSE file; if something's still missing or underspecified, please let me know 🙂


update quantization configurations for ryzenai (vai_q_onnx)

Hi @ChaoLi-AMD  is this the final changes agreed in the meeting?

Hi @ChaoLi-AMD is this the final changes agreed in the meeting?

This is the first step discussed in the meeting, where we changed the enum to a string. There will be further alignment in the future.

Looks good to me!

Hi Mohit, is this PR ready to be merged? @mht-sharma


Computing controller middleware before getting excluding middleware.

To do so, you can call withoutMiddleware in the constructor

Otherwise, calling withoutMiddleware in the controller will not work.

Interesting - why doesn't it work if the code is where we had it?

Because we get the exclusion middleware first, and then calculate the controller middleware. It is possible that withoutMiddleware will be called in the constructor. But the exclusion middleware has been acquired before this.

class Foo
{
$this->middleware(Bar::class)->only('index');
// many many code ....

// This should be computed first
\Route::getRoutes()->getByName('index')->withoutMiddleware(Bar::class);

}

This is my actual case, I want to cancel the middleware in the controller, and found that the original logic is not working


agentstack tools remove

auto-remove tool implementation
when running agentstack tools add <name>, we install the tool packages, insert the tool file and pass it to each agent.
the challenge is when a user wants to remove a tool, they arent sure where all the places to remove the tool are. we should have a command agentstack tools remove <name> that dynamically removes all usage of the tool and uninstalls the packages.

closed by #49


GPU metrics on kubernetes

The GPU task will be supported on kubernetes soon.
I wonder how to add GPU metrics on heapster, so the users can view the usage of GPU information via Grafana+InfluxDB.

I am curious about this, too. IMO, this is mainly related to cAdvisor or libcontainer. Heapster is just collecting time series data from cAdvisor. :)

It seems that @jianzhangbjz has already post an issue about this in cAdvisor#1436.

@andyxning thanks for the correction. I will follow the cAdvisor issue.

we can reopen once cAdvisor gets support


Fixing tink reconcile worker template omit and logs

Description of changes:
The tinkerbell reconcile phase omitting worker node machine templates was setting nil to the loop iterator and not the scope object.
Added nil for the right objects and also added Nil checks when applying worker node spec.
Testing (if applicable):
Built the controller and tested changes.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/lgtm

/lgtm

/approve


Add list of nearby hotels to sprint website and wiki page

HotelsLausanne.pdf

https://github.com/opengeospatial/dev-ogc-org-sprint-landing-20/commit/7546716d33b93673f769976968ffc1dface0007d