Typescript support

By when can we expect typing file for this? Also any ETA on npm package?

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

ID: efae7ff6-5557-221f-7539-5d2d1883127d
Version Independent ID: 4b868e15-0248-635c-aa2f-d591bbc77d65
Content: About the Speech Service SDK - Azure Cognitive Services
Content Source: articles/cognitive-services/Speech-Service/speech-sdk.md
Service: cognitive-services
GitHub Login: @erhopf
Microsoft Alias: wolfma

@ankitbko Thank you for the detailed feedback. This is being assigned to the content author to evaluate and update as appropriate.

This is a feature request, please assign to @PanosPeriorellis.

JS/npm has been open sourced here https://github.com/Microsoft/cognitive-services-speech-sdk-js


Use unwrap_or_else.

I'm unsure why @emmorais was not automatically added as a reviewer due to being a code owner. Maybe the codeowners pattern doesn't actually recurse into subdirectories. Or maybe I misunderstand something else about the whole expected behavior. Noting in case there's something we need to debug here.


FileNotFound: 'pew'

When creating new project (== installing first dependency), I'm getting a FileNotFound exception:
$ pipenv install pelican
Creating a virtualenv for this project...
Traceback (most recent call last):
  File "/home/jstanek/.local/bin/pipenv", line 11, in <module>
    load_entry_point('pipenv==3.3.1', 'console_scripts', 'pipenv')()
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/pipenv/cli.py", line 704, in install
    ensure_project(three=three, python=python)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/pipenv/cli.py", line 112, in ensure_project
    ensure_virtualenv(three=three, python=python)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/pipenv/cli.py", line 95, in ensure_virtualenv
    do_create_virtualenv(three=three, python=python)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/pipenv/cli.py", line 330, in do_create_virtualenv
    c = delegator.run(cmd, block=False)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/delegator.py", line 215, in run
    c.run(block=block)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/delegator.py", line 120, in run
    s = PopenSpawn(self._popen_args, **self._default_pexpect_kwargs)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/pexpect/popen_spawn.py", line 45, in __init__
    self.proc = subprocess.Popen(cmd, **kwargs)
  File "/usr/lib64/python3.5/subprocess.py", line 947, in __init__
    restore_signals, start_new_session)
  File "/usr/lib64/python3.5/subprocess.py", line 1551, in _execute_child
    raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'pew'

Pipenv was installed with pipsi (as per documentation), and this happen on versions 3.3.0, 3.3.1 and latest master commit in the time of writing (7e6affc).
By my estimation, this problem lies in pipsi not installing/linking the pew CLI script.

Thanks for raising this issue @khardix, a couple of quick debugging questions.
Could you provide what pipenv --version and pipenv run pip freeze returns?
Could you also verify for me whether or not $ pew runs in your terminal?

Also your Pipfile contents would be helpful.

I installed directly from github, since released pipenv-3.3.1 contains Python3 syntax error (which was fixed in 0d3a751). Install command: pipsi install git+https://github.com/kennethreitz/pipenv#egg=pipenv.
$ pew gives command not found -- it is not in my $PATH.
$ pipenv --version
pipenv, version 3.3.1

$ pipenv run pip freeze
Creating a virtualenv for this project...
Traceback (most recent call last):
  File "/home/jstanek/.local/bin/pipenv", line 11, in <module>
    load_entry_point('pipenv==3.3.1', 'console_scripts', 'pipenv')()
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/pipenv/cli.py", line 868, in run
    ensure_project(three=three, python=python, validate=False)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/pipenv/cli.py", line 112, in ensure_project
    ensure_virtualenv(three=three, python=python)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/pipenv/cli.py", line 95, in ensure_virtualenv
    do_create_virtualenv(three=three, python=python)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/pipenv/cli.py", line 327, in do_create_virtualenv
    c = delegator.run(cmd, block=False)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/delegator.py", line 215, in run
    c.run(block=block)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/delegator.py", line 120, in run
    s = PopenSpawn(self._popen_args, **self._default_pexpect_kwargs)
  File "/home/jstanek/.local/venvs/pipenv/lib/python3.5/site-packages/pexpect/popen_spawn.py", line 45, in __init__
    self.proc = subprocess.Popen(cmd, **kwargs)
  File "/usr/lib64/python3.5/subprocess.py", line 947, in __init__
    restore_signals, start_new_session)
  File "/usr/lib64/python3.5/subprocess.py", line 1551, in _execute_child
    raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'pew'

