Some greenlet error

Ran the script with:
./crackmapexec.py -t 25 some-ips.txt -d localhost -u username -p password --execm wmi -X "Import-Module ActiveDirectory; Get-ADGroup"
And just after a few successful login messages but prior to getting any output from the command, this error popped up:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/gevent/greenlet.py", line 327, in run
result = self._run(*self.args, **self.kwargs)
File "/usr/lib/python2.7/threading.py", line 525, in __bootstrap
self.__bootstrap_inner()
File "/usr/lib/python2.7/threading.py", line 540, in __bootstrap_inner
del _limbo[self]
KeyError: <_Timer(Thread-1, stopped daemon 59241488)>
<Greenlet at 0x387f410: <bound method _Timer.__bootstrap of <_Timer(Thread-1, stopped daemon 59241488)>>> failed with KeyError
Script just plowed on. It happened twice, then when I ran it a third time it went away. I have no idea what's causing so this is probably unhelpful but in case you run into it in the future maybe something here will be useful.

Weird will try to reproduce this as well, although it seems to be a problem with gevent

It dosen happen to me ..
you should do a git pull ;)
i think now its fixed
also .. pip install --upgrade -r requirements.txt

Closing since I can't reproduce this at all


[Question] How to fix ERROR: No matching distribution found for mlc-ai-nightly

❓ General Questions

Hey guys, I'm trying to run pip install --pre --force-reinstall mlc-ai-nightly mlc-chat-nightly -f https://mlc.ai/wheels using conda but I keep getting this error.
Looking in links: https://mlc.ai/wheels
ERROR: Could not find a version that satisfies the requirement mlc-ai-nightly (from versions: none)
ERROR: No matching distribution found for mlc-ai-nightly'```

