An exception in a VisionProcessor's onDrawFrame(...) method causes unstable robot behavior

This has been a difficult issue to untangle, but I think wee have finally figured out what is going on. We have experienced several instances of strange and sometimes unsafe robot behavior since the release of version 8.2, and this issue may explain it. Apologies for the issue length, I tend to just keep writing, but I want all of the details documented in case it helps.
If any uncaught exception occurs in a VisionProcessor's onDrawFrame(...) method (or presumably anything else running on that thread), the robot program will partially crash, but parts of the program will continue to run in an unstable state. The resulting behavior varies wildly, sometimes resulting in unsafe situations such as the robot not obeying the driver station's stop button.
Example Project
A minimal example that reproduces this issue can be found here:
https://github.com/BladeBot/onDrawFrameCrashDemo
This example uses SDK 9.0.1, and was tested on a Rev Control Hub using a Rev Driver Hub. Whether an expansion hub is present doesn't seem to matter.
Two motors labeled "Lift" and "Pivot" are present in this example, but are not needed for the issue to happen. They are for demonstrating whether the opmode is still running and controlling motors when it should not be. Lift follows an open loop sine wave, while pivot continuously rotates.
A webcam labeled "Webcam 1" is required.
10 seconds after the opmode is started, the ColorProcessor vision processor will divide by 0 in onDrawFrame, triggering the issue.
The example also has commented out vision code we were working on as an example of how this issue can be encountered naturally. It is a port of EasyOpenCV code, requiring a visualization to be programmed in onDrawFrame for feedback via the VisionPortal. This resulted in sneaky ConcurrentAccessExceptions that could occur with variable timing, presumably depending on how the threads lined up. It could happen immediately after VisionPortal setup, be absent for an entire meeting, or appear when color calibration values entered a certain range. The logging behavior described below made determining what was happening very difficult. (The ConcurrentAccessExceptions are not the issue here, just an example of a potential common trigger. It's an easy trap if you don't realize the two functions are on separate threads!)
I haven't seen every possible outcome described below with this minimal example, so it is possible that other code or dependencies in our robot projects was partly responsible for specific behavior (FTCDashboard in particular might be a culprit, though we never use the opmode controls in it). I think it's just down to the randomness of what happens and not having run this example nearly as much as student robot code. We haven't had any further incidents at all since fixing the ConcurrentAccessExceptions so I am quite confident that the issues all at least started with this bug occurring.
Behavior
When an exception occurs in onDrawFrame(), viewing the robot's "screen" via an HDMI monitor or something like scrcpy will show that the Robot Controller app has stopped along with a prompt to reopen it. No exception is recorded in the robot's logs, and none is shown on the Driver Station. What exactly happens next varies; rebooting the robot or redeploying code (if possible) seems to affect the results, even if the program is unchanged.
The current opmode may or may not continue running despite the "app" having "quit". If it stops, it may stop such that motors freeze at their last set speed for a second before stopping. If it continues running, more strange and inconsistent behavior occurs.
The most concerning effect we have observed is some sort of desync between the driver station and robot program, such that hitting stop on the driver's station shows the opmode has stopped when it in fact has not. If the opmode is an autonomous that was waiting for some sort of sensor input, it may take off unexpectedly! Usually the next button press on the driver station app will crash either it or the robot program.
Trying to restart the robot program such as by redeploying code or using the robot's screen can also have unusual effects. For example, the new app may immediately crash on opening, failing to replace the existing one until reboot. My understanding of the exception (which I don't have in front of me to paste here) was that it fails to get some sort of lock that is still held by the remnants of the previous app. (One hypothetical cause we thought of for the DS/Robot 'desync' is that parts of two robot programs end up running simultaneously?)
Expected Behavior / Solution
Regardless of the inconsistent outcomes, we think the correct solution is to make sure that an exception in onDrawFrame successfully halts the rest of the robot program just like any other exception in team written code. Preferably, it would also report the exception in the robot's logs and display it on the Driver Station.

Hey there, author of EOCV here....
Yes, exceptions in the frame handler should E-stop the OpMode, but (and we actually already discovered this a little bit ago), the new SDK broke the ABI and so EOCV is trying to call a function that doesn't exist while handling the crash, which causes a different crash.
One difficulty is that an exception on the OpMode thread by its very occurance terminates the OpMode, but an exception on the vision thread does not terminate the OpMode thread. EOCV attempts to work around this, but it's the workaround code that's crashing as described above.
Aside from that though, the app crashing should trigger a 2500ms no comms timeout from the Control Hub daughter board....

Side note: an interim workaround would be to manually guard the contents of your onDrawFrame() (and processFrame() too for that matter) functions with a try/catch.

This issue has been patched upstream in EOCV https://github.com/OpenFTC/EasyOpenCV/commit/beacd4939f8b588305e29d28c1d1c183f3ea0d68 and will be fixed in the next release.

This will be fixed in the next release of the FTC SDK.

Fixed in v9.1


Every time I write something,it starts with a new row and every time delete it,it starts deleating with some twitching.

Environment (please complete the following information):

OS (e.g., Windows 10):
Extension version (e.g., 1.2.3):

Describe the bug:

Repro steps:

Expected behavior:

Additional context:

Every time I write something,it starts with a new row and when I start deleating the text,it starts deleting with some twitching.
https://github.com/microsoft/vscode-edge-devtools/assets/157261322/d0879953-1a37-4af2-bd6e-7e98800ec467

This is most likely not an issue of the vscode-edge-devtools extension (which this repo is about).
Please file your issue again on the main vscode repository: https://github.com/microsoft/vscode
Thanks for your understanding.


test(servicepack-deploy): added unit tests

Issue
#140
Intent
Unit test sasjs servicepack deploy command.
Implementation

Fixed sasjs-servicepack/deploy.
Refactored access_token env.
Updated tests related dependencies.
Added unit test covering sasjs servicepack deploy command.

Checks

[x] Code is formatted correctly (npm run lint:fix).
[x] Any new functionality has been unit tested.
[x] All unit tests are passing (npm test).

[x] All CI checks are green.
[ ] JSDoc comments have been added or updated.

Great work! 💯

thanks)

:tada: This PR is included in version 1.14.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Eve URLs are configurables in the EsiBuilder

I've made a change to the EsiBuilder to be able to specify the used URLs in the lib.
The goal is to be able to specify our own custom URLs, to create integration tests with WireMock, for example.

Released in 0.42.0. Thanks!


Add ZLEMA to MovingAverageTypeExtensions.cs and MovingAverageType.cs

Description

Add ZLEMA to Indicators/MovingAverageTypeExtensions.cs and Indicators/MovingAverageType.cs
Related Issue

#8176
Motivation and Context

Following #8118
PR #8148 implemented ZLEMA but didn't add it to Indicators/MovingAverageTypeExtensions.cs and Indicators/MovingAverageType.cs
See https://github.com/QuantConnect/Lean/pull/8148#issuecomment-2215292999
Requires Documentation Change

N/A
How Has This Been Tested?

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] Refactor (non-breaking change which improves implementation)
[ ] Performance (non-breaking change which improves performance. Please add associated performance test and results)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Non-functional change (xml comments/documentation/etc)

Checklist:

[x] My code follows the code style of this project.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.
[x] My branch follows the naming convention bug-<issue#>-<description> or feature-<issue#>-<description>

Done


Compilation successful in negative duration

Am I the only one getting this?

Same here

Same here

Same here

This is a known issue with nuxt 1.x :(
But good news is that is will be resolved soon with upcoming version :)

Should be resolved with nuxt-edge.


OS tabs should be in sync

Example: https://www.prisma.io/docs/understand-prisma/under-the-hood#prisma-engines
On this URL, switching to windows on one tab should switch to windows for all the tabs. Usually, a user is looking at docs for a specific OS.

Closing due to being outdated.


Remove unused error type CannotConvertError

Changes
First commit is just a run of ./hack/update-deps.sh on my machine. It has unexpected changes. I did it with go1.16.8.
Then, when looking at reducing the visibility of ConvertErrorf to package private, I found out that CannotConvertError was not used. I propose to remove it. Although, I don't know if you consider this as an API breakage 🙏
/kind cleanup

Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[ ] Docs included if any changes are user facing
[ ] Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including
functionality, content, code)
[x] Release notes block below has been filled in or deleted (only if no user facing changes)

Release Notes

Remove unused error type CannotConvertError

/lgtm

/test pull-tekton-pipeline-alpha-integration-tests


Error with tutorial examples

Hi, I'm using the 4-gram.arpa from kenlm,  when I run
import kenlm

from pyctcdecode import build_ctcdecoder
kenlm_model = kenlm.Model("./4-gram.arpa")
labels = [
    " ", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l",
    "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z",
]
decoder = build_ctcdecoder(
    labels,
    kenlm_model,
    alpha=0.5,  # tuned on a val set
    beta=1.0,  # tuned on a val set
)

I get the following error with build_ctcdecoder
TypeError: Cannot convert <class 'kenlm.Model'> to string
How do I resolve this?

build_ctcdecoder takes a model path, not a model I believe

Had the same problem, fixed it with #62

The PR is merged now, so I'm going to close this. Thanks!


daily job running mobile example on real devices

Objective

Test mobile example on real devices

Solution

Use BrowserStack to have access to real devices

App Automate to run the example
App Percy to compare the screenshot

Added a daily/manual CI job that will build for iOS and Android, send the apps to BrowserStack, run the app on one iOS device and one Android device, capture a screenshot, send it for visual validation, and archive it in the GitHub action

Example run: https://github.com/mockersf/bevy/actions/runs/4521883534
They currently have a bug with the settings to view snapshots, they should be public. I'll raise it to them, and if they don't fix it in time it's possible to work around for everyone to view the results through their API.
Current usage is made to work within their free monthly tier of 100 minutes on mobile and 5000 screenshots
@cart to get this to work, you'll need

to set up an account on BrowserStack
add the secrets BROWSERSTACK_USERNAME and BROWSERSTACK_ACCESS_KEY to the Bevy repo
create a project in Percy
add the secret PERCY_TOKEN to the Bevy repo and modify the project name line 122 in the Daily.yml file

Controversial label added because of the third party integration. Strongly in favor of this though: there's a been quite a few surprising regressions, and if we're going to get mobile support working in earnest we need to be testing on real devices.

(@mockersf sent me the secrets. I added them to the Bevy Org and gave the bevy repo access)


Code highlighting in README

hi to make the camera preview fully available i made two small changes to layout.


Added new service module for mautrix-discord

mautrix-discord is a Matrix <-> Discord bridge based on Mautrix. It has massive advantages over matrix-appservice-discord as it can bridge DMs as well as regular discord servers. The package was already in nixpkgs, but a service module with secret management and sensible defaults was missing. Here is the said module in this PR based on the one for mautrix-meta.
Things done

[x] Tested, as applicable
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

I'm not sure how you want me to fix that. Do you want me to revert the modifications to the maintainer list and recommit it?

You need to modify commit history, git rebase -i can be helpful.

Had a bit of a hard time, but everything seems good now. Thanks for the tip!

You're supposed to have only 2 commits:

maintainers: add willbou1 (this one is OK)
mautrix-meta: init service (you have 6 commits instead of 1)


Sl/memcache

Task
Memcache for server side sessions
Description
Add memcache as a storage backend.
Reviewer Notes
I think going commit by commit will make review easier.
We could implement garbage collection for memcache by looking into the timing options / absolute timeout, but I want to keep things simple for now. If no garbage collection was fine before, it is fine now as well.

I'd like to see the expiration type stuff more heavily typed and pulled out into its own module, because it seems rather subtle. I'm a bit irritated that the memcache library we're using didn't do this already. wdyt of this as a start...
-- |
--
-- The types here are abstract because their meanings and construction are a little tricky.
module Yesod.Session.Memcache.MemcacheExpiration
  ( -- * Types
    Expiration
  , ExpirationMaybe
  , ExpirationSeconds

    -- * Elimination
  , EncodeExpiration (..)

    -- * Introduction
  , seconds
  , duration
  , noExpiration
  ) where

import Internal.Prelude

import Data.Bits (Bits, toIntegralSized)
import Time

class EncodeExpiration a where
  -- | Convert to the way expiration is represented in memcache's wire format
  encodeExpiration :: a -> Word32

-- | Memcache expiration time, expressed as either a number of seconds or
--   a Posix timestamp
newtype Expiration = Expiration Word32

instance EncodeExpiration Expiration where
  encodeExpiration (Expiration x) = x

-- | Memcache expiration time, expressed as either a number of seconds or
--   a Posix timestamp, or "no expiration"
newtype ExpirationMaybe = ExpirationMaybe Word32

instance EncodeExpiration ExpirationMaybe where
  encodeExpiration (ExpirationMaybe x) = x

-- | Memcache expiration time, expressed as a number of seconds
newtype ExpirationSeconds = ExpirationSeconds Word32

instance EncodeExpiration ExpirationSeconds where
  encodeExpiration (ExpirationSeconds x) = x

-- | Convert a number of seconds to a memcache expiration.
--
-- Throws if the duration is longer than 30 days.
seconds :: (Integral a, Bits a, MonadThrow m) => a -> m ExpirationSeconds
seconds a = do
  w :: Word32 <-
    maybe (throwWithCallStack $ InvalidDurationSeconds $ toInteger a) pure
      $ toIntegralSized a

  -- 0 means "no expiration", and the maximum duration is 30 days
  -- (the magic number).
  when (w == 0 || w > magicNumber)
    $ throwWithCallStack (InvalidDurationSeconds $ toInteger w)

  pure $ ExpirationSeconds w

-- | Rounds up to an integral number of seconds, then converts with 'seconds'
--
-- It is important that we round up and not down here so that we never round to 0,
-- which would mean "no expiration."
duration :: MonadThrow m => NominalDiffTime -> m ExpirationSeconds
duration = seconds . (ceiling :: Pico -> Integer) . nominalDiffTimeToSeconds

noExpiration :: Expiration
noExpiration = Expiration 0

-- | Maximum timestamp that will be interpreted as a duration in seconds by Memcache
--
-- This is 30 days in seconds.
--
-- See: https://github.com/dterei/memcache-hs/blob/83957ee9c4983f87447b0e7476a9a9155474dc80/Database/Memcache/Client.hs#L49-L59
magicNumber :: Word32
magicNumber = 2592000

data MemcacheExpirationException
  = InvalidNominalDiffTime NominalDiffTime
  | InvalidDurationSeconds Integer
  deriving stock (Eq, Show)
  deriving anyclass (Exception)

Deferring to other reviewers on this one.

I'd like to see the expiration type stuff more heavily typed and pulled out into its own module, because it seems rather subtle. I'm a bit irritated that the memcache library we're using didn't do this already. wdyt of this as a start...
-- |
--
-- The types here are abstract because their meanings and construction are a little tricky.
module Yesod.Session.Memcache.MemcacheExpiration
  ( -- * Types
    Expiration
  , ExpirationMaybe
  , ExpirationSeconds

    -- * Elimination
  , EncodeExpiration (..)

    -- * Introduction
  , seconds
  , duration
  , noExpiration
  ) where

import Internal.Prelude

import Data.Bits (Bits, toIntegralSized)
import Time

class EncodeExpiration a where
  -- | Convert to the way expiration is represented in memcache's wire format
  encodeExpiration :: a -> Word32

-- | Memcache expiration time, expressed as either a number of seconds or
--   a Posix timestamp
newtype Expiration = Expiration Word32

instance EncodeExpiration Expiration where
  encodeExpiration (Expiration x) = x

-- | Memcache expiration time, expressed as either a number of seconds or
--   a Posix timestamp, or "no expiration"
newtype ExpirationMaybe = ExpirationMaybe Word32

instance EncodeExpiration ExpirationMaybe where
  encodeExpiration (ExpirationMaybe x) = x

-- | Memcache expiration time, expressed as a number of seconds
newtype ExpirationSeconds = ExpirationSeconds Word32

instance EncodeExpiration ExpirationSeconds where
  encodeExpiration (ExpirationSeconds x) = x

-- | Convert a number of seconds to a memcache expiration.
--
-- Throws if the duration is longer than 30 days.
seconds :: (Integral a, Bits a, MonadThrow m) => a -> m ExpirationSeconds
seconds a = do
  w :: Word32 <-
    maybe (throwWithCallStack $ InvalidDurationSeconds $ toInteger a) pure
      $ toIntegralSized a

  -- 0 means "no expiration", and the maximum duration is 30 days
  -- (the magic number).
  when (w == 0 || w > magicNumber)
    $ throwWithCallStack (InvalidDurationSeconds $ toInteger w)

  pure $ ExpirationSeconds w

-- | Rounds up to an integral number of seconds, then converts with 'seconds'
--
-- It is important that we round up and not down here so that we never round to 0,
-- which would mean "no expiration."
duration :: MonadThrow m => NominalDiffTime -> m ExpirationSeconds
duration = seconds . (ceiling :: Pico -> Integer) . nominalDiffTimeToSeconds

noExpiration :: Expiration
noExpiration = Expiration 0

-- | Maximum timestamp that will be interpreted as a duration in seconds by Memcache
--
-- This is 30 days in seconds.
--
-- See: https://github.com/dterei/memcache-hs/blob/83957ee9c4983f87447b0e7476a9a9155474dc80/Database/Memcache/Client.hs#L49-L59
magicNumber :: Word32
magicNumber = 2592000

data MemcacheExpirationException
  = InvalidNominalDiffTime NominalDiffTime
  | InvalidDurationSeconds Integer
  deriving stock (Eq, Show)
  deriving anyclass (Exception)

Though I have not looked at this thoroughly, it might be better for an upstream PR to memcache-hs.


Fix parens for warning in Ruby 2.6.5

Small chance to fix an extra space in the method definition - def eof? () => def eof?() (without space)
Fixes the warning
/.gem/ruby/2.6.5/gems/osc-ruby-1.1.3/lib/osc-ruby/network_packet.rb:15: warning: parentheses after method name is interpreted as an argument list, not a decomposed argument

Arguably the empty parens for methods like this could be removed  but that's more of a stylistic thing across the whole project.

Great!  Thanks for noticing that warning.  I wish there was a way to make the build fail when there were warnings.


Improve datasets test coverage to 90%

Currently test coverage of datasets is 68.61%

[ ] Improve datasets/conll.py coverage to > 90%
[ ] Improve datasets/download.py coverage to > 90%
[ ] Improve datasets/hoc.py coverage to > 90%
[ ] Improve datasets/winer.py coverage to > 90%

Here is a coverage map
https://codecov.io/gh/wellcometrust/WellcomeML/tree/master/wellcomeml/datasets

I'll have a look at this one

Incidentally, I can't get the winer dataset from s3, for some reason it is forbidded. Might need to check the acl on that file.
2020-10-02 14:12:29 wellcomeml.logger INFO: Could not find dataset conll. Downloading from S3
2020-10-02 14:12:33 wellcomeml.logger INFO: Could not find dataset hoc. Downloading from S3
2020-10-02 14:12:39 wellcomeml.logger INFO: Could not find dataset winer. Downloading from S3
Traceback (most recent call last):
  File "foo.py", line 7, in <module>
    check_cache_and_download("winer")
  File "/home/matthew/Documents/wellcome/WellcomeML/wellcomeml/datasets/download.py", line 45, in check_cache_and_download
    tmp_file,
  File "/home/matthew/Documents/wellcome/WellcomeML/build/virtualenv/lib/python3.7/site-packages/boto3/s3/inject.py", line 172, in download_file
    extra_args=ExtraArgs, callback=Callback)
  File "/home/matthew/Documents/wellcome/WellcomeML/build/virtualenv/lib/python3.7/site-packages/boto3/s3/transfer.py", line 307, in download_file
    future.result()
  File "/home/matthew/Documents/wellcome/WellcomeML/build/virtualenv/lib/python3.7/site-packages/s3transfer/futures.py", line 106, in result
    return self._coordinator.result()
  File "/home/matthew/Documents/wellcome/WellcomeML/build/virtualenv/lib/python3.7/site-packages/s3transfer/futures.py", line 265, in result
    raise self._exception
  File "/home/matthew/Documents/wellcome/WellcomeML/build/virtualenv/lib/python3.7/site-packages/s3transfer/tasks.py", line 255, in _main
    self._submit(transfer_future=transfer_future, **kwargs)
  File "/home/matthew/Documents/wellcome/WellcomeML/build/virtualenv/lib/python3.7/site-packages/s3transfer/download.py", line 343, in _submit
    **transfer_future.meta.call_args.extra_args
  File "/home/matthew/Documents/wellcome/WellcomeML/build/virtualenv/lib/python3.7/site-packages/botocore/client.py", line 357, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/home/matthew/Documents/wellcome/WellcomeML/build/virtualenv/lib/python3.7/site-packages/botocore/client.py", line 676, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (403) when calling the HeadObject operation: Forbidden

Let me have a look

Somehow it was public - thanks for finding this bug. Should work now, can you try again?

thanks!

yep that works.

