new project fails because of unexpected argument 'keep_trailing_newline'

Hi,
I'm trying to start a new project with cookiecutter-pypackage. I ran
cookiecutter cookiecutter-pypackage/

after cloning this repository with git clone https://github.com/audreyr/cookiecutter-pypackage.git and editing the json file. I get this as an error message:
Traceback (most recent call last):
  File "/Users/arundurvasula/anaconda/bin/cookiecutter", line 9, in <module>
    load_entry_point('cookiecutter==0.9.1', 'console_scripts', 'cookiecutter')()
  File "/Users/arundurvasula/anaconda/lib/python2.7/site-packages/cookiecutter/main.py", line 169, in main
    cookiecutter(args.input_dir, args.checkout, args.no_input)
  File "/Users/arundurvasula/anaconda/lib/python2.7/site-packages/cookiecutter/main.py", line 105, in cookiecutter
    context=context
  File "/Users/arundurvasula/anaconda/lib/python2.7/site-packages/cookiecutter/generate.py", line 181, in generate_files
    env = Environment(keep_trailing_newline=True)
TypeError: __init__() got an unexpected keyword argument 'keep_trailing_newline'

I also tried cookiecutter https://github.com/audreyr/cookiecutter-pypackage but that failed with the same error.
I'm using the anaconda distribution of python. Any ideas about what's wrong?
Thanks a lot! I'm looking forward to using this.

Which python are you using? Python 2.7 or Python 3.x?

Python 2.7
On Fri, Mar 6, 2015 at 3:16 PM Daniel Greenfeld<EMAIL_ADDRESS>wrote:

Which python are you using? Python 2.7 or Python 3.x?
—
Reply to this email directly or view it on GitHub
https://github.com/audreyr/cookiecutter-pypackage/issues/54#issuecomment-77653983
.

Okay. I found out earlier this week that the conda packages for cookiecutter were only compiled for Python 3. I haven't had the time to add the ones for Python 2. For that you have my apologies.

Oh cool, no worries and no rush! Thanks for following up!
On Fri, Mar 6, 2015 at 4:31 PM Daniel Greenfeld<EMAIL_ADDRESS>wrote:

Okay. I found out earlier this week that the conda packages for
cookiecutter were only compiled for Python 3. I haven't had the time to add
the ones for Python 2. For that you have my apologies.
—
Reply to this email directly or view it on GitHub
https://github.com/audreyr/cookiecutter-pypackage/issues/54#issuecomment-77661432
.

I updated my packages with conda update and everything seems to be working now. Thanks!


Add Telegram and change Asana contact_url

Summary
Add Telegram and change Asana contact_url
Quality Assurance Checklist

Review Items
Y/N

Site has a publicly known bug bounty or vulnerability disclosure program
Y

Disclosure policy is publicly available
Y

Public URL
Y

Submission follows the Diodb schema
Y

Your Twitter handle (Optional):  _nikitastupin

Thanks @nikitastupin!

Thanks @nikitastupin!


Update beam model to Airy beams

Was the beam parameter file already made for draco?

Sorry, when you say beam parameter file, are you referring to the prod_params.txt? The prod_params.txt file I've attached here is actually run with driftscan. The bash file used to run prod_params and config_draco_ps.txt in #10, is:
#! /usr/bin/env bash
#drift-makeproducts run prod_params.yaml
caput-pipeline run config_draco_gen_stream_extract_ps.yaml

Hmm, okay. I think what I wanted to figure out was if draco already implement Gaussian beam and Airy beam in the simulator in some ways, perhaps though container-like structure like how the input and output data streams are being done. Maybe, @dcrichton can give us some clues?
@Zahra-Kader Can you edit the first post to give us more context, saying what the goal is and why?

I have run my draco simulations with the assumption that there is no specific Gaussian/Airy beam implementation in draco. My understanding was that the visibility timestreams are simulated using information from the maps and beam transfer matrices already generated, and that those beam transfer matrices depend on the beam.
In the master-branch, there is no containers class created for beams. However, I did find a class, BeamPerturbation in another branch - https://github.com/hirax-array/draco/blob/pert-beam/draco/core/containers.py. I have no further knowledge of this though so maybe Devin could comment.
I edited the first post. I hope my goal makes more sense now.

Let me help on this. I will take a look. @Zahra-Kader Can you push the notebook when you have it running up to the draco simulation step so I have something for reference, but no rush.

The beams are included in the calculation of the beam transfer matrices which is handled by driftscan. If you're using hirax_transfer for the telescope object in driftscan runs, you can specify a Guassian, Airy or CST input beam. This functionality has some room for improvement and extension. The configuration snippet you'd want would look something like:
hirax_spec:
    ...
    hirax_beam: # See hirax_transfer.beams
        type: gaussian
        diameter: 6.
        fwhm_factor: 1.0

or
hirax_spec:
    ...
    hirax_beam: # See hirax_transfer.beams
        type: airy
        diameter: 6.

Cool. @Zahra-Kader, it looks like everything is there in draco for you run Airy beam simulation.
@dcrichton, this is part of HIRAX extension to draco right? Are you the main developer? I might be able to help. Maybe we can continue on hirax/draco repo or slack?

Thanks. Yeah, I didn't think it would be difficult to implement Airy beams. I just created this issue because using Airy beams and sanity checking the results is on my to-do list.


Makefile for TFLite under Linux

System information

Linux Ubuntu 16.04
TensorFlow Lite compilation from source
TensorFlow version 1.12
g++ 5.4.0
GPU / CUDA/cuDNN version - not used