I tried following the steps in this issue  [https://github.com/mlc-ai/mlc-llm/issues/240]. I am able to see these files in tvm/build
CMakeCache.txt		compile_commands.json	libtvm_runtime.dylib
CMakeFiles		config.cmake		temp_config_file.cmake
Makefile		libbacktrace		tvmConfig.cmake
TVMBuildOptions.txt	libtvm.dylib
cmake_install.cmake	libtvm.dylib.dSYM

However, when I run python -m mlc_chat.rest --help I get ModuleNotFoundError. Is there something else I need to do to get mlc_chat?
I am using Macbook Apple M1 Pro.
platform : osx-arm64
which pip
python --version
pip --version
/Users/ar/anaconda3/envs/tvm-build-venv/bin/python
/Users/ar/anaconda3/envs/tvm-build-venv/bin/pip
Python 3.11.4
pip 23.2.1 from /Users/arshaik/anaconda3/envs/tvm-build-venv/lib/python3.11/site-packages/pip (python 3.11)```

That's weird. The wheel for python 3.11, osx-arm64 is in the wheel list, could you please try to download and install it manually?

I downloaded the wheel and tried
pip install mlc_ai_nightly-0.12.dev1395-cp311-cp311-macosx_13_0_arm64.whl
getting
ERROR: mlc_ai_nightly-0.12.dev1395-cp311-cp311-macosx_13_0_arm64.whl is not a supported wheel on this platform.

Could you verify the Python platform you installed?
python -c "import platform; print(platform.machine())"

I tried the command and it works lol
pip install --pre --force-reinstall mlc-ai-nightly mlc-chat-nightly -f https://mlc.ai/wheels

Same issue on M1 Pro.  Will attempt installing the wheel directly, although the versions have changed so I can't be 100% sure I'll pick the correct ones.


[DOC] Add document for new guradrail type

What do you want to do?

[X] Request a change to existing documentation
[ ] Add new documentation
[ ] Report a technical problem with the documentation
[ ] Other

Tell us about your request. Provide a summary of the request and all versions that are affected.
We are going to build a new guardrail type in 2.15 which based on LLM. https://github.com/opensearch-project/ml-commons/issues/2463
What other resources are available? Provide links to related issues, POCs, steps for testing, etc.

@jngz-es  please prepare draft PR


[Bug]: PythonLang and NuLang don't output anything

What went wrong?
BashLang does some work for persistent sessions and also reads the output of the process, which the other languages don't do. Should implement for these languages, and maybe find a general way to implement this for all langauges under mux

resolved by #365


Issue with httpx AsyncOAuth2Client

Error in setting the Content-Length while fetching tokens.  Looks like the same httpx client is used with updated body but the Content-Lenght is not changed.
I'm using latest version of libs Authlib==0.14.1 httpx==0.11.1
Here is my sample code
from authlib.integrations.httpx_client import AsyncOAuth2Client

config = get_settings()
token_endpoint = 'token_url'

client = AsyncOAuth2Client(config.keycloak.client_id,
                           config.keycloak.credential.get_secret_value(),
                           grant_type='client_credentials',
                           scope='offline_access profile email',
                           audience='auth',
                           token_endpoint=token_endpoint,
                           token_endpoint_auth_method='client_secret_post')
await client.fetch_token(token_endpoint)

Error stack trace
Traceback (most recent call last):
  File "/usr/lib/python3.8/concurrent/futures/_base.py", line 439, in result
    return self.__get_result()
  File "/usr/lib/python3.8/concurrent/futures/_base.py", line 388, in __get_result
    raise self._exception
  File "<console>", line 1, in <module>
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/authlib/integrations/httpx_client/oauth2_client.py", line 108, in _fetch_token
    resp = await self.post(
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/client.py", line 1305, in post
    return await self.request(
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/authlib/integrations/httpx_client/oauth2_client.py", line 88, in request
    return await super(AsyncOAuth2Client, self).request(
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/client.py", line 1096, in request
    response = await self.send(
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/client.py", line 1117, in send
    response = await self.send_handling_redirects(
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/client.py", line 1147, in send_handling_redirects
    response = await self.send_handling_auth(
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/client.py", line 1184, in send_handling_auth
    response = await self.send_single_request(request, timeout)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/client.py", line 1208, in send_single_request
    response = await dispatcher.send(request, timeout=timeout)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/dispatch/connection_pool.py", line 157, in send
    raise exc
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/dispatch/connection_pool.py", line 153, in send
    response = await connection.send(request, timeout=timeout)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/dispatch/connection.py", line 44, in send
    return await self.connection.send(request, timeout=timeout)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/dispatch/http11.py", line 51, in send
    await self._send_request_body(request, timeout)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/dispatch/http11.py", line 101, in _send_request_body
    await self._send_event(event, timeout)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/httpx/dispatch/http11.py", line 117, in _send_event
    bytes_to_send = self.h11_state.send(event)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/h11/_connection.py", line 469, in send
    data_list = self.send_with_data_passthrough(event)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/h11/_connection.py", line 502, in send_with_data_passthrough
    writer(event, data_list.append)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/h11/_writers.py", line 79, in __call__
    self.send_data(event.data, write)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/h11/_writers.py", line 101, in send_data
    raise LocalProtocolError("Too much data for declared Content-Length")
h11._util.LocalProtocolError: Too much data for declared Content-Length

It should be fixed by https://github.com/lepture/authlib/commit/7f4e2af155030afc6f7f1f44ebdadcaacf9a2ad5
please verify it with master code

I used master code still not working.  This time I get Invalid client secret
Traceback (most recent call last):
  File "/usr/lib/python3.8/concurrent/futures/_base.py", line 439, in result
    return self.__get_result()
  File "/usr/lib/python3.8/concurrent/futures/_base.py", line 388, in __get_result
    raise self._exception
  File "<console>", line 1, in <module>
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/authlib/integrations/httpx_client/oauth2_client.py", line 120, in _fetch_token
    return self.parse_response_token(resp.json())
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/authlib/oauth2/client.py", line 348, in parse_response_token
    self.handle_error(error, description)
  File "/home/kesav/.virtualenvs/smtp/lib/python3.8/site-packages/authlib/integrations/httpx_client/oauth2_client.py", line 76, in handle_error
    raise OAuthError(error_type, error_description)
authlib.common.errors.AuthlibBaseError: unauthorized_client: Invalid client secret

It works with master branch.

I am seeing this with authlib=0.15.4 httpx=0.18.2
Traceback (most recent call last):
  File "job_worker.py", line 45, in <module>
    loop.run_until_complete(test())
  File "/usr/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete
    return future.result()
  File "job_worker.py", line 38, in test
    token = await client.fetch_token()
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/authlib/integrations/httpx_client/oauth2_client.py", line 120, in _fetch_token
    resp = await self.post(
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpx/_client.py", line 1807, in post
    return await self.request(
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/authlib/integrations/httpx_client/oauth2_client.py", line 94, in request
    return await super(AsyncOAuth2Client, self).request(
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpx/_client.py", line 1481, in request
    response = await self.send(
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpx/_client.py", line 1568, in send
    response = await self._send_handling_auth(
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpx/_client.py", line 1604, in _send_handling_auth
    response = await self._send_handling_redirects(
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpx/_client.py", line 1640, in _send_handling_redirects
    response = await self._send_single_request(request, timeout)
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpx/_client.py", line 1681, in _send_single_request
    ) = await transport.handle_async_request(
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpx/_transports/default.py", line 283, in handle_async_request
    ) = await self._pool.handle_async_request(
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpcore/_async/connection_pool.py", line 237, in handle_async_request
    response = await connection.handle_async_request(
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpcore/_async/connection.py", line 148, in handle_async_request
    return await self.connection.handle_async_request(
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpcore/_async/http11.py", line 122, in handle_async_request
    await self._send_request_body(stream, timeout)
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpcore/_async/http11.py", line 168, in _send_request_body
    await self._send_event(event, timeout)
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/httpcore/_async/http11.py", line 179, in _send_event
    bytes_to_send = self._h11_state.send(event)
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/h11/_connection.py", line 468, in send
    data_list = self.send_with_data_passthrough(event)
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/h11/_connection.py", line 501, in send_with_data_passthrough
    writer(event, data_list.append)
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/h11/_writers.py", line 58, in __call__
    self.send_data(event.data, write)
  File "/home/cjh/.virtualenvs/4ddist/lib/python3.8/site-packages/h11/_writers.py", line 78, in send_data
    raise LocalProtocolError("Too much data for declared Content-Length")
h11._util.LocalProtocolError: Too much data for declared Content-Length

My issue seems to be the same as #335


Remove global_path_appends_ruby_scope setting

What was the end-user problem that led to this PR?
The problem was we're artificially holding shipping bug fixes like the fact the ruby scope is not included in the install path when BUNDLE_PATH is used as an environment variable or global setting.
What was your diagnosis of the problem?
My diagnosis was that we can remove the setting, and that it's fine that affected users rerun bundle install to get their installation paths fixed.
What is your fix for the problem, implemented in this PR?
My fix is to remove the setting.

Hopefully nothing is depending on the buggy behavior here 😅
@bundlerbot r+

Yeah, me too :smiley:. Thanks @indirect!


qa-cmp can't handle files with $ in them (line 743: StreamGobbler: unbound variable)

I found this in the log after emerging libreoffice
/usr/bin/qa-cmp: line 743: StreamGobbler: unbound variable

Thanks, reproduced.. albeit I'm amazed that [[ -v newindex[${file}] ]] is an issue if ${file} is /path/to/some$file with $, rather odd bash behavior and seems quoting it doesn't help either.
I'll experiment a bit more for a workaround.

Guess an alternate fix could be single quotes [[ -v 'newindex[${file}]' ]], but given I don't see this behavior documented by bash (not that I looked in-depth, someone else may know better) I think I'll pass on using that...


Add token indices output to sentencepiece

/azp run extensions.ci

Could somebody please make the necessary fixes as I can't see the build logs? I've tried running your pipeline in our subscription but it doesn't work

there is a segmentation fault in a Python test. the attached logs are from a Linux build but there are also failures on Windows and MacOS. maybe see if you can reproduce this locally.
build_log.txt

Does this change modify the required outputs of the existing SentencepieceTokenizer operator?
I ask because Office has already shipped its Fluency model to production that uses the existing SentencepieceTokenizer operator, so if this breaks models that use the existing SentencepieceTokenizer operator, please create another operator for this work or ensure any new outputs are optional, not required.

From: Edward Chen @.>
Sent: Wednesday, September 27, 2023 11:27 AM
To: microsoft/onnxruntime-extensions @.>
Cc: Joshua Burkholder @.>; Review requested @.>
Subject: Re: [microsoft/onnxruntime-extensions] Add token indices output to sentencepiece (PR #566)
there is a segmentation fault in a Python test. the attached logs are from a Linux build but there are also failures on Windows and MacOS. maybe see if you can reproduce this locally.
build_log.txthttps://github.com/microsoft/onnxruntime-extensions/files/12741948/build_log.txt
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/onnxruntime-extensions/pull/566#issuecomment-1737881769, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKIUFJNFA23LCEXEY4OQZ7TX4RVYDANCNFSM6AAAAAA5IEPSBY.
You are receiving this because your review was requested.Message ID: @.***>

Additional output made optional and tests fixed

/azp run extensions.ci

/azp run extensions.ci

/azp run extensions.ci


Rename stream to channel

Fixes parts of #631

Thanks @Khader-1! Excited to see this happening.
On a quick skim, the one high-level thing I notice is that this version changes what it expects from the API — the latter three commits all change the name we expect some properties to have in the JSON we get from the API, in addition to changing the name we use for those properties within our own code. I expect this means that the app won't work at this version.
As #631 says, we shouldn't be trying to change what we expect from the API at this stage. See there for a discussion of how to avoid such a change while updating our codebase's internal names.
This change should also have tests, though the tests will be pretty simple. See dd78af1e3 and other commits in #751 for examples of tests for similar renames.
Once you fix things so that the app works with these changes, and the changes have tests, this looks like it'll be ready for review. So at that point please go ahead and mark it for review: hit the "Ready for review" button so it's no longer a draft, give it the "buddy review" label, and request a reviewer.

Thanks @gnprice! I see this can easily grow out of hand! What would you suggest to tackle it? I think having a dedicated PR for every model/feature would help.

Yeah, breaking this up into a handful of PRs would be good.
I think a key thing for making this clean to read is: when you rename a type, try to follow up immediately in the next few commits by renaming the fields, the local variables, and the parameters that have that type.
For example, after renaming StreamStore and StreamStoreImpl, ideally the next commits right after that would be the ones renaming fields, local variables, and parameters with those types. In this branch, those changes are separated by a number of other changes which rename various things within StreamStore and StreamStoreImpl. And there are a number of places remaining in the code that still have the "stream" names for such values, which causes them to look like:
    required ChannelStore streamStore,

As a reader that looks puzzling and rather less reassuring than either
    required StreamStore streamStore,

or
    required ChannelStore channelStore,

would be.
Or put another way: try to group the changes by the data being renamed, more than by the file or directory that the rename is happening in.
The type ZulipStream/Channel itself might be a bit of an exception to this, in that there are so very many places it appears. I think it'll probably be easiest and cleanest if that type is handled last, so that everything that's about other types (channel narrows, the channel store, channel events, etc.) is already saying "channel".
Then probably a good way to group the changes into PRs would be by those types:

one PR for StreamStore/ChannelStore and its implementation, along with the values of those types
one PR for the narrow types
etc.

Thanks @gnprice! That's really helpful. I do have a question though. When it comes to renaming references of a code object, for example:
When renaming ChannelStore.streams to ChannelStore.channels, one reference for store.streams / store.channel is:
/// Parse the operand of a `stream` operator, returning a stream ID.
///
/// The ID might point to a stream that's hidden from our user (perhaps
/// doesn't exist). If so, most likely the user doesn't have permission to
/// see the stream's existence -- like with a guest user for any stream
/// they're not in, or any non-admin with a private stream they're not in.
/// Could be that whoever wrote the link just made something up.
///
/// Returns null if the operand has an unexpected shape, or has the old shape
/// (stream name but no ID) and we don't know of a stream by the given name.
int? _parseStreamOperand(String operand, StreamStore store) {
  // "New" (2018) format: ${stream_id}-${stream_name} .
  final match = RegExp(r'^(\d+)(?:-.*)?$').firstMatch(operand);
  final newFormatStreamId = (match != null) ? int.parse(match.group(1)!, radix: 10) : null;
  if (newFormatStreamId != null && store.streams.containsKey(newFormatStreamId)) {
    return newFormatStreamId;
  }

  // Old format: just stream name.  This case is relevant indefinitely,
  // so that links in old conversations continue to work.
  final String? streamName = decodeHashComponent(operand);
  if (streamName == null) return null;
  final stream = store.streamsByName[streamName];
  if (stream != null) return stream.streamId;

  if (newFormatStreamId != null) {
    // Neither format found a stream, so it's hidden or doesn't exist. But
    // at least we have a stream ID; give that to the caller.
    return newFormatStreamId;
  }

  // Unexpected shape, or the old shape and we don't know of a stream with
  // the given name.
  return null;
}

As you can see, there are local variables, docs, comments and the method name itself referring to "channel" as "stream". When I tried to change them, I felt like I was altering things beyond the scope of the commit. What would you suggest in such cases?

Yeah, one key bit in my recommendation above is that those followup renames happen in the next few commits — not in the same commit.
In any case, what I'd suggest for the next single PR at this stage is:

one PR for StreamStore/ChannelStore and its implementation, along with the values of those types

I.e. rename StreamStore, and StreamStoreImpl, and the values that are a StreamStore or StreamStoreImpl.
In the example function above, I think the only thing that touches is the type of the parameter, which becomes ChannelStore.
Then another PR doing that for StreamNarrow.
Another PR can do that for StreamEvent and its subclasses.
And so on for one type or cluster of types at a time, but leaving ZulipStream for the end. You can get a rough list of types with a command like this:
$ git grep -howP '([A-Z]\w*)?Stream\w*' | sort | uniq -c | sort -rn
     75 StreamNarrow
     66 StreamColorSwatch
     50 ZulipStream
     34 StreamMessage
     32 StreamColorSwatches
     27 StreamColorVariant
     25 UnreadStreamSnapshot
     20 Stream
     15 FcmMessageStreamRecipient
[…]

Then at the end handle ZulipStream itself, and all the things that are a stream or a stream ID. That's most of what appears in that example function. That last wave of renames might be more organized by file instead of by type of data.

Thanks @Khader-1, and thanks @sm-sayedi for the review!
For the remaining PRs within #631, let's use an abbreviated process where we go straight from buddy review to integration review, skipping mentor review and maintainer review. On the one hand there'll generally be less to review in them; and on the other, this sort of cross-codebase refactor is especially prone to developing conflicts, so it's especially good to get them merged soon after they're sent.
I squashed the five commits down into two, so these:
ed47a9147 channel [nfc]: Rename file from "stream" to "channel"
ee8da945a channel [nfc]: Rename StreamStore to ChannelStore
b2edc4a84 channel [nfc]: Rename references of ChannelStore to channelStore
95ff1e088 channel [nfc]: Rename StreamStoreImpl to ChannelStoreImpl
df886823a channel [nfc]: Rename references of ChannelStoreImpl to match it's name
became:
1e979a341 channel [nfc]: Rename StreamStore/Impl to ChannelStore/Impl, and rename file
99ed080da channel [nfc]: Rename references of ChannelStore/Impl to match new names
because that grouping felt natural, and the commits remain pretty small and easy to read.
It's fine that the original commits were a bit more fine-grained than I wanted them to end up, though. In general it's a lot easier for me to squash than to split up, so that's the right direction to err in.
I also applied @sm-sayedi's comment, putting the reference in the first commit (since that's now clearly the main commit, and the second commit is a followup).
With those changes, this looks good — so I'm going ahead and merging. Thanks again!


Add edit/remove links for each team member.

Not sure it is the correct pattern, but have added an edit/remove link
next to each team member - we can fix this once we agree on how it
should look.
Fixes #52

Last time I checked a year a go there was no official pattern, so we did it more or less that way, but with icons, under supervision of the designer ;)


[macos-latest]Image does not contains fastlane

Description
Hello,
I'm using macos-latest (10.15.7) in a GitHub Action and I would like to use fastlane as an included software described in macos-10.15-Readme.md.
As it is written in the documentation, fastlane is included in the macos image so I would like to use it by calling fastlane or by calling bundle exec fastlane.
Area for Triage:
contains: 'Apple'
contains: 'Containers'
contains: 'Scripting and command line'
Bug:

Virtual environments affected

[ ] Ubuntu 16.04
[ ] Ubuntu 18.04
[ ] Ubuntu 20.04
[x] macOS 10.15
[ ] macOS 11.0
[ ] Windows Server 2016 R2
[ ] Windows Server 2019

Image version
20210503.2
Expected behavior
I expect that fastlane is really available in the system and I can use it.
Actual behavior
In Step1 the following error happens:
Run fastlane create_keychain name:name_of_keychain password:chosen_password
/Users/runner/work/_temp/41526cfc-b927-4b40-954c-2e8c9acc1da2.sh: line 1: fastlane: command not found
Error: Process completed with exit code 127.

In Step2 the following error happens:
Run bundle exec fastlane create_keychain name:name_of_keychain password:chosen_password
bundler: command not found: fastlane
Install missing gem executables with `bundle install`
Error: Process completed with exit code 127.

As it seems fastlane is not found in the system.
Repro steps
My action file:
on: [workflow_dispatch]

jobs:
  build:
    name: Build
    runs-on: macos-latest

    steps:
      - name: Step1 Setup keychain
        continue-on-error: true
        run: fastlane create_keychain name:name_of_keychain password:chosen_password

      - name: Step2 Setup keychain with bundle
        run: bundle exec fastlane create_keychain name:name_of_keychain password:chosen_password

Hi @roncsak!
Could you please share the link to you run?
fastlane --version works just fine for me on the same 20210503.2 version

The same for me on 20210503.2 : https://github.com/maxim-lobanov/test-repo/runs/2525501319?check_suite_focus=true
Step 1 works correctly and fastlane is available.
Step 2 fails but it is expected behavior. Fastlane is installed as a global gem so you can't access it via bundle exec. If you need to use it via bundle exec, make sure that you have done bundle install before.

Well, it is in under an organizations account I'm not allowed to give access to it but I can share some logs.
2021-05-07T08:26:37.1946740Z ##[section]Starting: Request a runner to run this job
2021-05-07T08:26:37.5630312Z Can't find any online and idle self-hosted runner in current repository that matches the required labels: 'macos-latest'
2021-05-07T08:26:37.5630406Z Can't find any online and idle self-hosted runner in current repository's account/organization that matches the required labels: 'macos-latest'
2021-05-07T08:26:37.5997804Z Found online and idle hosted runner in current repository's account/organization that matches the required labels: 'macos-latest'
2021-05-07T08:26:37.8177164Z ##[section]Finishing: Request a runner to run this job
2021-05-07T08:26:51.4363850Z Current runner version: '2.278.0'
2021-05-07T08:26:51.4417060Z ##[group]Operating System
2021-05-07T08:26:51.4418500Z Mac OS X
2021-05-07T08:26:51.4419160Z 10.15.7
2021-05-07T08:26:51.4419710Z 19H1030
2021-05-07T08:26:51.4420290Z ##[endgroup]
2021-05-07T08:26:51.4421190Z ##[group]Virtual Environment
2021-05-07T08:26:51.4421970Z Environment: macos-10.15
2021-05-07T08:26:51.4422640Z Version: 20210503.2
2021-05-07T08:26:51.4423870Z Included Software: https://github.com/actions/virtual-environments/blob/macOS-10.15/20210503.2/images/macos/macos-10.15-Readme.md
2021-05-07T08:26:51.4425480Z Image Release: https://github.com/actions/virtual-environments/releases/tag/macOS-10.15%2F20210503.2
2021-05-07T08:26:51.4426500Z ##[endgroup]
2021-05-07T08:26:51.4428760Z ##[group]GITHUB_TOKEN Permissions
2021-05-07T08:26:51.4430330Z Actions: write
2021-05-07T08:26:51.4430980Z Checks: write
2021-05-07T08:26:51.4431680Z Contents: write
2021-05-07T08:26:51.4432390Z Deployments: write
2021-05-07T08:26:51.4433160Z Issues: write
2021-05-07T08:26:51.4433950Z Metadata: read
2021-05-07T08:26:51.4434590Z Packages: write
2021-05-07T08:26:51.4435300Z PullRequests: write
2021-05-07T08:26:51.4436050Z RepositoryProjects: write
2021-05-07T08:26:51.4436880Z SecurityEvents: write
2021-05-07T08:26:51.4437600Z Statuses: write
2021-05-07T08:26:51.4438400Z ##[endgroup]
2021-05-07T08:26:51.4442230Z Prepare workflow directory
2021-05-07T08:26:51.5310870Z Prepare all required actions
2021-05-07T08:26:51.5324180Z Getting action download info
2021-05-07T08:26:51.9497940Z Download action repository 'actions/checkout@v2'
2021-05-07T08:26:53.1538250Z Download action repository<EMAIL_ADDRESS>2021-05-07T08:26:53.8752790Z ##[group]Run actions/checkout@v2
2021-05-07T08:26:53.8753650Z with:
2021-05-07T08:26:53.8754260Z   repository: NonOfYourBusiness/testapp-iOS
2021-05-07T08:26:53.8755370Z   token: ***
2021-05-07T08:26:53.8755920Z   ssh-strict: true
2021-05-07T08:26:53.8756530Z   persist-credentials: true
2021-05-07T08:26:53.8757110Z   clean: true
2021-05-07T08:26:53.8757630Z   fetch-depth: 1
2021-05-07T08:26:53.8758150Z   lfs: false
2021-05-07T08:26:53.8758640Z   submodules: false
2021-05-07T08:26:53.8759120Z ##[endgroup]
2021-05-07T08:26:54.9479880Z Syncing repository: NonOfYourBusiness/testapp-iOS
2021-05-07T08:26:54.9481220Z ##[group]Getting Git version info
2021-05-07T08:26:54.9483860Z Working directory is '/Users/runner/work/testapp-iOS/testapp-iOS'
2021-05-07T08:26:54.9487770Z [command]/usr/local/bin/git version
2021-05-07T08:26:54.9666490Z git version 2.31.1
2021-05-07T08:26:54.9698160Z ##[endgroup]
2021-05-07T08:26:54.9706830Z Deleting the contents of '/Users/runner/work/testapp-iOS/testapp-iOS'
2021-05-07T08:26:54.9711560Z ##[group]Initializing the repository
2021-05-07T08:26:54.9717590Z [command]/usr/local/bin/git init /Users/runner/work/testapp-iOS/testapp-iOS
2021-05-07T08:26:54.9926690Z hint: Using 'master' as the name for the initial branch. This default branch name
2021-05-07T08:26:54.9927930Z hint: is subject to change. To configure the initial branch name to use in all
2021-05-07T08:26:54.9928990Z hint: of your new repositories, which will suppress this warning, call:
2021-05-07T08:26:54.9930110Z hint:
2021-05-07T08:26:54.9931390Z hint: 	git config --global init.defaultBranch <name>
2021-05-07T08:26:54.9932110Z hint:
2021-05-07T08:26:54.9933560Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
2021-05-07T08:26:54.9935270Z hint: 'development'.  The difference between the two repos that in the org repo there is a<EMAIL_ADDRESS>step. I try to remove this step within the org account and I'll get back.

Yes, looks like ruby/setup-ruby action cleans up PATH:
2021-05-07T08:26:56.2527850Z ##[group]Cleaning PATH
2021-05-07T08:26:56.2533300Z Entries removed from PATH to avoid conflicts with Ruby:
2021-05-07T08:26:56.2534870Z   /usr/local/lib/ruby/gems/2.7.0/bin
2021-05-07T08:26:56.2535590Z<EMAIL_ADDRESS>2021-05-07T08:26:56.2540890Z ##[endgroup]

And pre-installed gems are not available after that.

Yes, that was the problem!
Thanks for the common thinking!
Closing the ticket.


feat: add inorganic questions

@n0w0f thanks for the comments! I tried to solve the stuff you pointed out and added a few more questions

Nice, getting there!

🎉


Migrate entire website to Deno tooling

This is an experiment. It removes all Node tooling from the website and uses the Deno 2 compat layer to run everything with Deno.

It feels much faster to open a dev version in the browser.
Also, build time is improved by ~75 %. On my machine, main takes 66 seconds to build, but this branch only takes 38 seconds. I only did two runs (both from a clean repo) so perhaps this isn't very scientific.

If we want to have benchmarks we can trust, we should make sure to use version 1.5.0 of vitepress on master before we compare anything, so take the above numbers with a big grain of salt

Yeah I think it is rather caused by vitepress, #1143 seems to achieve similar results

ref https://github.com/vuejs/vitepress/pull/4326


Optimize getting block reward outputs during transactions verification

Currently, in the transaction_verifier module the whole block is loaded in order to get block reward outputs. This should be optimized somehow.

https://github.com/mintlayer/mintlayer-core/pull/355

Closed with https://github.com/mintlayer/mintlayer-core/pull/355.


Add a unified analytics API to DTD

This API should allow a client to get the status of analytics opt in / opt out, get the consent message, and send events.
DevTools, IntelliJ and VS Code can all use this API by proxy of DTD.

What is a DTD? I need to triage this to some area.

DTD is Dart tooling daemon  DTD doc
I am triaging it to the tools area.


Resize Node (Req.ID 8)

Action:
One click on node and use resize points at the border
Result:
use yFiles Standard -->
Node size changes, content inside keep same size, all connected edges still attached on right anchor on both sides

This is supportet


Migration error on install with postgresql database used.

Terms

[X] Before you open this issue, I have checked if the issue has already been reported.

UnoPim Version(s) affected
0.1.5
Issue Description
Got error at migration. Trigger can't bee installed.
Preconditions
Postgresql 14 usage.
Steps to reproduce
php artisan unopim:install or php artisan migrate
Expected Result
Trigger creation and successful installation.
Actual Result
Can't install Unopim.
Screenshots
No response
Additional Context
No response

Hi @webappbuilder,
Currently, we only offer support for MySQL and MariaDB. However, we plan to include support for PostgreSQL in our future releases.


v2 Not working on GW6, but v1.0.1 does

Hello,
I was not able to get v2 working on a GW6, went through instructions here. All steps completed successfully, but the long hold action never triggers.
I uninstalled GW4Remap v2 then reinstalled Samsung Pay and installed GW4Remap v1.0.1 and it works fine.

Do you have Samsung Pay pre installed? I mean if you long press the back key, does spay open by default?

Yes, it was pre-installed.
Still using v1 and you can see Samsung pay flash for a second.

It seems like V1 is observing the log for a certain application to start, kill it, and then start another application to replace it. While this is neat but the V2 method, which monitors the internal Android log (otherwise known as logcat) and find long press event of certain buttons is actually more sensible and versatile. Unfortunately, that seems to be broken and the author of this helper app does not intend to debug and fix it. I will try to fork and fix this in the future.

Having the same or similar issue. Disabling bixby removes the option to set the button to anything in settings.
Holding back button will do nothing and holding home will open the power menu

It's actually working after compiling the android application myself. But after a reboot the permission are gone again.

Hmm, can t get it working again. It didnt ask for permissions anymore

This seems to be likely caused by a change in Android 13 where even apps with permission to read logs trigger a dialog when they try and use this permission. (https://issuetracker.google.com/issues/232206670)
I'm not sure if this dialog is just not implemented on WearOS, or doesn't work properly because GW4Remap triggers log reading from an accessibility background service rather than a foreground app. Either way, a dialog popping up every so often to allow reading logs doesn't seem very practical.
For now I guess you're stuck with the v1 method or someone has to come up with a new technique for detecting the button presses.

Exactly, I remember perfectly a pop-up inside the app to enable log detection. That pop up happened the first time I installed the v2 app and never again, gw4 has not worked since then

Yes I made a picture yesterday evening (it's in dutch). It asks to enable log detection. Then it keeps working until you reboot or disable the application.

I wanted to write a shell script and start the script via ADB to keep track of logcat and execute an application package when it detects the logline (acutally the G4Remap application). You can use AutoWear to talk via ADB with the watch. Altough I don't have that working at the moment.
Was planning on starting the shell script using nohup to keep it alive even after AutoWear stops.
I recompiled GW4Remap and started experimenting with permissions in Android. It looks like it has permission to READ_LOGS, but logcat still isn't working. I changed GW4Remap to check for permission at bootup.
Very weird problem, not sure yet if there are other detection methodes (maybe implement and override the WindowManager inside an Android application, but don't think samsung allows that). Or root your watch and just start a shell script :(


Animation Retargeting

Excuse me, I unpacked a mobile game of Unity. I want to try to extract animation from the game. I selected animator and AnimationCilp with AssetStudios and exported them, but the extraction of animation failed. It seems to need to use Unity's Animation Retargeting, can anyone tell me what I need to do? Thanks！

Hello, Toby Stark has received an important communication of you, trouble and thank you!


feat: move console.debug to console.log in docs

Closes #547

I can not link issues, but this is related to #547

closes #547

@tomiiide I can not merge.. so if you d do the honor

@luizstacio need some eyes here this PR is approved but not able to be merged apparently because needs vercel
CI step completed... I tried to authorize but it's not moving anywhere


Click events for task and milestone?

Version
^1.12.8
Development Environment
Google-chrome Version 78.0.3904.97 (Official Build) (64-bit), Ubuntu 18.04
Current Behavior
When I click on a date or "allday" in in the week view I get an event, but I don't get one for "task" or "milestone" I don't see any events in the API for this.
  var calendar = new Calendar('#calendar', {
    defaultView: 'month', // set 'week' or 'day'
    taskView: true, // e.g. true, false, or ['task', 'milestone'])
    scheduleView: ['time', 'task', 'milestone', 'allday'], // e.g. true, false, or ['allday', 'time'])    useCreationPopup: true,
    calendars: CalendarList,
    useDetailPopup: false,
    useCreationPopup: false,
    month: {
      scheduleFilter(schedule) {
        return Boolean(schedule.isVisible);
      }
    },
    theme: theme,
    template: template
  });

  let modalEl = container.querySelector('#shift-view'),
    beginInput = modalEl.querySelector('.begin input'),
    endInput = modalEl.querySelector('.end input'),
    userInput = modalEl.querySelector('#employee'),
    titleHeader = modalEl.querySelector('#my-dialog-title');
  calendar.on({
    'clickSchedule': e => openClickedScheduleModal(e, modalEl, beginInput, endInput, userInput, titleHeader),
    'beforeCreateSchedule': function(e) {
      console.log('beforeCreateSchedule', e);
      // open a creation popup
    },

    'beforeUpdateSchedule': function(e) {
      console.log('beforeUpdateSchedule', e);
      e.schedule.start = e.start;
      e.schedule.end = e.end;
      calendar.updateSchedule(e.schedule.id, e.schedule.calendarId, e.schedule);
    },
    'beforeDeleteSchedule': function(e) {
      console.log('beforeDeleteSchedule', e);
      calendar.deleteSchedule(e.schedule.id, e.schedule.calendarId);
    },
// no event here
    'beforeCreateTask': function(e) {
      console.log('beforeCreateTask', e);
    },
  });

Expected Behavior
I want it to return an event when I click on the task/milestone pane, right now it only does it for the schedule or "allday" rows.

clickSchedule event is for them, too. Check schedule.category.
calendar.on('clickSchedule', ({schedule, event}) => {
  if (schedule.category === 'milestone') {
    //
  } else if (schedule.category === 'task') {
    //
  } else {
    //
  }
});

calendar.on('clickSchedule', ({schedule, event}) => {
  if (schedule.category === 'milestone') {
    //
  } else if (schedule.category === 'task') {
    //
  } else {
    //
  }
});

I'm referring to when a blank space is clicked in the milestone/task pane in the week view. Only allday will return an event for 'beforeCreateSchedule' but not milestone or task.

Please let me know if this is a feature that can be implemented, if not, I'll have to find a workaround.

I understood the situation you said. Not implemented yet. It'll take some time to implement it.
The reason we didn't implement it is the creation popups of task or milestone are different with normal events's. So, I think we can implement it, but  you have to also implement the creation popups of task and milestone.

It would be nice if at least there was an event for it, no need for a popup.

Is it possible we could have this feature? just an event is fine.


New planned process class request "desiccation process"

Please consider adding "dessication process" as subclass of planned process
preferred name desiccation process
definition application of a chemical such as a herbicide to a crop in order to destroy and reduce green crop foliage or assist crop drying as a preparatory step to harvesting.
subclass of planned process

will be available in the next release


[Feature Request] Add swarm support

Hello again!
As the title already says, I would love to see the swarm mode supported in this project!
To get information of wich stage it is on or what map/champ is played. There could be so much potential!
Sadly I cant code in python very good, if I could I would already made a pull request :(
I would love to see this gamemode supported with the full potential!
(Please mind that english is sadly not my first language :/)

Surely. Unfortunately I'm not at home right now so maybe I'll update it in the next few days. I haven't even tried the mode myself

Oh okay, cant wait!

Added in the latest release. Unfortunately I can only do current champion because the API is a real mess and they did a bunch of workarounds for this new mode to work. Anyways thanks for requesting this!


[SPARK-35574][BUILD] Add a compile arg to turn compilation warnings related to procedure syntax to compilation errors in Scala 2.13

What changes were proposed in this pull request?
There are several pr to fix compilation warnings  related to procedure syntax like SPARK-29291， SPARK-33352 and SPARK-35526, in order to prevent the recurrence of similar problems, this pr add a compile arg to convert procedure syntax related compilation warnings to compilation errors in Scala 2.13.
Why are the changes needed?
Prevent the recurrence of compilation warnings related to procedure syntax is deprecated
Does this PR introduce any user-facing change?
procedure syntax is no longer allowed in Spark code with Scala 2.13, for constructors methods definition should be this(...) = { } not this(...) { }, for without  return type methods definition should be def methodName(...): Unit = {} not def methodName(...) {}.
How was this patch tested?

Pass the GitHub Action Scala 2.13 job

Manual test：

Do some code change like:
Index: core/src/main/scala/org/apache/spark/HeartbeatReceiver.scala
===================================================================
@@ -67,7 +67,7 @@
 private[spark] class HeartbeatReceiver(sc: SparkContext, clock: Clock)
   extends SparkListener with ThreadSafeRpcEndpoint with Logging {

-  def this(sc: SparkContext) = {
+  def this(sc: SparkContext) {
     this(sc, new SystemClock)
   }

Index: core/src/main/scala/org/apache/spark/MapOutputTracker.scala
===================================================================
@@ -720,7 +720,7 @@
     }
   }

-  def registerMergeResult(shuffleId: Int, reduceId: Int, status: MergeStatus): Unit = {
+  def registerMergeResult(shuffleId: Int, reduceId: Int, status: MergeStatus) {
     shuffleStatuses(shuffleId).addMergeResult(reduceId, status)
   }

sbt  with Scala 2.13 profile compile  failed as follows:*
[error] /home/runner/work/spark/spark/core/src/main/scala/org/apache/spark/HeartbeatReceiver.scala:70:29: procedure syntax is deprecated for constructors: add `=`, as in method definition
[error]   def this(sc: SparkContext) {
[error]                             ^
[error] /home/runner/work/spark/spark/core/src/main/scala/org/apache/spark/MapOutputTracker.scala:723:79: procedure syntax is deprecated: instead, add `: Unit =` to explicitly declare `registerMergeResult`'s return type
[error]   def registerMergeResult(shuffleId: Int, reduceId: Int, status: MergeStatus) {
[error]                                                                               ^
[error] two errors found
[error] (core / Compile / compileIncremental) Compilation failed
[error] Total time: 136 s (02:16), completed May 31, 2021 10:06:50 AM

Error: Process completed with exit code 1.

maven  with Scala 2.13 profile compile  failed as follows:
[ERROR] [Error] /Users/yangjie01/SourceCode/git/spark-mine/core/src/main/scala/org/apache/spark/HeartbeatReceiver.scala:70: procedure syntax is deprecated for constructors: add `=`, as in method definition
[ERROR] [Error] /Users/yangjie01/SourceCode/git/spark-mine/core/src/main/scala/org/apache/spark/MapOutputTracker.scala:723: procedure syntax is deprecated: instead, add `: Unit =` to explicitly declare `registerMergeResult`'s return type
[ERROR] two errors found

Test build #139109 has started for PR 32710 at commit 8f73461.

cc @dongjoon-hyun

Kubernetes integration test unable to build dist.
exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43629/

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

Test build #139112 has started for PR 32710 at commit 841afd1.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43632/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43632/

Test build #139109 has finished for PR 32710 at commit 8f73461.

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

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

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

Test build #139112 has finished for PR 32710 at commit 841afd1.

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

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

Test build #139163 has started for PR 32710 at commit f4d17ac.

Kubernetes integration test unable to build dist.
exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43683/

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

Test build #139163 has finished for PR 32710 at commit f4d17ac.

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

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

Test build #139199 has started for PR 32710 at commit dcfd353.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43721/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43721/

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

Test build #139199 has finished for PR 32710 at commit dcfd353.

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

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

GA already passed but the status is not updated ...

Weird, that does not seem related:
======================================================================
ERROR [2.165s]: test_reuse_worker_of_parallelize_range (pyspark.tests.test_worker.WorkerReuseTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jenkins/workspace/SparkPullRequestBuilder/python/pyspark/tests/test_worker.py", line 178, in test_reuse_worker_of_parallelize_range
    self.assertTrue(pid in previous_pids)
AssertionError: False is not true

Jenkins retest this please

Test build #139231 has started for PR 32710 at commit dcfd353.

thx @srowen

Kubernetes integration test unable to build dist.
exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43755/

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

Test build #139231 has finished for PR 32710 at commit dcfd353.

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

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

Merged to master.

thx @srowen @HyukjinKwon @gengliangwang


Use new timeago.js library

Replace the heavy jQuery.timeago plugin with a smaller library named timeago.js.
This library is ~2KB, has no dependencies and includes several built-in locales. It also updates the timestamp on the page in realtime.

thanks for the pr @hustcc. Since your library does the auto update itself, we need a better refactor here.
Also before switching to yours we need to test the memory footprint because it does the auto-updating.

the API render is auto update for web page, but the API format just get the human readable string.
Very glad to do something for this project.


fix #10539

Please review my pull request.

@stableapple you CI tests are failing due to an issue with the datatype of "subject", that you are returning (as seen by the error message "TypeError: Expected list, got <class 'str'>" given by the CI tests). Try solving this and pass the CI tests.

Closing as this is incomplete and lacks tests.  Thanks for working on this @stableapple! (And also I think a duplicate of #13581).


Initialize New Accounts with Nonce Equal to Block Number

There is a well known issue that Substrate accounts which are killed could have their txs replayed if the lifetime is infinite.
To help mitigate this, we want to initialize a user's nonce with the number of the current block.
This means that assuming that an account does on average less than one tx per block, that none of it's transactions could be replayed even if the account was killed.
This can also be used as a mechanism to determine how old an account is (relatively). For example, we could start a democracy vote where only users with nonce lower than the current block number could vote. This means that it would not be possible for someone to create a bunch of new accounts after the vote is announced to then influence the outcome.
It would of course be possible to create a bunch of sleeper accounts initialized with a low nonce, but such activity could be monitored and accounted for before the vote takes place. Anyway, this second half is just an idea...

I would be interested in helping out! New to the code base though so would need some pointers to get started.

This helps but immortal tx with nonce of 0 is still going to be replayable

This helps but immortal tx with nonce of 0 is still going to be replayable

It would be simple enough to not allow nonce 0?

Can I take this one? I just faced this issue trying to figure why two transactions in different blocks have the same hash and signature, block explores rely in this functionally for uniquely identify the transaction.
Tx hash: 0x313da69888b43486a5bf717958d02e7228467fa48654c8bd690fe38b56370113
https://polkascan.io/polkadot/block/7911545
https://polkascan.io/polkadot/block/7854172

That problem is not the same thing as mentioned in this issue.
A tx hash is literally a hash of the tx input data, and can be the same if the same inputs are used AFAIK.
The unique identifier for a tx is (block number, extrinsic index).

In my opinion, is better to disable the Pallet::<T>::on_killed_account(who.clone()) functionality in the System Pallet until this issue if fixed, then create a migration which deletes all accounts without providers in the future. Because I consider the risk o replay attack worst than the risk of storage bloating.
https://github.com/paritytech/substrate/blob/polkadot-v0.9.13/frame/system/src/lib.rs#L1080-L1085
I don't think people are aware that if their account is deleted then re-created, they can suffer replay attacks.

I noticed that fixing the nonce initialization is not trivial:

https://github.com/paritytech/substrate/pull/8822
https://github.com/paritytech/frontier/issues/445

So my suggestion is doing a band-aid solution to prevent replay attacks, maybe something like this:
frame/system/src/lib.rs#L1080-L1085
(1, 0, 0) => {
	// No providers left (and no consumers) and no sufficients. Account dead.

	if account.nonce > 0 {
		Pallet::<T>::on_killed_account(who.clone());
		Ok(DecRefStatus::Reaped)
	} else {
		// Mark the account to be reaped in a future migration
	}
},

same hash because the account reuse the same nonce and call the same extrinsic twice

This is not accurate. The tx hash does not include the nonce of the user or the account. Any two accounts will generate the same tx hash with the same tx and inputs. It is literally the hash of the tx bytes, not a unique identifier.

I don't think people are aware that if their account is deleted then re-created, they can suffer replay attacks.

This is a completely documented and known thing with functions already built into polkadot to prevent it.
All extrinsics have a configurable transaction lifetime or mortality. You can learn more about that here: https://wiki.polkadot.network/docs/build-protocol-info#transaction-mortality

I've been working with polkadot for a few months now and I did not know the possibility of replaying transactions in that way.... I bet people that are not programmers or anything will never know as well...
If you don't think that's a serious security flaw, I'm not sure what is.

I am not sure what to respond here. It is a part of the protocol, I am sure you and I both don't know every detail of Polkadot, however this is a feature which exists and when used correctly, can prevent tx replays.
Every wallet creator worth their salt in the Polkadot ecosystem definitely makes sure to provide only mortal transactions by default.

Yes, I've read the documentation that you sent and it does say in there... But like you just said I don't know every detail, you don't know, a lot of people don't know. Why should substrate expect that everybody will know? And people that run their own nodes instead of using a wallet, will also know this detail?
I believe security flaws from the blockchain should be fixed on the blockchain.... And not asking the wallets to do things to avoid that or expecting everybody including people that don't use the wallet to know about the security flaw.
That's basically like saying: "there is a security issue in HSBC banking system.... but we will fix it in the mobile app not in the banking system itself"
I still agree with @Lohann that this is indeed a risk that should be fixed somehow.


Allow subtitle conversion

Allow subtitle conversion.
Eg:
srt, sub, sbv, ssa --> WebVTT or TTML

I have tested an mkv with srt and the conversion to webvtt works, so this is now solved.


[WFLY-13065] Options for reverse-proxy max-request-time and connection-idle-timeout are specified as seconds

Fix for https://issues.redhat.com/browse/WFLY-13065. Comments:

It requires a bump for undertow xml version to 11 (I have cloned the changes previously done in 10).
The only difference in the XML is that all the default values for the reverse-proxy-handlerType have been added.
Test added to check the max-request-time with a very low value and check the connection is aborted (503 returned).
I have also changed the creation of the ProxyHandler to use the builder (to avoid the deprecated warning). Here there are two values (rewrite-host-header and reuse-x-forwarded) that could also be added to the wildfly configuration (now they are always false). Just in case you want to use the same bump for them.

No hurry with this one. It's a minor thing and the bump complicates it a bit.

retest this please

Dependency Tree Analyzer Output:
New Dependencies:

io.smallrye:smallrye-config-common:jar:1.4.1:compile
io.smallrye:smallrye-config:jar:1.4.1:compile

Removed Dependencies:

io.smallrye.config:smallrye-config-common:jar:1.6.1:compile
io.smallrye.config:smallrye-config:jar:1.6.1:compile

CC @wildfly/prod

@rmartinc Thanks! We require that the schema/xsd version bump commits be in a separate commit from the functional change, so we can clearly distinguish the two.
@fl4via already has commits for a version bump in #12882. Please coordinate with her as to how to the version bump.

@bstansberry OK thanks! I'll contact @fl4via this afternoon to send her the little xsd changes this issue needs. Then I'll redo the PR.

@bstansberry  can this PR be converted as a dependent on #12882 so that the other one can also be merged? It contains improvements on the Undertow subsystem that don't depend on RFEs and are ready to be merged as they are

@fl4via I still don't see the default values for reverse-proxy-handlerType in the XSD of your PR. What's the idea finally? If you add them to the in your bump my PR is reduced to a trivial one. I remember that we chatted about doing that, but I'm not updating this PR because I don't see your changes. :-)

This PR is ready to go, @rmartinc  rebased it and removed the addition of the new schema version because it was already bumped by a previous commit.

I have added the transformer for the default value in the bump from version 10 to 11. Let's see the tests!


 We no longer
use the github_pr trigger.
Instead for socok8s, we want to use a Jenkinsfile pipeline definition
inside of the SUSE-Cloud/socok8s repository and use the jenkins plugin
called github-branch-source[1] to trigger PR testing.
That way, we have

the possiblity to test changes to the Jenkinsfile itself
github integration (similar to what github_pr does)
a Jenkins pipeline instead of job steps so doing things in parallel
might be easier
a very nice UI in Jenkins (compared to the difficult to understand
relation between jobs when using github_pr and friends)

[1] https://go.cloudbees.com/docs/plugins/github-branch-source/

@toabctl shouldn't we add the jenkinsfile to git instead?

@toabctl shouldn't we add the jenkinsfile to git instead?

@dirkmueller yes. But the Jenkinsfile will be in the socok8s repo itself (so changes to the CI itself are tested directly). See https://github.com/SUSE-Cloud/socok8s/pull/287


Fix Annotation Warnings

Fix these 4 warnings seen in all the main branch actions - https://github.com/elyra-ai/canvas/actions

Fixed in PR #1853


implement zr and zm more like default behavior

Feature description
Related to #62, I would like it if zr would decrease the amount of folding and zm would increase the amount of folding.
Describe the solution you'd like
Starting with no folds, zm would need to be aware of the maximum fold level currently used in a document and incrementally reduce this value. The foldlevel could possibly be tracked by a buffer local variable (vim.b.ufo_foldlevel?), similar to foldlevel.
zr would then increment vim.b.ufo_foldlevel up to the maximum currently used in the document.
Additional context
Thank you for your work on this plugin, it has made it possible for me to use folds on large markdown documents with many code chunks, where before it was impossibly slow!

vim.b.ufo_foldlevel -> vim.w.ufo_foldlevel
Have you encountered any performance issues by customizing yourself? IMO, the built-in zr and zm behaviors are not good workflow.
Maybe enhance ufo to preview the folded/unfolded level code in the future.

I agree this should be easy to do, but I don't know how to find the
greatest fold level of the document.
Is there a way of querying what the largest fold level is for a document?
On Thu, Aug 24, 2023 at 4:24 PM Kevin Hwang @.***>
wrote:

vim.b.ufo_foldlevel -> vim.w.ufo_foldlevel
Have you encountered any performance issues by customizing yourself? IMO,
the built-in zr and zm behaviors are not good workflow.
Maybe enhance ufo to preview the folded/unfolded level code in the future.
—
Reply to this email directly, view it on GitHub
https://github.com/kevinhwang91/nvim-ufo/issues/150#issuecomment-1692538787,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APBWHQKDA2WB6BYF4CVEGOLXW7PEVANCNFSM6AAAAAA35MGRIU
.
You are receiving this because you authored the thread.Message ID:
@.***>

Have you understood the comment https://github.com/kevinhwang91/nvim-ufo/issues/62#issuecomment-1207198496 ?

Yes, I see you say that incremental folding and virtual_foldlevel tracking
would be hard to implement. In that case, I'm can deal with working with
1zm 2zm...
On Thu, Aug 24, 2023 at 4:50 PM Kevin Hwang @.***>
wrote:

Have you understood the comment #62 (comment)
https://github.com/kevinhwang91/nvim-ufo/issues/62#issuecomment-1207198496
?
—
Reply to this email directly, view it on GitHub
https://github.com/kevinhwang91/nvim-ufo/issues/150#issuecomment-1692558334,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APBWHQK7I7BP5V6EQBMJBF3XW7SF3ANCNFSM6AAAAAA35MGRIU
.
You are receiving this because you authored the thread.Message ID:
@.***>

Hey @fisher-j and anyone else who comes across this.
I've implemented this in my Neovim config somewhat and thus far it's been working well enough for me.
Here's the code:
-- Ensure our ufo foldlevel is set for the buffer
vim.api.nvim_create_autocmd("BufReadPre", {
    callback = function()
        vim.b.ufo_foldlevel = 0
    end
})

---@param num integer Set the fold level to this number
local set_buf_foldlevel = function(num)
    vim.b.ufo_foldlevel = num
    require("ufo").closeFoldsWith(num)
end

---@param num integer The amount to change the UFO fold level by
local change_buf_foldlevel_by = function(num)
    local foldlevel = vim.b.ufo_foldlevel or 0
    -- Ensure the foldlevel can't be set negatively
    if foldlevel + num >= 0 then
        foldlevel = foldlevel + num
    else
        foldlevel = 0
    end
    set_buf_foldlevel(foldlevel)
end

-- Keymaps
vim.keymap.set("n", "zm", function()
    local count = vim.v.count
    if count == 0 then
        count = nil
    end
    change_buf_foldlevel_by(-(count) or -1)
end, { desc = "UFO: Fold More" })

vim.keymap.set("n", "zr", function()
    local count = vim.v.count
    if count == 0 then
        count = nil
    end
    change_buf_foldlevel_by(count or 1)
end, { desc = "UFO: Fold Less" })

-- 99% sure `zS` isn't mapped by default
vim.keymap.set("n", "zS", function()
    if vim.v.count == 0 then
        vim.notify("No foldlevel given to set!", vim.log.levels.WARN)
    else
        set_buf_foldlevel(vim.v.count)
    end
end, { desc = "UFO: Set Foldlevel" })

Mostly I've just written a wrapper around require('ufo').closeFoldsWith to keep track of a separate ufo_foldleve
buffer variable.
If you're curious, I've implemented it into my config
here.
I use lazy.nvim to manage my plugins so I set my keybindings through lazy's keys
table. That's the only significant difference between the code above and my code in terms of the folding.
I'm sure there's problems that can be caused/extend from this, but thus far it seems to be working quite well for me. YMMV.
Hope someone else finds this helpful 🙂.

Thanks for this code snippet @treatybreaker ! I am looking to improve it a bit, @kevinhwang91 is there a way internally to retrieve the max fold level of a buffer? I'm curious if this information is stored anywhere when setting up the folds

Here is the code I'm trying to get working currently:
-- return the max fold level of the buffer (for now doing the opposite and folding incrementally is unbounded)
-- Also jarring if you start folding incrementally after opening all folds
local function max_level()
  -- return vim.wo.foldlevel -- find a way for this to return max fold level
  return 0
end

---Set the fold level to the provided value and store it locally to the buffer
---@param num integer the fold level to set
local function set_fold(num)
  -- vim.w.ufo_foldlevel = math.min(math.max(0, num), max_level()) -- when max_level is implemneted properly
  vim.b.ufo_foldlevel = math.max(0, num)
  require("ufo").closeFoldsWith(vim.b.ufo_foldlevel)
end

---Shift the current fold level by the provided amount
---@param dir number positive or negative number to add to the current fold level to shift it
local shift_fold = function(dir) set_fold((vim.b.ufo_foldlevel or max_level()) + dir) end

-- when max_level is implemented properly
-- vim.keymap.set("n", "zR", function() set_win_fold(max_level()) end, { desc = "Open all folds" })
vim.keymap.set("n", "zR", require("ufo").openAllFolds, { desc = "Open all folds" })

vim.keymap.set("n", "zM", function() set_fold(0) end, { desc = "Close all folds" })

vim.keymap.set("n", "zr", function() shift_fold(vim.v.count == 0 and 1 or vim.v.count) end, { desc = "Fold less" })

vim.keymap.set("n", "zm", function() shift_fold(-(vim.v.count == 0 and 1 or vim.v.count)) end, { desc = "Fold more" })

If we had a way to dynamically fetch the max fold level from nvim-ufo it would be completely seamless when moving between using zr/zm alongside zR and zM. Let me know what you think and if anyone knows of this sort of information being available!

Here is the code I'm trying to get working currently:
-- return the max fold level of the buffer (for now doing the opposite and folding incrementally is unbounded)
-- Also jarring if you start folding incrementally after opening all folds
local function max_level()
  -- return vim.wo.foldlevel -- find a way for this to return max fold level
  return 0
end

---Set the fold level to the provided value and store it locally to the buffer
---@param num integer the fold level to set
local function set_fold(num)
  -- vim.w.ufo_foldlevel = math.min(math.max(0, num), max_level()) -- when max_level is implemneted properly
  vim.b.ufo_foldlevel = math.max(0, num)
  require("ufo").closeFoldsWith(vim.b.ufo_foldlevel)
end

---Shift the current fold level by the provided amount
---@param dir number positive or negative number to add to the current fold level to shift it
local shift_fold = function(dir) set_fold((vim.b.ufo_foldlevel or max_level()) + dir) end

-- when max_level is implemented properly
-- vim.keymap.set("n", "zR", function() set_win_fold(max_level()) end, { desc = "Open all folds" })
vim.keymap.set("n", "zR", require("ufo").openAllFolds, { desc = "Open all folds" })

vim.keymap.set("n", "zM", function() set_fold(0) end, { desc = "Close all folds" })

vim.keymap.set("n", "zr", function() shift_fold(vim.v.count == 0 and 1 or vim.v.count) end, { desc = "Fold less" })

vim.keymap.set("n", "zm", function() shift_fold(-(vim.v.count == 0 and 1 or vim.v.count)) end, { desc = "Fold more" })

If we had a way to dynamically fetch the max fold level from nvim-ufo it would be completely seamless when moving between using zr/zm alongside zR and zM. Let me know what you think and if anyone knows of this sort of information being available!

May take time to explore.

Here is the code I'm trying to get working currently:
-- return the max fold level of the buffer (for now doing the opposite and folding incrementally is unbounded)
-- Also jarring if you start folding incrementally after opening all folds
local function max_level()
  -- return vim.wo.foldlevel -- find a way for this to return max fold level
  return 0
end

---Set the fold level to the provided value and store it locally to the buffer
---@param num integer the fold level to set
local function set_fold(num)
  -- vim.w.ufo_foldlevel = math.min(math.max(0, num), max_level()) -- when max_level is implemneted properly
  vim.b.ufo_foldlevel = math.max(0, num)
  require("ufo").closeFoldsWith(vim.b.ufo_foldlevel)
end

---Shift the current fold level by the provided amount
---@param dir number positive or negative number to add to the current fold level to shift it
local shift_fold = function(dir) set_fold((vim.b.ufo_foldlevel or max_level()) + dir) end

-- when max_level is implemented properly
-- vim.keymap.set("n", "zR", function() set_win_fold(max_level()) end, { desc = "Open all folds" })
vim.keymap.set("n", "zR", require("ufo").openAllFolds, { desc = "Open all folds" })

vim.keymap.set("n", "zM", function() set_fold(0) end, { desc = "Close all folds" })

vim.keymap.set("n", "zr", function() shift_fold(vim.v.count == 0 and 1 or vim.v.count) end, { desc = "Fold less" })

vim.keymap.set("n", "zm", function() shift_fold(-(vim.v.count == 0 and 1 or vim.v.count)) end, { desc = "Fold more" })

If we had a way to dynamically fetch the max fold level from nvim-ufo it would be completely seamless when moving between using zr/zm alongside zR and zM. Let me know what you think and if anyone knows of this sort of information being available!

May take time to explore.

It looks like it is possible for nvim-ufo to provide the said vim.w.ufo_foldlevel variable right now, by adding some code that increments and decrements the variable inside the existing APIs. Much like the @PriceHiller's implementation https://github.com/kevinhwang91/nvim-ufo/issues/150#issuecomment-1867928299 but embedding the whole tracking code inside the API itself so that users do not need an extra wrapper.
Of course, this is not "directly" fetching the actual max fold level.
(currently the only way to do that is by analyzing the overlapping ranges of ufo.getFolds())
Just carefully tracking the invocation of folds to accurately "guess" the current fold level.
In a way this could be considered not very elegant. However, it probably works and definitely does not hinder the performance. There may be edge cases that might cause the tracking variable to go out sync with the actual fold level - but for now I cannot think of any.
So, is there a particular reason this solution cannot be integrated in the nvim-ufo's code?
Are you not satisfied with the said lack of "elegance" or the potential of edge cases?
Perhaps working on more clean and robust solution on your mind?

So, is there a particular reason this solution cannot be integrated in the nvim-ufo's code? Are you not satisfied with the said lack of "elegance" or the potential of edge cases? Perhaps working on more clean and robust solution on your mind?

 Even from getFolds method, ufo knows all ranges, but the user can type zf to create a new fold that makes the trace of vim.w.ufo_foldlevel invalid.
@mehalter has mentioned we need a way to get the highest level. Frankly speaking, this is a laborious task. I have no time to explore the upstream source code and port it to ufo.

I have completely forgotten about the fact that foldmethod remains "manual" because I never manually created folds while using nvim-ufo. Welp, fair enough. In my use case it'd work fine because I do not use zf but I agree this method is flawed and shouldn't be included in the plugin code.


Add Garbage Collector Tool

Add a tool for deleting chunks from destinations if there is no reference to them. This should be implemented as a stand-alone command that would be run as a seperate daemon or timer job.

Solved by get-hashes command. Write a script for it yourself. Example below.
IFS=$'\n'
DESTINATION="$PWD"
METADATA_FILES="/var/lib/metadata"
KNOWN_HASHES="$(mktemp)"

# Generate known hashes file
for file in $(git -C "$METADATA_FILES" ls-tree --name-only -r HEAD) ; do
    chunky-bits get-hashes "$file" >> "$KNOWN_HASHES"
done

# Find all files in the destination recursively and delete them if not a known hash
for file in $(find "$DESTINATION" -type f) ; do
    if ! grep "$file" "$KNOWN_HASHES" > /dev/null ; then
        echo rm "$file"
    fi
done

rm "$KNOWN_HASHES"

Remember to use filesystem snapshots before running a script like this to prevent accidental data loss.

ddcbf00c72d90fd71d6907f6c81644bc3cb8fca2
Script can be simplified.
IFS=$'\n'
DESTINATION="$PWD"
CLUSTER="cluster.yaml"
KNOWN_HASHES="$(chunky-bits get-cluster-hashes "$CLUSTER")"

# Find all files in the destination recursively and delete them if not a known hash
for file in $(find "$DESTINATION" -type f) ; do
    if ! <<< "$KNOWN_HASHES" grep "$file" > /dev/null ; then
        echo rm "$file"
    fi
done


⚠ SceneTime has degraded performance

In 336e07c, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 1134 ms

Resolved: SceneTime performance has improved in ffc308a after 6 minutes.


If the directory org-journal-dir does not exist (is not mounted), I'm no longer able to use the calendar.

The reason for this is that org-journal calls
(add-hook 'calendar-today-visible-hook 'org-journal-mark-entries)
(add-hook 'calendar-today-invisible-hook 'org-journal-mark-entries)
when it is loaded.
Then org-journal-mark-entries calls (indirectly) org-journal-dir-check-or-create, which asks me if I want to create the directory. Since I don't want (it's loaded when I need it only), then the whole call to calendar fails.
My workaround is to have my own function which calls
(remove-hook 'calendar-today-visible-hook 'org-journal-mark-entries)
(remove-hook 'calendar-today-invisible-hook 'org-journal-mark-entries)
when I don't have the org-journal-dir loaded, but it would be nice if org-journal would not overwrite my preferences regarding the calendar hooks.

Org-journal's behavior is very much by design. If the journal directory does not exist, org-journal will ask to create it. For most people, this is the right behavior. (Why don't you want to keep your journal directory mounted?)
To make this problem go away in your case, I would advise you to re-define org-journal-dir-check-or-create to the following:
(defun org-journal-dir-check-or-create ()
  "Check existence of `org-journal-dir'. If it doesn't exist, fail with an error."
  (unless (file-exists-p org-journal-dir)
    (error "Journal directory is necessary to use org-journal."))
  t)