Btw there are also a number of files that seem to be artefacts of an OSX system - all these files prefixed with _
(virtualenv)  matthew@xps15  ~/.cache/wellcomeml/data  la conll
.rw-r--r--  176 matthew  2 Jun  9:04 ._eng.testa
.rw-r--r-- 827k matthew  2 Jun  9:04 eng.testa
.rw-r--r-- 748k matthew  2 Jun  9:05 eng.testb
.rw-r--r-- 3.3M matthew  2 Jun  9:04 eng.train
(virtualenv)  matthew@xps15  ~/.cache/wellcomeml/data  la hoc
.rwxr-xr-x  212 matthew  3 May  2019 ._dev.tsv
.rwxr-xr-x  212 matthew  1 Apr  2019 ._dev_docid.txt
.rwxr-xr-x  212 matthew  3 May  2019 ._original
.rwxr-xr-x  212 matthew  3 May  2019 ._test.tsv
.rwxr-xr-x  212 matthew  1 Apr  2019 ._test_docid.txt
.rwxr-xr-x  212 matthew  3 May  2019 ._train.tsv
.rwxr-xr-x  212 matthew  1 Apr  2019 ._train_docid.txt
.rwxr-xr-x 273k matthew  3 May  2019 dev.tsv
.rwxr-xr-x 1.6k matthew  1 Apr  2019 dev_docid.txt
drwxr-xr-x    - matthew  3 May  2019 original
.rwxr-xr-x 547k matthew  3 May  2019 test.tsv
.rwxr-xr-x 3.1k matthew  1 Apr  2019 test_docid.txt
.rwxr-xr-x 2.0M matthew  3 May  2019 train.tsv
.rwxr-xr-x  10k matthew  1 Apr  2019 train_docid.txt
(virtualenv)  matthew@xps15  ~/.cache/wellcomeml/data  la winer
.rw-r--r--  176 matthew  1 Jun 10:25 ._CoarseNE.tar.bz2
.rw-r-----  176 matthew  1 Sep  2017 ._document.vocab
.rw-r--r--  176 matthew  1 Jun 10:30 ._Documents.tar.bz2
.rw-r--r--  176 matthew  1 Jun 10:32 ._README
.rw-r--r--  176 matthew 10 Jun 13:33 ._test.txt
.rw-r--r-- 6.1k matthew 10 Jun 12:52 .DS_Store
.rw-r--r-- 245M matthew  1 Jun 10:25 CoarseNE.tar.bz2
.rw-r-----  88M matthew  1 Sep  2017 document.vocab
.rw-r--r-- 1.9G matthew  1 Jun 10:30 Documents.tar.bz2
.rw-r--r-- 5.0k matthew  1 Jun 10:32 README
.rw-r--r-- 5.8M matthew 10 Jun 13:33 test.txt
.rw-r--r--  15M matthew 10 Jun 13:33 train.txt

If I open one (conll/._eng.testa), this is what i find:
����Mac OS X        ����	���2���~������°��������������������������������������ATTR�������°��� ��������������������� �����com.apple.lastuseddate#PS����Q^Ö^����	Èç����

Thanks! I think this was uploaded by @lizgzil or @nsorros (can you guys check?)
In the meantime, are you able to proceed with the issue ignoring those?

Yep that's no problem. What's more tricky is that the functions are very tightly coupled with the individual datasets, so it is hard to test them. hoc and conll are small, so probably the best way to test them is just to run them as part of test. winer is big though, so that one will take a bit of thought.

That said conll and hoc are still megabyte scale, so its not ideal.

I think adding a mock dataset to /tests/data is the preferred path. Perhaps we can add/upload mock datasets to S3 as well?

Yep that's what i was thinking, just building a mock dataset now

I may have missed something but test_winer and test_conll already use mock datasets kept in tests/test_data.

working on deleting those underscore files and updating s3 to not include them

Fixed for hoc @ivyleavedtoadflax @lizgzil

@nsorros nice

should be corrected for winer and conll now too

I may have missed something but test_winer and test_conll already use mock datasets kept in tests/test_data.

ooh sounds like I have been missing something!


Casing issue

Description
Some calls still require a payload in snake_case, but the SDK converts everything to camelCase.
A solution can be to add a parameter to leave the casing?

Jira: https://extrahorizon.atlassian.net/browse/SVCS-445

Was fixed in v8.0.0 with the normalizeCustomData feature


[material-ui][Switch] "Unsupported 76, 78, 100 color" error

Steps to reproduce
Steps:

Use Switch from @mui/material on any version from 5.15.12 to 5.15.15

Current behavior

Expected behavior
It should render switch component with on/off functionality
Context
No response
Your environment
System:
OS: Windows 11 10.0.22631
Binaries:
Node: 18.17.1 - C:\Program Files\nodejs\node.EXE
npm: 9.6.7 - C:\Program Files\nodejs\npm.CMD
pnpm: Not Found
Browsers:
Chrome: Not Found
Edge: Chromium (123.0.2420.65)
npmPackages:
@emotion/react: ^11.11.4 => 11.11.4
@emotion/styled: ^11.11.0 => 11.11.0
@mui/base:  5.0.0-beta.40
@mui/core-downloads-tracker:  5.15.15
@mui/material: 5.15.15 => 5.15.15
@mui/private-theming:  5.15.14
@mui/styled-engine:  5.15.14
@mui/system:  5.15.15
@mui/types:  7.2.14
@mui/utils:  5.15.14
@types/react:  18.2.43
react: ^18 => 18.2.0
react-dom: ^18 => 18.2.0
styled-components:  5.3.11
Search keywords: switch, material, ^5.15.11

Hey @syedali042, could you please add more context to the error producing or share the snippinst "compnent" , Are you trying to use different color format ?

Hey, thanks for opening the issue! Could you provide a minimal reproduction? It helps us troubleshoot. A live example would be perfect. This StackBlitz sandbox template may be a good starting point.


Fix controller return type

Hello, this PR is a fix for the return type of a normal controller's methods.

Thank you for the contribution!
When was this changed in laravel?

Since v6 I believe, never got the chance to use that before 7 was released, so might be wrong.

Okay cool :)


poll()’s return on timeout not documented

The documentation for the poll() method doesn’t say what it returns when the timeout elapses. (It returns Ok(()).)
I naively expected it to return something like Err(std::io::Error::from(std::io::ErrorKind::TimedOut)). I see that it behaves like the select() and poll() syscalls though, so maybe I shouldn’t have been surprised.
It would be good to document this, including whether or not you can rely on the fact of the events collection being empty to indicate that it timed out.

The documentation for the poll() method doesn’t say what it returns when the timeout elapses. (It returns Ok(()).)
I naively expected it to return something like Err(std::io::Error::from(std::io::ErrorKind::TimedOut)). I see that it behaves like the select() and poll() syscalls though, so maybe I shouldn’t have been surprised.

Yep, we try to provide an API similar to what to OS provides to reduce surprises (ironically introducing a surprise here).

It would be good to document this, including whether or not you can rely on the fact of the events collection being empty to indicate that it timed out.

I'm not sure about this. I don't know if any, let alone all, OSs require their poll calls to only return zero events in case of a timeout.
What is your use case that you need to know whether or not the timeout is hit?

I’m using this to implement an option to kill a process when it doesn’t provide output for a given amount of time.
These are the two questions that I can’t answer based on the documentation (not asking you to answer them; just explaining my thinking):

How should I treat poll() returning without any events? Right now this situation isn’t strictly defined.
Is it worth tracking the elapsed time for the poll() call to determine if the timeout has expired, or shall I just assume that no events means that it ran into the timeout?

So, the real issue is that the behavior is undefined. Of course, that’s somewhat hard to avoid when you’re abstracting a bunch of different implementations.
I can do some research into how the underlying implementations handle timeouts and returns. I should be able to get to it by next Monday, August 8.

I’m using this to implement an option to kill a process when it doesn’t provide output for a given amount of time.
These are the two questions that I can’t answer based on the documentation (not asking you to answer them; just explaining my thinking):
1. How should I treat `poll()` returning without any events? Right now this situation isn’t strictly defined.

Currently Mio doesn't do anything special here, so whatever the OS returns so do we. This currently means that no events means the timeout is hit.

2. Is it worth tracking the elapsed time for the `poll()` call to determine if the timeout has expired, or shall I just assume that no events means that it ran into the timeout?

I don't thing tracking the time is worth is for Mio in general. I think you're better of with assuming that no events means the timeout is hit.

So, the real issue is that the behavior is undefined. Of course, that’s somewhat hard to avoid when you’re abstracting a bunch of different implementations.

It's unspecified, but yes. I think we can safely document that no events means the timeout is hit, but I don't know for sure.

I can do some research into how the underlying implementations handle timeouts and returns. I should be able to get to it by next Monday, August 8.

👍

So, a few clarifications to start. I think there are ideally two things that the mio docs should answer:

What does poll() return when it hits a timeout?
Is poll() guaranteed to return Ok(()) and 0 events only when it hits a timeout?

TL;DR: 1. Ok(()) and no events, 2. no. See the bottom of the comment for my proposal.
epoll_wait(2) Return Values

On success, epoll_wait() returns the number of file descriptors
ready for the requested I/O, or zero if no file descriptor became
ready during the requested timeout milliseconds.  On failure,
epoll_wait() returns -1 and errno is set to indicate the error.

It returns no events on timeout. You can see in the mio epoll code that it will return OK(()) and clear the events vec.
There is no guarantee that the only time it returns 0 events is on timeout, though I suspect that is true.

kqueue(2) Return Values

The kevent() system call returns the number of events placed in the
eventlist, up to the value given by nevents.  If an error occurs while
processing an element of the changelist and there is enough room in the
eventlist, then the event will be placed in the eventlist with EV_ERROR
set in flags and the system error in data.  Otherwise, -1 will be re-
turned, and errno will be set to indicate the error condition.  If the
time limit expires, then kevent() returns 0.

It returns no events on timeout. You can see in the mio kqueue code that it will return OK(()) and clear the events vec.
There is no guarantee that the only time it returns 0 events is on timeout, though I suspect that is true.

IOCP
…I looked at the docs briefly and decided it was going to be way too much work to understand IOCP.
However, I took a look at the mio code for IOCP and in the event of a timeout, it never adds any events to the events vec (after clearing it earlier).
This code suggests that it might be possible to get no events if an timeout is specified, but doesn’t elapse.

Ok(()) and 0 events on timeout.
The code suggests that there may be other situations where it returns Ok(()) and 0 events.

WASI
I can’t find a decent spec for this, but looking at the mio wasi code I suspect that a timeout will result in 0 events. Presumably if the timeout hits and an event hits at the same time, then the timeout is irrelevant.

Probably Ok(()) and 0 events on timeout.
No idea if other situations might return the same thing.

Proposal
I would follow the lead of epoll(2) and kqueue(2). I would add a single sentence paragraph to the poll() docs just before the paragraph that starts “Note that the timeout…”:

If timeout elapses, poll returns Ok(()) and events will be empty.

If that works for you I can prepare a PR.

Proposal
I would follow the lead of epoll(2) and kqueue(2). I would add a single sentence paragraph to the poll() docs just before the paragraph that starts “Note that the timeout…”:

If timeout elapses, poll returns Ok(()) and events will be empty.

I'm ok with documenting the current situation, but I don't think we can be this decisive. We're simply following what the OS does, so we can document that, but I don't think we can guarantee (or state in the docs) that events will always be empty if we hit a timeout.
It's think it would be better describe that currently all supported OSs return Ok(()) and no events, but we're not limiting ourselves to that.

I'm ok with documenting the current situation, but I don't think we can be this decisive. We're simply following what the OS does, so we can document that, but I don't think we can guarantee (or state in the docs) that events will always be empty if we hit a timeout.

That’s not true, though. IOCP returns an error on timeout, and mio swallows that, returns OK(()), and clears the events vec.
It seems like a very bad idea to make code the uses mio handle something as basic as timeouts in different ways depending on the underlying implementation.

I'm ok with documenting the current situation, but I don't think we can be this decisive. We're simply following what the OS does, so we can document that, but I don't think we can guarantee (or state in the docs) that events will always be empty if we hit a timeout.