I came across interesting thing in implementation of Makefile for Linux version of TFLite. In particular:
list of compiled sources does not include directory 'tensorflow/lite/core', only some sub-directories from it. This make the compiled 'libtensorflow-lite.a' binary unusable - linker always gives error even on the simplest examples, as e.g. give on this page - https://www.tensorflow.org/lite/apis
By adding line
$(wildcard tensorflow/lite/core/*.cc)
I managed to fix this - newly compiled binary now contained all symbols that were previously absent in the binary.
My question is - is this made on purpose for some reason that I've missed or this is just a bug? Could someone from the developers give better explanation? Thanks!

Can you provide the exact makefile path you are looking at?

Hi!
this one : https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/tools/make/Makefile

Yes, that is an oversight, your fix is correct. Thanks!  If you submit a PR that would be awesome!

Dear Andrew, I'd love to finish the pull-request, but unfortunately Google Bot does no allow me to get past the 'sign the CLA' stage. I've double checked all my e-mails and etc - still cannot find the reason.

I'm happy to make the one line fix on your behalf since it is so small if
you are ok with that.
Also, please check the troubleshooting if you haven't
https://opensource.google.com/docs/cla/#troubleshoot
-A
On Wed, Nov 28, 2018 at 5:59 AM pglushkov<EMAIL_ADDRESS>wrote:

Dear Andrew, I'd love to finish the pull-request, but unfortunately Google
Bot does no allow me to get past the 'sign the CLA' stage. I've double
checked all my e-mails and etc - still cannot find the reason.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/23926#issuecomment-442455838,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAT52nxj69yoqFbH7LiS8HbzG4Q3LRhgks5uzpamgaJpZM4YvuvT
.

Sure, please do, I'm totally ok.


fix: source links for Lake

I overlooked this detail in #141. Hopefully there isn't anything else I missed.

Looking around a bit there is another thing that is weird about the web page, namely:
https://leanprover-community.github.io/mathlib4_docs/Init/Prelude.html#Lean.Name despite linking correctly to Lean.Name in the constructors the Name type is called Lake.Name. It is completely unclear to me why that happens though.

Continued here: https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Confusing.20delaboration.20in.20.20doc-gen/near/388158478 since the bug seems unrelated/nontrivial.


[Bug]:   Stretchly menu item not visible on Macos Sequoia 15.0.1 (24A348)

Version

[X] I'm using version 1.16

Known issues

[X] I've checked Known issues

Existing issues

[X] I've checked Existing issues

Advanced Preferences

[X] I've checked Advanced Preferences

What operating system are you using?
macOS
Operating System Version
MacOS Sequoia 15.0.1 (24A348)
Reproduction steps
When I start Stretchly, it is running (invoking regular breaks) but no Menu bar icon visible, impossible to get to preferences.
Expected Behavior
Menu bar icon visible.
Actual Behavior
Menu bar icon not visible.
Relevant log output
NA

Preferences
NA

Additional information
NA
Code of Conduct

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

Yes, after an update.

I confirm the same issue after update to Sequoia. Stretchly doesn't start with the system, when started manually it functions ok for some time, but may crash after several hours. I can check logs when it happens next time, but I don't know where to look for them - is there a way to check them from the app or I should look somewhere in the system files?

Probably some change in macOS that ElectronJS needs to catch up with.
Logs are located in sth like ~/Library/Logs/Stretchly/main.log

Ok, so I've got a couple of these errors:
[2024-10-15 19:33:38.524] [error] TypeError: Cannot read properties of null (reading 'showInactive')
    at IpcMainImpl.<anonymous> (/Applications/Stretchly.app/Contents/Resources/app.asar/app/main.js:891:23)
    at Object.onceWrapper (node:events:634:26)
    at IpcMainImpl.emit (node:events:531:35)
    at WebContents.<anonymous> (node:electron/js2c/browser_init:2:83159)
    at WebContents.emit (node:events:519:28)

Happening after either Stretchly: Long Break window loaded or Stretchly: Mini Break window loaded

So I managerd to upgrade my old macbook with OpenCore Patcher to Sequoia, but I do not see any issues, all is fine for me.
Have you tried reinstalling Stretchly?

I think the problem was fixed with one of the system updates. I have Sequoia 15.1 now, and Stretchly works correctly (I didn't reinstall it, just updated the system).

Thanks, closing then :)

I can confirm the same. Working well with 15.1.


If you change the intermediate directory, the project no longer picks up changes to packages

ProjectLockFileWatcher doesn't handle when the intermediate directory changes, and therefore is monitoring the wrong file.

Maybe not, it listens to project tree changes in ProjectTree_ChangedAsync...


Add NET_RAW capability

Adding NET_RAW capability allows flannel to become compatible with k8s using cri-o as runtime.
Otherwise, the pods remain looping in iptables rules creation.
Solves:
https://github.com/coreos/flannel/issues/1300

bump!

@rajatchopra is there a way to run tests again? This compromises the compatibility with cri-o runtime

@kubealex the gofmt issue is fixed in master now if you want to rebase.

Closing this, I reopened #1325  to clean up the commits.


#180 Fixed failing Unit Tests

Fixed most of the failing tests.
Most fixes dealt with lifecycle/event issues. These problems only occurred when running all tests in single run. When running an individual test spec these did not occur. Especially MeasureWin seems to be always created even if not configured. That creates an extra "Measure Vector Layer" such that other tests, e.g. PermalinkController on layer-count fail. This could be caused by global event listeners, e.g. Mappable mixed-in Components on WguEventBus.
This all could be caused by version upgrades in both the core Vue-related components and the test tools.
So added mostly lifecycle handling for most Wegue Components, this is good practice anyway....
To be continued but insights welcome!

All Unit tests succeed now in Travis as well.
Also removed many of the warnings. Most deal with components not being present.
Now mainly from Vuetify. Not fatal but a lot of output.
Good to go. Discovered interesting state and event issues while working on this:
Much of the state and events are global: e.g. via WguEventBus (e.g. Mappable mixin) and window.addListener().
In regular Wegue apps this is not a problem as there is a single Map and single main lifecycle of all components.
But when one has an app with e.g. two Wegue Map objects, these kind of problems will arise.
I think this PR is good to go.

Overall: @chrismayer adapt to your insights. The 100% test success is the ultimate goal of this PR.

Thanks for clarification in the comments @justb4. The ultimate goal of having 100% green will be done in a follow-up PR ;-)
This is a huge improvement, thanks for this :rocket: . I'll merge now ...


opentelemetry: datasource variable for dashboard

To function with different datasources.

@ibakshay Could you please check if the changes to the gh action are causing the helm lint to fail?


[SPARK-29981][BUILD][FOLLOWUP][test-hadoop3.2] Change hive.version.short

What changes were proposed in this pull request?
This is a follow-up according to @liancheng 's advice.

https://github.com/apache/spark/pull/26619#discussion_r349326090

Why are the changes needed?
Previously, we chose the full version to be carefully. As of today, it seems that Apache Hive 2.3 branch seems to become stable.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Pass the compile combination on GitHub Action.

hadoop-2.7/hive-1.2/JDK8
hadoop-2.7/hive-2.3/JDK8
hadoop-3.2/hive-2.3/JDK8
hadoop-3.2/hive-2.3/JDK11

Also, pass the Jenkins with hadoop-2.7 and hadoop-3.2 for (1) and (4).
(2) and (3) is not ready in Jenkins.

Test build #114318 has started for PR 26645 at commit e89d211.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/19157/
Test PASSed.

Retest this please.

Test build #114319 has started for PR 26645 at commit e89d211.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/19158/
Test PASSed.

cc @liancheng , @srowen , @wangyum , @HyukjinKwon

Test build #114319 has finished for PR 26645 at commit e89d211.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/114319/
Test FAILed.

I'm OK with it pending tests. It's just a move of files, right?

Yes, right, @srowen .

The first run on hadoop-2.7/hive-1.2 is currently running SparkR test.
The second run on hadoop-3.2/hive-2.3 seems to fail due to Objenesis mock flakiness.
sbt.ForkMain$ForkError: org.mockito.exceptions.base.MockitoException:
ClassCastException occurred while creating the mockito mock :
  class to mock : 'javax.servlet.http.HttpServletRequest', loaded by classloader : 'sun.misc.Launcher$AppClassLoader@490d6c15'
  created class : 'org.mockito.codegen.HttpServletRequest$MockitoMock$1109942067', loaded by classloader : 'net.bytebuddy.dynamic.loading.MultipleParentClassLoader@6e9119e9'
  proxy instance class : 'org.mockito.codegen.HttpServletRequest$MockitoMock$1109942067', loaded by classloader : 'net.bytebuddy.dynamic.loading.MultipleParentClassLoader@6e9119e9'
  instance creation by : ObjenesisInstantiator

Test build #114318 has finished for PR 26645 at commit e89d211.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/114318/
Test PASSed.

Thank you for review. Merged to master.


💡 [FEATURE] - Create a Design for Contributors Page using Figma

Description:
While the current contributors page is functional, we aim to make it more creative. Create a user interface (UI) for the contributors page of our public codebases website.
Tasks:

[ ] Design the UI for the contributors page using Figma.

please assign me this issue.

please reply.

https://www.figma.com/file/M1LU8jeckUflI7qOUmNLYz/PUBLIC-CODEBASES?type=design&node-id=0%3A1&mode=design&t=ZKHaEDGkMI7RzpHX-1
here is the link to the design file with the suggested options.

did you go through the file?


Added type to c.req.param key.

Hi,
Thank you for publishing such a good product.
This PR adds the ability to complete the type of c.req.param.
I think this is a nice feature, but it also makes type definitions more complex, so I think it is reasonable to decide not to adopt it.
Pros
We can get support from the editor for the type of c.req.param. Also, if there is no possibility of a value being returned from c.req.param, the parameter type will be set to never and cannot be specified.
https://user-images.githubusercontent.com/30598/153787066-92e7f97b-32e9-4387-add5-166b2cf302c9.mov

Cons
The simplicity of the type display will be lost.
The following image is before the PR was applied. For those who are not used to reading conditional type specifications, this may be easier to read.

Hi @usualoma !
Thank you for your PR. This is great feature. We will accept this PR even though the code may be more complex.
I commented one thing for your code. Please check it.

Thanks! 😄


[Feature request] Follow system settings regarding dark theme

Recent versions of Android (a few years) support automatically switching from a dark to a light theme depending on the time of the day (e.g. dark at night, light in the day). This makes apps like FreeOTP+ annoying to use, because while they support a dark theme, they're in the wrong state ~half of the time.
The current implementation seems to be following the battery saver setting only (unless the dark mode is explicitly enabled):
https://github.com/helloworld1/FreeOTPPlus/blob/f1f5a43dca9a78995882029965ac10884ed7915e/app/src/main/java/org/fedorahosted/freeotp/FreeOtpPlusApplication.kt#L13-L20
Using MODE_NIGHT_FOLLOW_SYSTEM instead would be more in line with user's expectations, I think.

That's a good suggestion. Thanks.

I have changed to follow system theme https://github.com/helloworld1/FreeOTPPlus/commit/f04a154640789918c2975b30f7351e81a67c540e


Implementation for Start and Stop Dialog

Description
Added implementation for Start and Stop Dialog APIs
Based off of the following swagger spec: https://github.com/williamzhao87/azure-rest-api-specs/blob/dev-communication-CallAutomation-v4-2023-01-15/specification/communication/data-plane/CallAutomation/readme.md
All SDK Contribution checklist:

[ ] The pull request does not introduce [breaking changes]
[ ] CHANGELOG is updated for new features, bug fixes or other significant changes.
[ ] I have read the contribution guidelines.

General Guidelines and Best Practices

[ ] Title of the pull request is clear and informative.
[ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[ ] Pull request includes test coverage for the included changes.

It seems that following sync methods are deleted:

startDialog
stopDialog

This should be present.
The comment i left above regarding this is about its signature. Look at the following:

public Mono<Response> startDialog(StartDialogOptions startDialogOptions)
public Mono<Response> startDialogWithResponse(StartDialogOptions startDialogOptions, String operationContext)

From above, why is operationContext be part of signature? Options pattern should include this.
See the guideline on this here: https://azure.github.io/azure-sdk/java_introduction.html#option-parameters


Documentation: Scripts -> Plugins

Changes
Update our docs for all the new stuff we're getting in for 2.7. Done in a separate PR so that we can merge after we release that version.
Testing
N/A

@drwpow @stramel addressed comments, and added a section to the plugin docs on "import proxying".

@drwpow @stramel ready for a final review!


[SymbolGraph] don't emit navigator name if it's the same as subHeading

Fixes rdar://70202693

When rendering a symbol graph, often there are situations where the names object has duplicate information in the navigator and subHeading field. Since the fields of names can cascade from subHeading to navigator when the latter is absent, choosing to omit this field in this situation can decrease the size of the symbol graph with no loss of data.

@swift-ci Please smoke test

After speaking with the person who reported this issue, it turns out i misunderstood the way the format was used; the navigator field is the one that is optional, in favor of subHeading. I've updated the commit to switch which field is omitted, and updated the tests in kind.
@swift-ci Please smoke test

@swift-ci Smoke test Windows Platform

The Windows test failure seems to be SR-12376. I'm going to go ahead and merge since macOS and Linux both passed.


[Bug] Step missing for Activity 1: Add triggers to production deployment workflow after steps 6

Describe the bug
Redme.md Step missing for Activity 1: Add triggers to production deployment workflow after steps 6.
To Reproduce
Please read the instructions and it will jump to the end and lack of information to complete the task.
Expected behavior
Some more intermediate steps with instruction.

Deployment is triggered by merging the pull request, which makes the new commit to main branch to start the workflow as per step 5 info.

Thanks for the feedback, @wongcyrus!


Add exponential backoff to retry middleware

Hey! Thanks for this great library. We've been converting a lot of our http clients to Tesla and have been really happy with it so far.
One of the things that we found ourself needing was a retry middleware that did exponential backoff with jitter. I thought I would submit what we're using as a PR to see if its interesting to y'all. I wasn't sure if I should leave the existing retry middleware as is or if I should create a new RetryWithBackoff middleware. I opted to go this route because it seems like in most use cases you're going to want some sort of backoff and jitter as opposed to a set delay. That said this is probably a breaking change for someone because they're probably relying on the existing algorithm.
Let me know what you think. Thanks again for all of the work on Tesla :+1:.

NICE!
It definitely make sense to have an exponential backoff, but we need to figure out a way to add this as an option to not break existing behaviour.
Btw, this PR will conflict with https://github.com/teamon/tesla/pull/275 which should be merged first, but it should be straightforward to resolve.

Sounds good. I saw the other PRs and figured there would be some conflicts to work out. Not a problem to get them resolved on my end. I've been thinking about ways we could make this a non-breaking change and I can't come up with a great idea. Happy to do what you think is best :+1:.

Hey @keathley, would you mind rebasing this PR on master so we can merge it? :)

@teamon Rebased. Let me know if anything doesn't look right.


Privacy 2022 custom metrics

adjustments:

[ ]

todo:

[ ] add observer approach to check usage of privacy related methods and properties
[ ] extend the list with more things tracked by fingerprinting
[ ] check https://github.com/openwpm/OpenWPM approach for inspiration
[ ] update wappalyzer libraries list
[ ] updated compliance frameworks checks

#14 now includes all of the navigator properties you've added here plus document.featurePolicy so after that PR is merged we could close this one as obsolete.

#14 now includes all of the navigator properties you've added here plus document.featurePolicy so after that PR is merged we could close this one as obsolete.

I think we can close this now that #14 is merged, all of the functionality should be built into the injected script and the data you need will be in the observers.js custom metric.


Resource type is pluralized

I created the following model:
jsonApiInstance.define('screen', {
  name: ''
}

When I send patch request, I get the following error:
:5000/screens/3:1 PATCH http://localhost:5000/screens/3 409 (CONFLICT)
minilog.js?2831:17 devour  Error: Request failed with status code 409
    at createError (createError.js?16d0:16)
    at settle (settle.js?db52:18)
    at XMLHttpRequest.handleLoad (xhr.js?ec6c:77)
actions.js?e1db:23
{type: {…}}
type
:
{title: "Incorrect type", detail: "Invalid type. Expected "screen"."}
__proto__
:
Object

This can be resolved by explicitly specifying type in define's options argument:
jsonApiInstance.define('screen', {
  name: ''
},
{
  type: 'screen'
})

The cause for this issue is in devour/src/middleware/json-api/_serialize.js file:
function resource (modelName, item) {
  // ...
  let typeName = options.type || this.pluralize(modelName)
  // ...
}

I think it is more correct to use this.pluralize.singular for this case.

I am seeing the same issue. Is pluralizing the resource part of the jsonapi spec?

I was able to take care of this by setting up the devour object with the pluralize option set to false
const jsonApi = new JsonApi({apiUrl:'https://site/jsonapi', pluralize: false});


Clearing after build

After build npm run-script dist the next piece of code is not deleted
if (module) {
  module.exports = {
    createService: createService,
    getRedirectUri: getRedirectUri
  };
}

I'm not sure that it's the best way to use a undeclared variable. When I forget to remove it I catch ReferenceError: "module" is not defined. (line 64, file "OAuth2")
Should I pull a new request?
if (typeof module === 'object') {
  module.exports = {
    createService: createService,
    getRedirectUri: getRedirectUri
  };
}

Or is there any another way to automate this? I see there is not the code in the original library.
I use the distributive when there is no way to deliver as a library. It is very convenient.

The dist task uses gulp-expose, which should create a modules variables, as is done with the checked-in version.
That said, your typeof test is the better way to go. If you submit a PR I'll approve it.

Thanks!


Replace BDK's Electrum Client with directly querying Esplora

BDK's Electrum client is doing all kinds of things and has features that we don't need / want.
Recently we saw warnings like this in production:

{"timestamp":"2022-02-28T09:37:32.461502901Z","level":"WARN","fields":{"message":"call 'batch_script_get_history' failed with EOF while parsing a value at line 1 column 0, retry: 1/1","log.target":"electrum_client::client","log.module_path":"electrum_client::client","log.file":"/home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/electrum-client-0.8.0/src/client.rs","log.line":236},"target":"electrum_client::client"}

2022-02-28 20:37:32
{"timestamp":"2022-02-28T09:37:32.461409878Z","level":"WARN","fields":{"message":"removing all waiting req of this batch","log.target":"electrum_client::raw_client","log.module_path":"electrum_client::raw_client","log.file":"/home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/electrum-client-0.8.0/src/raw_client.rs","log.line":691},"target":"electrum_client::raw_client"}

2022-02-28 20:37:32
{"timestamp":"2022-02-28T09:37:32.461123886Z","level":"WARN","fields":{"message":"got error for req_id 241904: JSON(Error(\"EOF while parsing a value\", line: 1, column: 0))","log.target":"electrum_client::raw_client","log.module_path":"electrum_client::raw_client","log.file":"/home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/electrum-client-0.8.0/src/raw_client.rs","log.line":690},"target":"electrum_client::raw_client"}

...

{"timestamp":"2022-02-28T08:06:31.61650218Z","level":"WARN","fields":{"message":"Actor daemon::monitor::Actor has been processing message daemon::monitor::Sync for 10 seconds","log.target":"xtra::context","log.module_path":"xtra::context","log.file":"/home/runner/.cargo/git/checkouts/xtra-092fb79b35830946/95508e6/src/context.rs","log.line":314},"target":"xtra::context"}

It's hard to understand where this comes from and what the actual problem is.
The nice thing about using esplora endpoints would be that we don't need a persistent connection because it is just requests.
And we could use much more intuitive APIs like https://github.com/Blockstream/esplora/blob/master/API.md#get-txtxidstatus
Our own RPC client for electrs might be our best shot.

Possibly relevant: #947 and an old PoC #815

Closing this because hitting esplora would make things more difficult and more expensive because esplora does not support batch requests.
I opened https://github.com/itchysats/itchysats/issues/1593 instead.


Fix grammar.

I would also have accepted "The PMP provides incredible flexibility, extensibility, and forgivability".

Is "forgivability" a word?

Forgivability: to be imbued with forgivibilitization.


Make .snapshots folders opt-in instead of opt-out

Describe the bug
The AL Language extension creates empty .snapshots folders in workspace folders by default.
To Reproduce
If the AL Language extension is enabled, it will create a snapshots folders in each workspace folder of a multiroot-workspace.
See the screenshots section for a more detailed repro.
Expected behavior
When you have no AL code you can disable extensions in your workspace, but why can't it be enabled and initialize if the active folder contains *.al files or a file called "app.json"?
Besides, if you're working with a multiroot-workspace and it contains AL code + additional code in other workspaceFolders (e.g. source code of a web-service or control-addin, mobile-app, etc.), you'll need to have the AL Language extension enabled.
You can specify the path for al.snapshotDebuggingPath and al.snapshotOutputPath and .gitignore the folders, etc. but why isn't this feature an opt-in, instead of opt-out?
The folders even get created in workspaceFolders (in multiroot-workspaces) which contain no .al files and no app.json or any reference to an AL project at all, i.e. it's just pollution.
Screenshots
A minimal repro, think of this as the root of a repository:

If B/Repro.al is created, this error pops up:

Along with errors while trying to populate it: "The manifest file is not valid. Unable to cast object of type 'Newtonsoft.Json.Linq.JValue' to type 'Newtonsoft.Json.Linq.JObject'.AL(AL1017)".
But if the file existed already and simply gets opened in the active editor, a more friendly warning is displayed: "The manifest is missing" with the optional codeaction "Generate Manifest", which unfortunately also creates the .snapshot folder in the root of the repo.
If Repro.code-workspace is opened, a snapshot folder is created in each of the workspace folders:

If the project is bigger and contains more folders, you can imagine how noisy these empty .snapshots folders can become and I assume this might also confuse people that are setting up new projects.
The content of the .js and .al files doesn't matter. They can just be empty so it's not hard to set up and try out.
One might argue that .snapshots should always get generated in the B folder and I won't argue with that, but I think the A folder should at least be left alone.
5. Versions:

AL Language:
v6.5.413786

@kalberes This issue is annoying and still exists in Version 14.1.1180850 or v15.0.1177813.
A workaround is to clear the setting al.snapshotOutputPath.
Please remove this feature. Thank you.


Links in README.md

Bond CNI link in main README.md points to rkamudhan's fork of sr-iov plugin instead of https://github.com/Intel-Corp/bond-cni
edited later part was based on wrong assumption that intel's fork of sr-iov is stale project

@jellonek Updated the readme file :sweat:. Thanks for spotting the error

Closing the issue.


Add hash back to auto-receive tx queue on all exceptions

This is an attempt to fix #4.
In case an exception is thrown by the auto-receiver, the tx hash is added back into the queue so that it is retried.

if we merge this in
do we have a way to test it?

This PR should at least fix the issue that I described here. It can be tested by intentionally shutting down the node (a local node for example) when the wallet is trying to auto receive a transaction. But the situation can be hard to reproduce.


Ellipsis character not recognized as punctuation when double clicking words to select

When trying to select test… it will select both test and …, but if the text is text... (with normal dots), it will only select test.

Chrome also doesn't select ellipsis (or 3 dots), I think it makes sense this way.

Fixed in #7458, and will go out in the next release.


Hidden elements can not be edited

By default only some of the elements are shown when selecting a profile. A number is hidden by default and can be made visible by clicking checking the respective box on the right sidebar.
When checking the respective Box the element is shown as expected. When attempting to insert input into the element the element disappears again. When checking the box again, no input is present.
Example:
Condition profile, text element
Expected Behaviour:
When checked in the right sidebar the element appears. When being edited the element does not disappear.

Started working on branch hiddenElements

Fixed on branch hiddenElements


Edge Removal errors on "Cannot index into a null array"

Describe the bug
Edge removal script just gives this error when invoked.
Cannot index into a null array.
At line:1 char:4
+ & {iex((gp 'Registry::HKEY_Users\S-1-5-21*\Volatile*' Edge_Removal -e ...
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : NullArray

To Reproduce
Run Edge Removal Script on Fresh Windows 11 Pro install
Expected behavior
Removal of edge

For some reason, the script fails if it's run from Windows Terminal. I got it working (in Windows 10) by running the script from a regular cmd.exe console, not from Windows Terminal.


Adjusting caller to take in log2 data from the targets.  Also, added …

…some utility functions.

@LeeTL1220 Review complete.

Changes Unknown when pulling b03a9bd9507775c045216eb31ec9df6f9b639a4f on issue-131-caller_needs_logcr into ** on master**.

@davidbenjamin comments addressed and pushed.

Changes Unknown when pulling 8db542af05e9ce1975863b2ed1836fa15fd2f790 on issue-131-caller_needs_logcr into ** on master**.


Add ability to wait for Thread to Abort

We have the need to wait for a cancelled work item to be aborted, so here's the ability to join to the aborted thread until it exits or there is a timeout

Hi,
You shouldn't rely on Thread.Abort() in your code.
It is even not supported in latest .net core versions see https://learn.microsoft.com/en-us/dotnet/api/system.threading.thread.abort
Check the PostExecuteWorkItemCallback  delegate to know when a work item completed (successfully or cancelled).
You can use the event SmartThreadPool.OnThreadTermination to know when a thread is terminating.
You can check if a work items is cancelled during its execution using SmartThreadPool.IsWorkItemCanceled
Also note that the code build fails, probably on missing modified file in the commit.
Ami

Hi,
You shouldn't rely on Thread.Abort() in your code. It is even not supported in latest .net core versions see https://learn.microsoft.com/en-us/dotnet/api/system.threading.thread.abort
Yes, I know. Unfortunately we don't have a choice here as we're calling thirdparty code with no cancellation support, and it sometimes just hangs.

Also note that the code build fails, probably on missing modified file in the commit.
Right. Fixed


sideEffects doesn't work

Bug report

What is the current behavior?
sideEffects doesn't work.
If the current behavior is a bug, please provide the steps to reproduce.
https://github.com/jddxf/webpack4-side-effects-demo

What is the expected behavior?

Other relevant information:
webpack version:  4.18.1

That's not related to the sideEffects flag. It's about ESM reexports.
You should take a look at the /*#__PURE__*/ flag if you want to optimize this case.

Good idea send a PR to the docs page to make it clear.
The sideEffects flag allows to drop the evaluation (and inclusion in the bundle) of a module if none of the exports is used.

@kzc this may be related to the weird behavior of terser.
$ cat test1.js
const identity = f => f;
const foo = identity(() => {
  console.log('foo');
});
console.log();

$ cat test2.js
const identity = f => f;
const foo = identity(() => {
  return 'foo';
});
console.log();

$ terser test1.js -c toplevel,passes=2
(f=>()=>{console.log("foo")})(),console.log();

$ terser test2.js -c toplevel,passes=2
console.log();

ES6+ code is only minimally optimized by Terser due to its complexity. Terser tends to optimize ES5 code better due to its uglify-js heritage, and the fact that ES5 is much simpler.
$ cat test1.js | buble
var identity = function (f) { return f; };
var foo = identity(function () {
  console.log('foo');
});
console.log();

$ cat test1.js | buble | terser --toplevel -mc
console.log();

You're welcome to submit pull requests to improve ES6 optimizations in Terser. It's a volunteer effort.

bump

I think flag is clarified https://webpack.js.org/guides/tree-shaking/#clarifying-tree-shaking-and-sideeffects . Feel free to open issue in https://github.com/webpack/webpack.js.org , if you think it does not.


TST: test_{{cc.repo_name}}.py: setup, seq, exit

Sorry for the delay @westurner.
Anyone else have feedback on this?

Well, the main block using unittest.main() was removed in a previous commit: https://github.com/audreyr/cookiecutter-pypackage/commit/c8bd3655019a8817964ed2b3095130c8245412be
I believe the reasoning is that we shouldn't rely a main block in the test to run the test suite, it brings import issues (and then you have to fiddle with the path to make the test work as a main or install the package as editable).
Running a specific test suite can be done in different ways, with: python setup.py test --test-suite tests.test_boilerplate or with tools like nose, py.test, etc.
So, +0 from me.

I believe the reasoning is that we shouldn't rely a main block in the test to run the test suite, it brings import issues (and then you have to fiddle with the path to make the test work as a main or install the package as editable).

I often find it justifiable to add a -t/--test CLI option to make the [program] self-testing.
(which does not require pip install package[dev,test], tests_require, requirements-test.txt).

It's also necessary to pop the not-test-args from sys.argv before unittest.main.

I suppose self-testing is the value here, and not this little snippet.

As a startup CRC, a -t/--test option that prempts before continuing with the next operations may or may not be necessary.

... https://westurner.org/wiki/awesome-python-testing#test-runners

skipif would be great to have in e.g. unittest3

I see now, thanks for the explanation. Merged. Thank you!


Fix token listings

Something must be different with the json's as they don't display the info (only FLZ does)

#138
Each token has a different format for it's json data.. :/


How to support digest authentication

Hi:  fubar dev
I refer to some websites about webDavServer.   Basic  Authentication is that sends passwords over the connection in clear text.  So how to support digest authenticaition.   could you gave me some help.
Thank U.

It uses the same authentication/authorization mechanisms from ASP.NET Core. Just enable digest authentication for ASP.NET Core and you've enabled it for WebDAV too.


Add ability to use your own access token

Should probably have an option to provide one on the fly and an option to provide it via some kind of rc.

Thanks for the suggestion, I will try to implement that tomorrow :smile:

@rivertam Done :smile:


Replace raw memsets and memcpys

Looks like you activated -vgc by default.

LGTM except for the -vgc errors.

Of course, the errors are because char is used to store small integers in some places.

Ping

Rebased and fixed whitespace errors

Auto-merge toggled on


fix FCS_STO_EXT.1.1 application note

...to reflect the purpose.
the other part about FCS_COP can likely be struck, since we are requiring a lot of crypto SFRs already.

Fixed through deletion.  Also patched up flawed assurance activity text.


pull request for e2e test at 12/04/2016 14:56:03

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


[BUG] regex integration test failures on Databricks-11.3

Describe the bug
Below tests are failing due to mismatch in result between GPU and CPU runs.
AssertionError: GPU and CPU string values are different at [3, 'regexp_replace(a, [a\\d]{0,2}, x, 1)']

[ ] test_regexp_replace_digit
[ ] test_re_replace_repetition

Steps/Code to reproduce bug
Build and run integration tests on Databricks-11.3 environment.
Build  steps - /home/ubuntu/spark-rapids$ ./jenkins/databricks/build.sh
Test steps:  Modify the test.sh under jenkins/databrikcs to run a specific test.
Example: Comment all lines starting from export TEST_PARALLEL=${TEST_PARALLEL:-4} in the file and add below lines:
           ```
            export TEST_PARALLEL=${TEST_PARALLEL:-1}
            TEST_NAME=$1
            bash /home/ubuntu/spark-rapids/integration_tests/run_pyspark_from_build.sh -k $TEST_NAME
           ```

Run Test -  ./jenkins/databricks/test.sh test_regexp_replace_digit
Expected behavior
All above tests should pass on Databricks-11.3 shim
Environment details (please complete the following information)
Databricks-11.3 runtime.
Additional context
Add any other context about the problem here.

related to #7367


Cannot read property 'status' of undefined

How to catch this kind of error? I got this when I hit non-existing route while using axios-module Error handler.

Fixed! Wrong assignment in Axios, not related to Nuxt


Can't use cargo test to run tests in the "tests" directory if the Cargo project is named "test"

STR
$ cargo new test
$ cd test

### OK
$ cargo test
   Compiling test v0.1.0 (file:///home/japaric/tmp/test)
     Running target/debug/test-c61dbbb1cdb26dbe

running 1 test
test tests::it_works ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured

   Doc-tests test

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured

### Not OK
$ mkdir tests
$ touch tests/foo.rs
$ cargo test --verbose
   Compiling test v0.1.0 (file:///home/japaric/tmp/test)
     Running `rustc tests/foo.rs --crate-name foo --crate-type bin -g --test -C metadata=4fd43b24d22d2be7 -C extra-filename=-4fd43b24d22d2be7 --out-dir /home/japaric/tmp/test/target/debug --emit=dep-info,link -L dependency=/home/japaric/tmp/test/target/debug -L dependency=/home/japaric/tmp/test/target/debug/deps --extern test=/home/japaric/tmp/test/target/debug/libtest.rlib`
tests/foo.rs:0:1: 0:1 error: unresolved name `test::test_main_static` [E0425]
error: internal compiler error: Error constructed but not emitted
thread panicked while panicking. aborting.
Could not compile `test`.

Caused by:
  Process didn't exit successfully: `rustc tests/foo.rs --crate-name foo --crate-type bin -g --test -C metadata=4fd43b24d22d2be7 -C extra-filename=-4fd43b24d22d2be7 --out-dir /home/japaric/tmp/test/target/debug --emit=dep-info,link -L dependency=/home/japaric/tmp/test/target/debug -L dependency=/home/japaric/tmp/test/target/debug/deps --extern test=/home/japaric/tmp/test/target/debug/libtest.rlib` (signal: 4, SIGILL: illegal instruction)

### More errors
$ echo '#[test] fn ok() {}' > tests/foo.rs
$ cargo test --verbose
   Compiling test v0.1.0 (file:///home/japaric/tmp/test)
     Running `rustc tests/foo.rs --crate-name foo --crate-type bin -g --test -C metadata=4fd43b24d22d2be7 -C extra-filename=-4fd43b24d22d2be7 --out-dir /home/japaric/tmp/test/target/debug --emit=dep-info,link -L dependency=/home/japaric/tmp/test/target/debug -L dependency=/home/japaric/tmp/test/target/debug/deps --extern test=/home/japaric/tmp/test/target/debug/libtest.rlib`
tests/foo.rs:1:1: 1:1 error: unresolved name `test::test_main_static` [E0425]
tests/foo.rs:1 #[test] fn ok() {}
               ^
tests/foo.rs:1:1: 1:1 help: run `rustc --explain E0425` to see a detailed explanation
error: type name `self::test::TestDescAndFn` is undefined or not in scope [E0412]
tests/foo.rs:1:1: 1:1 help: no candidates by the name of `TestDescAndFn` found in your project; maybe you misspelled the name or forgot to import an external crate?
tests/foo.rs:1:9: 1:19 error: `self::test::TestDescAndFn` does not name a structure [E0422]
tests/foo.rs:1 #[test] fn ok() {}
                       ^~~~~~~~~~
tests/foo.rs:1:9: 1:19 help: run `rustc --explain E0422` to see a detailed explanation
tests/foo.rs:1:9: 1:19 error: `self::test::TestDesc` does not name a structure [E0422]
tests/foo.rs:1 #[test] fn ok() {}
                       ^~~~~~~~~~
tests/foo.rs:1:9: 1:19 help: run `rustc --explain E0422` to see a detailed explanation
tests/foo.rs:1:9: 1:19 error: unresolved name `self::test::StaticTestName` [E0425]
tests/foo.rs:1 #[test] fn ok() {}
                       ^~~~~~~~~~
tests/foo.rs:1:9: 1:19 help: run `rustc --explain E0425` to see a detailed explanation
tests/foo.rs:1:9: 1:19 error: failed to resolve. Could not find `ShouldPanic` in `__test::test` [E0433]
tests/foo.rs:1 #[test] fn ok() {}
                       ^~~~~~~~~~
tests/foo.rs:1:9: 1:19 help: run `rustc --explain E0433` to see a detailed explanation
tests/foo.rs:1:9: 1:19 error: unresolved name `self::test::ShouldPanic::No` [E0425]
tests/foo.rs:1 #[test] fn ok() {}
                       ^~~~~~~~~~
tests/foo.rs:1:9: 1:19 help: run `rustc --explain E0425` to see a detailed explanation
tests/foo.rs:1:9: 1:19 error: unresolved name `self::test::StaticTestFn` [E0425]
tests/foo.rs:1 #[test] fn ok() {}
                       ^~~~~~~~~~
tests/foo.rs:1:9: 1:19 help: run `rustc --explain E0425` to see a detailed explanation
error: aborting due to 8 previous errors
Could not compile `test`.

Caused by:
  Process didn't exit successfully: `rustc tests/foo.rs --crate-name foo --crate-type bin -g --test -C metadata=4fd43b24d22d2be7 -C extra-filename=-4fd43b24d22d2be7 --out-dir /home/japaric/tmp/test/target/debug --emit=dep-info,link -L dependency=/home/japaric/tmp/test/target/debug -L dependency=/home/japaric/tmp/test/target/debug/deps --extern test=/home/japaric/tmp/test/target/debug/libtest.rlib` (exit code: 101)

Meta
$ rustc -V
rustc 1.9.0-nightly (7b0b80ae2 2016-03-02)

$ cargo -V
cargo 0.9.0-nightly (8fc3fd8 2016-02-29)

I guess this is more of a problem with rustc testing functionality. It seems that rustc --test injects extra source code to use the standard test crate, but because Cargo passes the --extern test=... to its rustc invocation that extra code ends up using the test crate under test instead of the standard test crate and generates a bunch of resolve errors (because the test crate under test is empty in this example).
cc @alexcrichton

I think this is kinda an inherent problem which can't be fixed due to the clash of names between the compiler and libtest. We probably want to just add a check that a project name can't be called "test" for now?

We probably want to just add a check that a project name can't be called "test" for now?

Sounds reasonable to me.


A default theme should be created and visible on new projects

I see many people using the default settings and not knowing that they can modify things, so I believe a default theme should be visible from the start. That way it will be easier for people to discover the theming functionalities.

This would also pretty much solve #466.

There is room for debate on when this should occur. My solution copies the default-theme.cg found in addons/dialogic/Editor/ThemeEditor/ and put it in the themes folder when the themes folder is created. Code looks like this:

and results in

Pull request will be coming up shortly


Documentation for columns doesn't work

The horizontal form docs page includes the following snippet that doesn't work.
echo $this->Form->setConfig('columns', [ // Total is 12, default is 2 / 10 / 0
    'label' => 2,
    'input' => 10,
    'error' => 0 // 0 for 'error' means that it will be put under the input
]);

I'm pretty sure this doesn't currently work, and that the config should be the following:
echo $this->Form->setConfig('columns', [
        'md' => [ // Total is 12, default is 2 / 10 / 0
            'label' => 2,
            'input' => 10,
            'error' => 0 // 0 for 'error' means that it will be put under the input
        ]
    ]
);

You're right, this is an artefact from an old version, I have removed this part and simply keep the next section (with md and sm).


[BUG]: Connecting to server ...

What happened?
No progress, just Connecting to server ...
Versions
vsts-agent-linux-x64-3.227.1.tar.gz
Environment type (Please select at least one enviroment where you face this issue)

[X] Self-Hosted
[ ] Microsoft Hosted
[ ] VMSS Pool
[ ] Container

Azure DevOps Server type
dev.azure.com (formerly visualstudio.com)
Azure DevOps Server Version (if applicable)
No response
Operation system
Ubuntu 23.04
Version controll system
git
Relevant log output
[2023-10-09 18:53:01Z INFO Terminal] WRITE LINE:
[2023-10-09 18:53:01Z INFO CommandSettings] Flag 'acceptteeeula': 'False'
[2023-10-09 18:53:01Z INFO CommandSettings] Flag 'unattended': 'False'
[2023-10-09 18:53:01Z INFO PromptManager] ReadValue
[2023-10-09 18:53:01Z INFO Terminal] WRITE: Enter (Y/N) Accept the Team Explorer Everywhere license agreement now? (press enter for N) >
[2023-10-09 18:53:01Z INFO Terminal] READ LINE
[2023-10-09 18:53:06Z INFO Terminal] Read value: 'y'
[2023-10-09 18:53:06Z INFO CommandSettings] Flag 'deploymentgroup': 'False'
[2023-10-09 18:53:06Z INFO CommandSettings] Flag 'deploymentpool': 'False'
[2023-10-09 18:53:06Z INFO CommandSettings] Flag 'environment': 'False'
[2023-10-09 18:53:06Z INFO ExtensionManager] Getting extensions for interface: 'Microsoft.VisualStudio.Services.Agent.Listener.Configuration.IConfigurationProvider'
[2023-10-09 18:53:06Z INFO ExtensionManager] Creating instance: Microsoft.VisualStudio.Services.Agent.Listener.Configuration.BuildReleasesAgentConfigProvider, Agent.Listener
[2023-10-09 18:53:06Z INFO ExtensionManager] Creating instance: Microsoft.VisualStudio.Services.Agent.Listener.Configuration.DeploymentGroupAgentConfigProvider, Agent.Listener
[2023-10-09 18:53:06Z INFO ExtensionManager] Creating instance: Microsoft.VisualStudio.Services.Agent.Listener.Configuration.SharedDeploymentAgentConfigProvider, Agent.Listener
[2023-10-09 18:53:06Z INFO ExtensionManager] Creating instance: Microsoft.VisualStudio.Services.Agent.Listener.Configuration.EnvironmentVMResourceConfigProvider, Agent.Listener
[2023-10-09 18:53:06Z INFO Terminal] WRITE LINE:
[2023-10-09 18:53:06Z INFO Terminal] WRITE LINE: >> Connect:
[2023-10-09 18:53:06Z INFO Terminal] WRITE LINE:
[2023-10-09 18:53:06Z INFO CommandSettings] Arg 'url': ''
[2023-10-09 18:53:06Z INFO CommandSettings] Flag 'unattended': 'False'
[2023-10-09 18:53:06Z INFO PromptManager] ReadValue
[2023-10-09 18:53:06Z INFO Terminal] WRITE: Enter server URL >
[2023-10-09 18:53:06Z INFO Terminal] READ LINE
[2023-10-09 18:53:25Z INFO Terminal] Read value: 'https://dev.azure.com/oranapi'
[2023-10-09 18:53:25Z INFO ConfigurationManager] GetCredentialProvider
[2023-10-09 18:53:25Z INFO CommandSettings] Arg 'auth': ''
[2023-10-09 18:53:25Z INFO CommandSettings] Flag 'unattended': 'False'
[2023-10-09 18:53:25Z INFO PromptManager] ReadValue
[2023-10-09 18:53:25Z INFO Terminal] WRITE: Enter authentication type (press enter for PAT) >
[2023-10-09 18:53:25Z INFO Terminal] READ LINE
[2023-10-09 18:53:26Z INFO Terminal] Read value: ''
[2023-10-09 18:53:26Z INFO PromptManager] Falling back to the default: 'PAT'
[2023-10-09 18:53:26Z INFO ConfigurationManager] Creating credential for auth: PAT
[2023-10-09 18:53:26Z INFO CredentialManager] GetCredentialProvider
[2023-10-09 18:53:26Z INFO CredentialManager] Creating type PAT
[2023-10-09 18:53:26Z INFO CredentialManager] Creating credential type: PAT
[2023-10-09 18:53:26Z INFO PersonalAccessToken] EnsureCredential
[2023-10-09 18:53:26Z INFO CommandSettings] Arg 'token': ''
[2023-10-09 18:53:26Z INFO CommandSettings] Flag 'unattended': 'False'
[2023-10-09 18:53:26Z INFO PromptManager] ReadValue
[2023-10-09 18:53:26Z INFO Terminal] WRITE: Enter personal access token >
[2023-10-09 18:53:26Z INFO Terminal] READ SECRET
[2023-10-09 18:53:32Z INFO HostContext] Setting up value for origin: Terminal.ReadSecret
[2023-10-09 18:53:32Z INFO Terminal] Read value: '***'
[2023-10-09 18:53:32Z INFO ConfigurationManager] cred retrieved
[2023-10-09 18:53:32Z INFO CommandSettings] Flag 'sslskipcertvalidation': 'False'
[2023-10-09 18:53:32Z INFO PersonalAccessToken] GetVssCredentials
[2023-10-09 18:53:32Z INFO PersonalAccessToken] token retrieved: 52 chars
[2023-10-09 18:53:32Z INFO PersonalAccessToken] cred created
[2023-10-09 18:53:32Z INFO VisualStudioServices] Starting operation Location.GetConnectionData
[2023-10-09 18:55:12Z WARN VisualStudioServices] GET request to https://dev.azure.com/oranapi/_apis/connectionData timed out after 100 seconds.
[2023-10-09 18:55:12Z INFO VisualStudioServices] Finished operation Location.GetConnectionData
[2023-10-09 18:55:12Z INFO VisualStudioServices] Starting operation Location.GetConnectionData
[2023-10-09 18:55:43Z INFO VisualStudioServices] Finished operation Location.GetConnectionData
[2023-10-09 18:55:43Z INFO VisualStudioServices] Starting operation Location.GetConnectionData
[2023-10-09 18:55:43Z INFO VisualStudioServices] Finished operation Location.GetConnectionData
[2023-10-09 18:55:43Z INFO PersonalAccessToken] GetVssCredentials
[2023-10-09 18:55:43Z INFO PersonalAccessToken] token retrieved: 52 chars
[2023-10-09 18:55:43Z INFO PersonalAccessToken] cred created
[2023-10-09 18:55:43Z INFO Terminal] WRITE LINE: Connecting to server ...
[2023-10-09 18:55:43Z INFO AgentServer] Establish connection with 100 seconds timeout.
[2023-10-09 18:55:44Z INFO VisualStudioServices] Starting operation Location.GetConnectionData
[2023-10-09 18:57:24Z WARN VisualStudioServices] GET request to https://dev.azure.com/oranapi/_apis/connectionData timed out after 100 seconds.
[2023-10-09 18:57:24Z INFO VisualStudioServices] Finished operation Location.GetConnectionData
[2023-10-09 18:57:24Z INFO VisualStudioServices] Starting operation Location.GetConnectionData
[2023-10-09 18:57:54Z INFO VisualStudioServices] Finished operation Location.GetConnectionData
[2023-10-09 18:57:54Z INFO AgentServer] Establish connection with 60 seconds timeout.
[2023-10-09 18:57:54Z INFO VisualStudioServices] Starting operation Location.GetConnectionData
[2023-10-09 18:57:54Z INFO AgentServer] Establish connection with 60 seconds timeout.
[2023-10-09 18:57:54Z INFO VisualStudioServices] Starting operation Location.GetConnectionData
[2023-10-09 18:58:54Z WARN VisualStudioServices] GET request to https://dev.azure.com/oranapi/_apis/connectionData timed out after 60 seconds.
[2023-10-09 18:58:54Z INFO VisualStudioServices] Finished operation Location.GetConnectionData
[2023-10-09 18:58:54Z INFO VisualStudioServices] Starting operation Location.GetConnectionData
[2023-10-09 18:58:54Z WARN VisualStudioServices] GET request to https://dev.azure.com/oranapi/_apis/connectionData timed out after 60 seconds.
[2023-10-09 18:58:54Z INFO VisualStudioServices] Finished operation Location.GetConnectionData
[2023-10-09 18:58:54Z INFO VisualStudioServices] Starting operation Location.GetConnectionData
[2023-10-09 18:59:54Z WARN VisualStudioServices] GET request to https://dev.azure.com/oranapi/_apis/connectionData timed out after 60 seconds.
[2023-10-09 18:59:54Z INFO VisualStudioServices] Finished operation Location.GetConnectionData
[2023-10-09 18:59:54Z INFO AgentServer] Catch exception during connect. 4 attempt left.
[2023-10-09 18:59:54Z WARN VisualStudioServices] GET request to https://dev.azure.com/oranapi/_apis/connectionData timed out after 60 seconds.
[2023-10-09 18:59:54Z INFO VisualStudioServices] Finished operation Location.GetConnectionData
[2023-10-09 18:59:54Z INFO AgentServer] Catch exception during connect. 4 attempt left.
[2023-10-09 18:59:54Z ERR  AgentServer] System.TimeoutException: The HTTP request timed out after 00:01:00.
 ---> System.Threading.Tasks.TaskCanceledException: A task was canceled.
   at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.GetHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.AuthenticationHelper.SendWithAuthAsync(HttpRequestMessage request, Uri authUri, Boolean async, ICredentials credentials, Boolean preAuthenticate, Boolean isProxyAuth, Boolean doRequestAuth, HttpConnectionPool pool, CancellationToken cancellationToken)
   at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.Common.VssHttpMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at Microsoft.VisualStudio.Services.Common.VssHttpMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.Common.VssHttpRetryMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
   at Microsoft.VisualStudio.Services.WebApi.VssHttpClientBase.SendAsync(HttpRequestMessage message, HttpCompletionOption completionOption, Object userState, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.WebApi.VssHttpClientBase.SendAsync[T](HttpRequestMessage message, Object userState, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.Location.Client.LocationHttpClient.GetConnectionDataAsync(ConnectOptions connectOptions, Int64 lastChangeId, CancellationToken cancellationToken, Object userState)
   at Microsoft.VisualStudio.Services.WebApi.Location.VssServerDataProvider.GetConnectionDataAsync(ConnectOptions connectOptions, Int32 lastChangeId, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.WebApi.Location.VssServerDataProvider.ConnectAsync(ConnectOptions connectOptions, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.Agent.AgentServer.EstablishVssConnection(Uri serverUrl, VssCredentials credentials, TimeSpan timeout) in /home/vsts/work/1/s/src/Microsoft.VisualStudio.Services.Agent/AgentServer.cs:line 216
[2023-10-09 18:59:54Z ERR  AgentServer] System.TimeoutException: The HTTP request timed out after 00:01:00.
 ---> System.Threading.Tasks.TaskCanceledException: A task was canceled.
   at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.GetHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.AuthenticationHelper.SendWithAuthAsync(HttpRequestMessage request, Uri authUri, Boolean async, ICredentials credentials, Boolean preAuthenticate, Boolean isProxyAuth, Boolean doRequestAuth, HttpConnectionPool pool, CancellationToken cancellationToken)
   at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.Common.VssHttpMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at Microsoft.VisualStudio.Services.Common.VssHttpMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.Common.VssHttpRetryMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
   at Microsoft.VisualStudio.Services.WebApi.VssHttpClientBase.SendAsync(HttpRequestMessage message, HttpCompletionOption completionOption, Object userState, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.WebApi.VssHttpClientBase.SendAsync[T](HttpRequestMessage message, Object userState, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.Location.Client.LocationHttpClient.GetConnectionDataAsync(ConnectOptions connectOptions, Int64 lastChangeId, CancellationToken cancellationToken, Object userState)
   at Microsoft.VisualStudio.Services.WebApi.Location.VssServerDataProvider.GetConnectionDataAsync(ConnectOptions connectOptions, Int32 lastChangeId, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.WebApi.Location.VssServerDataProvider.ConnectAsync(ConnectOptions connectOptions, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.Agent.AgentServer.EstablishVssConnection(Uri serverUrl, VssCredentials credentials, TimeSpan timeout) in /home/vsts/work/1/s/src/Microsoft.VisualStudio.Services.Agent/AgentServer.cs:line 216
[2023-10-09 18:59:54Z INFO VisualStudioServices] Starting operation Location.GetConnectionData
[2023-10-09 18:59:54Z INFO VisualStudioServices] Starting operation Location.GetConnectionData

after ruuning ./run.sh --diagnostics

*** PingTest ***
Attempt to Ping: www.bing.com with timeout 10000
Address: <IP_ADDRESS>
Status: TimedOut
Round trip time: 0
Error reported in diagnostic logs. Please examine the log for more details.
    - /home/neo-admin/Downloads/vsts-agent-linux-x64-3.227.0/_diag/Agent_20231009-190635-utc.log
Unsuccessful status response from www.bing.com.  Verify internet connection is working
*** PingTest Failed ***

checking the log file :
[2023-10-09 19:06:46Z INFO Terminal] WRITE LINE:   Drive type: Unknown
[2023-10-09 19:06:46Z INFO Terminal] WRITE LINE:   Volume label: /run/user/1000/doc
[2023-10-09 19:06:46Z ERR  Terminal] WRITE ERROR (exception):
[2023-10-09 19:06:46Z ERR  Terminal] System.UnauthorizedAccessException: Access to the path is denied.
 ---> System.IO.IOException: Operation not permitted
   --- End of inner exception stack trace ---
   at System.IO.DriveInfo.CheckStatfsResultAndThrowIfNecessary(Int32 result)
   at System.IO.DriveInfo.get_DriveFormat()
   at Microsoft.VisualStudio.Services.Agent.Listener.Diagnostics.DiskInfo.Execute(ITerminal terminal) in /home/vsts/work/1/s/src/Agent.Listener/Diagnostics/DiskInfo.cs:line 18
[2023-10-09 19:06:46Z INFO Terminal] WRITE LINE: *** DiskInfo Completed ***

Hi @kirill-ivlev, i have no network issues, everything else work fine, i run no proxy

@Amine-Smahi could you execute for testing propose following command:
wget https://dev.azure.com/oranapi/_apis/connectionData
or replace it with CURL if wget is not installed.

Hi @kirill-ivlev, sorry for my late reply,
Even though i had no problem opening websites and watch videos, any command from terminal was having connection issues, by disabling WiFi and re enabling it in Ubuntu, it solved the problem (hopefully for good),
Thank you for the support


Running toolbox with gw.exe -dx8 Issues

Gw does not work well with intel graphics chips/windows 10 (not sure which is causing the rendering issue), so I have to run it with -dx8 to get rid of huge streaks of colour (see attached). However, I can't seem to find a way to run gw with the dx8 command and toolbox. Is there anything I can do fix it?
tb++ works perfectly with DirectX9 but I get those streaks with 9, is there anything I can do on my end to get tb to work with DirectX8? Or a way to get rid of this render bug in DX9.
Pls help :(

Sadly as it is, GWToolbox++ has no support for directX 8, and im not sure if we will ever make efforts to support it in the future. However if there is enough desire for dx8 support, I could look into making a dx8 hook to build compatibility

I fixed it, I think the driver best buy installed for me was either corrupted or trash. I found a way around the manufacturer block on yt and everything runs seamlessly for now anyway.
Thanks :D


no colors on gnome-terminal

ubuntu 14.04 with GNOME Terminal 3.6.2.
possible cause:
tput colors at Colors.sh line 1 returns '8' even if gnome-ternimal is capable of 256 colors.

It's not only the terminal that needs to be capable of colors, but the TERM you use.
If your TERM isn't xterm-256color, or another one with 256 color support, you'll only usually get the basic 8 color-output. ;)

thanks for your explanation...
for the ones facing the same issue: you can solve it launching gnome-terminal with a custom startup command.
http://askubuntu.com/a/578798

Gnome terminal, AFAIK, does not offer a configuration to change its TERM, but it does allow you to change your startup command, and that's all you need. Here is the trick:
Profile Preferences => Title and Command => Run a custom command instead of my shell
Then use the following command:
env TERM=xterm-256color /bin/bash


improve upgrade test for slow and resource constrained environments

Type of change
Select the type of your PR

Refactoring

Description
This PR tries to improve our UpgradeTest adding more waits after resources creation and reducing the resources created
Checklist
Please go through this checklist and make sure all applicable tasks have been done

[ ] Update/write design documentation in ./documentation/design
[ ] Write tests and make sure they pass
[ ] Update documentation
[ ] Check RBAC rights for Kubernetes / OpenShift roles
[x] Try your changes from Pod inside your Kubernetes and OpenShift cluster, not just locally
[ ] Reference relevant issue(s) and close them after merging
[ ] Update CHANGELOG.md

@enmasse-ci run tests profile=upgrade upgrade_from=0.28.4-rc1

:heavy_check_mark: Test Summary :heavy_check_mark:
TEST_PROFILE: upgrade
TEST_CASE:
TOTAL: 2
PASS: 2
FAIL: 0
SKIP: 0


Please fix scopes on maven provided artifacts

Other tickets are open for more difficult items, this one is easy.  Just fix the scope on maven artifact ,model, plugin api, and settings to be provided scope only.

Indeed, that was a relatively easy one :)


Story/csi 1298 example yamls

Eran approved to merge

@igorgonibm please open a separate ticket to fix this review after GA, and put its number here

@igorgonibm please open a separate ticket to fix this review after GA, and put its number here

@igorgonibm still waiting for that ticket (if you think we should handle it differently, please reply).

@igorgonibm please open a separate ticket to fix this review after GA, and put its number here

@igorgonibm still waiting for that ticket (if you think we should handle it differently, please reply).

@igorgonibm is it supposed to be in CSI-1305? because I see (only) one of the conversations was resolved there...


Add files via upload

Thanks for the submission. I think this earns a Blot.
Congrats you can order your machine here.


Q: Add rank after played time

Is there a way to add a rank to a player after they have played on a server? (example: they get a rank after 1 week playtime/ logging on for the 7th day)

That's not something LP can do, you'd need another plugin for that.

@Tobi406 Do you have a recommended plugin?

Try OnTime


[hotfix][docs][table] Fix typo in flink hive-dialect doc

What is the purpose of the change
Fix typo in flink doc.
Verifying this change
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

Thanks for the contribution @Samrat002


typo: Double word "be"

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint-pnp/Add-PnPTaxonomyField.md
:white_check_mark:Succeeded
View (sharepoint-ps)

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

@nschonni - thanks for these catches, much appreciated!


Handled issue 70

I refactored the signed ticket object.
This closes #70 at least in the java code.
@colourful-land are you handling the JS code or should I notify Oleg and Bharat?

@darakhbharat are you available to update JS following the data module update?

@darakhbharat are you available to update JS following the data module update?

@darakhbharat are you available to update JS following the data module update?

I patched up the JavaScript side. Now the problem is with the Solidity test code.

@darakhbharat are you available to update JS following the data module update?

I patched up the JavaScript side. Now the problem is with the Solidity test code.

@colourful-land
Regarding suggestion 1; I think changing the format of a standard object like ECDSA-Sig-Value, by adding an extra field is not a good idea. However, as far as I understand the purpose of the v value is to contain a single bit describing the "sign" of the y coordinate of the signature. I am not sure exactly which value of v is used to represent what, but I assume the value 27 is used to represent the smallest valid value of y and 28 the largest valid value. Maybe @JamesSmartCell can confirm this?
In any case we can simply just ensure that the smallest valid y valid is always used. This means that the v value is basically hard-coded and does not need to be included.
Regarding suggestion 2; I think you might be right that it can make sense to leave out the public key info and assume the websites have that info hardcoded for the specific key used for a specific DevCon. However, in general it is more future-proof and robust to add the public key info to an object, because in systems like x509 if a key gets compromised it will be added to a revocation list and thus never be accepted by a website. Thus preventing malicious use of a compromised/obsolete key for a future DevCon. Still since we are in the situation where the websites must support this very specific protocol, expecting signatures from a single, or very limited amount of keys, it can make sense to not include the public key info as I assume any potential revocation will have to be hard-coded. Still, I do believe keeping the public key info optional is more future proof.

@colourful-land
Regarding suggestion 1; I think changing the format of a standard object like ECDSA-Sig-Value, by adding an extra field is not a good idea. However, as far as I understand the purpose of the v value is to contain a single bit describing the "sign" of the y coordinate of the signature. I am not sure exactly which value of v is used to represent what, but I assume the value 27 is used to represent the smallest valid value of y and 28 the largest valid value. Maybe @JamesSmartCell can confirm this?
In any case we can simply just ensure that the smallest valid y valid is always used. This means that the v value is basically hard-coded and does not need to be included.
Regarding suggestion 2; I think you might be right that it can make sense to leave out the public key info and assume the websites have that info hardcoded for the specific key used for a specific DevCon. However, in general it is more future-proof and robust to add the public key info to an object, because in systems like x509 if a key gets compromised it will be added to a revocation list and thus never be accepted by a website. Thus preventing malicious use of a compromised/obsolete key for a future DevCon. Still since we are in the situation where the websites must support this very specific protocol, expecting signatures from a single, or very limited amount of keys, it can make sense to not include the public key info as I assume any potential revocation will have to be hard-coded. Still, I do believe keeping the public key info optional is more future proof.


Is there a reason why rekor pubkeys has to be ecdsa

Description
Just curious if there's a reason why this has to be explicitly ecdsa and not just crypto.publickey?
https://github.com/sigstore/cosign/blob/main/pkg/cosign/tlog.go#L56
I just know when I was working on some of the scaffolding things there was some future proofing work so just curious.
@asraa @haydentherapper

Iirc it’s hardcoded into rekor, unless we’ve switched to the signer/verifier interface

Ack, thanks!


License

Hi!
I have not found any information about license of HashMap.js. May I use it in commercial project?

My bad! Added the MIT license, go ahead :+1:


More sg_uniform_types

Currently only these uniform types are supported:
typedef enum sg_uniform_type {
    SG_UNIFORMTYPE_INVALID,
    SG_UNIFORMTYPE_FLOAT,
    SG_UNIFORMTYPE_FLOAT2,
    SG_UNIFORMTYPE_FLOAT3,
    SG_UNIFORMTYPE_FLOAT4,
    SG_UNIFORMTYPE_MAT4,
    _SG_UNIFORMTYPE_NUM,
    _SG_UNIFORMTYPE_FORCE_U32 = 0x7FFFFFFF
} sg_uniform_type;

Would it be possible to support integer uniform types?

Btw, if you are not using the GL backend (e.g. only D3D11 and Metal), then it should theoretically work, because from D3D11's and Metal's point of view, a uniform block is just an opaque blob of memory that's handed from the CPU side to the GPU side.
However, the sokol-shdc shader compiler would choke on integer types too though (when generating the CPU side uniform block struct).

Thank you for the reply. Yeah, I pretty much just bodged it in just for the OpenGL side. I dind't need the Matrix types really, I just needed the integers ones and only for OpenGL.

It's somewhere down on my mental todo list, the reason why integer types haven't been in from the beginning was GLES2 and WebGL (so those new uniform types would also need a "feature flag").

I'm probably missing something obvious but why would it need a feature flag?
Is it a limitation in how sokol is handling uniform internally, or on the GLES2/WebGL side?

Yeah I had that confused with 'varyings' (shader input/outputs) which can't be integers in WebGL/GLES2 (they can be on the CPU side for the vertex shader inputs, but they'll be converted to float in WebGL/GLES2).
One other tricky thing though is that the sokol-shdc tool generally flattens uniform blocks into vec4 arrays (which isn't a problem when using sokol_gfx.h without sokol-shdc though). I'd need to check how SPIRVCross handles this case for mixed data (my guess is that mixing data types in the same uniform block wouldn't be allowed, so one would need to "waste" one uniform block for float data and another for integer data).

Ah indeed I was experimenting with soko-shdc and it seems I'm forced to use uniform blocks to get the reflection info.
If that's easy to do, maybe sokol-shdc could issue a warning in that case, "Uniforms should be inside blocks when writing to non-gl shaders".

The main reason why sokol-shdc is flattening the uniform blocks into vec4 arrays is to reduce glUniform() calls (it's essentially a uniform buffer "emulation" for GLES2/WebGL, which also happens to perform better than actual uniform buffers on some platforms / GL drivers). Another option is probably to not do this flattening for 'mixed-type uniform blocks' and fall back to doing single-uniform updates in sg_apply_uniforms() on GL. This would make the sokol-shdc reflection code more compicated (and the code which builds the sg_shader_desc structs), but it sounds doable....

Related changes:
https://github.com/floooh/sokol/pull/606
TL;DR: signed-integer types are supported now, the sokol-shader compiler doesn't insist on flattening uniform blocks, and validation of uniform block interior has been tightened.
I'm closing this ticket now, because I think this is the best that can be done with the 'common subset' of the std140 uniform block layout, and the glUniform calls used in the GL backend.
One the GLES2/WebGL backends can be removed (and assuming that UBO support can be implemented that works well with dynamically updated UBOs), the entire code which deals with "uniform block interior" can be removed (so it will be irrelevant what uniform types will be supported, that's then only between shader code and 3D backend  API).


Many Worlds

**RENDERED
Building on the ideas introduced in #16 by @NathanSWard (and the associated thread), this RFC presents a general-purpose multiple worlds API.
The TL;DR:

The app contains many worlds, each with their own WorldLabel.
Each schedule is associated with a WorldLabel.
By default, all schedules run in parallel, then a special global schedule is run, then AppCommands are applied.
AppCommands can be used to send data between worlds, move entities, make new worlds, clone schedules and so on.

This should be useful for:

cleaning up pipelined-rendering logic
rollback networking
simulation with varying hyperparameters
sharding / chunking the game world
much, much more!

Would this help making a future bevy editor a reality? Having an editorworld and a gameworld and having the editor interact between the two?

Would this help making a future bevy editor a reality? Having an editorworld and a gameworld and having the editor interact between the two?

Oh, that's a neat architecture. I haven't dug deep enough into that problem space to say for sure, but I suspect it's worth exploring.

I have a basic proof of concept for 0.5 for the scientific simulation case here. It's very limited in features, but should work well for that narrow use case.

I'm not sure how useful the App abstraction is for the kinds of use cases that benefit from many-worlds. I think the scheme described here is overly prescriptive:

During each pass of the game loop, each schedule runs in parallel, modifying the world it is assigned to. These worlds are fully isolated: they cannot view or modify any other world, and stages progress independently across schedules. Then, the global world (which stores common, read-only data) is processed, and any systems in its schedule are run. Finally, at the end of each game loop, all of the worlds wait for a synchronization step, and apply any AppCommands that were sent.

Why require that the schedules run in parallel? Could we instead allow users to decide when and how schedules are run?
What if instead we just had a low-level API for running a single frame on a given (Schedule, World, TaskPool)? Then users could manage their own orchestration of schedules and worlds. And if the worlds are truly isolated, then we can just rely on the compiler to ensure that there aren't multiple schedules mutating the same world in parallel.

Here's a task-pool based design for multi-world I had, which can be implemented fully user-side
fn add_world_to_app<P, F>(app: &mut App, mut schedule: Schedule, mut sync_fn: F)
where
    P: SystemParam,
    F: for<'w, 's> FnMut(&mut World, <P::Fetch as SystemParamFetch<'w, 's>>::Item),
    for<'w, 's> <P::Fetch as SystemParamFetch<'w, 's>>::Item: SystemParam<Fetch = P::Fetch>,
    F: Send + Sync + 'static,
{
    let (task_to_world_tx, task_to_world_rx) = async_channel::unbounded();
    let (world_to_task_tx, world_to_task_rx) = async_channel::unbounded();

    let task = async move {
        let mut world = Some(World::new());
        let tx = task_to_world_tx;
        let rx = world_to_task_rx;

        loop {
            schedule.run(world.as_mut().unwrap());
            tx.send(world.take().unwrap()).await.unwrap();
            world = Some(rx.recv().await.unwrap());
        }
    };

    let system = move |system_param: <P::Fetch as SystemParamFetch<'_, '_>>::Item| {
        let tx = &world_to_task_tx;
        let rx = &task_to_world_rx;
        if let Ok(mut world) = rx.try_recv() {
            sync_fn(&mut world, system_param);
            tx.try_send(world).unwrap();
        }
    };

    app.add_system(system);
    app.world
        .get_resource::<AsyncComputeTaskPool>()
        .unwrap()
        .spawn(task)
        .detach();
}

fn main() {
    let mut app = App::new();
    // the turbofish shouldn't be necessary, but it is. blame rustc
    add_world_to_app::<Res<u32>, _>(&mut app, Schedule::default(), |world, res| {
        // this closure is ran in a system in the main world.
        // and here you have access to the entire subworld and any resources / queries you want from the main world.
        // this function runs once per subworld tick for synchronization
        // and a subworld tick does not block main world progress
    })
}

Hey sorry I left a comment and then deleted it because I realized that I hadn't fully grokked the RFC when I wrote it, and I want to leave more coherent feedback. I like the general direction of the RFC.
I'm thinking about how it will address my particular use case of running a discrete time simulation where I can manually call Schedule::run_once. One obvious blocker is that the executors assume there is a ComputeTaskPool on whatever World we use to run the schedule, but we should prefer to use a global pool; I believe this is properly addressed by the RFC.
Then, for example, let's say I want to run my schedule every time a specific key is pressed. Doing this from a custom runner might work, although I don't think the RFC proposed a specific interface for custom runners. If we just have exclusive access to the App, then I could manually inspect the global input events and then run the schedule.
But I also think it might be nicer if I could run my schedule within another system via ResMut<(Schedule, World)>. Then so long as my system can access the global task pool, I have a more ergonomic interface for accessing resources.

Finally, the ergonomics, discoverability and potential for optimization of a custom-built API for this very expressive feature is much better than Res-based designs.

Could you expand on this?

There are two things that jump out to me as being desirable here, although I'm not sure whether either is feasible.

It would be cool to be able to create a world in which all components and resources are statically typechecked to implement some trait (or collection of traits), including the ability to safely enumerate them as dyn Trait. Hiding worlds behind wrappers that enforce this is one option, but we would somehow need to deal with the fact that .set_world() ... insert_resource() would bypass that. This is motivated by https://github.com/bevyengine/bevy/issues/3877, but it's also conceivable that a user may want to do this with a custom trait on a custom world. It's not obvious to me that Rust's typesystem can support this.
If people are dealing with multiple worlds, I predict a common class of bug where an Entity is used in the wrong world. We could maybe do something with 'world lifetime magic here, but maybe that would add undesirable complexity to Entity in other places. Would this even be reliably caught at runtime in the current proposal?

Does this RFC support simulating different worlds at different update rates?

is this still relevant now that we have sub apps with their own world?

Does this RFC support simulating different worlds at different update rates?

Currently no. I'm not fully happy with the current state of this RFC; moving it to draft until I have some cycles to devote to it.

is this still relevant now that we have sub apps with their own world?

Very. This is / was an attempt to try and wrangle the API and complexities of the subapps to create a coherent design.

This seems to be a quite hard problem even without sharing entity namespaces. See https://github.com/bevyengine/bevy/issues/3096 for why AppCommands::spawn basically can't return an Entity. As I see it there are 3 solutions to this:

Make Entities thread safe, e.g. put it behind a RwLock. This should be ok as there should only be one write per cycle to flush reserved entities, so most of the time aquiring the lock shouldn't block.
Don't run schedules in parallel with worlds they need to access the entity namespace of. Also works fine, but the implementation might get pretty ugly as the execution model suddenly becomes very complicated. This is the approach that RenderStage::Extract is taking right now
Have some intrinsic entity mapping in AppCommands. E.g. have an extra namespace for entities spawned in other worlds and keep a HashMap of relations that is updated when AppCommands are applied. This would probably be the easiest to implement, but it doesn't solve the problem that AppCommands can't know about entity references stored in component, so developers will have to write some manual mapping for them

Personally I like 1. the most. With some effort we might even get around using RwLocks or similar if ownership of Entities is given to the App or global world. Entities already supports this "mutate in parallel, then flush synchronously" flow.

Proposal what to add to the RFC:
Entities will no longer be stored in World. Methods in World that need access to &Entities will take it as a parameter.
For convenience a Universe (I like that name :sweat_smile:) struct is added, which is a wrapper around World and Entities. It will support the same interface that World supports now (no Entities as method parameters). The global World is instead a global Universe.
Alongside a list of worlds App will also contain namespaces: Vec<Entities> as well as namespace_map: HashMap<WorldId, usize>, which determines which namespace to use for each world.
All in all execution of worlds will not be impacted. During the "global step" entities are flushed.
Pros:

No performance impact
Developers can't mess up when copying / moving components to other worlds

Cons:

More difficult API, almost duplicate interfaces of World and Universe
Code gets ugly as &Entities is passed around
Developers can still mess up if worlds don't share a namespace

Exclusive systems for example will get a &mut Universe instead of &mut World

Is this overly restrictive in terms of blocking all worlds at once? I can imagine scenarios where one small world may want to exist with an exclusive system that doesn't block all of the other worlds. Would it still be feasible to have world-exclusive as well as universe-exclusive systems?
It's been a while since I looked at this part of the code, so I don't have any technical feedback at this time.

Universe would also only have a &Entity not &mut Entity or Entity. So it's non-blocking with regard to other worlds. This should pretty much be ok since the only thing you can't do without a mutable reference to Entities is flush and delete entities, both of which would be done during the global sync step.

@MDeiml

But it would be nice if worlds could just share the same "entity namespace", i.e. related entities just have the same id. This is how the relation between the main and render world works right now, which I think is a very valuable example for anything that works with multiple worlds. I'm not sure though if this implementable without changing very fundamental ECS code, the Entities struct basically needs to be thread safe I think.

I think this is an implementation detail per application. For instance, we might be running a "network replication" world where entities are spawned on the server. We can't assume that the client has total authority over the generation of entity IDs.

Closing for now: this needs more thought in the context of what we've learned about pipelined rendering and I want to let others try their hand at a design for this!


[EPIC] Add version endpoints to all building blocks

Description
We need to add version endpoints (GET /version) to all building blocks. The version number can be read from the YAML file.

[x] #725
[x] #760
[x] #897
[x] #898

Acceptance Criteria
Version endpoints added to all building blocks.

Closing as the subtasks are now complete.