This will raise an error any time org-journal-dir-check-or-create is called and your journal directory is not present. The error is necessary to prevent the code that calls org-journal-dir-check-or-create from continuing.
I hope this solved your problem.

Why don't you want to keep your journal directory mounted?

Because sometimes I'm in an environment where I don't want to mount that directory that is supposed to contain items of a sensitive nature to me.

I hope this solved your problem.

Unfortunately it does not. It's true that I'm no longer being asked to create that directory, but still get the error "Journal directory is necessary to use org-journal." The thing is, in that moment I want to use the calendar, not the org-journal, so this error comes out of blue sky and I had to debug to see where it comes from. What I want, I guess, is that org-journal ignores silently that I don't have that directory and let me proceed with my calendar, even if it is not marking the days for which I may have entries in the journal.
Maybe the add-hook should not be called automatically at load, but later, explicitely, or better, maybe there could be a customizable opt-out variable which would prevent calling the add-hook?

I'm sorry but you will have to solve this problem on your end. I don't see an way of reconciling

asking the user to create the directory when it's not there (a useful default)
silently ignoring the directory when it's not there.

If anyone else needs this feature, I'll look into it some more.
That said, if you find a solution that does not disturb the default work flow, I'd be happy to merge it.


"use strict"; is going to break behaviour of codemirror if not removed