That’s not true, though. IOCP returns an error on timeout, and mio swallows that, returns OK(()), and clears the events vec.

Right, but that's to match the behaviour of Unix (kqueue and epoll). But neither kqueue or epoll guarantee that it can't timeout and return an events, even though they usually always return when an event is found. Note the keyword gurantee vs. 90% of the time here, like I said before I'm ok with documenting it in general.

It seems like a very bad idea to make code the uses mio handle something as basic as timeouts in different ways depending on the underlying implementation.

Mio has many subtle difference we can't always smooth over, it's simply the nature of a low-level crate. We always do our best to document them though.

What I’m proposing is documenting the current situation. What about just saying:

If timeout elapses, poll returns Ok(()).

At core, that resolves the issue I have with this. As a consumer of the library, I need to know what mio does when it times out.

What I’m proposing is documenting the current situation. What about just saying:

If timeout elapses, poll returns Ok(()).

At core, that resolves the issue I have with this. As a consumer of the library, I need to know what mio does when it times out.

And I agree with documenting the current situation, just not with guaranteeing it. That's the difference we're talking about.

Ok, so what do you agree is the current situation? I just want to know so I (or somebody else, whatever) can submit a PR.


Fix headless browser tests

We had to disable the headless browser tests since they seemed to blow up on Travis CI for some reason. Need to figure out why they're blowing up and re-enable them.

Oops, wrong repo.


detox.init add launchApp parameter

Description
to launch app with permission I do:
before(async () => {
  await detox.init(config);
  await device.launchApp({permissions: {
    notifications: 'YES',
    location: 'always',
  }});
});

maybe exists another solution that I didn't find.
I that case app launches 2 times which is a little bit longer.
So my proposal to pass additional parameter to detox.init
for example like detox.init(config, launchParams)
and then later pass launchParams to launchApp here
https://github.com/wix/detox/blob/master/detox/src/devices/Device.js#L32

@rotemmiz We should support device.setPermissions() directly. That way, the user can set their permissions once in beforeAll.

Good idea, we would gladly accept a PR adding that functionality.
In the meantime, you can do the following:
before(async () => {
  await detox.init(config, {launchApp: false});
  await device.launchApp({permissions: {
    notifications: 'YES',
    location: 'always'
  }});
});

Thinking about this; since setting permissions requires a reboot of the sim, launch is necessary.


data corruption in struct

MWE:
using Enzyme

# make a test problem
struct Foo
    D::Vector{Float64}
end
const N = 5                      # dimension for MWE
(f::Foo)(x) = mapreduce((D, x) -> log(D) + exp(x), +, f.D, x)

ℓ = Foo(fill(2.0, N)) # note the 2.0
ℓ.D                   # before AD: filled with 2.0s
x = zeros(N)
∂ℓ_∂x = zero(x)
Enzyme.autodiff(Reverse, ℓ, Enzyme.Active, Enzyme.Duplicated(x, ∂ℓ_∂x))
ℓ.D                   # after AD: filled with 2.0s

(EnzymeMWE) pkg> st
Status `~/research/spouses-time-allocation/tmp/EnzymeMWE/Project.toml`
  [7da242da] Enzyme v0.10.17

julia> versioninfo()
Julia Version 1.8.5
Commit 17cfb8e65e* (2023-01-08 06:45 UTC)
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 8 × 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-13.0.1 (ORCJIT, tigerlake)
  Threads: 8 on 8 virtual cores

(Issue I mentioned in https://github.com/EnzymeAD/Enzyme.jl/issues/584#issuecomment-1416153125)

Looks like activity analysis cannot get the right answer statically. If you use Enzyme.API.runtimeActivity!(true) before running it fixes it, but let's leave this open so I can try to update activity analysis.

Is there a way I could rewrite the above to avoid the problem? I am not even sure which part is causing it.

As this now successfully throws a runtime activity error, am going to close (and it succeeds with runtime activity)


test: organize tests for maintainability

This change is

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

Project coverage is 62.32%. Comparing base (1d45e65) to head (c829af6).

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #61   +/-   ##
=======================================
  Coverage   62.32%   62.32%
=======================================
  Files          11       11
  Lines         292      292
  Branches      292      292
=======================================
  Hits          182      182
  Misses        105      105
  Partials        5        5

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

crates/gateway/src/stateless_transaction_validator_test.rs line 91 at r1 (raw file):
Previously, dafnamatsry wrote…
Indentation?
Also in the rest of the tests...

Done.


Audit boot size

The boot block is approaching the ~16MB triedent record size limit; it exceeds it when --no-doc isn't used.

I found one culprit: d28f5fa7f12708605268b694d92d974847599c66
The actual command executed is:
[19/21] cd .../rust-build && rm -rf ".../psibase/rust/psibase/boot-image/*" && mkdir ...

The double quotes added by cmake suppress glob expansion, which completely stops rm from doing anything.
ExploreSys generates unique file names on every build:
-rw-r--r--. 1 swatanabe swatanabe 24981 Dec  1 12:05 rust/psibase/boot-image/ExploreSys/ui/dist/dist/_app/immutable/start-686196bc.js
-rw-r--r--. 1 swatanabe swatanabe 24981 Dec  1 13:12 rust/psibase/boot-image/ExploreSys/ui/dist/dist/_app/immutable/start-4641986e.js
-rw-r--r--. 1 swatanabe swatanabe 24981 Dec  2 11:54 rust/psibase/boot-image/ExploreSys/ui/dist/dist/_app/immutable/start-0d06e378.js
-rw-r--r--. 1 swatanabe swatanabe 24981 Dec  2 11:59 rust/psibase/boot-image/ExploreSys/ui/dist/dist/_app/immutable/start-a7adb66b.js
-rw-r--r--. 1 swatanabe swatanabe 24981 Dec  2 12:06 rust/psibase/boot-image/ExploreSys/ui/dist/dist/_app/immutable/start-8350f546.js
-rw-r--r--. 1 swatanabe swatanabe 24981 Dec  2 12:17 rust/psibase/boot-image/ExploreSys/ui/dist/dist/_app/immutable/start-bc015141.js
-rw-r--r--. 1 swatanabe swatanabe 24981 Dec  2 12:23 rust/psibase/boot-image/ExploreSys/ui/dist/dist/_app/immutable/start-caec9844.js
-rw-r--r--. 1 swatanabe swatanabe 24981 Dec  2 12:29 rust/psibase/boot-image/ExploreSys/ui/dist/dist/_app/immutable/start-469e15ab.js
-rw-r--r--. 1 swatanabe swatanabe 24981 Dec  2 13:15 rust/psibase/boot-image/ExploreSys/ui/dist/dist/_app/immutable/start-6cacd3f9.js
-rw-r--r--. 1 swatanabe swatanabe 24981 Dec  5 07:41 rust/psibase/boot-image/ExploreSys/ui/dist/dist/_app/immutable/start-f1208428.js
...

Also, note how the behavior of cp changes when the directory exists, causing it to write to the wrong directory: dist/dist
@James-Mart

Just talked with steven about the boot block size, potential long term solution:

Construct the transactions needed for boot and add their hashes to the boot block.
Put the chain in a state that it will only accept the boot transactions until the chain is finished booting
Schedule the boot transactions in subsequent blocks to deal with arbitrary boot sizes.

This way the chain ID remains dependent on all boot parameters/transactions by the fact that the genesis block will still contain hashes of all boot sequence operations.


Add Map Book

have fun reviewing this lol
(this is a direct port from fixed, more features and tweaks will be added later - this version is pretty functional though)
(also currently it isnt configurable in any way)

lol. if it works im prob gonna check it as good as is (will check at code under the best of my capabilities tho lmao)

I remember a texture from eleanor i liked better tho, will try and see if i can find it hopefully

found it!

can we consider using this one instead? its just my personal preference though tbh. i feel like it looks more vanilla and, specially, it reflects better its use

i think theres a more up to date version of the texture tho, that looked better (im not sure). will tell ya if i find it

yeah i just used the one from the mirror
something that would be nice is a separate version for empty map books (like the writable/signed distinction in books)

Only thing missing would be to change the recipes to cartography table ones. Ofc theres more improvements to do, but we could merge this after that change, then make more PRs improving the mapbook in the future

Found bug: when using the cartography table, putting multiple mapbooks on the first slot and a map on the second one will just "spend" one of them from the first stack, while giving the same amount as result, allowing to duplicate mapbooks

Heres two screenshots showing what i mean:

im pretty sure i know exactly what the issue is there, thats funny lol


Make it possible to send commands as DM

Bot now listens to private messages sent on Discord

Ok, seems like some commands rely on guild / server context so they don't work as DM. Closing this until that's handled


Improve reverse() algorithm performance

Take a tile-based approach, reverse blocks in local memory and then write to global memory.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/7347919-improve-reverse-algorithm-performance?utm_campaign=plugin&utm_content=tracker%2F402515&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F402515&utm_medium=issues&utm_source=github).

I've implemented local memory solution (mentioned above) - https://github.com/haahh/compute/commit/c2e94838c6b478c60e60ac0de6911102cd5622e8. It is just first version and ofc needs refactor etc.
More important is that the performance is virtually the same (sometimes lower, sometimes higher) compared to current solution (only global memory) on my device (AMD Radeon HD7770). Also global memory solution is more stable in terms of performance. When buffer is small (<10000) difference is noticeable to the disadvantage of local memory solution.
I tested it with CodeXL GPU Performance counters (running perf_reverse), 10 tests for each version of kernel.
I think it's because with current solution reading and writing from global memory is already coalesced/contiguous/adjacent.
   decl<cl_uint>("i") << " = get_global_id(0);\n" <<
   decl<cl_uint>("j") << " = size - get_global_id(0) - 1;\n" <<
   decl<value_type>("tmp") << "=" << first[var<cl_uint>("i")] << ";\n" <<
   first[var<cl_uint>("i")] << "=" << first[var<cl_uint>("j")] << ";\n" <<
   first[var<cl_uint>("j")] << "= tmp;\n";

I mean this part  decl<value_type>("tmp") << "=" << first[var<cl_uint>("i")] << ";\n" is obviously coalesced, textbook example. And this part  first[var<cl_uint>("i")] << "=" << first[var<cl_uint>("j")] << ";\n" is read/write in reversed manner. Device OpenCL compiler and/or device drivers (I dont know details) know what to do so it would be coalesced.
Probably with older devices (NVIDIA GPU with CC 1.0/1.1) using local memory would be some difference. I will test it later.

I guess we should stick with the current naive implementation as it performs well. Thanks for trying this out and getting the performance numbers!


Fix decrementing of active_faults gauge

This fixes a bug that resulted in active_faults gauge not being decremented for abort faults that don't have corresponding delay faults.
What was the root cause of the issue? Previous logic was incrementing an active_faults gauge after a sendLocalReply method call and decrementing it inside of an onDestroy method. This didn't work since a sendLocalReply method call results in a sync call of an faultfilter's onDestroy method.
Because of this, this was the order of operations prior to the fix that's being introduced in this PR:

sendLocalReploy method is called.
onDestroy method is called on faultfilter.
faultfilter check whether it  needs to decrement active_faults gauge. It decides that nothing has to be done since active_faults gauge hasn't been incremented yet.
active_faults gauge is incremented.

Risk Level: Low, fixing a bug in code
Testing: Integration tests that are red if a fix is reverted
Docs Changes: None
Release Notes: Updated
Fixes #Issue https://github.com/envoyproxy/envoy/issues/11504
Signed-off-by: Rafal Augustyniak<EMAIL_ADDRESS>

@mattklein123 Could you approve it one more time? I’ve done additional improvements in tests per @gkleiman’s suggestion


Make Rack comparable to middleman server

An attempt to refactor our internals so Rack can also have access to the file watcher and reloading.

upgrading to Middleman 3.4.0 required updating config.ru as instructed here
require 'rubygems'
require 'bundler/setup'
require 'middleman-core/load_paths'

Middleman.setup_load_paths

require 'middleman-core'
require 'middleman-core/preview_server'

class Middleman::PreviewServer
  def self.preview_in_rack
    @server_information = ServerInformation.new
    @options = {  }
    @app = new_app
    start_file_watcher
  end
end

Middleman::PreviewServer.preview_in_rack
run Middleman::PreviewServer.app.class.to_rack_app

with
@options = { latency: 0.25  }


abuseipdb: Feature - Change lookup ip action to support IPv6

Please ensure your pull request (PR) adheres to the following guidelines:

Please refer to our contributing documentation for any questions on submitting a pull request, link: Contribution Guide

Pull Request Checklist
Please check if your PR fulfills the following requirements:

[x] Testing of all the changes has been performed (for bug fixes / features)
[x] The manual_readme_content.md has been reviewed and added / updated if needed (for bug fixes / features)
[x] Use the following format for the PR description: <App Name>: <PR Type> - <PR Description>
[x] Provide release notes as part of the PR submission which describe high level points about the changes for the upcoming GA release.
[x] Verify all checks are passing.
[x] Do NOT use the next branch of the forked repo. Create separate feature branch for raising the PR.
[x] Do NOT submit updates to dependencies unless it fixes an issue.

Pull Request Type
Please check the type of change your PR introduces:

[ ] New App
[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation
[ ] Other (please describe):

Security Considerations (REQUIRED)

[ ] If you are exposing any endpoints using a REST handler,
please document them in the manual_readme_content.md.
[ ] If this is a new connector or you are adding new actions

[ ] Please document in the manual_readme_content.md all methods (eg, OAuth) used to authenticate
with the service that the connector is integrating with.
[ ] If any actions are unable to run on SOAR Cloud, please document this in the manual_readme_content.md.

[ ] Are you introducing any new cryptography modules? If yes, please elaborate their purpose:
[ ] Are you are accessing the file system? If yes, please verify that you are only accessing paths returned through
the Vault API.
[ ] Are you are marking code to be ignored by Semgrep with nosemgrep?
If yes, please provide justification in an additional comment next to the ignored code.

Release Notes (REQUIRED)

Provide release notes as part of the PR submission which describe high level points about the changes for the upcoming GA release.
The API already supports both v4 and v6, just adding v6 to the contains statement so it will accept both formats.

What is the current behavior? (OPTIONAL)

Describe the current behavior that you are modifying.
lookup IP only accepts a v4 address today.

What is the new behavior? (OPTIONAL)

Describe the behavior or changes that are being added by this PR.
lookup ip now accepts ipv4 and ipv6

Other information (OPTIONAL)

Any other information that is important to this PR such as screenshots of how the component looks before and after the change.

Pay close attention to (OPTIONAL)

Any specific code change or test case points which must be addressed/reviewed at the time of GA release.

Screenshots (if relevant)

Thanks for contributing!

Hello @import-au ,
I have updated the 'post ip' action to allow both IPv4 and IPv6 addresses, removing the specificity for IPv4. Please let me know if you have any concerns or doubts regarding this change.


DISCUSS: Guzzle support approach

As mentioned in #469 @silvolu and I took a look at Guzzle and what the options might be for building out the client library on top of it rather than the current implementation. As far as we can see the main contributions would be a service to translate a discovery document to appropriate guzzle service configuration, an auth implementation, and probably some kind of explorer.
What do people think of code that looks like this (for a basic GET):
use Google\Service;
$plusClient = Service::buildGuzzleClient("plus", "v1");
$activities = $plusClient->listActivities([
"userId" => "118051310819094153327",
"collection" => "public",
"key" => "12312543546767"
]);
foreach($activities['items'] as $activity) {
var_dump($activity['title']);
}
The plusClient here is a regular GuzzleHttp\Command\Guzzle\GuzzleClient.
Thoughts welcomed!

An example with a POST. Object creation is harder as we don't have prexisting class files to look at - in this case its not so bad, but we will try a more complex nested object next to see how it feels. Currently we're passing auth in line, but that would be a subscriber in a realised version.
$shortener = Service::buildGuzzleClient('urlshortener', 'v1');
$url = [
"longUrl" => "http://riskcompletefailure.com"
];
$short = $shortener->insertUrl(
[
'resource' => $url,
'access_token' => "ya29.DwHfdfdfdfdfdfdfdfdf"
]
);
var_dump($short)

surely the access token should be in the constructor? we dont want to have to keep passing that about in our code. Im not sure if the static Service class is the best approach for building your services. Why not just the actual class? you can have a singleton static build method if you wish also, this gives a bit of flexibility, especially for people using service containers and doing their dependency injection properly. also static methods make for tricky unit testing/mocking
<?php

use Google\UrlShortener;

$shortener = UrlShortener::build(array(
    'access_token' => "ya29.DwHfdfdfdfdfdfdfdfdf"
));

$short = $shortener->insertUrl(array(
    "resource" => array(
        "longUrl" => "http://riskcompletefailure.com"
    )
));

var_dump($short)

Thanks for the feedback! The access token is just temporary - we don't have an auth subscriber written yet.
Re the classes - that's a fair point. Having a class as you suggest would require that we generate classes based on the discovery doc, which is something that has caused up problems with the fact they can't take pull requests and so on. So the options are:

Use a generic interface (as in first comments)
Generate classes in some open process (so at least template bugfixes would be easier to contribute)
Generate classes locally, so they don't exist at all in repo.

@samsamm777 I'm about to use this version of the library for a project at work. Do you mind sharing some more details about the issues you encountered that triggered this discussion?

Are you working in this implementation in any branch? I could help with guzzle integration.

We just released a standalone auth library: https://github.com/google/google-auth-library-php
This includes guzzle auth subscribers
Next element would be to use this and start processing the discovery doc. I don't have a clear feeling for how to do class generation (with the obvious options being some kind of script, or roll them by hand and accept they will lag available APIs some).

@ianbarber I have a feeling hand rolling would suite the php community much better as you'll be able to accept pull requests etc. Being a bit behind the curve with bleeding edge api's is probably an acceptable compromise.

Thanks guys - we did not get to a clear solution on how to handle the write case without a code generation case. I am no longer working on this unfortunately, but if anyone does make any progress on a guzzle client please open an new issue, so the proper people can take a look!


feat(runtime) Update Wasmer and Rutie

Update Wasmer to 0.6.0.
Update Rutie (Rust) to 0.7.0.
Update Rutie (Ruby) to 0.0.4.

bors try

bors r+


Validate application after angular 15 upgrade.

Validate the application after upgrading to the angular 15 version.

Application working as expected.


Google Prompt - prompt yes or no on cell phone instead of digiting code

Is there a way to use prompt message acess on the cellphone, (just like you use in gmail) so i just need to tap on my cell autenticating my access? without needing to digit otp?

That functionality doesn't exist in the PAM module nor in the open source Google Authenticator, no.
Possibly Duo Security has this, but I don't know.

Thanks anyway!
2016-12-11 15:32 GMT-02:00 Thomas Habets<EMAIL_ADDRESS>
That functionality doesn't exist in the PAM module nor in the open source
Google Authenticator, no.
Possibly Duo Security has this, but I don't know.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/google/google-authenticator-libpam/issues/48#issuecomment-266295144,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE_xqj5wcWhU412fRAO5XsO01QOg5BbLks5rHDOcgaJpZM4LJ-m4
.


embedding

Hi,
I tried to run this ETM on my own dataset. The embedding part is quite hard to understand. I managed to use skipgram.py to train
a word2vec model and get embeddings.txt but failed to use it through the read_embedding_matrix function. Could anyone help me to fix this. it is quite challenging to run this code on a new dataset... Thanks!!!

I had the same problem. Did you solve it?

hi,bro,did you solve it?

Since this repo doesn't seem to be curated anymore, I suggest you use another repo I just discovered: https://github.com/lffloyd/embedded-topic-model I was able to use ETM very easily with it.


added documentation about data flow

abstract
This PR improves documentation by describing the data flow within Anna.
checklist

[x] Make sure you read and understood the CONTRIBUTING.md.
[x] Make sure you applied sufficient labels, milestone and assignee.
[x] Make sure all TODOs are addressed.
[x] Make sure there is sufficient documentation.
[x] Make sure there are sufficient tests.
[ ] Make sure all commits are squashed before merging.
[ ] Make sure to delete the feature branch after merging.

Current coverage is 93.35% (diff: 100%)

Merging #185 into master will not change coverage

Powered by Codecov. Last update 95a2511...35256f8

LGTM

Good catch. I noticed this issue because of the failing CI. Travis executes the project.check.sh which executes golint. This complained and I fixed it. See also https://github.com/xh3b4sd/anna/blob/master/.travis.yml#L12.

Ah, perfect. It's great that you have put these CI checks in place.


[docs] remove bottom overlay on phone

Only show bottom overlay for ToC sidenav on devices that >= than 832px.
before:

after:

Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[ ] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[ ] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[x] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpx changeset and following the prompts. All changesets should be patch until SvelteKit 1.0

thank you, we don't need changesets for docs changes, so I've removed it for now.

thank you! this was fixed by an identical PR that i merged before seeing this, so i'll close it


Why isn't Step.4 an article?

[Enter feedback here]
Because Step.4 is not an article, this step's link not exists.

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

ID: 7a0b8671-359e-6026-fd3a-39331cea73f3
Version Independent ID: 29bab4ad-243a-fb0a-99ed-d8336a92f648
Content: Develop DirectLine Speech Bot - Bot Service - Bot Service
Content Source: articles/directline-speech-bot.md
Service: bot-service
GitHub Login: @ivorb
Microsoft Alias: kamrani

Thanks for pointing out the typo @tsubaki961, a fix for it will go live soon.

Closing now that the link fix is live.


ng is not recognized as an internal or external command operable program or batch file

Bug Report or Feature Request (mark with an x)
- [ ] bug report -> please search issues before submitting
- [ ] feature request

Command (mark with an x)
- [ ] new
- [ ] build
- [ ] serve
- [ ] test
- [ ] e2e
- [ ] generate
- [ ] add
- [ ] update
- [ ] lint
- [ ] xi18n
- [ ] run
- [ ] config
- [ ] help
- [ ] version
- [ ] doc

Versions

Repro steps

The log given by the failure

Desired functionality

Mention any other details that might be useful

Hello, we reviewed this issue and determined that it doesn't fall into the bug report or feature request category. This issue tracker is not suitable for support requests, please repost your issue on StackOverflow using tag angular-cli.
If you are wondering why we don't resolve support issues via the issue tracker, please check out this explanation.


What about precision control in OpenBLAS?

Subj.

There are always errors. At least there are errors of rounding in finite-digital representation of numbers. And they raise, sometimes extremely fast, in result of long sequential calculations.
For example:
http://www.cs.berkeley.edu/~wkahan/Mindless.pdf
http://www.cs.berkeley.edu/~wkahan/Math128/M128Bsoln09Feb04.pdf
There are some situations cannot be solved correctly. I mean J.-M. Muller's recurrency first of all.
Well at least one could detect such emergency situations early if he had controlled the accuracy of representation and calculations especially.
In addition there are some ways of slowing the rise of errors by reordering the sequence of calculations. Is there some 'precise BLAS' using this ways with precision control?
Sometimes I need to inverse poor conditioned matrices so I'd love to have a BLAS with precision control and though more slow version of BLAS with error-minimised procedures.
Sorry for probably bad english.

If you are having problems with precision, you can use FLENS ( https://github.com/michael-lehn/FLENS ). It has a generic BLAS and LAPACK implementation for most of the functions.
You can combine it with the multi-precision library mpfr ( http://www.mathematik.uni-ulm.de/~lehn/FLENS/flens/examples/lapack-geev.html#6 ) and increase the precision of the used datatype as needed.


Consolidate documentation into module.md files

Overview
Fixes #138 by moving all examples into the appropriate module.md files.
Description
When documentation is in the module.md files, then it also shows up in dokka html, which is quite nice.
How Has This Been Tested?
I saw the dokka html locally. Looks very nice!

awesome stuff @andresuribe87. looks good to me. i did notice one thing

are those notes rendering as expected? iirc, github's callout sections e.g.
Note
this fancy thing
only work on github 😭

well that sucks! I've fixed it in 547d1f1

You can see the preview below.


Geometry fields in RAIL_WINDOW_MOVE_ORDER should be signed

I have not seen this issue manifest as a bug. However, I think it could and it's an easy fix, so I thought I'd report it.
I just noticed that the geometry fields (left, top, right, bottom) in RAIL_WINDOW_MOVE_ORDER (in include/freerdp/rail.h) are defined as UINT16. However, these values derive from windowOffsetX and windowOffsetY in WINDOW_STATE_ORDER, which are signed (and which should be, per <IP_ADDRESS>.1.2.1 of MS-RDPERP). So the geometry fields of RAIL_WINDOW_MOVE_ORDER should also be signed.
RAIL_WINDOW_MOVE_ORDER also truncates the values from 32 to 16 bits. As long as these fields are being changed, I think they should be made 32-bit just to future-proof it, but I think it's much less an issue.

RAIL_WINDOW_MOVE_ORDER is specified in <IP_ADDRESS>.4 Client Window Move PDU with left, top, right, bottom being unsigned 16-bit integers. So the struct is defined correctly according to the MS specs.

Thanks for the quick reply. I didn't realize that was why it was that way. It looks to me like a bug in the protocol because coordinates can be negative on Windows desktops. But we can't fix the protocol, so I guess there's nothing to do about it in FreeRDP.

@chrislong yes, the coordinate confusion is really a hard to handle.
In this case only the client can do that, so closing this as can´t fix.


Selecting text

Selecting text should be possible! Multiple selections/cursors are a must.

Keys for selecting text (single selection only?) should be Shift+Movement key


Peewee ManyToManyField support

Hello folks,
I've recently switched to peewee for a project and i found out that flask-admin doesn't  support the ManyToManyField. For the list view it is easy to bypass with the column formatters but for the forms it is a bit more tricky since one need to override all the forms to implement the select2 field.
Are there any better options you can suggest?
What is the blocker for this field support? If you could give me some pointers to what is missing maybe i can help implement this.
Cheers

Flask-Admin uses wtf-peewee library to generate forms and it does not have support for the M2M fields.
Sure, it is possible to create custom Flask-Admin field and use it for M2M fields, but we don't have it right now.

@mrjoes following up your update, I've opened issue Issue #35 in the wtf-peewee library to address this issue.


Export Distro's ZeroMQ port for receiving data from CoreData should not be hard coded

The port number 5563 for receiving data from Core Data should not be hardcoded in https://github.com/edgexfoundry/edgex-go/blob/master/internal/export/distro/zeromq.go

I actually came across this while working on ConfigV2 #621 . Will be included in upcoming PR.


add cert-manager helm addon, use cert-manager in load-balancer-controller

#205
TODO: schedule cert-manager on critical addons

Going in a different direction with addons (see #224 )
Superseded by #225


NCIT has a genome nomenclature! AHHH!!

Not sure if you've seen this already but NCIT provides downloadable mappings to HGNC, UP, GO and CHEBI, and I wrote some code in INDRA to process those:
https://github.com/sorgerlab/indra/blob/master/indra/resources/update_resources.py#L460-L524
Would adapting this work?


Type hints

Fixes #142

Adds mypy to the project
New makefile target: check-type
Adds mypy check to travis config
Adds type hints to client.py
Adds type hints to exception.py

I recommend reading https://realpython.com/python-type-checking/ as a good introduction to type hints.
My comments after doing this preliminary work:

typing.cast is needed in quite a few places but feels very wrong as it looks like a cast occurring at runtime but isn't, it's only here for static type checking https://mypy.readthedocs.io/en/stable/casts.html#casts
understanding how to a add type hints to a decorator was pretty hard and the result is a bit puzzling
the exceptions.py would need a pretty big refactoring if we wanted to remove the # type: ignore as the issue is not with the return values but with the number of args and their types.
exceptions raised by functions can't be documented through type hints, they have to be documented using docstrings.
the generated doc isn't improved, only more verbose

But the larger issue I have is that these type hints don't solve our documentation issue in any way. We could create very well defined types for each type of asset, but it would be the same amount of work as using pydantic to serialize/deserialize dict into proper objects with none of the added benefits (runtime checks, manipulating objects instead of dicts).
I do feel type hints have a role to play though, but only once we have proper objects that are themselves well documented, and without the strict setup that I tried here.

While this was interesting preliminary work, it's still too much work to maintain a strict policy on type hints with little added benefits since we only handle very basic types anyway.
I'm therefore closing the PR, but it could serve as reference for future efforts.


[Bug]: Unable to send max amount via Lightning

Describe the bug
When trying to send all available spending balance funds most of the times there will be payment routing issues. This is due to not leaving sats for the routing fee.

Reproduce

Have spending balance
Click on 'Send'
Paste invoice
Click on 'Max'
Continue flow
See error

Screenshots / Recording
No response
Operating system
Android, iOS
Bitkit version
master
Log output
No response

Partially addressed in the migration PR here when updating the send flow around Beignet.
This was also discussed in the most recent Sprint meeting. It is currently blocked from a full fix until we add probing to lightning payments so we can more accurately estimate the transaction/routing fee.

Easy fix: Increase half rserv (or maybe 100).

Fixed and tested

Reopening this since there was only a quickfix applied here. Long term we would still want to probe to get an accurate estimation of the fee.


Term diff

New menu implemented to display the differences of the content of 2 cells. Fixes #573

Coverage decreased (-0.06%) to 5.311% when pulling 3a2a806de6405f40a93c59c565dd53512fa5696e on term_diff into 991bd3d071048531b280710fea720d512f186e7c on master.

@c-bik if you don't have any more comments this should be ready to merge.


Original position of item prior to zoom/offset

Hi I am looking for a method to find the location (x,y based on originally sized view of pdf) of the user's click, so i can track what element is being clicked on, regardless of how zoomed in/shifted the user's current view may be, the element returned will always be the same. Unfortunately I am having a hard time walking through the process to find a good solution.

@Doctrevil see this PR Add method to convert the screen tap point to pdf page coordinates

@xiasenhai
I highly appreciate your efforts to add the PR with the methods to convert screen tap to pdf coordinates.
I have faced a similar situation.
I have to mark the point once a user double tab on the screen(double tab listener is added separately in the library), my code works fine when zoom=1.0, I am saving the x,y of the double tap event, and have created the object of RectF so that I can use your method of mapRectToDevice.
But now the problem is When I call the method "nativePageCoordsToDevice" of PdfiumCore class. it takes one params of pagePtr.
my query is I have created a custom point of the screen, how would I know the pagPtr for that particular point, what shall be the input for this param.
public Point mapPageCoordsToDevice(PdfDocument doc, int pageIndex, int startX, int startY, int sizeX,                                        int sizeY, int rotate, double pageX, double pageY) {         long pagePtr = doc.mNativePagesPtr.get(pageIndex);         return nativePageCoordsToDevice(pagePtr, startX, startY, sizeX, sizeY, rotate, pageX, pageY);     }
in the above code, "doc.mNativePagesPtr.get(pageIndex);" gives some other point, due to which my points are not matching and single tap even is not able to work.
Can you help me for the same?

@1stmetro  can you help me with the above point.
I am also trying to something the same as you have done.
I have created a dot/ bitmap using the ondrawlistener on the pdf.
when I click on the bitmap/dot, I am able to get the x,y for the on click using ontaplistener.
but my problem is when I zoom in and click on the bitmap/dot. I get some different x,y which are originally stored with me in my db.
I have checked @xiasenhai PR as well, but It also did not help me.
I hope you will have some better way to address this small issue.


Build:1.6.1

Motivation and Context

Implementation Description

Any new dependencies Introduced

How Has This Been Tested?

PR Checklist:

[x] I have implemented all requirements? (see JIRA, project documentation).
[x] I am not affecting someone else's work, If I am, they are included as a reviewer.
[x] I have added relevant tests (unit, integration or regression).
[x] I have added comments to all the bits that are hard to follow.
[x] I have added/updated Documentation.
[x] I have updated the appropriate changelog with a line for my changes.

Screenshots (if appropriate):

Hi Roman, I think you forgot to update the changelogs

@patricia-causalens @krzysztof-causalens good catch! Fixed.


Add loading prop to button

Added a loading prop to the button component, useful to convey an asynchronous background task triggered by the button. Similar to the disabled prop, mouse events will be disabled when a button is marked as loading. This prop acts similar to the loading prop in Vuetify.

I've not implemented these changes in oruga-next since I believe thats better left up to someone else. If you have any further questions or changes I need to make feel free to let me know :)
Proposed Changes

Add a "loading" prop to buttons

Provides a loading slot to further customize loader appearence

@macjuul thanks for the PR.
The idea is correct but it doesn't follow the "guidelines" of the other similar components with loading prop/state, for example table.
We prefer add a loader using the component o-loading and of course a slot as you did but without a spinnerClass etc.
Keep in mind that soon we'll add a way to define a slot in the main Oruga config in order to use a custom component as default slot of a Oruga component.
In other words take a look at Table component and we can discuss how to change the PR 👍


Input Number area shows red color and not able to submit a Form

const schema = z.object({
  name: z.string().min(2).max(40),
  mainPosition: z.string(),
  mainRating: z
    .number({
      required_error: "Please enter a rating between 1-10",
      invalid_type_error: "Please enter a valid number",
    })
    .positive(),
  subPosition: z.string(),
  subRating: z
    .number({
      required_error: "Please enter a rating between 1-10",
      invalid_type_error: "Please enter a valid number",
    })
    .positive(),
  approved: z.boolean(),
});

export default function SetupPage() {
  const form = useForm<z.infer<typeof schema>>({
    resolver: zodResolver(schema),
    defaultValues: {
      name: "",
      mainPosition: "",
      subPosition: "",
      approved: false,
    },
  });

  function onsubmit(data: z.infer<typeof schema>) {
    toast({
      title: "You submitted the form",
      description: (

          {JSON.stringify(data, null, 2)}

      ),
    });
  }

<FormField
          control={form.control}
          name="mainRating"
          render={({ field }) => (
            <FormItem>
              <FormLabel>Main Rating</FormLabel>
              <FormControl>
                <Input placeholder="1-10" {...field} />
              </FormControl>
            </FormItem>
          )}
        />

Every other field than main rating, and sub rating are seems working without any  issue but the number area keep denying the form to be submitted.

Hey, on the first look it seems like there's an issue with your form submission being prevented due to validation errors. But it's hard to say without more context.
When you encounter red validation indicating that the input is invalid, it's advisable to double-check your Zod validation rules and ensure they match the intended criteria.
Here are some steps that might be helpful:

Zod Validation Rules: Make sure your Zod validation rules for the fields are correctly defined.

React Hook State: Double-check the actual value stored in the React hook state for these fields. You can check with the getValues() or watch() method or simply by checking the formState.invalid. ->React Hook From Docu

@dwk601
If you want to use input element with type='number' then the zod validator is used as shown in the issue
https://github.com/shadcn-ui/ui/issues/421#issuecomment-1890398977

This issue has been automatically closed because it received no activity for a while. If you think it was closed by accident, please leave a comment. Thank you.


create apple leagends

name:  ApPlEs legend
key:aplep
color:red
emblem: Flame_03
info:
sort: trophy
  logo:
  description: >
 We are playing clash Royale for creating best community.we lives to eat apple but we love more clash Royale. We needed pro for have long lasting like plastic.
  social:

    - reddit: https://www.reddit.com/user/Sgi7792ndid/
    - youtube: https://www.youtube.com/account
    - instagram: https://www.instagram.com/applefamclash/
    - youtube: https://www.youtube.com/account
    - email: mailto<EMAIL_ADDRESS>clans:
  - name: 『JURASSIC™』
    tag: LRVL9CJR

Plzz create this family faster

Don't create


pcl_conversions: 0.2.1-0 in 'lunar/distribution.yaml' [bloom]

Increasing version of package(s) in repository pcl_conversions to 0.2.1-0:

upstream repository: https://github.com/ros-perception/pcl_conversions.git
release repository: https://github.com/ros-gbp/pcl_conversions-release.git
distro file: lunar/distribution.yaml
bloom version: 0.5.23
previous version for package: null

pcl_conversions
* Added a test for rounding errors in stamp conversion
  for some values the test fails.
* add pcl::PointCloud to Image msg converter for extracting the rgb component of a cloud
* Contributors: Brice Rebsamen, Lucid One, Michael Ferguson, Paul Bovbel

Moved to https://github.com/ros/rosdistro/pull/14642


Add support for Linux pipelines

Hi,
This is a feature request. At the moment it is quite cumbersome to deploy linux service fabric applications.
Specifically tasks such as ServiceFabricUpdateManifests would be great to have them written in python or bash.
Kind Regards,
José.

@bishal-pdMSFT @kmkumaran  We're also running into this issue as part of moving our CI/CD processes to linux-based VMs.  Is there any update to this issue, or any indication of when it might be re-assessed?

@pulkitaggarwl can you please track this feature request

Dealing with the same issue here. I had to stand up a windows build agent just to use this task.

Hi,
I don't think Microsoft is ever gonna release this, to be frank. This has been requested in different forums for more than two years. I have some experience with SFCL and I have built some bash scripts to do the same thing. If you are up to it we can gather the requirements for such a task and develop a third-party task. Would anybody of you be interested in collaborating?

@jfalameda I completely understand your sentiment here.  Unfortunately, we have not been tied down by other items and I acknowledge we couldn't prioritise this one.
Having said that, I wanted to call out that we are privileged to have active community members such as yourself who are willing to take a lead and contribute.
Here is some pointers that might come in handy. cc: @bishal-pdMSFT
Deploy to linux SF clusters using linux agents:

Run: sudo pip install sfctl
Add cluster endpoint, certificate and password information as secure variables in RD
If certificate is pfx type, save the secure variable value of certificate in a pfs file and convert PFX to PEM using:

openssl pkcs12 -in certificate.pfx -out mycert.pem -nodes

Write a script using SFCTL to connect to cluster using secure variables defined in RD:

sfctl cluster select --endpoint $(EndpointUrlSecureVariable) --pem ./mycert.pem --no-verify

Deploy using SFCTL to the linux cluster:

sfctl application upload --path ~/app_package_dir
7. sfctl application provision --application-type-build-path app_package_dir
8. sfctl application create --app-name fabric:/TestApp --app-type TestAppType --app-version 1.0


pip-compile must not archive the entire directory of a locally available editable requirement

I'm using pip-compile for a project whose working dir is really large, and that project is passed as an editable requirement to pip-compile.
Unfortunately the code behind pip-compile which is imported from pip will make an archive of this entire large working dir even if this editable requirement is available locally.
The archive will be done in %USERPROFILE%\AppData\Local\pip-tools\Cache\pkgs or ~/.cache/pip-tools/Cache/pkgs. I found out about this when this folder bloated to almost 10 gigs.

I've fixed this by copying some code from pip's RequirementSet._prepare_file inside Resolver._iter_dependencies to avoid this call from pip just for local editable reqs.
I know this fix's approach is not that easily maintainable in the future, and because of that I'm not expecting to have this merged in pip-tools, but I just wanted to share this PR anyway, just in case other people wish to use the fix just for them, like I do.
Contributor checklist

[x] Provided the tests for the changes
[x] Added the changes to CHANGELOG.md
[ ] Requested (or received) a review from another contributor

Hey @costypetrisor, thanks for putting your time into this.
I've looked at the pip call your trying to avoid, and I think that if you could simply have download_dir=None in those case, it would fix it.
So, the condition you've put to detect that we have an "editable requirement locally available" could be put in pypi.py, with the condition for VSC sources.
If you can give it a try, we could get this to be a maintainable patch, and merged.

Hi @vphilippon
Thanks for looking at this :)
I've been blindsided when I first looked at pip's code and didn't notice that the call I was trying to avoid was under a nice if controllable from the outside.
I've updated the PR.
Thanks :)

@costypetrisor Could you rebase this on master? _compat/contextlib2 was removed.

@vphilippon rebase done :)

hold on a second, I think I pushed the wrong thing

@vphilippon  the correct PR branch has been pushed  now :)
Thanks! :)