Pipfile: No pipfile before the command, after:
$ cat Pipfile
[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true

So it looks like pipsi installs everything but to a location that's not on the path by default. I'm able to reproduce this on Linux (Trusty) but wasn't able to on macOS.
$ export PATH=$PATH/home/jstanek/.local/venvs/pipenv/bin
Adding the environment to the path above will get you working for now. I'm going to need a bit of time to investigate why this is happening though.

For now, I have fixed it by installing pew explicitly, and it works. Take your time, and thanks for rapid response 👍.

perhaps pipsi isn't the best installation method after all. i'll have to double check.

updated installation instructions

I think this should be addressed now with the documentation updates.


Batch answers for service discovery end-points

/v2/tasks (Accept: plain/text) is frequently hit by service discovery software.
If we use a simple caching strategy, we might violate expectations. For example, if we have sent an event that advertised that a task A has just died, the task A should not be included in the list of tasks retrieved as a result of this event.
What we can do, though, is to batch requests. Rough outline of a potential algorithm:

For every incoming request:

If we already have requests with the same parameters running, we save that request as queued.
If we have no request with the same parameters running, we start a new computation of the response and use it to answer the request.

When a computation finishes:

We answer all requests that started before the computation with it.
If we have queued requests, we start a new computation.

This is a great improvement. It still has the potential to miss tasks (request A comes in and takes 3 seconds to complete, request B comes in 2 seconds after A and there have been a bunch of tasks that launched inbetween).
I'd also recommend something that most caching proxies use. They've got a header which, if included, circumvents the caching. That gives the tools to the end user. For most requests, there isn't a care factor about caching and for the ones that are mission critical, you can circumvent it easily.

By the nature of distributed systems, you may always miss "future" events. Even without any caching.
I like the idea of giving control to the user. We could provide a separate set of endpoints for service discovery that is cached.

Note: This issue has been migrated to https://jira.mesosphere.com/browse/MARATHON-3273. For more information see https://groups.google.com/forum/#!topic/marathon-framework/khtvf-ifnp8.


Sitemap

Close https://github.com/bm-sms/daimon-news-multi-tenant/issues/48

It works for me

To  update sitemap.xml, run the following task:
$ heroku run rake daimon:update_all_sitemap

:shipit: :star2:

:ship:


Request: VYV Photon control

Photon, has a similar feature set as D3. One way it beats D3 is the inbuilt cue(macro) system. Anything in the software can be recorded as a macro and executed as a cue. As such, when we externalise control, the simple way is to recall a cue within photon: it will do the rest. The manual lists many more parameters that can be externalised, but with the well implemented cue system I feel it is surplus to requirement.
Companion is a wonderful piece of software to maximise the use of an inexpensive box. Thank you for the work you have put in.

@matthewcraigtaylor Hi Matthew, seems we where sending \r and looking at your text it should be \n. I've changed that now, it will be in the latest build. Could you test that please?

Jeffrey,
Many thanks for looking into this.  I think we are nearly there.  It is not yet working, but after testing and looking at the code in the module, it seems that it is written CUE_EXEC ID and then the ID.  It should instead send the ID number in place of 'ID'.
I have looked at the code with a friend and colleague and, if we have done it correctly, you should see a pull request waiting for you...  I hope.
Thank you again.
Matthew

Ok I've merged your pull request. Please test it with a build (2.0)

PERFECT!
It works a treat. Many thanks.

Feel free to add additional commands and do a pull request!


Use string-specific pretty_assertions displayer in tests

The pretty_assertions crate that the test harness is already using has a string-specific comparison implementation that can properly display ANSI escapes, which are pretty frequent in just tests.
When running e.g. cargo test unicode_escape_invalid_character:
Before:
failures:

---- string::unicode_escape_invalid_character stdout ----
Bad stderr: Diff < left / right > :
<"\u{1b}[31merror:\u{1b}[0m unicode escape sequence value `BadBad` greater than maximum valid code point `10FFFF`\n   \u{1b}[38;5;246m╭\u{1b}[0m\u{1b}[38;5;246m─\u{1b}[0m\u{1b}[38;5;246m[\u{1b}[0mjustfile:1:6\u{1b}[38;5;246m]\u{1b}[0m\n   \u{1b}[38;5;246m│\u{1b}[0m\n \u{1b}[38;5;246m1 │\u{1b}[0m \u{1b}[38;5;249mx\u{1b}[0m\u{1b}[38;5;249m \u{1b}[0m\u{1b}[38;5;249m:\u{1b}[0m\u{1b}[38;5;249m=\u{1b}[0m\u{1b}[38;5;249m \u{1b}[0m\"\\u{BadBad}\"\n\u{1b}[38;5;246m───╯\u{1b}[0m\n"
>"error: unicode escape sequence value `BadBad` greater than maximum valid code point `10FFFF`\n ——▶ justfile:1:6\n  │\n1 │ x := \"\\u{BadBad}\"\n  │      ^^^^^^^^^^^^\n"

thread 'string::unicode_escape_invalid_character' panicked at tests/string.rs:509:6:
Output mismatch.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

After:
failures:

---- string::unicode_escape_invalid_character stdout ----
Bad stderr: Diff < left / right > :
<error: unicode escape sequence value `BadBad` greater than maximum valid code point `10FFFF`
<   ╭─[justfile:1:6]
<   │
< 1 │ x := "\u{BadBad}"
<───╯
>error: unicode escape sequence value `BadBad` greater than maximum valid code point `10FFFF`
> ——▶ justfile:1:6
>  │
>1 │ x := "\u{BadBad}"
>  │      ^^^^^^^^^^^^

thread 'string::unicode_escape_invalid_character' panicked at tests/string.rs:509:6:
Output mismatch.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

This should help with the test conversion that needs to happen in https://github.com/casey/just/pull/2426

Nice, this is much better!


Convert change_response_status acceptance.feature test to standalone

Motivation and Context
Convert test to run standalone
How to test?
make acceptance_tests
41 parallel tests should pass

 Acceptance tests: convert change_response_status to standalone


Container.hide should delete all occurences of nodeId

Currently we only remove the first occurence.

This would have weird semantics, in an editor where the same paragraph is present multiple times.. E.g. your selection wraps the first occurence of it. Then the second occurence would magically disappear. What we could discuss instead is not allowing to show the same node twice in a container.

@oliver---- Have a feeling we should not be restrictive here, and app devs must ensure consistence. However what is weird is that when you have multiple occurences a .hide(nodeId) just deletes the first occurence even if a later occurence was affected by a selection.

I agree.
Don't like magic, but then is something missing as you said.
Let's discuss in the next cycle. ATM it is not relevant, as we never have the same id twice.

We don't like having the same node more than once. So this is kind of undesired.


Accelerate hybrid exception handling

Hybrid system construction is slow due to nested for loops. These should be replaced with set operations.

Current status of this:

I've fixed the issue with the faster version of hybrid exception handling. It's down from around 300s to less than 2s.

Current slowness is from getExceptionParameters

Is it the actual call to System.getExceptionParameters() that is slow---presumably cumulatively over many calls? Or is it the whole exception-handling block?
If it really is just System.getExceptionParameters(), we have several options:

Move to a scheme where one System or Force is duplicated with deepcopy, where you'd only have to retrieve exceptions from atoms that change in the second system. You may need additional information passed to the factory about which atoms are the "same" and which atoms are part of the "alchemical" region in which exceptions may change
See if we can have OpenMM add a way to access parameters that are not unit-wrapped. For example maybe swig could add hidden methods like _getExceptionParameters() that would return the non-swig-wrapped results.

One thing I noticed is that inside a loop over exceptions in the old system, you call self._find_exceptions, which also makes a loop over most of the exceptions in the new system. I bet building exception dicts once for old and new System objects would be a much faster way to handle this instead of looping through both lists each time.

Good point! Thanks!

Addressed


Support using regex capture groups to clean up the semver of a tag

This allows argocd-image-updater to support finding the latest tag even when they don't really follow semver exactly. Some good examples of this:

plexinc/pms-docker example: <IP_ADDRESS>04-980a13e02 (semver requires the final character to be a +, not -)
fireflyiii/core example: version-5.6.16 (leading chars should be v, not version-)

This PR would let us set the regexp to be (in pms-docker's case) ^(\d+\.\d+\.\d+)\.\d+-.*$', or just (\d+\.\d+\.\d+). The code checks for groups, and if none are found, assumes that the full tag is the semver (same as current behavior). If a capture group is found, however, then it parses the capture group as a semver, rather than the full thing.
Please let me know if there's anything I can do to help this along, or if I'm out-of-scope for this project, and I'll figure something out. This would help me keep a lot of my homelab images up to date though. Thanks!!

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

The allow-tags is usually not required in a semver context, because the allowed versions are specified using semver constraint in the image-list annotation. In the semver strategy, we ignore any tag that doesn't parse into a semver anyway.
For example, if you want to stay within 1.2 minor version, you'd configure
argocd-image-updater.argoproj.io/image-list: fireflyiii=some/where/fireflyiii:1.2.x

I would suggest the following for this change:

Early in the tag processing, apply any transformation from the transformer annotation
Use existing semver constraint checking against the extracted tag from the transformer if applicable, otherwise use the original tag value

@jannfis sorry, that was a bad example, just wanted to make sure the names made sense. I've submitted a new PR (#413), as the new approach was different enough from this that I wanted to keep the diff clean. Feel free to close this one!


concourse-bin: init at 6.5.1

Motivation for this change
https://concourse-ci.org/
The package is hard to build on nix (See https://github.com/concourse/concourse/issues/5613). Therefore this is a binary package using the GitHub releases.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

I'm guessing from your last comment that you never dived into the complexities of getting Elm packaging working? That's fine by me, but did the Go part all work fine in the end?

I'm guessing from your last comment that you never dived into the complexities of getting Elm packaging working? That's fine by me, but did the Go part all work fine in the end?

Only thin I tried was using buildGoModule. It has created a working binay but did not include needed resources. Then I found the issue mentioned above and gave up.
I did not even found any docs describing how to build concourse from scratch. So everything I was doing is, at best, a wild guess.


ProDOS 2.4.2 BUG FIX for issue preventing A2osX 0.94 from starting

Description
There is a problem in ProDOS 2.4.2 which prevents A2OSX.SYSTEM from launching correctly.  This affects the most recent test version of A2osX, version 0.94.
The A2osX project has identified the issue and patched PRODOS.  This fix has been verified to correct the problem.  It would be good to upstream it.
Expected Behavior
A2OSX.SYSTEM should launch.
Actual Behavior
A2OSX.SYSTEM crashes during launch.
Possible Fix
I will attach a screenshot of Slack chat with the details of the fix.
Steps to Reproduce

Download a recent test release of A2osX (v0.94).
Boot ProDOS 2.4.2
Try launching /FULLBOOT/A2OSX.SYSTEM.

Context
Trying to run the awesome A2osX :)
Your Environment
ProDOS 2.4.2
Hardware:
Enhanced Apple //e
Ultrawarp
GW 8MB Aux slot RAM
Uthernet-II
MicroDrive/Turbo
ProDOS8 version:
2.4.2
Non-Operating System release software being used:
A2osX 0.94 test release.

Details of fix.

ADTPRO-2.1.0.dsk.zip

Fixed in 2.4.3

Would it be possible to reuse address $BF4B and $BF4C instead of just replaced them by 2 NOPs ?

Would it be possible to reuse address $BF4B and $BF4C instead of just replaced them by 2 NOPs ?


v1.3.0rc1

What does this PR do?
we had bug in nightly releases after #6590 so no nightly was released and prepared 1.3.0rc0 was shout over midnight as nitgly :D
Before submitting

[x] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[x] Did you make sure to update the documentation with your changes? (if necessary)
[x] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is free to review the PR once the tests have passed.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[x] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[x] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

Is __info__.py some sort of convention?

not really, any better name is welcome :]

tests are failing because of #6762


fix(ci): Limit checkpoint and lwd full sync concurrency

Motivation
After PR #5393, we'll have 3 long jobs that only run on the main  branch.
We only want to run one of each of these jobs at a time.
Solution
Use the same concurrency rules for:

zebrad full sync
zebrad checkpoint sync
lwd full sync

Review
This is based on @gustavovalverde's PR.
Reviewer Checklist

[ ] Will the PR name make sense to users?

[ ] Does it need extra CHANGELOG info? (new features, breaking changes, large changes)

[ ] Are the PR labels correct?
[ ] Does the code do what the ticket and PR says?
[ ] How do you know it works? Does it have tests?

ERROR: (gcloud.compute.instances.create-with-container) Could not fetch resource:

The resource 'projects/zealous-zebra/global/images/lwd-cache-5394-merge-dc167ec-v25-mainnet-tip-225818' is not ready

https://github.com/ZcashFoundation/zebra/actions/runs/3238137842/jobs/5306709698
This is #5044


Some attacks have np_dtype but others have tf_dtype

I also suspect that these dtype arguments are ignored most of the time

others have dtypestr

Closing as we update the library to v4 and drop support for version < 4.

Closing as we update the library to v4 and drop support for version < 4.


Added is function for equality checks

Description
Added is function for equality checks.
Is this a breaking change (Yes/No):
No

@hirotomoyamada
Shouldn't we write the tests, after all?

@108yen @koralle
Added test.


fix(#2310): change UI to insert normalized lower case request headers to align with TTK

@vijayg10 - can you please review this or is there anything else pending @kleyow

nothing else is pending. the changes outlined address the problem.

@vijayg10 can you merge this. I don't have rights to this repo.


SeamStoreType undeclared identifier

I have added Seam to my ObjectiveC project using CocoaPods, and successfully declared a property for the store:
@property (nonatomic, readonly) SMStore *seamStore;
I then use the following code to add it to my NSPersistentStoreCoordinator:
   _store = [_coordinator addPersistentStoreWithType: SeamStoreType                                         configuration: nil                                                   URL: storeURL                                               options: options                                                 error: &error];
Which gives me an undeclared identifier error for SeamStoreType.
What do I need to do for my code to recognize SeamStoreType?

You can also try SMStore.type instead of SeamStoreType.

Thanks that works.
But I now get the following error when my app starts:
2015-09-12 05:31:09.413 MyApp[1370:294516] CoreData: error: -addPersistentStoreWithType:Seam.SMStore configuration:(null) URL:file:///var/mobile/Containers/Data/Application/840EABA8-B794-4D9B-8ED5-DC9BA079B8E5/Documents/Stores/MyApp.sqlite options:{     NSInferMappingModelAutomaticallyOption = 1;     NSMigratePersistentStoresAutomaticallyOption = 1;     NSSQLitePragmasOption =     {         "journal_mode" = DELETE;     }; } ... returned error Error Domain=Seam.SMStoreError Code=2 "The operation couldn’t be completed. (Seam.SMStoreError error 2.)" with userInfo dictionary { }
And
 reason = "The model used to open the store is incompatible with the one used to create the store";
Any idea what could be causing this ?
(Sorry, I'm new to Swift).

Delete the app from the simulator/device and rebuild/reinstall it again.

That gives the same error. Seems to be a migration error caused by adding a persistentStore (my model didn't change), so I don't know if it is a Seam issue.

Let me investigate this :)

Just to clarify, I'm trying to add CloudKit to an existing app that already uses CoreData.

I'm also getting this problem in my project. CoreData is already in use, and no changes to the model have been made.
Hopefully this can be fixed! :smile:

I implemented a NSIncrementalStore for CouchDB and had similar problems. It's about NSStoreUUIDKey. I think the store needs to handle/store it and not take it from the underlying persistent store.
I can look up more details tomorrow, if you like.

Am 13.09.2015 um 21:17 schrieb George Jones<EMAIL_ADDRESS>I'm also getting this problem in my project. CoreData is already in use, and no changes to the model have been made.
Hopefully this can be fixed!
—
Reply to this email directly or view it on GitHub.

One cause could be the modification of the model by SMStoreChangeSetHandler.modelForLocalStore

I am really really Sorry @chbeer @koenvanderdrift @PenguinGeorge for not being able to do something about it at the moment. I am committed to something really important for the next few days. Once I am done with it my next priority would be fixing this.
@chbeer Seam modifies the model to add some entities and attributes which are used to keep track of local changes. It then uses this model to create a SQLiteStoreType. This may help :)

Not a problem for me at the moment, as I'm adding it in to an update which is a few weeks away yet. :)

@nofelmahmood Have you been able to make any progress with this issue?


Update Kubernetes to 14b32888de6403aa38aedc69086c5a3aff7a4ace

Include Kubernetes container metrics fix:
https://github.com/kubernetes/kubernetes/commit/14b32888de6403aa38aedc69086c5a3aff7a4ace
Signed-off-by: Lantao Liu<EMAIL_ADDRESS>

LGTM

Apply LGTM based on https://github.com/kubernetes-incubator/cri-containerd/pull/264#issuecomment-330739648.


XamlLoadException when calling InvalidateThemingFromSystemThemeChanged

Describe the bug
When FluentAvalonia.Styling.FluentAvaloniaTheme.InvalidateThemingFromSystemThemeChanged() is called the following exception is thrown:
Avalonia.Markup.Xaml.XamlLoadException: No precompiled XAML found for avares://FluentAvalonia/Styling/StylesV2/Resources.axaml (baseUri: avares://SFP_UI/App.axaml), make sure to specify x:Class and include your XAML file as AvaloniaResource
   at Avalonia.Markup.Xaml.AvaloniaXamlLoader.Load(Uri uri, Uri baseUri) in /_/src/Markup/Avalonia.Markup.Xaml/AvaloniaXamlLoader.cs:line 74
   at FluentAvalonia.Styling.FluentAvaloniaTheme.Refresh(String newTheme)
   at FluentAvalonia.Styling.FluentAvaloniaTheme.InvalidateThemingFromSystemThemeChanged()
   at SFP_UI.ViewModels.MainPageViewModel.OnScanCommand() in C:\Users\Phantom\Documents\GitHub\SFP\SFP_UI\ViewModels\MainPageViewModel.cs:line 126
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state)
   at Avalonia.Threading.AvaloniaSynchronizationContext.<>c__DisplayClass5_0.<Post>b__0() in /_/src/Avalonia.Base/Threading/AvaloniaSynchronizationContext.cs:line 33
   at Avalonia.Threading.JobRunner.RunJobs(Nullable`1 priority) in /_/src/Avalonia.Base/Threading/JobRunner.cs:line 37
   at Avalonia.Win32.Win32Platform.WndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in /_/src/Windows/Avalonia.Win32/Win32Platform.cs:line 278
   at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG& lpmsg)
   at Avalonia.Win32.Win32Platform.RunLoop(CancellationToken cancellationToken) in /_/src/Windows/Avalonia.Win32/Win32Platform.cs:line 205
   at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in /_/src/Avalonia.Base/Threading/Dispatcher.cs:line 65
   at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 120
   at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime[T](T builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 209
   at SFP_UI.Program.Main(String[] args) in C:\Users\Phantom\Documents\GitHub\SFP\SFP_UI\Program.cs:line 20

Desktop/Platform (please complete the following information):

OS: Windows 11
FluentAvalonia Version 1.3.5
Avalonia Version 0.10.14

Additional context
The repo that I'm using FluentAvalonia with is https://github.com/PhantomGamers/SFP/tree/f17f093a1ebb6cef75b0dd5b8ec6b9292b1feedf and I'm calling:
Views.MainWindow.Instance.Theme.InvalidateThemingFromSystemThemeChanged();
right in the beginning of this method which is called by a button press https://github.com/PhantomGamers/SFP/blob/f17f093a1ebb6cef75b0dd5b8ec6b9292b1feedf/SFP_UI/ViewModels/MainPageViewModel.cs#L124
Also just in case it helps anything, my purpose of trying to invoke this method is that I wish to have my app respond to the user's system theme or accent color changing. Maybe there is a better way of accomplishing this, but I thought that method was intended for this purpose.

Also just in case it helps anything, my purpose of trying to invoke this method is that I wish to have my app respond to the user's system theme or accent color changing. Maybe there is a better way of accomplishing this, but I thought that method was intended for this purpose.

You're correct, that's what this method is for. Seems the error here is file path has 'null' in it which is caused by the changes done in #124.


How to custom font from resource

Can i set font in editor from src/main/res/fonts ? How to do that?

As i said in https://github.com/dankito/RichTextEditor/issues/35 i don't know how to do this.
If you want to have it, you would have to do the research how to show custom fonts in Android's WebView and how to apply them via JavaScript.


Re-enable chart install tests, but exclude all currently failing charts

Marking this as ready to review for feedback on the idea.
The current set of values files in the ci subdirectory of the charts are fine for linting, but many values are nonsense and end up causing installs to fail.
My idea is that we make an entirely new set of values files that are just for installs (they should pass linting anyway right?) while keeping the existing values files.  The one change will be to rename all the current values files to lint-<existingname>.yaml so they get deleted in a step of the install workflow before the ct install tests run

After talking with @jspiewak I'm going to close this PR, and open a new one where I will move the current ci directory to ci-lint and create a new ci-install directory within which I will create install test values files.
Then I will need to modify the workflows to symlink the proper one in place before running lints or installs.  (and clean up after themselves when done).  Also will need to adjust the Justfile to do the right thing.


Tooltip positioning error

In the current InForm.ui hover detection process, when the calculated print width of a Tooltip exceeds the current mouse position plus the width of the FormID, the __UI_ActiveTipLeft position is reset to the width of the FormID minus the width of the Tooltip, which can sometimes result in a position farther left than the left margin of the FormID. When that happens, a portion of the left side of the Tooltip pane is not visable.
In a different place in InForm.ui, the print width of the Tooltip is calculated based on the width of a panel containing the Tooltip after it has been "word-wrapped" - and, if the word-wrapped text requires more than one line, the calculated width will always be narrower than the print width that was computed in the hover detection process.
Therefore, I would suggest that the code in the hover detection process be modified to replicate that which is used when actually formatting the Tooltip for display. To wit:
'Check if a tooltip must be enabled
IF __UI_HoveringID <> __UI_LastHoveringID OR __UI_MouseButton1 OR __UI_MouseButton2 THEN
    __UI_TipTimer = TIMER
    __UI_ActiveTipID = 0
    __UI_ActiveTipTop = -1
    __UI_ActiveTipLeft = -1
	ELSE
    IF __UI_HoveringID > 0 AND NOT __UI_IsDragging THEN
        IF TIMER - __UI_TipTimer >= .8 THEN
            IF LEN(ToolTip(__UI_HoveringID)) > 0 THEN
                __UI_ActiveTipID = __UI_HoveringID
                _FONT Control(__UI_FormID).Font
                IF __UI_ActiveTipTop = -1 THEN
                    __UI_ActiveTipTop = __UI_MouseTop + 16
                    IF __UI_ActiveTipTop + uspacing& * 1.5 > Control(__UI_FormID).Height THEN
                        __UI_ActiveTipTop = __UI_MouseTop - uspacing& * 1.5
                    END IF
                END IF
                IF __UI_ActiveTipLeft = -1 THEN
                    __UI_ActiveTipLeft = __UI_MouseLeft
                    TempCaption$ = __UI_WordWrap(ToolTip(__UI_ActiveTipID), Control(__UI_FormID).Width / 3, TotalLines)
                    IF TotalLines = 1 THEN
                        PanelWidth = __UI_PrintWidth(TempCaption$) + 10
                    ELSE
                        PanelWidth = Control(__UI_FormID).Width / 3 + 10
                    END IF
                    IF __UI_ActiveTipLeft + PanelWidth > Control(__UI_FormID).Width THEN
                        __UI_ActiveTipLeft = Control(__UI_FormID).Width - PanelWidth
                    END IF
                END IF
            END IF
        END IF
    ELSE
        __UI_ActiveTipID = 0
        __UI_ActiveTipTop = -1
        __UI_ActiveTipLeft = -1
    END IF
END IF

I'll give your fix a try and let you know. Thanks for the report!

Hi Ron-Burr. The issue has been fixed with the changes introduced in commit 5a666b0. Please check it out and let me know how it works for you now. Again, thanks for reporting.

The update works well. Thanks.


Use upstream builder image in update-deps workflow

Turns out we need the upstream image in order for the pr-creator tool to be present.
Sorry about this one. This time I tested end-to-end on my fork.
Fixes #390

@dgn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_sail-operator_main
5586e64438d53ea4a7c9cdd019142750abae4f99
link
true
/test lint

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.


Issue 701: cookie banner re-rendering

#701
This resolves the cookie banner re-rendering by recording/checking the user's local storage.
The issue can be recreated by:

running localhost
take action on cookie banner, either accept or decline
refresh tab, or open new tab and the cookie banner should re-render

However, our GitHub repo's Frontend PR Checks are failing due to this error: ReferenceError: localStorage is not defined. I'm getting the same error in my localhost ... See screenshot below:
Can you update the PR to resolve this? Thanks!

yes, I came across this issue and was a bit confused on the issue. I am not familiar with SSR and this environment. But I have additional checks that check if this code is running on a client or not. I did some quick googling on this and this seems to be a well documented issue. Please let me know if this is an unusual pattern, as I am new to next.js & SSR, this does feel strange to me.
I have tested this and am still able to dismiss the banner and not receiving this issue as well:
app-index.js:35 Warning: Prop `className` did not match. Server: "md:flex fixed inset-x-0 bottom-0 z-20 justify-between bg-blue-200 p-4 sm:p-6" Client: "hidden"

@JT0Y I ran the updated PR locally, and the localStorage error is no longer appearing.
Your solution looks sound. By checking if window.localStorage exists, we can confirm whether the code is running on the client side. Also, React useEffect hooks run only on the client side. So when we execute localStorage code inside those hooks, we'll avoid those undefined errors. (I'm also new to SSR, so I had to read up a bit on it too.)
Thanks for your work!

@CodeWritingCow No worries and thanks for double checking!
Do I need to do anything from here? My understanding from the contributing doc is that I just need to wait for a codeowner to merge it into staging and then close this PR?

@JT0Y I'll take it from here. Will merge and close this PR!


Different outputs generated on different systems

Hello,
I have been overseeing an app as a tech lead and noticed that different people generate different JSON files.
After a little bit of tinkering with the code, I noticed there is no default sorting while iterating files. The default file order, however, depends on the system. When running on Linux natively, I am getting different file order than when running on Windows using WSL.
The solution to this is outlined in PR #29
Possible conversation would be on how to effectively sort the files. Sorting by file names takes file path into consideration, so same filenames are okay to use.

Hi !
Thanks for your feedback, this looks like a good and simple solution !


feature Add show proc '/binlog' impl

Proposed changes
Add show proc '/binlog' impl

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


Instance auth credentials are not passed on HTTPS CONNECT requests

Hello,
Expected Behavior
As documented here it should be possible to use Scrapoxy with a proxy software that accepts CONNECT method (Squid, Tinyproxy, etc.). In particular, it should work with Basic Auth configured on the instance. Despite the fact that existing implementation of NodeJS proxy instance does not verify auth header, there are actually username/password parameters you can set on an instance.
Actual Behavior
The authentication works fine for HTTP requests, however for HTTPS CONNECT requests the credentials are never passed to the instance. So any proxy software on the instance that actually validates basic auth will reject Scrapoxy requests.
Steps to Reproduce the Problem

Set up an instance with some proxy software that accepts CONNECT method and enable Basic Auth for it.

Note that as described in https://github.com/fabienvauchelles/scrapoxy/issues/170 it is actually harder than it sounds because Scrapoxy requires the software to respond with 200 reply on GET /ping endpoint on the same port. I have patched Tinyproxy to implement this HTTP ping response, so you can install it by building from source from nirvana-msu/tinyproxy, scrapoxy branch

Configure the correct instance credentials as documented here
Try making HTTPS request via Scrapoxy. It will fail because the instance will never receive these credentials.

Specifications

Version of Scrapoxy: 3.1.1 (latest)

The problem is in the following line:
https://github.com/fabienvauchelles/scrapoxy/blob/5d3fe9ff3923b973640d4697af1ce4b522d574e9/server/proxies/master/index.js#L263
As you can see, when doing CONNECT request to the instance, credentials are never passed. I will raise PR to fix this.
Note that only HTTPS requests are affected. Code that handles HTTP requests works differently and is not affected by this problem (proxy agent does set the 'proxy-authorization' header correctly).
Thanks.

corrected in 4.0.0

Hey there! 🌟 Exciting news! Scrapoxy 4 is ready to rock 🚀. Check it out at Scrapoxy.io (explore the "get started" guide, deployment documentation, and more 📚).
I can't wait to hear your feedback on this new version! Send me your coolest screenshots with as many proxies as possible! 📸💻
Join the Discord community if you have any questions or just want to chat. You can also open a GitHub issue for any bug or feature request 🐞✨.
See you soon!  😎
Fabien


moving announcments filter to announcements from partnerCards

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

Project coverage is 81.53%. Comparing base (1c52275) to head (cf9c116).

Files with missing lines
Patch %
Lines

edsdme/blocks/announcements/AnnouncementsCards.js
19.04%
17 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##            stage     #161      +/-   ##
==========================================
+ Coverage   81.06%   81.53%   +0.47%
==========================================
  Files          11       11
  Lines        3480     3483       +3
==========================================
+ Hits         2821     2840      +19
+ Misses        659      643      -16

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


isNaN has a boxing cost, bring it up?

See this (french) gitter conversation.

The work around, in case things are performance critical, is for a given d: Double, to run d == d.

There might not be a boxing cost any longer: https://github.com/scala/scala/blob/v2.12.8/src/library/scala/Predef.scala#L461


Add icd10-lookup extension

Description

Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Hi @ubergraham 👋
I updated the extension a bit, could you give it a go to check that I didn't break anything 🙂

Wow, looks great, thanks!

On May 28, 2024, at 1:40 AM, Per Nielsen Tikær @.***> wrote:
Hi @ubergraham https://github.com/ubergraham 👋
I updated the extension a bit, could you give it a go to check that I didn't break anything 🙂
—
Reply to this email directly, view it on GitHub https://github.com/raycast/extensions/pull/12563#issuecomment-2134658607, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAQL7QMPDGQIWPST6R7RNVLZEQ7JRAVCNFSM6AAAAABIIA7KP6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMZUGY2TQNRQG4.
You are receiving this because you were mentioned.


fix: minor 'workaround' to display the correct icon on dark mode

I've tried to fix it without recurring into a workaround but when vitepress is built the bug remained, this way, at least, when the vitepress is built the correct icon remained.
Displaying the bug:
When changing the theme into dark mode and refreshing the page it displays the wrong icon.
https://github.com/radix-vue/shadcn-vue/assets/2693803/d83fe8c4-316d-4feb-852d-f15a9d3c418f
The fix:
With the workaround it "flashes" the wrong icon but the correct one remains.
https://github.com/radix-vue/shadcn-vue/assets/2693803/0dd0507a-ada4-4197-9b9f-e80ba291fbcf
If anyone find the reason for the glitch or have a better way to fix it let me know.
I wish my first help would be a better one but this icon glitch was bugging me 😆

@lucascnunes Thanks!
Yes that Glitch is so annoying, Idk how Vitepress doc handle it right 🤔
I think ClientOnly wrapper would be better approche
<ClientOnly>
  <Button
    class="flex items-center justify-center"
    aria-label="Toggle dark mode"
    :variant="'ghost'"
    :size="'icon'" @click="toggleDark()"
  >
    <component
      :is="isDark ? RadixIconsSun : RadixIconsMoon"
      class="w-[20px] h-5 text-foreground"
    />
  </Button>
</ClientOnly>

I'm going to test it, and push a fix if it works.
Thanks @sadeghbarati


Fix the return checks of some APIs

It seems these APIs have negative return values and should not be checked by the unary operator.
Thank you for taking time to review.
Checklist

[ ] documentation is added or updated
[ ] tests are added or updated

This pull request is ready to merge

Merged to master, 3.1, 3.0 branches. Thank you for your contribution.


GitHub Action for Service Mesh Patterns

Current Behavior
There are a couple GitHub Actions for Meshery CLI interactions currently, but not a GitHub Action specifically for service mesh patterns.
Desired Behavior
It would be nice to have a GitHub Action dedicated to use cases of importing and applying service mesh patterns.
Implementation
Build a new action here - https://github.com/layer5io/mesheryctl-service-mesh-patterns-action
Acceptance Tests

Users can import service mesh patterns.
Users can apply service mesh patterns.

Contributor Guide

I am interested to take up this issue.
Note:- I do not have a lot of experience with GitHub actions but would be looking to pick up some knowledge along the way

@hershd23, thank you for both volunteering and for signposting expectations based on your current level of experience. Let's give this a shot and see how far you get. @theBeginner86, perhaps, you might collaborate with @hershd23? You can copy much of what is written into other mesheryctl GitHub Actions.

Sure! I'd be happy to collaborate 👍
// @hershd23 @leecalcote

One thing I noticed here is that this action still refers a fork made by a contributor. Should we update this with the layer5io repo?
https://github.com/service-mesh-patterns/service-mesh-patterns/blob/f93ba3b079f2a82a466eadac7abc08a2e29125f8/.github/workflows/pattern-action.yml#L19

Hey @hershd23 you are right we need to change the sayantan1413/... to layer5io/....

@hershd23
I'm not sure of the best way of doing it but I generally test out small sections of the GitHub action in one of my testing repo. 😅
Though asking this question in the discussion forum https://discuss.layer5.io, would help us get a better answer from other community members.

Right makes sense, I'll ask this question in the discussion forum

@leecalcote @theBeginner86 @sayantan1413
A couple of questions :-

Is the import command available in mesheryctl yet? I am currently testing the existing action for the apply command and added the import command before it to test it once but it errored out as you can check here. I also checked the pattern directory in mesheryctl and it doesn't look like import is there yet. Atleast in the master branch.
Secondly is the idea to create two specific actions for testing import and apply? Given import would a lot of the same setup as that of the apply command.

@piyushsingariya @hexxdump @alphax86
https://docs.meshery.io/reference/mesheryctl/pattern/apply

Any updates? @utkarsh-pro @leecalcote

@utkarsh-pro , please do chime in when you have a moment.

@hershd23 right now, both "import" and "apply" happen in the same command. Before we understand how it is done through mesheryctl let's clarify what "importing" and "applying" means in the context of patterns.
Import: When you import a pattern, you are basically fetching a pattern from a source (here source could be: any HTTP endpoint, filesystem or Github - yes, we have special import features for Github) and saving it on a Meshery Providers database for future retrievals/usage.
Apply: Patterns are nothing but YAMLs which are declarative in nature, just like everything is in Kubernetes. When you send a pattern to meshery server for it to process the patterns and perform actions based on the YAML, we call it "applying". It is very similar to kubectl apply -f.
Here's how are the ways in which it works:

A user can run mesheryctl pattern apply -f <file name | URL>, this will do the following:

mesheryctl will "import" the pattern.
After "importing", it will "apply" the pattern.

A user can run mesheryctl pattern apply <pattern-name>, this will do the following:

mesheryctl will search patterns in the provider's database which are registered against the user running the command.
If there are more than one pattern registered with the same name then the user is presented with the list to select a pattern.
Selected pattern is "applied"

It should be noted that a user can pass --skip-save in conjunction with above commands, which will skip the "import" step and will only "apply" the pattern.
I hope this clarifies some of the doubts.

Thanks @utkarsh-pro, this makes pattern import and apply quite clear.
This is what I have done till now :-
https://github.com/hershd23/service-mesh-patterns/runs/4953284735?check_suite_focus=true
Here is a CI run. At this point in time I have changed the pattern-action.yml file to the sample action format given here with the correct action location. This runs successfully, and at this point runs for any URL supplied.
Logically the next question is what would the deliverables be for this issue. @leecalcote @theBeginner86 do help me out here

The part of testing out various service mesh patterns could be done easily, with this workflow asking for various parameters before the run. Simply providing the URL of the pattern would suffice here.
How should we go about implementing the second case as described by @utkarsh-pro? One (not so neat) way to do this is to apply pattern1 using URL then pattern2 using URL and then trying to apply pattern1 again using only the pattern-name. Let me know if there's a better idea

@utkarsh-pro 💪
@hershd23, chat about this in today's Meshery Build and Release meeting? Details here - https://meet.layer5.io

An example use - https://github.com/meshery/meshery/blob/620ff1ef940af18cbfd846e5fe20c68bffb7b169/.github/workflows/testadapters.yaml#L143

A couple of comments on this issue. I went through the CI call and understood there was some uncertainty whether this is required or not.
A lot of what we want is already done here https://github.com/layer5io/meshery-service-mesh-patterns-action/blob/master/mesheryctl.sh. The structure of the action is a little convoluted though.
If you see the repo here, this editedworkflow script calls action.yml which in turn calls main.js which in turn spins up a child process main.sh which then calls meshery.sh for setup actions like setting up minikube and meshery and then mesheryctl.sh which tests the 'mesheryctl pattern apply -f ' action.
TL;DR :- Most of what we need is already there in https://github.com/layer5io/mesheryctl-service-mesh-patterns-action, just in a way that is a little convoluted.
Hence just changing the pattern-action.yml workflow to the format given here, the whole action runs successfully. Even if this not a must have we can easily just change pattern-action.yml and we'll have a working action for pattern apply

@hershd23 great research. Please proceed. As reusable Action, the Patterns Action shouldn't provision Kubernetes, but ask the user for their kubeconfig. This would be a good change to make.


Murmur2 partitioner fails for 'ö', 'ä', 'ü', etc. to be consistent with Kafka's default Java client

... example: The message with the key "thingäöüÄÖÜ" with a partition count of 10 should be written to the partition 2, but gets written to the partition 4 by the current implementation. Although this is not used here, it is due to the same bug described in this issue: https://github.com/b3nj4m/murmurhash-js/pull/1
I propose to use the npm package murmur-hash-js instead of murmurhash and pass a buffer instead of a string, which leads to results, consistent with Kafka's Java implementation.
The bug described got tested with this bug (https://github.com/nodefluent/node-sinek/issues/39) and that for assuming it was already resolved.
For reference see the following, tested, implementation: https://github.com/vuza/murmur2-partitioner

If it is okay for you @krystianity, I can push an PR, resolving this and the following bug: https://github.com/nodefluent/node-sinek/issues/39 ... since we did intensive tests on comparing JS partitioner with the default Java partitioner: https://github.com/vuza/murmur2-partitioner/blob/master/test.js

Awesome go ahead :)

Please also add the seed as well.

This can be closed after PR is merged: https://github.com/nodefluent/node-sinek/pull/43


Example Working Code

There needs to be real working examples here.  If tooltips don't appear, devs need to be able to look here and see a definitive list of reason why tips would not appear.  This includes any kind of "repainting" or other events which might reset timers or otherwise cause problems.

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

ID: 9cc82441-df8e-5fa6-47b1-8d9b8c09df8b
Version Independent ID: d2bb0732-b44c-91dd-ad6e-1f7c479b4b21
Content: Using CToolTipCtrl to Create and Manipulate a CToolTipCtrl Object
Content Source: docs/mfc/using-ctooltipctrl-to-create-and-manipulate-a-ctooltipctrl-object.md
Product: visual-cpp
Technology: cpp-mfc
GitHub Login: @mikeblome
Microsoft Alias: mblome

Unfortunately, I am unable to invest in new MFC documentation.

What an awesome response to a two year old ticket.  Makes everyone feel like Microsoft has interest in help developers be productive.   How awesome for you to create a toolkit that's deficient yet part of decade old software systems that work and have to be maintained.  You can't invest one time in documentation but instead inspect your customers to spend 1000x the cost to rewrite their applications.  How novel!


Is there any Difference between .pth and .pth.tar file while outputting checkpoint file?

When I trained YOLOX with COCO Dataset format, I got the .pth file, but when I tried it on the google colab with VOC Dataset Format, I got the .pth.tar file. Is there any difference between these two? How can I change format to get .pth.tar file with COCO Dataset Format?

When I trained YOLOX with COCO Dataset format, I got the .pth file, but when I tried it on the google colab with VOC Dataset Format, I got the .pth.tar file. Is there any difference between these two? How can I change format to get .pth.tar file with COCO Dataset Format?

As far as I know .tar just means that it's a tarball (basically a zipped file) You can unzip it with WinZip or similar programs and you'll end up having just a .pth file and same thing other way around

@ImSuMyatNoe there are no differnece between them in YOLOX, just a legacy problem. You could load them by torch.load , then you will get the same content.


Not able to create keys with prefixes ('/') as recommended via an ARM template

When I try to create a key '/application/region/key1' with an ARM template getting the error -
New-AzureRmResourceGroupDeployment : 14:18:16 - Error: Code=InvalidTemplate; Message=Deployment template validation failed: 'The template resource  'configservice/' for type 'Microsoft.AppConfiguration/configurationStores/keyValues' at line '45' and column '76' has incorrect segment lengths. A nested  resource type must have identical number of segments as its resource name. A root resource type must have segment length one greater than its resource name. Please see  https://aka.ms/arm-template/#resources for usage details.'.

On closer inspection the "name" is prefixed with the App Configuration store name followed by a forward slash and then followed by the desired key name. The problem here is that it only expects one "/" in the entire string. However, we do have guidance on how to mitigate this in the documentation here - https://docs.microsoft.com/en-us/azure/azure-app-configuration/quickstart-resource-manager ...


mayor updates

updates to mayors done by resistbot volunteers
NOTES/QUESTIONS:

I didn't retire anyone, and I also notice that lint_yaml is failing for some people with messages like 'no active roles'. Do I need to run a retire script on this branch?

@jamesturk or @csnardi - if you all have a moment to take a look.  Maybe we can fix these before they fall off the API 😆
Not critical to us if not though, it's the New Year.

It looks like some of the non-active errors are for people you didn't modify, so that's not on you. The end dates for those mayors just need to be pushed for linting to succeed.
But if you added a new mayor where there was already an existing mayor, those will need to be retired. I didn't check to see if that's the case for anyone.

It looks like some of the non-active errors are for people you didn't modify, so that's not on you. The end dates for those mayors just need to be pushed for linting to succeed.
But if you added a new mayor where there was already an existing mayor, those will need to be retired. I didn't check to see if that's the case for anyone.

@csnardi Yes, we added a bunch of mayors. Is there an existing script that figures out and retires mayors?

@csnardi Yes, we added a bunch of mayors. Is there an existing script that figures out and retires mayors?

scripts/retire.py retires an individual member. It takes a file name and an end date. It moves the file to /retired, removes contact details, and updates or adds that end date.
I think the lint would fail if a person with an end date in the future was in /retired, but I'm not positive. That may be something to improve tooling around, since we often want to add new people in anticipation of a new term.

scripts/retire.py retires an individual member. It takes a file name and an end date. It moves the file to /retired, removes contact details, and updates or adds that end date.
I think the lint would fail if a person with an end date in the future was in /retired, but I'm not positive. That may be something to improve tooling around, since we often want to add new people in anticipation of a new term.

ok, I will try to update the process and rerun tonight. If I remember there were somewhere between maybe 25 and 100 new mayors. Hopefully have an update by tmrw night

ok, I will try to update the process and rerun tonight. If I remember there were somewhere between maybe 25 and 100 new mayors. Hopefully have an update by tmrw night

ok, I will try to update the process and rerun tonight. If I remember there were somewhere between maybe 25 and 100 new mayors. Hopefully have an update by tmrw night

ok, I will try to update the process and rerun tonight. If I remember there were somewhere between maybe 25 and 100 new mayors. Hopefully have an update by tmrw night

@csnardi  / @chris-erickson
I think this mayor update should be good to go. In order to pass lint, I did the following:

used a script to retire all persons with "no active roles" errors (actually made this an option for scripts/lint_yaml.py) in another PR
manually corrected some ocd jurisdictions that were mismatched (there were only two of these)

Let me know if there are any other issues I need to fix up on this.

@csnardi  / @chris-erickson
I think this mayor update should be good to go. In order to pass lint, I did the following:

used a script to retire all persons with "no active roles" errors (actually made this an option for scripts/lint_yaml.py) in another PR
manually corrected some ocd jurisdictions that were mismatched (there were only two of these)

Let me know if there are any other issues I need to fix up on this.

I mostly spot-checked, but only noticed a couple minor errors. A few mayors have trailing spaces in their names or middle initials in their given names, but simply due to how much data there is in this repo, that's nothing new. I wouldn't block merging on fixing that, but just FYI since I assume it's something you can build into your script.
If you take a look at that one mayor I flagged, I think it should be fine to merge.

I mostly spot-checked, but only noticed a couple minor errors. A few mayors have trailing spaces in their names or middle initials in their given names, but simply due to how much data there is in this repo, that's nothing new. I wouldn't block merging on fixing that, but just FYI since I assume it's something you can build into your script.
If you take a look at that one mayor I flagged, I think it should be fine to merge.

just a note: a file should never change who it describes.  that Kent Studebaker -> Joe Buck situation would change Kent's ID to refer to Joe and remove any way to refer to Kent in the future.  for mayors that doesn't matter so much right now but would be a big problem for legislators and something we want to avoid

just a note: a file should never change who it describes.  that Kent Studebaker -> Joe Buck situation would change Kent's ID to refer to Joe and remove any way to refer to Kent in the future.  for mayors that doesn't matter so much right now but would be a big problem for legislators and something we want to avoid

Good catch. I think there might be a bigger problem though...
It looks like Joe Buck won election and replaced Kent Studebaker. The person data has that anomaly where there name data is duplicated between full_name and given_name/family_name and in that instance, the full_name was not updated
....but that makes me realize that volunteers have updated existing mayor rows in our airtable and left the existing ocdperson id in place, and so we probably have instances where a new mayor has an id field in their data with ocd-person id of the mayor they replaced...
I think this could be an good argument for NOT including those ocd-person ids in the yaml (partly since that's also an anomaly the same id included in the filename)?
Would it be an OK solve to strip the ocd-person ids out of the yaml files or what do you think is best solution?

Good catch. I think there might be a bigger problem though...
It looks like Joe Buck won election and replaced Kent Studebaker. The person data has that anomaly where there name data is duplicated between full_name and given_name/family_name and in that instance, the full_name was not updated
....but that makes me realize that volunteers have updated existing mayor rows in our airtable and left the existing ocdperson id in place, and so we probably have instances where a new mayor has an id field in their data with ocd-person id of the mayor they replaced...
I think this could be an good argument for NOT including those ocd-person ids in the yaml (partly since that's also an anomaly the same id included in the filename)?
Would it be an OK solve to strip the ocd-person ids out of the yaml files or what do you think is best solution?

We definitely need the ids in the YAML for a number of other uses.
Removing the ID from the YAML wouldn’t fix this problem with people updating the files incorrectly, if anything it’d make it more obscure IMO.
I’ll think about if there are listing adjustments that’d be possible.  Another option would be to disallow editing the name field in the Airtable?
James
On Jan 5, 2021, 2:03 PM -0500, larry kirschner<EMAIL_ADDRESS>wrote:

Good catch. I think there might be a bigger problem though...
It looks like Joe Buck won election and replaced Kent Studebaker. The person data has that anomaly where there name data is duplicated between full_name and given_name/family_name and in that instance, the full_name was not updated
....but that makes me realize that volunteers have updated existing mayor rows in our airtable and left the existing ocdperson id in place, and so we probably have instances where a new mayor has an id field in their data with ocd-person id of the mayor they replaced...
I think this could be an good argument for NOT including those ocd-person ids in the yaml (partly since that's also an anomaly the same id included in the filename)?
Would it be an OK solve to strip the ocd-person ids out of the yaml files or what do you think is best solution?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

We definitely need the ids in the YAML for a number of other uses.
Removing the ID from the YAML wouldn’t fix this problem with people updating the files incorrectly, if anything it’d make it more obscure IMO.
I’ll think about if there are listing adjustments that’d be possible.  Another option would be to disallow editing the name field in the Airtable?
James
On Jan 5, 2021, 2:03 PM -0500, larry kirschner<EMAIL_ADDRESS>wrote:

Good catch. I think there might be a bigger problem though...
It looks like Joe Buck won election and replaced Kent Studebaker. The person data has that anomaly where there name data is duplicated between full_name and given_name/family_name and in that instance, the full_name was not updated
....but that makes me realize that volunteers have updated existing mayor rows in our airtable and left the existing ocdperson id in place, and so we probably have instances where a new mayor has an id field in their data with ocd-person id of the mayor they replaced...
I think this could be an good argument for NOT including those ocd-person ids in the yaml (partly since that's also an anomaly the same id included in the filename)?
Would it be an OK solve to strip the ocd-person ids out of the yaml files or what do you think is best solution?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

OK. one tangent question on person ids thoiugh: why do so many existing person files not have one? Does that need to be fixed?

OK. one tangent question on person ids thoiugh: why do so many existing person files not have one? Does that need to be fixed?

Which files are missing ids?  That shouldn’t happen & I can’t see how it’d lint, but I’ll look into it
James
On Jan 5, 2021, 2:07 PM -0500, larry kirschner<EMAIL_ADDRESS>wrote:

OK. one tangent question on person ids thoiugh: why do so many existing person files not have one? Does that need to be fixed?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Which files are missing ids?  That shouldn’t happen & I can’t see how it’d lint, but I’ll look into it
James
On Jan 5, 2021, 2:07 PM -0500, larry kirschner<EMAIL_ADDRESS>wrote:

OK. one tangent question on person ids thoiugh: why do so many existing person files not have one? Does that need to be fixed?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Which files are missing ids?  That shouldn’t happen & I can’t see how it’d lint, but I’ll look into it James
…
On Jan 5, 2021, 2:07 PM -0500, larry kirschner @.***>, wrote: OK. one tangent question on person ids thoiugh: why do so many existing person files not have one? Does that need to be fixed? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

I'm wrong. Just checked w find data -name "*.yml" -exec grep -L "id: ocd-person" {} \;
I must have been looking at just diffs that were missing that line before.

Which files are missing ids?  That shouldn’t happen & I can’t see how it’d lint, but I’ll look into it James
…
On Jan 5, 2021, 2:07 PM -0500, larry kirschner @.***>, wrote: OK. one tangent question on person ids thoiugh: why do so many existing person files not have one? Does that need to be fixed? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

I'm wrong. Just checked w find data -name "*.yml" -exec grep -L "id: ocd-person" {} \;
I must have been looking at just diffs that were missing that line before.

We definitely need the ids in the YAML for a number of other uses. Removing the ID from the YAML wouldn’t fix this problem with people updating the files incorrectly, if anything it’d make it more obscure IMO. I’ll think about if there are listing adjustments that’d be possible.  Another option would be to disallow editing the name field in the Airtable? James
…
On Jan 5, 2021, 2:03 PM -0500, larry kirschner @.***>, wrote: Good catch. I think there might be a bigger problem though... It looks like Joe Buck won election and replaced Kent Studebaker. The person data has that anomaly where there name data is duplicated between full_name and given_name/family_name and in that instance, the full_name was not updated ....but that makes me realize that volunteers have updated existing mayor rows in our airtable and left the existing ocdperson id in place, and so we probably have instances where a new mayor has an id field in their data with ocd-person id of the mayor they replaced... I think this could be an good argument for NOT including those ocd-person ids in the yaml (partly since that's also an anomaly the same id included in the filename)? Would it be an OK solve to strip the ocd-person ids out of the yaml files or what do you think is best solution? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

...will have to try to fix this tonight and hopefully we can have another go at this tomorrow. It's not a huge deal in the sense that I can hard reset this branch to main and then rerun the scripts to sync down from airtable and then retire people w no active roles. The trick will just be detecting airtable rows for existing mayorships where a new person is now in that role and assigning that person a new id.

We definitely need the ids in the YAML for a number of other uses. Removing the ID from the YAML wouldn’t fix this problem with people updating the files incorrectly, if anything it’d make it more obscure IMO. I’ll think about if there are listing adjustments that’d be possible.  Another option would be to disallow editing the name field in the Airtable? James
…
On Jan 5, 2021, 2:03 PM -0500, larry kirschner @.***>, wrote: Good catch. I think there might be a bigger problem though... It looks like Joe Buck won election and replaced Kent Studebaker. The person data has that anomaly where there name data is duplicated between full_name and given_name/family_name and in that instance, the full_name was not updated ....but that makes me realize that volunteers have updated existing mayor rows in our airtable and left the existing ocdperson id in place, and so we probably have instances where a new mayor has an id field in their data with ocd-person id of the mayor they replaced... I think this could be an good argument for NOT including those ocd-person ids in the yaml (partly since that's also an anomaly the same id included in the filename)? Would it be an OK solve to strip the ocd-person ids out of the yaml files or what do you think is best solution? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

...will have to try to fix this tonight and hopefully we can have another go at this tomorrow. It's not a huge deal in the sense that I can hard reset this branch to main and then rerun the scripts to sync down from airtable and then retire people w no active roles. The trick will just be detecting airtable rows for existing mayorships where a new person is now in that role and assigning that person a new id.

@jamesturk / @csnardi tangent q:
There are two tools I've been using to generate these updates: the first is the airtables syncup|syncdown script and the second is a modification to lint_yaml.py that adds a --retire option.
For the lint_yaml change, when the --retire option is set it retires persons that have no active roles rather than report the errors. I think this is OK to do without consideration of retire end dates since it only applies to persons that have no active roles to end.
Can I PR the lint_yaml can retire persons w no active roles change (separate from the airtables)?

@jamesturk / @csnardi tangent q:
There are two tools I've been using to generate these updates: the first is the airtables syncup|syncdown script and the second is a modification to lint_yaml.py that adds a --retire option.
For the lint_yaml change, when the --retire option is set it retires persons that have no active roles rather than report the errors. I think this is OK to do without consideration of retire end dates since it only applies to persons that have no active roles to end.
Can I PR the lint_yaml can retire persons w no active roles change (separate from the airtables)?

@chris-erickson / @csnardi
I did another clean-slate sync from the main branch with the airtable mayor updates from resistbot volunteers.
This time, I made a change to the sync-down script so any new mayors who replaced some existing openstates person in a mayoral jurisdiction now should have new/unique ocd-person ids.
Let me know if this can merge or needs anything else from our side.

@chris-erickson / @csnardi
I did another clean-slate sync from the main branch with the airtable mayor updates from resistbot volunteers.
This time, I made a change to the sync-down script so any new mayors who replaced some existing openstates person in a mayoral jurisdiction now should have new/unique ocd-person ids.
Let me know if this can merge or needs anything else from our side.

just a note: a file should never change who it describes. that Kent Studebaker -> Joe Buck situation would change Kent's ID to refer to Joe and remove any way to refer to Kent in the future. for mayors that doesn't matter so much right now but would be a big problem for legislators and something we want to avoid

Yes, totally understood. The thing that was happening previously is a new file would get created for a new mayor but it would reuse the ocdperson-id of the mayor who had been replaced. That should be fixed now

just a note: a file should never change who it describes. that Kent Studebaker -> Joe Buck situation would change Kent's ID to refer to Joe and remove any way to refer to Kent in the future. for mayors that doesn't matter so much right now but would be a big problem for legislators and something we want to avoid

Yes, totally understood. The thing that was happening previously is a new file would get created for a new mayor but it would reuse the ocdperson-id of the mayor who had been replaced. That should be fixed now

@csnardi  / @jamesturk
Re family_names:
In my roundabout attempts to script "inconsistent name" detection, I came across some records where the suffix "Jr." or "Sr." was included in family_name. There were a couple where I removed it, although the final version of that "inconsistent name" linting I think can safely ignore those types of names.
Should I go and find the ones where I stripped the suffix from family_name and put it back? It does seem kind of weird to include that in family name?

@csnardi  / @jamesturk
Re family_names:
In my roundabout attempts to script "inconsistent name" detection, I came across some records where the suffix "Jr." or "Sr." was included in family_name. There were a couple where I removed it, although the final version of that "inconsistent name" linting I think can safely ignore those types of names.
Should I go and find the ones where I stripped the suffix from family_name and put it back? It does seem kind of weird to include that in family name?

it winds up there by splitting the name usually, agree it is incorrect- it should be in suffix: when split out

it winds up there by splitting the name usually, agree it is incorrect- it should be in suffix: when split out

it winds up there by splitting the name usually, agree it is incorrect- it should be in suffix: when split out

ok then this PR should be ready for review again. let me know if any more issues found

it winds up there by splitting the name usually, agree it is incorrect- it should be in suffix: when split out

ok then this PR should be ready for review again. let me know if any more issues found

@csnardi  looks like out of date with main, will see if rebase is reasonable...

@csnardi  looks like out of date with main, will see if rebase is reasonable...

I merged main in, it was clean.

I merged main in, it was clean.

ack sorry, i did the rebase and pushed, but I think is identical result

ack sorry, i did the rebase and pushed, but I think is identical result

I'm fine with this now, will merge. Any fixes can be done in follow-up PRs if needed, but I don't expect anything major.

I'm fine with this now, will merge. Any fixes can be done in follow-up PRs if needed, but I don't expect anything major.

I'm fine with this now, will merge. Any fixes can be done in follow-up PRs if needed, but I don't expect anything major.

should we quick retire Kent?

I'm fine with this now, will merge. Any fixes can be done in follow-up PRs if needed, but I don't expect anything major.

should we quick retire Kent?


Switched to AsyncKeyedLock

I made these changes because I'm seeing some concurrent dictionaries being filled up with semaphoreslims but I don't understand if and when they're being cleared. I have switched the code to make use of my library which adds a dependency that is not in the official NuGet package sources, so I had to modify NuGet.config just so that this could build, but if it gets approved then that change would need to be dropped and I'm not sure what the procedure is to get added to the official NuGet package sources.

Thanks, @MarkCiliaVincenti! It sounds like you might have found a bug in the existing implementation, which I'd like to know more about. We'd like to avoid adding a dependency however.
Can you share more information in an issue and/or suggest a more targeted fix?

Thanks, @MarkCiliaVincenti! It sounds like you might have found a bug in the existing implementation, which I'd like to know more about. We'd like to avoid adding a dependency however.
Can you share more information in an issue and/or suggest a more targeted fix?

When you say you want to avoid adding a dependency, is that a hard no? I see the solution already has a lot of dependencies.
I'm not too keen trying to chase and understand the problem in depth. I put this solution forward because it will fix a potential problem as well as probably decreasing memory allocations.

We're in the process of refactoring and reducing dependencies, so we wouldn't take this PR at this time.


Sleep Function using PIT

Panix has had a PIT for a while now, so it would be nice to implement a sleep function, but the problem is that in order to do so we basically have to sleep the entire OS or have IPC implemented. Either way, the code to do so is pretty well laid out here:
https://wiki.osdev.org/PIT

A very wasteful but working sleep function has been implemented into the timer in the multitasking branch.


Added animation to the navbar

Linear gradient animated line added under the logo of the application.

Sorry, this animation won't work


update example operator deployment to support arm64

The image currently used for kube-rbac-proxy is gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0.
https://github.com/projectcontour/contour-operator/blob/main/examples/operator/operator.yaml#L6531
This image is published by kubebuilder project rather than the kube-rbac-proxy project and is not multi-arch.
kube-rbac-proxy project is publishing to quay.io/brancz/kube-rbac-proxy and these images are multi-arch.
Updating the deployment to use kube-rbac-proxy v0.6.0+ from quay.io/brancz/kube-rbac-proxy would allow using the operator on arm64.

Fixed by https://github.com/projectcontour/contour-operator/pull/376


Delayed signals in tests sometimes fire too soon

We've been having occasionally flaky tests, often due to timeouts (so they panic -> very difficult to figure out a cause without logs, due to t.Log behavior), and couldn't identify the cause.
Just yesterday I got lucky and a test failed in a way which produced logs... which showed all our env.RegisterDelayedCallback(func() { env.SignalWorkflow(...) }, delay) events occurring before anything in the workflow (e.g. the first activity call).
After a bit of toying around, I managed to get a fairly simple reproduction: https://github.com/Groxx/cadence-client/commit/7bcc1f82e4c01e2649503abd3505c8f8efbe67ad
With 10,000 simultaneous tests it seems fairly reliable on my laptop, but you may need to run it a few times.  I personally like:
while go test -count 1 -run TestThing ./internal/ ; do echo "retrying" ; done

because it'll just keep retrying until it fails, and then it'll stop.
In essence, the test:

makes a workflow which checks if a signal channel has anything in it, and if not it waits for a value to arrive
enqueues a signal after a millisecond

it DOES seem dependent on this being very small, e.g. I've been unable to repro with time.Second or larger

sees if it got the signal before it started selecting (which it counts as a failure)

This fails a few times per 10,000 tests.
We've seen several events fire "too soon", with a total delay of several milliseconds, especially on our larger tests, so it doesn't appear to be (only) related to the number of things enqueued.
My guess is that it's somehow related to time between registering delayed callbacks and executing the workflow, but I haven't been able to reproduce it with e.g. a small time.Sleep in the test.

Obviously this kind of thing can happen IRL, to some degree, and "received a bunch of signals all at once" is a thing that workflows need to be able to handle.  That's totally fine.
The problem is that the test suite isn't deterministic, and that causes occasional test failures.  For now it appears we can work around this with larger (simulated) delays (e.g. I haven't been able to get it to fail with 1 second or more... but I don't see why it'd be impossible).  But it feels like it may be worth investigating in case it's due to some kind of bigger problem.

The test framework uses auto forward clock to move forward time (mock clock) and auto fire timers when there is nothing running. This is needed in test environment where you don't want to wait/idle on wall clock for long timer. However, if there is something running (like activity), the mock clock cannot move forward. But, the wall clock will move forward as usual. For example, if your workflow is waiting for a timer of 1s while activity is running, and your activity is running for longer than 1s, the mock clock will not auto forward to fire the timer, because there is something running, however, the wall clock will still move forward and the 1s timer will get fired.
This is an issue in your case because you use very small interval for the delay, which means there is race condition in your test scenario. In real cadence use case, your timer cannot be less than 1s.

For example, if your workflow is waiting for a timer of 1s while activity is running, and your activity is running for longer than 1s, the mock clock will not auto forward to fire the timer, because there is something running, however, the wall clock will still move forward and the 1s timer will get fired.

This seems to be implying that e.g. if I set three signals to occur within 1ms of each other, and time.Sleep(time.Second) in the code that responds to each (say in each channel's callback, to simulate doing "work"), I should see one arrive, then the sleep starts, then the other two signals, then the other two sleeps.
I tried to cause that in tests, but I wasn't able to - only mocked delays appear to move the RegisterDelayedCallback / mock-clock forward, not actual delays / real time passing.  Regardless of how long I time.Sleep in the workflow or e.g. activity it calls, I usually see a strict sequence of 1ms mock time elapsed -> signal -> "work" for 1 second -> 1ms mock time elapsed -> signal -> work -> etc, and the end mocked run-time of the test is only 3ms.  Which is what I'd expect - test behavior shouldn't depend on how long the test takes to execute.

You can not use time.Sleep() in the channel's callback. Use workflow.Sleep() instead.

I think I have found the bug, it is related to how we handle the mock due to the limitation of the testify mock. This is a tricky one to fix. Will see what I can do here.

can do.  it's quite easy:
func TestThing2(t *testing.T) {
	s := new(WorkflowTestSuite)
	env := s.NewTestWorkflowEnvironment()
	env.RegisterDelayedCallback(func() { env.SignalWorkflow("sig", "one")}, time.Millisecond)
	env.RegisterDelayedCallback(func() { env.SignalWorkflow("sig", "two")}, 2*time.Millisecond)
	env.RegisterDelayedCallback(func() { env.SignalWorkflow("sig", "three")}, 3*time.Millisecond)
	env.ExecuteWorkflow(ssleep)
	assert.True(t, env.IsWorkflowCompleted())
}

func ssleep(ctx Context) error {
	for i := 0; i < 3; i++ {
		var sig string
		NewSelector(ctx).AddReceive(GetSignalChannel(ctx, "sig"), func(c Channel, more bool) {
			// consume everything in the channel
			for c.ReceiveAsync(&sig) {}
		}).Select(ctx)
		GetLogger(ctx).Info(sig, zap.String("now", Now(ctx).String()))
		time.Sleep(100*time.Millisecond)
	}
	return nil
}

logs:
=== RUN   TestThing2
2018-09-18T13:32:03.808-0700	DEBUG	internal/internal_workflow_testsuite.go:581	Auto fire timer	{"TimerID": 0, "TimerDuration": "1ms", "TimeSkipped": "1ms"}
2018-09-18T13:32:03.809-0700	INFO	internal/my_test.go:53	one	{"now": "2018-09-18 13:32:03.809314233 -0700 PDT"}
2018-09-18T13:32:03.913-0700	DEBUG	internal/internal_workflow_testsuite.go:581	Auto fire timer	{"TimerID": 1, "TimerDuration": "2ms", "TimeSkipped": "1ms"}
2018-09-18T13:32:03.913-0700	INFO	internal/my_test.go:53	two	{"now": "2018-09-18 13:32:03.810314233 -0700 PDT"}
2018-09-18T13:32:04.015-0700	DEBUG	internal/internal_workflow_testsuite.go:581	Auto fire timer	{"TimerID": 2, "TimerDuration": "3ms", "TimeSkipped": "1ms"}
2018-09-18T13:32:04.015-0700	INFO	internal/my_test.go:53	three	{"now": "2018-09-18 13:32:03.811314233 -0700 PDT"}

If workflow.Now was normally impacted by real-world time elapsing, you'd expect the logs to look like "one", "now": ...:03.8, then "three", "now: ...:03.9, because the second and third signals should've both been sent (and thus available for ReceiveAsync) by the time the second Receive occurred.  And then it'd probably time out the test, since there would be no signal to receive on the third loop.
What you see instead is one emulated millisecond between each event, as if the time.Sleep didn't occur, and it receives a single value each time.  Which is what I'd expect, but fails to happen reliably (especially when under high cpu use).

You should not use time.Sleep() within your workflow code. If you replace time.Sleep() with workflow.Sleep() it should work as you expected.

I know - that was a demonstration that wall-clock time does not affect the time-skipped values, in response to you saying it does.


SaveGame Console

I'm currently working on a game dev project, in it we use your SPUD plugin but we have now a problem with the save system in consoles. In your subsystem have a comment related with this. have you work on this and have a new approch or idea of how to solve it? Or how to implement de generic SaveGameToSlot with your system.

I assume you're talking about Playstation? I can't work on this because I don't have a devkit. I know someone who made a couple of small changes to make it work on PS5 but couldn't share them because of the NDA. I can maybe ask them if they'd post it on the Sony dev forums or something.

I can maybe ask them if they'd post it on the Sony dev forums or something.

This is certainly something I would be interested in too, if possible :)

Looks like someone posted at least some of the answer here, not sure how legal it was to do that but it's not me so it's fine ;) https://github.com/ihavenick/SPUD/commit/bf15e24cd934d763f9bfe09ca526dd8ce61e7798
This wasn't the full solution, they also had to mount a save data path but again that looks like NDA code so I can't share it.
I've asked them to post the full solution on the Sony forums but I don't know how often they check their Discord messages.

They've got back to me and will indeed post something in the Sony forums when they get time & send me the link to forward to this thread.

Sorry for late response, I was busy in my life :(
https://game.develop.playstation.net/forums/nodejump/2113391
You guys can find the patch here.
How it can help you.


Allow modification of "Create new Picture" product feature on a role.

Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1727948
The ability to edit a role to enable the Create new Picture product feature was missing.
Prior to this PR the role associated with the user used to issue the Create new Picture
API call must have Everything enable for Product Features.
This PR adds that functionality under the API Product Features, as this functionality is
only available from the API.
Steps for Testing/QA [Optional]
Save the below script and set the image omitted due to size to be a valid image
in file, e.g.: /tmp/create_one_pictures.rb
#!/usr/bin/env ruby

# Jump past this huge data to the bottom of this source file

request_hash =
{
    "extension": "png",
    "content": "image omitted due to size"
}

require 'json'
require 'net/http'
require 'openssl'
require 'uri'

uri = URI.parse("https://#{ENV['MIQ']}/api/pictures")

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(uri.request_uri)
request.basic_auth("new_user_2", "smartvm")
request.body = JSON.generate(request_hash)
response = http.request(request)
puts JSON.pretty_generate(JSON.parse(response.body.strip))

Create a new role in ManageIQ
Edit the role and uncheck the Everything box
Click all other boxes next to all other product features, making sure the new
API/Pictures/Create new Picture Product Feature is checked.
Create a new group with the new role create above
Create a new user named, for example, new_user_2
Run the following shell commands on a separate system, e.g.
a laptop on the same network as the ManageIQ appliance:

export MIQ="IP Address to the test MangeIQ appliance"
chmod a+x /tmp/create_one_pictures.rb
/tmp/create_one_pictures.rb

Confirm the new picture was create on the appliance

@miq-bot assign @h-kataria

@miq-bot add_label bug

@miq-bot add_label hammer/yes

Hammer backport details:
$ git log -1
commit dad22d8d50491dff12740ee26ea6b79402fc5842
Author: Harpreet Kataria<EMAIL_ADDRESS>Date:   Tue Jul 16 09:35:50 2019 -0400

    Merge pull request #18982 from jvlcek/bz_1727948_picture_product_feature

    Allow modification of "Create new Picture" product feature on a role.

    (cherry picked from commit 781bb9e911695c32e2138d910509cfe1c58e71fc)

    Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1731157


Is the website broken?

 I’m trying to view the content on the website, but there is nothing there. I tried in Chrome on macOS. See the attached video. Shouldn’t there be a big table that lists all the Fugu APIs or something like that?
https://github.com/GoogleChromeLabs/fugu-tracker/assets/716405/b11bed93-7c08-469e-ad37-50d5456a3978

Yes, the root cause is https://github.com/GoogleChromeLabs/fugu-tracker/issues/47.


Enhancements to container support variable name and definition

During a design discussion we received the following feedback:

change the variable name to io.openliberty.tools.projectRoot. The previous name lacked the word tools and made it appear that the variable was related to the runtime rather than the tools.

Instead of defining the variable value in bootstrap.properties we should define it in an xml file in configDropins. This way we can avoid modifying a file the user may be using.

Pull request #839


bigquerydatatransfer_v1.projects.transferConfigs.html#list doesn't support locations/{location_id} but its documentation says so

Environment details

OS type and version: Ubuntu 16.04
Python version: Python 3.7.6
pip version: pip 20.1
google-api-python-client version: 1.8.3

Steps to reproduce

Try to list the transfer configs of a project located in Europe
The result is empty

Code example
from google.oauth2 import service_account
import googleapiclient.discovery

SCOPES = ['https://www.googleapis.com/auth/bigquery', "https://www.googleapis.com/auth/cloud-platform"]
SERVICE_ACCOUNT_FILE = os.path.expanduser('~/work/boost/BQ_service_account.json')

credentials = service_account.Credentials.from_service_account_file(SERVICE_ACCOUNT_FILE, scopes=SCOPES)
bqadmin = googleapiclient.discovery.build('bigquerydatatransfer', 'v1', credentials=credentials)

print(bqadmin.projects().transferConfigs().list(parent=f"projects/{c.project_id}/locations/eu").execute())

Stack trace
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-87-102c3d42ef1d> in <module>
      8 bqadmin = googleapiclient.discovery.build('bigquerydatatransfer', 'v1', credentials=credentials)
      9
---> 10 print(bqadmin.projects().transferConfigs().list(parent=f"projects/{c.project_id}/locations/europe").execute())

~/.pyenv/versions/3.7.6/lib/python3.7/site-packages/googleapiclient/discovery.py in method(self, **kwargs)
    780                         raise TypeError(
    781                             'Parameter "%s" value "%s" does not match the pattern "%s"'
--> 782                             % (name, pvalue, regex)
    783                         )
    784

TypeError: Parameter "parent" value "projects/spartan-thunder-179007/locations/eu" does not match the pattern "^projects/[^/]+$"

If I try with parent=f"projects/{c.project_id}, I get an empty dict. However, running this command in my shell:
bq ls --transfer_config --transfer_location=eu --project_id=spartan-thunder-179007 --max_results=50

returns the results I expect. Furthermore, the documentation of the transferConfigs.list() method reads:
Args:
  parent: string, Required. The BigQuery project id for which data sources
  should be returned: `projects/{project_id}` or
  `projects/{project_id}/locations/{location_id}` (required)

You use wrong method. You should use projects.locations.transferConfigs.list method.

it works indeed with the method you mentioned, thank you @mik-laj.
I'll leave the issue since I feel the documentation is a bit misleading.

I'm not too sure how much we'll be able to do about this as the documentation is generated from the discovery document. Perhaps we can ask the API team to tweak the resource descriptions?
Will leave this open as a docs issue.

I'm going to close this issue as it is recommend to move to the google-cloud-bigquery-datatransfer library here.


Unable to log in with log in details

I had this issue a month ago as well, it was fixed by Lars, the problem now occurs again (seems version independent). The issue is that when I try to log in with the same username and password that I have been using for the past few months, It says that the login is invalid.

Fixed as part of #215


[Feature Request] Align player inventory to the center, when crafting recipes book is opened

When crafting recipes books is open, it causes shifting of tabs, when changing between tabs (see screenshots below).
My idea is to align main player inventory to the center, when this book is opened

State
Screenshot

Crafting book is open

Crafting book is closed

That feature is a bit out of scope for this mod. You can use the mod "Better Recipe Book" with the option "Keep crafting screens centered" selected to achieve this.


fix: improve package matching for imports

I am running into an issue where github.com/foo/bar-tools is being considered a local import for github.com/foo/bar. If this PR is ok is there any chance you could create a release with the fix?

Also I could not really see how to test the change, as it does not look like the import extraction is currently tested?

Hey, thanks for the fix.
Yes, automatic testing is pretty missing for now, some things can be tested via e2e tests (go test) or unit (go test ./...) and other things can be tested only manually.