I just tried to make codemirror run with multiple areas that are supposed to be editable (using an ng-repeat) and it did not work.
I finally found that removing "use strict;" will allow it to work properly.

We should just merge this PR.
@douglasduteil  what's up?


Combine renew-lease SQL statements into one

This issue tracks the fix to address the code review comment in #226.
Instead of having a separate query for each row why not combine them into one? That'll help avoid a lot of overhead with updating the table 10 times (with a lock each time too)
Originally posted by @Charles-Gagnon in https://github.com/Azure/azure-functions-sql-extension/pull/226#discussion_r930429371

Addressed by #297


Document / export IsJSRef?

I was perusing the code in improved-base, and noticed IsJSRef:
class IsJSRef a where
  jsref_ :: a -> JSRef

  default jsref_ :: Coercible a JSRef => a -> JSRef
  jsref_ = coerce
  {-# INLINE jsref_ #-}

jsref :: IsJSRef a => a -> JSRef
jsref = jsref_
{-# INLINE jsref #-}

(what's up with having both jsref and jsref_?)
I was curious as to why this is the definition instead of
type IsJSRef a = Coercible a JSRef

But as I was writing this issue, I came up with a few reasons / remembered prior discussions:
Pros of typeclass:

Constraint can be used even if the constructor isn't imported (Coercible only works if the newtype constructor is in scope).
Less potential for scary type errors.

Pros of constraint synonym:

No need to define instance IsJSRef Thing for all the datatypes.

Considering usecases like https://github.com/ghcjs/ghcjs-base/issues/53 makes me think we should keep IsJSRef separate from Coercible, and instead use mechanisms like Cast.

It is exported from GHCJS.Internal.Types, but not documented yet.


Re-open ticket for a member if that member's form is broken

As reported by anyone integrated the data. The logic from an integrator should be - if it's closed, re-open it. If it's open, do nothing (I imagine Github will silently ignore a re-re-open request anyway).

I am chinese.I want make friends with  U .please review me.


fix: Add aws-node-termination-handler.argocd_gitops_config.queueURL

What does this PR do?
🛑 Please open an issue first to discuss any significant work and flesh out details/direction - we would hate for your time to be wasted.
Consult the CONTRIBUTING guide for submitting pull-requests.

Motivation

Resolves #

More

[x] Yes, I have tested the PR using my local account setup (Provide any test evidence report under Additional Notes)
[x] Yes, I have added a new example under examples to support my PR
[x] Yes, I have created another PR for add-ons under add-ons repo (if applicable)
[x] Yes, I have updated the docs for this feature
[x] Yes, I ran pre-commit run -a with this PR

Note: Not all the PRs require a new example and/or doc page. In general:

Use an existing example when possible to demonstrate a new addons usage
A new docs page under docs/add-ons/* is required for new a new addon

For Moderators

[ ] E2E Test successfully complete before merge?

Additional Notes

@kahirokunn can you please provide details of your testing on this please, I want to make sure that the queueURL and the value is passed and shown in the argo system.
Thanks

@Zvikan I checked with argocd and it is crossing properly.


DI\object()->method() does not support calling same method twice

This doesn't work:
'My\AddNumbers' => DI\object()
        ->method('addNumber', 1)
        ->method('addNumber', 2),

Only ->method('addNumber', 2) is taken into account.
The method ClassDefinitionHelper::method() (code here) uses the method name as a key for the array that holds methods that should be executed on the constructed object but if you try to call the same method twice it will obviously not work as the array key will be overridden, always retaining only the last method call.

Just chiming in: I got surprised by this today. I think it may be worth a note in the documentation, e.g.: "Multiple uses of the same setter are not supported."
I think the reason it was surprising is that the fluent/chained-method-call API suggests there's nothing wrong with using a bunch of them  in a big chain.

@DHager  thanks for the feedback. Yep I don't really like that situation too. I'm planning to improve that in 5.0 (currently working on it) but it will mean a bit of BC breaks.

One idea for a 4.0 workaround: Something like ClassDefinitionHelper::afterward($func) which runs  after everything else (instantiation, other setter injection) occurs. Building on a documentation example, suppose you want to invoke setFoo multiple times with multiple arguments?
'My\OtherClass' => DI\object()
    ->scope(Scope::PROTOTYPE())
    ->constructor(DI\link('db.host'), DI\link('db.port'))
    ->method('setFoo2', DI\link('My\Foo1'), DI\link('My\Foo2'))
    ->property('bar', 'My\Bar')
    ->afterward(function(Container $c, $obj){
        $obj->setFoo($c->get("ThingOne"));
        $obj->setFoo($c->get("ThingTwo"));
        $obj->setFoo($c->get("ThingThree"));
    }),
'My\ThingOne' => DI\object(),
'My\ThingTwo' => DI\object(),
'My\ThingThree' => DI\object(),

That way all the problematic setters can be tossed in there, without sacrificing the normal ways of dealing with constructor-injection, properties, etc.

The best workaround in 4.* is to use DI\factory though because it let you do all that already.

Doesn't it force you to give up on the constructor-argument autowiring?

Yes using a closure for that will force you to take care of instantiating the object entirely. Usually I need this pretty rarely so it's kind of acceptable (in my experience).

Fixed in 5.0 (to be released in the next months)


Update ngrok proxy port to point to 6066

In https://github.com/ringcentral/engage-digital-source-sdk-js/blob/master/.env.sample the port for the server is set to 6066 but the ngrok proxy is configured to point to 3000 which is not compatible

Thank you!


fixed bug where characteristic id was an int rather than a double

The int was crashing the native android code.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Lee Weisberger seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Text Extractor language shortcuts

Description of the new feature / enhancement
Add option to crate separate shortcuts for OCR installed languages.
Scenario when this would be used?
Multy-language users would have convinient option to invoke OCR. So far it's only possible to choose one language in settings.
Supporting information
Even if settings says "preffered language", i've found that on my system it's only working language.
I'm new to programming and would be glad to try PR this option if it not in future plans of core team. So far this improvement seems relatively easy for me.

I am planning on adding shortcuts to changing languages to the next version of Text Extractor. To see how it will work look at Text Grab.

I am going to close this issue in favor of #24939 due to it including showing the language as a picker and including keyboard shortcuts to change the language.


BUS FAULT when running nmap towards echo_async sample

Describe the bug
I am running Zephyr sample samples/net/sockets/echo_async on stm32f769i_disco.
I can telnet into the target and it echos back as expected.
But when I do a port scan with nmap on the IP address of the target, I get a bus fault (see logs below).
This happens both on Zephyr v3.2.0 and on main branch.
To Reproduce
Steps to reproduce the behavior:

west build samples/net/sockets/echo_async --board=stm32f769i_disco -p
west -v flash -d build/ -r jlink
telnet <IP_ADDRESS> 4242 -> it works
nmap <IP_ADDRESS>   -> nmap fails     note! Don't run with sudo!  (see explanation below)
telnet <IP_ADDRESS> 4242 -> FAILS

This fails without any modifications other than changing the IP address in prj.conf.
Add CONFIG_LOG=y and CONFIG_LOG_MODE_DEFERRED=y  to see the hardfault
Expected behavior
nmap should report the open port (4242).
Application should continue to work regardless of nmap activity.
Impact
Hard-faulting when subjected to a port scan is a critical failure.
This prevents me from upgrading my application from Zephyr v3.0.0 to v3.2.0
(this didn't happen with Zephyr v3.0.0).
Logs and console output
This is the output when I've set  CONFIG_LOG=y and CONFIG_LOG_MODE_DEFERRED=y.
*** Booting Zephyr OS build zephyr-v3.2.0-3990-g06d53b1343ba ***
Connection #0 from <IP_ADDRESS> fd=2
Connection fd=2 closed
Connection #1 from <IP_ADDRESS> fd=2
[00:00:22.904,000] <err> os: ***** BUS FAULT *****
[00:00:22.904,000] <err> os:   Precise data bus error
[00:00:22.904,000] <err> os:   BFAR Address: 0x5dddfe44
[00:00:22.904,000] <err> os: r0/a1:  0x00000000  r1/a2:  0x5dddfe40  r2/a3:  0x00000001
[00:00:22.904,000] <err> os: r3/a4:  0x3dce0000 r12/ip:  0x00000025 r14/lr:  0x080148bd
[00:00:22.904,000] <err> os:  xpsr:  0x210e2c00
[00:00:22.904,000] <err> os: Faulting instruction address (r15/pc): 0x08014604
[00:00:22.904,000] <err> os: >>> ZEPHYR FATAL ERROR 25: Unknown error on CPU 0
[00:00:22.904,000] <err> os: Current thread: 0x20022138 (unknown)
[00:00:22.966,000] <err> os: Halting system

Looking up in the map file, thread 0x20022138 turns out to be z_main_thread (which runs the socket code).
Environment

OS:  Linux
Toolchain: zephyr-sdk-0.15.2
Commit SHA or Version used: v3.2.0 and latest commit on main branch (06d53b1343)

Additional context

I first saw this in my own application running on custom hardware (stm32f777ni)
This started happening when I upgraded from Zephyr v3.0.0 to v3.2.0

Note! If you run nmap as privileged user (sudo), the application doesn't fail. This is because the port scanning behaves differently in unprivileged mode. The nmap manual has a lot to say about this, for example:

On Unix boxes, only the privileged user root is generally able to send and receive raw TCP packets.
For unprivileged users, a workaround is automatically employed whereby the connect system call is
initiated against each target port. This has the effect of sending a SYN packet to the target host, in
an attempt to establish a connection.

This should provide some hints to why it fails. I've tried using different nmap scan types and I've also briefly looked at Wireshark logs, but I haven't been able to pinpoint exactly why this happens.

So isn't this just a memory buffer issue because essentially you're trying to open too many sockets on the board? Have you tried increasing buffer/stack sizes?

@nordicjm, I didn't try this on the sample application, but on my application I have plenty of buffers and generous buffer sizes, and I also tried tripling the stack size.
With the sample application I tried to create more than five connections through telnet, and the application behaves as expected: When trying to establish the sixth connection, telnet stalls until one of the first five connections are closed, then it successfully establishes the new connection. So I don't think it is related to that.

@hjuul @nordicjm I've identified the problem and opened https://github.com/zephyrproject-rtos/zephyr/pull/54171 to fix the issue.
What nmap does in unpriviliged mode, is that it sends SYN packets to consecutive ports. If it succeeds to open a TCP connection, it immediately sends a RST packet to abort it. This did not play well with over-optimised net_context structure.
The net_context assumed that it can safely share memory for FIFO reserved space and user data. The nmap case proved that this was not always the case. As TCP uses the user data space to notify errors to upper layers, and receiving RST packet is considered as an error condition, we've ended up in a situation when user data pointer was overwritten, while the net_context could still await on the accept queue (being simply a FIFO). This damaged the FIFO are, leading to a crash.


Stuck on OpenCl 1.1

Added repo http://repo.radeon.com/rocm/yum/rpm/
Installed rocm-opencl-1.2.0
clinfo says:
Number of platforms:				 2
  Platform Profile:				 FULL_PROFILE
  Platform Version:				 OpenCL 1.1 Mesa 18.0.5
  Platform Name:				 Clover
  Platform Vendor:				 Mesa
  Platform Extensions:				 cl_khr_icd
  Platform Profile:				 FULL_PROFILE
  Platform Version:				 OpenCL 1.2 pocl 1.1 RelWithDebInfo, LLVM 6.0.1, SPIR, SLEEF, DISTRO, POCL_DEBUG
  Platform Name:				 Portable Computing Language
  Platform Vendor:				 The pocl project
  Platform Extensions:				 cl_khr_icd

My system:
Fedora 28 on linux 4.18
Cpu: Intel core i5 8600k
Gpu: Amd RX 560
Is it a mesa issue?

You appear to have two platforms installed. The first appears to be Mesa, and the second is POCL. Neither of these are supported by AMD.
What are the directory /etc/OpenCL/vendors/? What are the contents of all files in that directory?

Further questions: have you installed ROCr and libhsakmt (the ROCm Thunk)? Note that while you don't need to install our kernel drivers on Linux kernel 4.18, you do need the runtime and thunk runtime/driver interface layer for ROCm user-level software to talk to your GPU.

/etc/OpenCL/vendors/  contains
amdocl64.icd  mesa.icd  pocl.icd
I did not have ROCr and libhsakmt installed. So installed hsakmt rocm-runtime packages from fedora repo.

From what Fedora repo? AMD does not offer a Fedora-specific repo. Do you mean our yum repo on repo.radeon.com (which is meant for RHEL and CentOS)?

sudo dnf install hsakmt rocm-runtime
Last metadata expiration check: 0:10:55 ago on Tue 06 Nov 2018 00:00:21 +06.
Dependencies resolved.
==============================================================================================================================================================================
 Package                                 Arch                              Version                                                    Repository                         Size
==============================================================================================================================================================================
Installing:
 hsakmt                                  x86_64                            1.0.6-5.20171026git172d101.fc28                            fedora                             50 k
 rocm-runtime                            x86_64                            1.6.1-7.fc28                                               fedora                            204 k

Transaction Summary
==============================================================================================================================================================================
Install  2 Packages

Also tried to removing mesa.icd from /etc/OpenCL/vendors/, did not help


feat: add python templates

This commit adds support for Python by including basic function/test templates for events and http. The event function seems to highlight that creating a simple invocation framework (as opposed to the server.py in buildpacks repo) to help users navigate the event universe might be a good idea.
Signed-off-by: Lance Ball<EMAIL_ADDRESS>

I should add runtime documentation to this before we land it.

Looks good to me.


Dependabot: do not notify about patch updates

Let's see if this reduces the noise that Dependabot PRs create. We probably don't want to update every time a new patch version is released anyway.

Preview is available here:http://laboratory-pr1162.previews.kube001.services.stellar-ops.com/

Preview is available here:http://laboratory-pr1162.previews.kube001.services.stellar-ops.com/


fix(Dropdown): prevent calling onChange unless value changed

For the Dropdown component, ensures that onChange is called only if the user selectes a value that is different from the current value of the Dropdown. This is so we can have parity with the regular HTML select.

Excellent work, thank you much!

Released in<EMAIL_ADDRESS>


When I place markers on the map, after going past the world, they dissapear. Have to go back from the other side to see them again.

How to reproduce
Leaflet V 1.3.1
Chrome latest version
Windows
Placing markers on all major cities in France, US and China
Scrolling left, until I get past the limits, and get back to the same countries
The pins dissapear. I have to scroll right again to see them.
What behaviour I'm expecting and which behaviour I'm seeing
France Pins should be in France even if I get past over the limits of the world.

Hi, great to hear that you find Leaflet useful!
However, this issue tracker is used for reporting bugs and discussing new features. For questions on using Leaflet, please use gis.stackexchange.com or stackoverflow.
And remember to look at the Leaflet API documentation, specifically about the worldCopyJump option and the maxBounds options for your L.Map.

Hi
Isn't this a bug? To have markers dissapear when the users scrolls past the world????


Don't error when running hosted.html require in dist/ vs. src/

People constantly complain about the requirejs error we have when we load in dist/.  This doesn't rely on require to fail before trying to load in dist.  NOTE: this only affects hosted.html (so testing).

I have a better fix for this in #782.


[MLS Spec change] Add changelog for draft-12 (#497)

Link to the exact changes
https://github.com/mlswg/mls-protocol/pull/497
Description of the changes

editorial and duplicate of #981


Feature: add interactive shell completions

I tried to add the shell completion to the commands, but I found that autoPatchelfHook will only work after the install phase, to make installShellCompletion work in installPhase. I remove the autoPatchelfHook and use patchelf command manually.

Ah that's too bad that autoPatchelfHook gets in the way! Wonder if there's some upstream fix opportunity...
In either case, could you please add a comment for the rationale of not using autoPatchelfHook so that this doesn't get undone in the future?
Otherwise looks good, I'll give this a test tomorrow and then merge. Thank you!

One more idea: Would it work to add another phase and run installShellCompletion there instead? e.g. https://github.com/johnalotoski/openziti-bins/blob/a8396de36a6a7197d2fd1d8b9069559eab1c4592/lib/lib.nix#L35

Good idea, I will give it a try.

One more idea: Would it work to add another phase and run installShellCompletion there instead? e.g. https://github.com/johnalotoski/openziti-bins/blob/a8396de36a6a7197d2fd1d8b9069559eab1c4592/lib/lib.nix#L35

Thanks for tips, now it works with autoPatchelfHook

Oops forgot to merge this, thank you!