[tool_crash] RPCError: The client closed with pending request "_flutter.listViews"

Command
flutter run

Steps to Reproduce

...
...
...

Logs
RPCError
Oops; flutter has exited unexpectedly: "_flutter.listViews: (-32000) Bad state:
The client closed with pending request "_flutter.listViews".".
⣽Lost connection to device.
A crash report has been written to /Users/r/Desktop/chamberlain/flutter_01.log.
This crash may already be reported. Check GitHub for similar crashes.
https://github.com/flutter/flutter/issues?q=is%3Aissue+_flutter.listViews%3A+(-32000)+Bad+state%3A+The+client+closed+with+pending+request+"_flutter.listViews".
[✓] Flutter (Channel unknown, 1.24.0-7.0.pre, on Mac OS X 10.15.7 19H2
darwin-x64, locale zh-Hans-CN)
• Flutter version 1.24.0-7.0.pre at /Users/r/flutter
• Framework revision a0860f6e87 (2 weeks ago), 2020-10-29 20:07:34 -0700
• Engine revision 073263e39d
• Dart version 2.11.0 (build 2.11.0-260.0.dev)
• Pub download mirror https://pub.flutter-io.cn
• Flutter download mirror https://storage.flutter-io.cn
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
• Android SDK at /Users/r/Library/Android/sdk
• Platform android-R, build-tools 29.0.3
• Java binary at: /Applications/Android
Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build
1.8.0_212-release-1586-b4-5784211)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 12.2)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.2, Build version 12B45b
• CocoaPods version 1.8.4
[✓] Android Studio (version 3.6)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 49.0.1
• Dart plugin version 192.8052
• Java version OpenJDK Runtime Environment (build
1.8.0_212-release-1586-b4-5784211)
[✓] IntelliJ IDEA Ultimate Edition (version 2020.1)
• IntelliJ at /Applications/IntelliJ IDEA.app
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
[✓] Connected device (1 available)
• iPhone 12 Pro Max (mobile) • 2FB646C7-C1F8-4970-82C6-E27B0C1995F0 • ios •
com.apple.CoreSimulator.SimRuntime.iOS-14-2 (simulator)
• No issues found!

## Flutter Application Metadata
**Type**: app
**Version**: 1.0.0+1
**Material**: true
**Android X**: false
**Module**: false
**Plugin**: false
**Android package**: null
**iOS bundle identifier**: null
**Creation channel**: beta
**Creation framework version**: e70236e36ce1d32067dc68eb55519ec3e14b6b01
### Plugins
flutterautotext-edc93450782282315a05298e0e55bbed24112126
barcode_scan-1.0.0
device_info-1.0.0
flutter_plugin_android_lifecycle-1.0.8
fluttertoast-7.1.1
image_picker-0.6.7
package_info-0.4.3+2
path_provider_linux-0.0.1+2
path_provider_windows-0.0.4+3
permission_handler-3.3.0
screen-0.0.5
shared_preferences-0.5.12+4
shared_preferences_linux-0.0.2+4
shared_preferences_macos-0.0.1+11
shared_preferences_web-0.1.2+7
shared_preferences_windows-0.0.1+3
url_launcher-5.7.10
url_launcher_linux-0.0.1+4
url_launcher_macos-0.0.1+9
url_launcher_web-0.1.5+1
url_launcher_windows-0.0.1+3
video_player-0.10.12+5
video_player_web-0.1.4
wakelock-0.1.4+2
webview_flutter-0.3.22+1

I found similar logs on https://github.com/flutter/flutter/issues/63025.

@RenFeiYu Can you attach the log file /Users/r/Desktop/chamberlain/flutter_01.log so we can see the stack?

There is no stack in this crash, what is happening is that the app itself is crashing while we are still setting up the vm service connection, and that causes an unhandled async exception in dds. That should be fixed by https://github.com/flutter/flutter/pull/70847

err, not that one, this one: https://github.com/flutter/flutter/pull/70712

We're still seeing this

Hi, I'm getting a similar error but the pending request was "_createDevFS"
A full log can be found at

Hi @slightfoot
Was this closed by mistake in your fork of the Dart lang repository? just to confirm!

Hi @slightfoot
Was this closed by mistake in your fork of the Dart lang repository? just to confirm!

Looks like @bkonyi fixed in https://dart-review.googlesource.com/c/sdk/+/175163 / https://github.com/dart-lang/sdk/commit/fc892d7fca37932c373f34aad1e82c5e8f8cb11f

Looks like @bkonyi fixed in https://dart-review.googlesource.com/c/sdk/+/175163 / https://github.com/dart-lang/sdk/commit/fc892d7fca37932c373f34aad1e82c5e8f8cb11f

FYI, https://github.com/flutter/flutter/issues/73815 seems similar!

FYI, https://github.com/flutter/flutter/issues/73815 seems similar!


Added git-lfs check to project build file. (#280)

I didn't try it by uninstalling git lfs, but this looks fine.
Is the ProcessLogger necessary?

@mpollmeier It is optional, but without it it just prints list of files under git-lfs to console on every build

@mpollmeier I think to remember that you already implemented some kind of warning mechanism like that. Am I right? If yes i think we should remove the old stuff.

@ml86 nope I just added a how-to-install to the cs readme: https://github.com/ShiftLeftSecurity/codescience#how-to-setup-git-lfs
we could copy that to this repo - thoughts?

@mpollmeier If that is still required please also add this here.

@mpollmeier We already have similar instructions here on how to run/install git-lfs here just at the beginning of the README


Keep returned (and yielded) literal types as const when their types using const type variables

fixes https://github.com/microsoft/TypeScript/issues/56858
closes https://github.com/microsoft/TypeScript/issues/53813

My notes from the design meeting:
This improves the apparent consistency so much that it's worth taking. The implementation needs to be right of course.
To check that:

run all test suites,
test multiply-nested cases
test overloads
test async functions, generators, async generators

Also decide whether this is the right place to implement it; could be that it's better to put it in getWidenedType. (@weswigham brought this concern up but seemed to be believe that its current place is better.)

@typescript-bot test top100
@typescript-bot user test this
@typescript-bot run dt
@typescript-bot perf test this
@typescript-bot pack this


list MariaDB as one of the supported engines

Introduction
As bookshelf is largely dependent on Knex and since Knex very explicitly states support for MariaDB, update the list of supported engines to reflect that.
Motivation
This is to prevent the scenario where users view the existing list of supported engines and become demotivated from using bookshelf as they are afraid MariaDB will not be supported.

@ricardograca This has 10 +1's - could you please considering merging this?
Even though the project is not actively maintained, the software still works and this small docs update will surely not introduce any regressions, so it should be perfectly safe and easy to merge.

Hey @ricardograca , any chance of getting this merged, please?


Unresolved problem creating a plot in R Studio

Hi everyone,
I'm wrapping my head around this problem creating a plot and a specific error message that I can't find a solution to... Maybe someone has an idea or can tell me if I'm doing something wrong.
Every time I want to create a plot for our first assignment with the following code
plot(trees$Height, trees$Volume,
main='Height and Volume of Black Cherry Trees',
xlab='Height in ft',
ylab='Volume in cubic ft')
I get the following error message:

ylab='Volume in cubic ft')
Error: unexpected ')' in "ylab='Volume in cubic ft')"

According to our slides and the Internet this should be the right way to write the code (in terms of closing the command with the bracket at the end. But somehow R Studio doesn't like it the way I write it here.
Does anyone have an idea?
Thanks a lot!

Curious!
Did you try it with all the arguments on one line? Mysteriously that works, but it doesn't when the arguments are on different lines. I've never encountered that before, and didn't think that was supposed to happen.
The equivalent function in ggplot2 works across lines for example:
ggplot2::qplot(
  trees$Height,
  trees$Volume,
  main="Height and Volume of Black Cherry Trees",
  xlab="Height in ft",
  ylab="Volume in cubic ft"
)

Hu, both the base R and @mcallaghan's ggplot2 code works for me.
@mr-r0b0t my guess is that there may be something else in your code beyond this call that breaks it. Can you provide a link to your source code file?

It's kind of strange, yes... But thanks for your help!
Here's the link to the source code file:
https://github.com/mr-r0b0t/hello-world/blob/master/Code_Assignment1_Preview

Not sure if this is entirely it, but on line 33 you are missing a comma after Girth.


Add GHA build

https://github.com/gliptak/openai-python/actions/runs/4774892088

@hallacy please review


Update sequencing inbox eager loading

Changes proposed in this pull request:

Eager load required records
Remove non-required records

:scanned_into_lab_event has been nested within labware, assuming that's okay?

Yep, its the association that's actually used. The one on receptacle should probably be removed, its a leftover from when receptacle and labware were the same thing (Asset).


Don't work in v5

Version
@nuxtjs/tailwindcss: v5.0.2
nuxt: 2.15.8
What is Expected?
What is actually happening?
I'm trying to use v5 of @nuxtjs/tailwindcss because it uses  tailwind v3, but it does not working
 FATAL  Cannot find package '@nuxt/kit' imported from<EMAIL_ADDRESS>
  at new NodeError (internal/errors.js:322:7)
  at packageResolve (internal/modules/esm/resolve.js:687:9)
  at moduleResolve (internal/modules/esm/resolve.js:728:18)
  at Loader.defaultResolve [as _resolve] (internal/modules/esm/resolve.js:842:11)
  at Loader.resolve (internal/modules/esm/loader.js:89:40)
  at Loader.getModuleJob (internal/modules/esm/loader.js:242:28)
  at ModuleWrap.<anonymous> (internal/modules/esm/module_job.js:76:40)
  at link (internal/modules/esm/module_job.js:75:36)

   ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
   │                                                                                │
   │   ✖ Nuxt Fatal Error                                                                                │
   │                                                                                │
   │   Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@nuxt/kit' imported from                                    │
   │<EMAIL_ADDRESS> │
   │                                                                                │
   ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>dev: `nuxt`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!
I installed v5.0.0, v5.0.1, v5.0.1. no one worked!

v5 only supports nuxt bridge or nuxt 3.

Is now working?

Seeing as Nuxt 3 is in beta, it shouldn't be necessary to have to install a beta version to be able to use version 5 of this module.

v5 only supports nuxt bridge or nuxt 3.

this is not true v5 works fine for me in  "nuxt": "^2.15.8",

I could manage to use this module with Tailwind 3 on a Nuxt 2 project, without Bridge.

First, installed package on the right commit: https://github.com/nuxt-community/tailwindcss-module/commit/c174adb01ebe046aa243b30d957faf613ec68844

With pnpm (same with npm):
$ pnpm uninstall @nuxtjs/tailwindcss # just in case...
$ pnpm  install -D github:nuxt-community/tailwindcss-module#c174adb0

Then cloned the repo separately, built it, and copied the dist folder in the project's modules directory

$ cd <another_path>
$ git clone git@github.com:nuxt-community/tailwindcss-module.git
$ cd tailwindcss-module
$ yarn
$ yarn remove postcss-nesting # was complaining about my Node version
$ yarn add postcss-nesting
$ yarn build
$ cp -R dist <path_to_project>/modules

And finally replaced @nuxtjs/tailwindcss with resolve(__dirname, 'modules/tailwindcss') in Nuxt config's buildModules, hope this helps!

Question: would it be possible to add a new version, maybe 4.3.0, on the commit https://github.com/nuxt-community/tailwindcss-module/commit/c174adb01ebe046aa243b30d957faf613ec68844? Would be neat :)

Oh I forgot to say I had to rename the .mjs files to .js in the dist folder... And the cp command is cp -R dist <path_to_project>/modules/tailwindcss, can't edit my post anymore.

All that work just to get tailwind working 😒

Yeah... That's why i asked if it's possible to create a 4.3.0 version :/

i installed it via yarn for "nuxt": "^2.15.8" it just worked

v5 only supports nuxt bridge or nuxt 3.

Well it seems to work as long as I don't use content in function format in my Tailwind config (as shown here: https://tailwindcss.nuxtjs.org/tailwind/config#merging-strategy). I get warnings in console and all my config is broken if I do so. So maybe v5 doesn't only support Nuxt bridge or Nuxt 3 after all.

I'm having similar issues. It used to work, but somehow broke today. For me the problem was that the package "pathe" was not found for nuxt/kit. Running on nuxt 2.15.8 too.
Some information whether ^v5 of @nuxtjs/tailwindcss works for Nuxt 2 would be very welcome.

Can confirm v5.0.0 is working with nuxt 2.15.8
"nuxt": "^2.15.8"

I does, as long as you don't use content as a fonction ;)


(Linux) Window can't be moved around with title bar hidden

Description
Hello, i noticed that if i set the window_title_bar_hidden to True then on Linux the window can't be moved while on MacOs it can be moved around. I tried to replicate the bug with the sample app and as you can see in the screenshot the window can't be moved on Linux.
Code example to reproduce the issue:
import flet
from flet import IconButton, Page, Row, TextField, icons

def main(page: Page):
    page.title = "Flet counter example"
    page.vertical_alignment = "center"

    # if i set it to True then on Linux the window can't be moved around
    page.window_title_bar_hidden = True

    txt_number = TextField(value="0", text_align="right", width=100)

    def minus_click(e):
        txt_number.value = int(txt_number.value) - 1
        page.update()

    def plus_click(e):
        txt_number.value = int(txt_number.value) + 1
        page.update()

    page.add(
        Row(
            [
                IconButton(icons.REMOVE, on_click=minus_click),
                txt_number,
                IconButton(icons.ADD, on_click=plus_click),
            ],
            alignment="center",
        )
    )

flet.app(target=main)

Describe the results you received:
As you can see in the screenshot the window can't be moved on Linux. It stays in the same place and i can't move it around.

Describe the results you expected:
I expected on Linux to move the window around like i do with the MacOs version.
Flet version (pip show flet):
Name: flet
Version: 0.5.2
Summary: Flet for Python - easily build interactive multi-platform apps in Python
Home-page:
Author: Appveyor Systems Inc.
Author-email<EMAIL_ADDRESS>License: Apache-2.0
Location: /home/lucian/.local/lib/python3.10/site-packages
Requires: flet-core, httpx, oauthlib, packaging, watchdog, websocket-client, websockets
Required-by:
Operating system:
Linux Ubuntu 22.04.1 LTS
Additional environment details:
I emulated the bug on a VM with Ubuntu 22.04.1 LTS and Python 3.10.6 using UTM. I also tested it on a real machine with Ubuntu (same version) and i still get the same issue. I also tested it on a MacOs machine and it works as expected.

To have a solution that works on all platform you need to use WindowDragArea control: https://github.com/flet-dev/examples/blob/main/python/controls/window-drag-area/no-frame-window.py
Hidden window title is implemented differently on all platforms and it's only coincidental you can drag it on macOS, e.g. on Windows your example won't work.
Use WindowDragArea.


Feature/popen python3

Please can you add unit tests to show why these changes are needed.
You will also need to get tests passing on both Py2.7 and Py3.x.

Closing as no followup.