[ALLUXIO-2226] Add a LocalFirstPolicy that without evict action

https://alluxio.atlassian.net/browse/ALLUXIO-2226

alluxio-bot, check this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12515/
Test PASSed.

alluxio-bot, check this please

alluxio-bot, check this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12518/
Test PASSed.

alluxio-bot, check this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12520/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12521/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12548/Failed Tests: 1org.alluxio:alluxio-core-client: 1alluxio.client.file.policy.LocalFirstWithoutEvictionPolicyTest.getOthersWhenNotEnoughSpaceOnLocal
Test FAILed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12550/
Test PASSed.

Merged build finished. Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12582/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12594/
Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12595/
Test PASSed.

Merged build finished. Test PASSed.

@gjhkael it seems your commit history is corrupted and includes other people's commit. Can you clean up the history?

I am so sorry about the git commit history corrupted .I will close this pull request, and start a new.

It's okay. Thanks!


Add Serialize and Deserialize to relevant types

This has been determined to be out of scope for now. The template itself currently doesn't need to make use of this, and it's not a particularly common use case for user code either (unlike e.g. reflect(Resource) for inspector, or reflect(Component) for blender).

:P

:P


Fix the reentrance of the github issue tests

right now they panic
with this change they won't
serve cold
enjoy!
/assign mattmoor @chizhg

I am quite unhappy I couldn't move the test helper. But that's for another day :/

/lgtm


Sometimes, language subpath is accessed

In some cases (~100 times in the last 4 days), users land on a page with language subpath, e.g. https://de.serlo.org/de/mathe/1324/exponential-und-logarithmusfunktion.
Maybe we can find a way to reproduce this bug.

Yeah, I guess it's an issue with the CF since adding the language prefix happens while redirecting to the frontend. It seems that this is an edge case where the frontend url is created without usind the frontend backend. I need to investigate it. @Entkenntnis Thx for reporting, I have transfered the issue to the CF repo.

Yeah, I guess it's an issue with the CF since adding the language prefix happens while redirecting to the frontend. It seems that this is an edge case where the frontend url is created without usind the frontend backend. I need to investigate it. @Entkenntnis Thx for reporting, I have transfered the issue to the CF repo.

@kulla Currently, if I try to access de.serlo-staging.dev, I get a 308 permanent redirect to https://frontend-git-staging-serlo.vercel.app/de (tried with every browser I have) - this is confirming that the cf worker has situations where the proxy is behaving as a redirect.

@kulla Currently, if I try to access de.serlo-staging.dev, I get a 308 permanent redirect to https://frontend-git-staging-serlo.vercel.app/de (tried with every browser I have) - this is confirming that the cf worker has situations where the proxy is behaving as a redirect.

This is due to the fact that the frontend domain in staging has changed (see fix https://github.com/serlo/serlo.org-cloudflare-worker/pull/172/files which is already deployed). Is this intentually? I doubt, that this is the bug reporting in this issue so more investigation is needed.

Good to know that the domain has changed - didn't noticed this yet. Unfortunate that this is passed forward to the client.

@elbotho Does this bug occur sometimes? Otherwise I would close this issue...

Could not find any occurrences in simple analytics in the last month.


Logits defined as softmax output in A3C example

In train-atari.py line 107 the logits are defined as softmax activation of the policy:
self.logits = tf.nn.softmax(policy, name='logits')

However, the policy tensor already holds the logits, or unnormalized log probabilities. The softmax activation then computes the actual probabilities by applying the exponential function and normalizing. If I read the code correctly, it's just a wrong naming and not a bug in the implementation though.

Right. I'll use a better name.


Tuna corrupt configs - Type Annotation

Corrupt_configs.py , Type Annotations added. Tested the changes using mypy command
utils.groovy is updated for mypy execution path.

@erb @alexandraBara @JehandadKhan let me know

@cderb , review comments addressed. Let me know.


Does sfgui have to be declared in main?

Depends on your code.
The SFGUI object needs to be instantiated before the SFML window is created. So it doesn't have to be in ´main()´, unless you initialize the SFML window in main().


BPMN Errors can be viewed (summary) and deleted individually

This is an epic issue which may be broken down into multiple tasks, if needed

What should we do?
Currently the user might create BPMN errors (e.g., using Error Boundary Events) (or equal concept: messages, signals, ...). These created errors (again, or messages, signals, ...) will then exist on a global scope and can not be (I) viewed or (II) deleted (unless the user goes into the XML view).
With this epic we want to allow this:

[ ] Have a design concept, that defines how global BPMN Errors may be viewed and potentially deleted on diagram root level
[ ] Implement the BPMN Error overview feature
[ ] Implement the "Delete BPMN Error" feature
[ ] For the entire concept: keep in mind that this concept is in a first step implemented for BPMN errors, but should in principle also be useable for other global entities (e.g., messages, signals).

Why should we do it?
There are multiple reasons why we need this.

Various users requesting it (see #136 #1930)
It supports the RPA use case (where in the future also the bridge will send BPMN Errors)

Also related to https://github.com/camunda/camunda-modeler/issues/861 and https://github.com/camunda/camunda-modeler/issues/1554

In the legacy Camunda Modeler Eclipse Plugin, it was possible to manage global objects both via selected element properties:

as well as process properties (Definitions tab):

FYI - I consider this in the UI Architecture topic.

We should do this as part of @andreasgeier overview concept. Moving it to the backlog.

We should do this as part of @andreasgeier overview concept. Moving it to the backlog.

Just encountered this in Camunda Cloud diagrams as well. I if delete an incomplete message, the global message stays in the XML and the diagram can't be deployed to zeebe anymore.
Do we plan to work on this soon @MaxTru ?

Hi @felix-mueller,
@andreasgeier already prepared a concept for it as part of the reworked overall UI. It basically features a seperate DataView which allows to view (and edit/delete) all global entities (such as errors, messages, ...).
Implementing this concept however requires some dedicated OKR capacities, and from my understanding this is not the most burning topic for Q4. Can you please check with @volkergersabeck ?
If this is a burning issue for cloud and we don't plan this for Q4, then one could implement as a temporary plan B solution a behavior, that would delete all unreferenced entities (e.g., after every save).
Hope these hints help.


fix batch_norm in omniglot example

https://github.com/pytorch/functorch/blob/main/examples/maml_omniglot/maml-omniglot-transforms.py
https://github.com/pytorch/functorch/blob/main/examples/maml_omniglot/maml-omniglot-higher.py

Does this now work off of the main branch?

The omniglot example does not yet work in the main branch, but we can prioritize fixing it if that's something you're looking for, @jgbos.

I certainly would appreciate it. I'm doing a bit of meta-learning work and these tools really simplify the workflow, but I need to do batch_norm to compare to other results.  In the mean time I'll look at group/layer_norm.

Hi @jgbos! Thanks for helping us prioritize this. We would love some insight into how to fix this if you have any thoughts! As a warning, this is going to be long so (1) feel free to ask any clarifying questions and (2) even only answering the first bit about how you're using BatchNorm would be extremely helpful!
First, to check: are you only using BatchNorm in training mode? We just want to make sure that in the cases where the input is batched but the model is not, we don't try to access running_mean or running_var (explanation below in discussion of a bigger design question). If you are, it would be awesome to see your examples so we can understand the intended behavior!
Now the bigger design question:
Background
For some background on the problem, we're trying to prevent vmap from doing in-place updates on non-batched tensors because it will try to change the size of a non-batched tensor to be the batched size. For a quick code version of this with batch norm,
input: [B, N, C]
running_mean: [C]
running_var: [C]
vmap(torch.nn.functional.batch_norm, (0, None, None))(input, running_mean, running_var) # Error

this errors because running_mean and running_var will try to update to be of size [B, C] even though they were originally of size [C], so we've only allocated C space in memory.
Options
We've been considering some options on how to fix this. If you have thoughts on if you would prefer any of these (or another option), that would be super helpful!
Option 1
We introduce something like "BatchNormNoEval" that doesn't compute a running_mean or running_var. If we try to run this after calling nn.Module's eval() method (which is when we would use running_mean and running_var), it would error or warn that it's just using the saved mean and variance. We could introduce a helper function that swaps out BatchNorms in a model for our new batch norms, but it would still be an extra step for a user
Option 2
We introduce an out-of-place batch_norm. This would return a new running_mean and running_var that could be batched if the input was batched and we could overwrite the attributes in the BatchNorm module (which lets us change the running_mean/var from [C] to [B, C] because we aren't doing it in place). The downside to this is that it would also introduce a new BatchNorm module and this module could only be run with vmap because otherwise the shape doesn't work out anymore (we've changed the running_mean/var from [C] to [B, C] which makes it invalid now)
Option 3
Math? If people do want to use non-batched running_mean and running_var with a batched input, we can try to figure out what the behavior should be if we follow for-loop semantics so that the updated versions match the original shape. To do this, it would be great to have a use case with a predefined idea of what they want in this case so that we aren't coming up with something that disagrees with how it will be used

🤯 So much to think about!  The quick answer is that I have some variants of meta-learning I'm working on, but essentially doing the exact same thing as the omniglot maml example.  So if you get the ominiglot example running, it should work for me!
As for the options, I'll have to spend some time thinking about it.

Thanks so much! Your usage as a data point is super helpful
Totally understand that it's a lot. As it marinates, if you have any further thoughts, definitely share! We'll keep you updated as we continue discussing this offline too

Closing, this is fixed and we've added a website note for how to fix it on other models


node: _update_config: do not mkdir if node is going down

Refs https://github.com/scylladb/scylla-dtest/issues/1189
We hit the following path:
Stacktrace
Traceback (most recent call last):
File "/usr/lib64/python2.7/unittest/case.py", line 422, in doCleanups
function(*args, **kwargs)
File "/jenkins/workspace/scylla-master/dtest-release/scylla-dtest/update_cluster_layout_tests.py", line 234, in stop_node3
node3.stop()
File "/jenkins/workspace/scylla-master/dtest-release/scylla-ccm/ccmlib/scylla_node.py", line 602, in stop
if not self.wait_until_stopped(wait_seconds):
File "/jenkins/workspace/scylla-master/dtest-release/scylla-ccm/ccmlib/scylla_node.py", line 543, in wait_until_stopped
if not self.is_running():
File "/jenkins/workspace/scylla-master/dtest-release/scylla-ccm/ccmlib/node.py", line 294, in is_running
self.__update_status()
File "/jenkins/workspace/scylla-master/dtest-release/scylla-ccm/ccmlib/node.py", line 1563, in __update_status
self._update_config()
File "/jenkins/workspace/scylla-master/dtest-release/scylla-ccm/ccmlib/node.py", line 1349, in _update_config
os.mkdir(dir_name)
OSError: [Errno 2] No such file or directory: '/jenkins/workspace/scylla-master/dtest-release/scylla/.dtest/dtest-3MjM7K/test/node3'
Standard Output
Timed out waiting for pidfile to be filled (current time is 2019-12-06 03:53:35.094448)
Signed-off-by: Benny Halevy<EMAIL_ADDRESS>

I think we should just call
https://docs.python.org/3/library/unittest.html#unittest.TestCase.doCleanups
at the begining of tearDown(), since the issue is that cleanup are called after teardowns

I think we should just call
https://docs.python.org/3/library/unittest.html#unittest.TestCase.doCleanups
at the begining of tearDown(), since the issue is that cleanup are called after teardowns

We call cleanUpCluster at the end of Tester.tearDown and also register it with addCleanup.
doCleanups itself is called after tearDown by case.py (at least in the python2.7 version) so I don't think that changing that design is a good idea.
What's the problem with having node.stop be resilient to an already stopped node (and removed from the file system)

BYO test: https://jenkins.scylladb.com/view/master/job/scylla-master/job/byo/job/dtest-byo/21

@bhalevy you might want to rename this PR, since it's doing much more than the title says.
But :+1: for new add_node cleanup, the dtest PR look good too (once we merge this one)

BYO test: https://jenkins.scylladb.com/view/master/job/scylla-master/job/byo/job/dtest-byo/24


Typo in private PyPI section?

The -username here looks like a typo. Should this be twine-username?

@greschd Yes it is. Thanks for pointing that out.


JavaDoc

Attempt to provide a somewhat complete code documentation by improving and expanding the existing JavaDoc comments.

JavaDoc seems good enough. Let not the perfect be the enemy of the good.


container init was failed to kill if signal comes before container init executed

Let me describe the detail:
(1) init new container
        |
       \/
(2) fork() ----->(3b) fork again for namespace ----> (B) init stdio & exec process
        |
       \/
(3a) return success
        |
       \/
(A) next command (signal container with SIGKILL)

Some failed logs:
The (A) was shown (signal and return normally) in log before (B) (hyper_install_process_stdio ), and the container process was not killed.
Detailed logs:
fork and success:
SB[vm-QGyxKjgyXa] [CNL] hyper send type 8
SB[vm-QGyxKjgyXa] [CNL] prerequisite process pid 332
SB[vm-QGyxKjgyXa] [CNL] create child process pid=333 in the sandbox
SB[vm-QGyxKjgyXa] [CNL] hyper send type 333
SB[vm-QGyxKjgyXa] [CNL] hyper_init_event exec stdin event 0x867eb8, ops 0x61d5c0, fd 7
SB[vm-QGyxKjgyXa] [CNL] hyper_add_event add event fd 7, 0x61d5c0
SB[vm-QGyxKjgyXa] [CNL] hyper_init_event exec stdout event 0x867ef8, ops 0x61d5a0, fd 8
SB[vm-QGyxKjgyXa] [CNL] hyper_add_event add event fd 8, 0x61d5a0
SB[vm-QGyxKjgyXa] [CNL] hyper_init_event exec stderr event 0x867f38, ops 0x61d580, fd 11
SB[vm-QGyxKjgyXa] [CNL] hyper_add_event add event fd 11, 0x61d580
SB[vm-QGyxKjgyXa] [CNL] hyper_run_process process pid 333
SB[vm-QGyxKjgyXa] [CNL] hyper ctl append type 9, len 0
SB[vm-QGyxKjgyXa] [CNL] hyper_handle_event event EPOLLOUT, he 0x61d648, fd 3, 0x61d4c0

then, kill and success:
SB[vm-QGyxKjgyXa] [CNL] hyper_handle_event event EPOLLIN, he 0x61d648, fd 3, 0x61d4c0
SB[vm-QGyxKjgyXa] [CNL] hyper ctl append type 14, len 4
SB[vm-QGyxKjgyXa] [CNL] hyper_modify_event modify event fd 3, 0x61d648, event 8197
SB[vm-QGyxKjgyXa] [CNL] hyper_ctlfd_read: get length 116
SB[vm-QGyxKjgyXa] [CNL] hyper ctl append type 14, len 4
SB[vm-QGyxKjgyXa] [CNL] hyper_ctlmsg_handle, type 24, len 116
SB[vm-QGyxKjgyXa] [CNL] hyper ctl append type 9, len 0
SB[vm-QGyxKjgyXa] [CNL] hyper_handle_event event EPOLLOUT, he 0x61d648, fd 3, 0x61d4c0

type 24 is SIGNALPROCESS, and the command payload is
{"container":"d9f81367f4ad974fb2ba3f60f38917602d28914a15764f01c117be082aad9e39","process":"init","signal":9}

then, initialize container process:
SB[vm-QGyxKjgyXa] [CNL] pid 332 exit normally, status 0
SB[vm-QGyxKjgyXa] [CNL] hyper_install_process_stdio

after test timeout, the daemon and pod was killed (again):
(more than 9 minutes later, timeout)
SB[vm-QGyxKjgyXa] [CNL] hyper ctl append type 14, len 4
SB[vm-QGyxKjgyXa] [CNL] hyper_modify_event modify event fd 3, 0x61d648, event 8197
SB[vm-QGyxKjgyXa] [CNL] hyper_ctlfd_read: get length 117
SB[vm-QGyxKjgyXa] [CNL] hyper ctl append type 14, len 4
SB[vm-QGyxKjgyXa] [CNL] hyper_ctlmsg_handle, type 24, len 117
SB[vm-QGyxKjgyXa] [CNL] hyper ctl append type 9, len 0
SB[vm-QGyxKjgyXa] [CNL] hyper_handle_event event EPOLLOUT, he 0x61d648, fd 3, 0x61d4c0
SB[vm-QGyxKjgyXa] [CNL] hyper_handle_event event EPOLLHUP or EPOLLERR, he 0x867f38, fd 11, 10
SB[vm-QGyxKjgyXa] [CNL] stderr_hup, seq 1, id init
SB[vm-QGyxKjgyXa] [CNL] still have 3 user of exec
SB[vm-QGyxKjgyXa] [CNL] hyper_handle_event event EPOLLHUP or EPOLLERR, he 0x867ef8, fd 8, 10
SB[vm-QGyxKjgyXa] [CNL] stdout_hup, seq 1, id init
SB[vm-QGyxKjgyXa] [CNL] still have 2 user of exec
SB[vm-QGyxKjgyXa] [CNL] hyper_handle_event event EPOLLHUP or EPOLLERR, he 0x867eb8, fd 7, 8
SB[vm-QGyxKjgyXa] [CNL] stdin_hup, seq 1, id init
SB[vm-QGyxKjgyXa] [CNL] still have 1 user of exec
SB[vm-QGyxKjgyXa] [CNL] pid 333 exit by signal, status 15
SB[vm-QGyxKjgyXa] [CNL] hyper_handle_exec_exit exec exit pid 333, seq 1, container d9f81367f4ad974fb2ba3f60f38917602d28914a15764f01c117be082aad9e39
SB[vm-QGyxKjgyXa] [CNL] container init process 333
SB[vm-QGyxKjgyXa] [CNL] last user of exec exit, release

complete logs:
Failed: http://ci.hypercontainer.io:8080/job/hyperd-auto/288/consoleFull
Success: http://ci.hypercontainer.io:8080/job/hyperd-auto/295/consoleFull

could we move the
			hyper_send_type(pidpipe, ret);

in hyper_enter_sandbox() to later position, such as just before execvp? I know it means we have to get the pid again in the child process, however, this may prevent exec other handlers, such as "siganl process" before the process was initialized well.

It seems the root cause for the test hang in https://github.com/hyperhq/hyperd/issues/576 is because of https://github.com/hyperhq/hyperstart/pull/257 that kills container exec by killing the process group. However, exec->pid is the process id rather than its own pgid. We use fork() to create exec process so it inherits its parent's pgid. Then kill(-exec->pid) sends the signal to no one.
cc @gao-feng

fixed in #286


Roach in % ?

https://github.com/marinlauber/Python-VPP/blob/d0088714cceda66bd1480cccff3eb3dc6edc3a62/src/SailMod.py#L66
This line of code means that the roach is measured in percent right?
It seems like this is in contraction to the book "Principles of yacht design - Larsson, Eliasson" (where you've got the "BAD" variable name from) as you can see in the picture below.
There, I think, the roach is the maximum length of the perpendicular from the line (top - clew) to the leech in mm:

What do you think?

This is a useful observation that others will pick up on.
Perhaps a docstring to clarify the decision here might be useful for future readers - if there isn't a selected docstring style then pandas is my go to style.
A user can also easily dimension this prior to running the simulation so a workaround is available.

@TAJD Do you mean something like this?
https://github.com/marinlauber/Python-VPP/pull/23


new_measure__onsper1000.json

Preview measure here: https://openprescribing.net/measure/preview_onsper1000/

Discussed at PCMAU steering board - linked in with NHSE value team - waiting on feedback.


Update dropwizard-core, dropwizard-forms, ... to 2.1.3

Updates

io.dropwizard:dropwizard-core
io.dropwizard:dropwizard-forms
io.dropwizard:dropwizard-testing

from 1.3.29 to 2.1.3.
GitHub Release Notes - Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "io.dropwizard" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "io.dropwizard" }
}]

labels: library-update, early-semver-major, semver-spec-major, commit-count:1

Superseded by #1619.


How to detect object accuracy at different distances

Hello, author!
May I ask how to detect the detection accuracy and accuracy improvement at different distances as shown in Figure 7?
Thank U!

I've solved the problem myself

I want to know how to solve this problem!!!!!!!Thanks

I want to know how to solve this problem!!!!!!!Thanks

You can see the link to the relevant file from my home page.


fix: ci metadata action fix

:tada: This PR is included in version 1.0.8-develop.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Correct wrong comment for TestRunWithoutMemoryswapLimit case.

It should be "without memory swap limit", not "without memory swap".
Signed-off-by: Yuan Sun<EMAIL_ADDRESS>

LGTM

Hi @runcom , I have updated the comment.

can we start the comment with TestRunWithoutMemoryswapLimit

LGTM. Merging to avoid more unnecessary discussion about how a comment must be formatted or not. Thank you all.


Fix ActionButton padding in documentation

We just forgot a  component
Closes https://jira.corp.adobe.com/browse/RSP-1698
✅ Pull Request Checklist:

[ ] Included link to corresponding Issue.
[ ] Added/updated unit tests and storybook for this change (for new code or code which already has tests).
[ ] Filled out test instructions.
[ ] Updated documentation (if it already exists for this component).
[ ] Looked at the Accessibility Practices for this feature - Aria Practices

📝 Test Instructions:

🧢 Your Team:

@ktabors yes, that's supposed to fix it, however, with {} and text, it's turning into two nodes, so that's not helping. we're probably making it more complicated by having that check given that {state} Count isn't valid for it because it creates two children? thoughts @devongovett ?

Maybe we could use a class instead of :only-child? And something like this to determine if it should be applied:
let isTextOnly = React.Children.toArray(props.children).every(c => !React.isValidElement(c))

This will look for children that are react elements (as opposed to strings, numbers, etc.). If there are any of those, then assume it's not text only.

nice


Test Sass compiles using the latest compilers

We have existing checks to ensure that GOV.UK Frontend compiles successfully when using the oldest versions of the Sass compilers we support.
We want to ensure that we maintain compatibility with the latest versions of the Sass compilers as well. As the compilers should be following semantic versioning we don't anticipate this to be a problem, but this will give us confidence and flag any issues that may come up in new versions (of Dart Sass, in particular).
Add additional jobs to the GitHub Actions workflow to ensure GOV.UK Frontend also compiles with the latest compatible versions of:

Dart Sass (v1)
LibSass (v3)
Ruby Sass (v3)

Closes #2589

In acafa4ffabdaa91e4e8b74117c097b601a6ab66f I've also silenced the deprecation warnings by importing GOV.UK Frontend as a dependency and using the quiet-deps flag. I don't know if we really need the changes in this commit – all it's really doing is preventing deprecation warnings from appearing in the CI logs? I think I was originally thinking that the warnings would cause the build to fail, but obviously they don't – because they're warnings!
I guess it does give us some confidence that the approach to silencing the deprecation warnings that we recommend in our docs works if we go in and check the build output?
Thoughts?

Nice!
I have a couple of thoughts, but otherwise this all looks good to me. I think the --quiet-deps flag is a nice idea too.
Thought number 1, what do you anticipate we should do if/when a new major release of one of the compilers comes out?
Thought number 2, I know it says in the comments that Ruby Sass is EOL so we're not expecting any more updates, but I can't see why we wouldn't allow for updates anyway, for the latest test, just in case?
Thought number 3, I wonder if there is a way we can make this more DRY? Right now the amount of code is increasing, and I can imagine it increasing further, it would be nice if adding new versions to the text matrix didn't involve a lot of copying and pasting...

Thought number 1, what do you anticipate we should do if/when a new major release of one of the compilers comes out?

Good question. I think dart-sass is the most likely compiler to bring out a major release. I suspect that we won't be able to support v2 of dart-sass whilst maintaining support for LibSass and Ruby Sass, so at that point we'd need to stop and take a broader look at compiler support anyway.
You have made me realise that although it's unlikely we'd see a new major version of LibSass, we could see a new major version of node-sass – for example, dropping support for an older version of Node. So we might need to either change that to install latest? I've tried to pin to major versions generally to avoid new releases of a Sass compiler resulting in unrelated build failures on PRs, so the alternative would be to keep an eye on new major releases of node-sass some other way?

Thought number 2, I know it says in the comments that Ruby Sass is EOL so we're not expecting any more updates, but I can't see why we wouldn't allow for updates anyway, for the latest test, just in case?

Fair, although it's worth noting that the last release was in April 2019 and the repo for the library is archived, so I'd be very surprised if there was a new release at this point – especially one that would affect compilation. I don't actually know how gem install works with constraints / major versions, but will try it and see.

Thought number 3, I wonder if there is a way we can make this more DRY? Right now the amount of code is increasing, and I can imagine it increasing further, it would be nice if adding new versions to the text matrix didn't involve a lot of copying and pasting...

Maybe? There are quite a few things that vary between each job (ruby vs node, version of ruby or node, version of the compiler, the command that needs to be run) and I think any attempt to define that in a matrix is going to result in just as much 'configuration' and potentially make things harder to read? The only truly common parts of the job that I can see are the fact that it runs on ubuntu-latest and that it checks out the code 😅
I also can't see us adding many (any?) more versions, and don't think these jobs are likely to be around for that long  as we'll need to drop support for LibSass and Ruby Sass before too long… (famous last words, I know)
Having said all of that, if you have any idea for something neater or want to spike an alternate approach, I'm definitely open to it!

Good question. I think dart-sass is the most likely compiler to bring out a major release. I suspect that we won't be able to support v2 of dart-sass whilst maintaining support for LibSass and Ruby Sass, so at that point we'd need to stop and take a broader look at compiler support anyway.

Yeah, I think you're very likely right about that, let's hope it doesn't happen too soon!

You have made me realise that although it's unlikely we'd see a new major version of LibSass, we could see a new major version of node-sass – for example, dropping support for an older version of Node. So we might need to either change that to install latest? I've tried to pin to major versions generally to avoid new releases of a Sass compiler resulting in unrelated build failures on PRs, so the alternative would be to keep an eye on new major releases of node-sass some other way?

Yeah, keeping an eye on updates is a general issue, but I think it should be fine for now... 🤞

Fair, although it's worth noting that the last release was in April 2019 and the repo for the library is archived, so I'd be very surprised if there was a new release at this point – especially one that would affect compilation. I don't actually know how gem install works with constraints / major versions, but will try it and see.

Right, very EOL then 😅 Thanks for changing it anyway!

Maybe? There are quite a few things that vary between each job (ruby vs node, version of ruby or node, version of the compiler, the command that needs to be run) and I think any attempt to define that in a matrix is going to result in just as much 'configuration' and potentially make things harder to read? The only truly common parts of the job that I can see are the fact that it runs on ubuntu-latest and that it checks out the code 😅

Fair point. Sometimes verbose is better than clever ;)


Added character length limit of program status

Description
Limiting the status of a program to 35 characters. With the change, issue #5000 will get fixed as a side product. Below is a screenshot of status being updated to a 35-character-length string not overflowing the banner.

Release notes
The title of the pull request will be used as the default release notes description. If more detail is needed to communicate to partners the scope of the PR's changes, use this release notes section.
Checklist
General
Read the full guidelines for PRs here

[x] Added the correct label: < feature | enhancement | bug | dependencies | infrastructure | ignore-for-release | database >
[x] Assigned to a specific person, civiform/developers, or a more specific round-robin list.
[x] Created unit and/or browser tests which fail without the change (if possible)
[x] Performed manual testing (Chrome and Firefox if it includes front-end changes)
[ ] Extended the README / documentation, if necessary

User visible changes

[ ] Followed steps to internationalize new strings
[ ] Wrote browser tests using the validateAccessibility method
[ ] Tested on mobile view. See mobile device mode
[ ] Manually tested at 200% size
[ ] Manually evaluated tab order

Instructions for manual testing
If instructions are needed for manual testing by reviewers, include them here.
Issue(s) this completes
Fixes #5000

thanks for this quick change!
Q: in the description, by "will get fixed as a side project" do you mean "will get fixed by this PR"?

Thanks for the quick review! yes I did.


GPG signed commits incorrectly listed as invalid

Gitea version (or commit ref): master
Git version:
Operating system: linux

Description
Go-Git incorrectly reads dates on which could be within the local timezone. An example being that a commit with date:
1579639200 +0100

Within the UK will be incorrectly parsed and re-represented as:
1579639200 +0000

A fix has been pushed to go-git as https://github.com/src-d/go-git/pull/1291

A likely workaround would be to run your server in the UTC TZ.


[SUPPORT] ETL failure , Caused by: java.io.FileNotFoundException: No such file or directory

Tips before filing an issue

Have you gone through our FAQs?

Join the mailing list to engage in conversations and get faster support at<EMAIL_ADDRESS>

If you have triaged this as a bug, then file an issue directly.

Describe the problem you faced
We are getting the following error in Production for one of the end users ETL's
Caused by: java.io.FileNotFoundException: No such file or directory: s3a://bucket/cdcv2/data/in_ums/user_umfnd_s3/2cf933ef-fe51-4e41-8b0d-af7fa5ed2d85-0_87-19419-8663185_20211116163235.parquet
It is possible the underlying files have been updated. You can explicitly invalidate the cache in Spark by running 'REFRESH TABLE tableName' command in SQL or by recreating the Dataset/DataFrame involved.

We had faced the same issue earlier but we mitigated it by increasing cleaner commits to 120 in spark streaming job which is writing to this location, For reference the spark streaming job has a batch interval of 10 mins where on an avg. the batches are completing in 4 mins and compaction takes 40-50mins which is triggered after 4 commits, so roughly we have around 8hrs of commits.
User Is running the ETL on spark 2.x which is combination of Spark-SQL and  Spark-core
To Reproduce
Steps to reproduce the behavior:

We are consistently getting the same error even after retrying the ETL

Expected behavior
A clear and concise description of what you expected to happen.
Environment Description

Hudi version : 0.8

Spark version : 2.x

Hive version :  1.2.x

Hadoop version : 2.7

Storage (HDFS/S3/GCS..) : S3

Running on Docker? (yes/no) : no

Additional context
Add any other context about the problem here.
The above configs are of older cluster where the ETL ran.
All other ETL's running on Spark3 and using Hive3 are running fine , as mentioned earlier where we had increased the cleaner commits, one of the ETL's had failed on newer cluster as well but post increasing the cleaner commits configs it has not failed on new cluster.
Stacktrace
Caused by: java.io.FileNotFoundException: No such file or directory: s3a://bucket/cdcv2/data/in_ums/user_umfnd_s3/2cf933ef-fe51-4e41-8b0d-af7fa5ed2d85-0_87-19419-8663185_20211116163235.parquet
It is possible the underlying files have been updated. You can explicitly invalidate the cache in Spark by running 'REFRESH TABLE tableName' command in SQL or by recreating the Dataset/DataFrame involved.

cc @vinothchandar @xushiyan

@YannByron Thanks for all the great contributions!
do you have any clues here? :)

@veenaypatil
To confirmed, you use KEEP_LATEST_COMMITS as the policy of cleaner, and set CLEANER_COMMITS_RETAINED to 120?
Or, you can show the all options about cleaner.

@YannByron  that's right, these are the hoodie configs set for the streaming job
hoodieConfigs:
  hoodie.datasource.write.operation: upsert
  hoodie.datasource.write.table.type: MERGE_ON_READ
  hoodie.datasource.write.partitionpath.field: ""
  hoodie.datasource.write.keygenerator.class: org.apache.hudi.keygen.NonpartitionedKeyGenerator
  hoodie.datasource.hive_sync.partition_extractor_class: org.apache.hudi.hive.NonPartitionedExtractor
  hoodie.parquet.max.file.size:<PHONE_NUMBER>
  hoodie.compact.inline: true
  hoodie.compact.inline.max.delta.seconds: 3000
  hoodie.commits.archival.batch: 5
  hoodie.clean.automatic: true
  hoodie.clean.async: true
  hoodie.cleaner.policy: KEEP_LATEST_COMMITS
  hoodie.cleaner.commits.retained: 120
  hoodie.keep.min.commits: 130
  hoodie.keep.max.commits: 131

Once the user migrated the code to Spark3 the ETL is running fine, seems like an issue with Spark2 caching then

@veenaypatil which spark 2.x version you used exactly? Hudi supports 2.4+

@xushiyan  we were on 2.3.2 version on older cluster, on the new one it is 3.0.2 where it worked. I am closing this issue as the ETL is working is working after migrating to 3.x spark version


[Doc] Issues with Inline Markup Rendering

This is a follow-up to a separate offline discussion about API feedback.
Describe the Issues

[x] Since the typos were fixed in this commit by @carolineechen , there is no need to submit a fix-up on my end.

[x] The open issues are with the rendering of certain inline markups on Runhouse website (v. latest), for example:

Docstrings under Package Factory Method, Blob Factory Method:

Page Secrets in Vault

What I've Tried

The rendering is correct on the local build.

I also ruled out any conflicting or overriding configurations in the files below:

docs/conf.py for any conflicting sphinx extension or html theme
.readthedocs.yaml under project root for any configuration overrides

I was not able to cross reference doc built from the main branch which was "404 not found" at the time of submitting this issue.

Next Step
See if those issues will persist the next time we build the remote doc.

Hi @langong347, thanks for looking into this and sending us the typos and rendering issues! I think these should all be fixed on the main branch of the docs: Package, Blob, Secrets (the url isn't 1-to-1 with just changing latest to main since I did some sidebar reorganization). Feel free to let us know or create a PR if you spot anything else 😄

Thanks @carolineechen  for the pointers! Everything looks normal on the main build.


Frigusgulo/issue98

added time_offset_heat to the strip and flank techniques and tested in the demo.

@frigusgulo, the merge conflicts here indicate that you didn't branch off the most up-to-date version of main as you can see in the git graph. You will need to sync your local with main and rewrite the code changes for this issue. Fortunately, there is not a lot in the diffs.


Implement retry processing when TooManyRequestsException and ThrottlingException occur

https://github.com/jd/tenacity
laughingman7743/PyAthena#8

Hi, we are facing with a similar problem. Our code is this:
cur.execute(sql, params) where sql is a simple select. this is within a lambda function that we call in parallel several times.
we get the error
File "/var/task/pyathenajdbc/util.py", line 35, in _wrapper
return wrapped(*args, **kwargs)
File "/var/task/pyathenajdbc/util.py", line 25, in _wrapper
return wrapped(*args, **kwargs)
File "/var/task/pyathenajdbc/cursor.py", line 128, in execute
raise_from(DatabaseError(unwrap_exception(e)), e)
File "/var/task/future/utils/__init__.py", line 400, in raise_from
exec(execstr, myglobals, mylocals)
File "<string>", line 1, in <module>
pyathenajdbc.error.DatabaseError: com.simba.athena.amazonaws.services.athena.model.AmazonAthenaException: Rate exceeded (Service: AmazonAthena; Status Code: 400; Error Code: ThrottlingException; Request ID: xxxxxx)```

is there an elegant solution to this problem? Thanks.

I think that it is not good to change the following options of the JDBC driver.
https://s3.amazonaws.com/athena-downloads/drivers/JDBC/SimbaAthenaJDBC_2.0.7/docs/Simba+Athena+JDBC+Driver+Install+and+Configuration+Guide.pdf

DefaultValue
DataType
Required

100
Integer
No

Description
The maximum amount of time, in milliseconds, that the driver waits between attempts when polling the Athena server for query results. You cannot specify an interval that is less than 5ms.
The driver polls the server 5ms after query execution begins, and exponentially increases the polling interval to the amount of time specified by this property. For example, if MaxQueryExecutionPollingInterval is set to 2000, the driver polls the server at these intervals: 5ms after query execution has begun, 100ms after the first poll, and then 2000ms after the second poll. The driver then continues to poll the server every 2000ms until the query results are returned.

I may try to implement a retry if I have time, but don't expect it. I would like you to use PyAthena(https://github.com/laughingman7743/PyAthena) if possible.

Is pyathena an alternative to pyathenajdwc?
We are currently developing backoff for pyathenajdwc, and can share the
results. Should we stop and switch to the other package?
On Thu 13. Jun 2019 at 16:17, laughingman7743<EMAIL_ADDRESS>wrote:

I think that it is not good to change the following options of the JDBC
driver.
https://s3.amazonaws.com/athena-downloads/drivers/JDBC/SimbaAthenaJDBC_2.0.7/docs/Simba+Athena+JDBC+Driver+Install+and+Configuration+Guide.pdf
DefaultValue DataType Required
100 Integer No
Description
The maximum amount of time, in milliseconds, that the driver waits between
attempts when polling the Athena server for query results. You cannot
specify an interval that is less than 5ms.
The driver polls the server 5ms after query execution begins, and
exponentially increases the polling interval to the amount of time
specified by this property. For example, if
MaxQueryExecutionPollingInterval is set to 2000, the driver polls the
server at these intervals: 5ms after query execution has begun, 100ms after
the first poll, and then 2000ms after the second poll. The driver then
continues to poll the server every 2000ms until the query results are
returned.
I may try to implement a retry if I have time, but don't expect it. I
would like you to use PyAthena(https://github.com/laughingman7743/PyAthena)
if possible.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/laughingman7743/PyAthenaJDBC/issues/5?email_source=notifications&email_token=AAVBNSVQ74W5TFXK6JVI2N3P2JJHTA5CNFSM4C5V34HKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXT223Q#issuecomment-501722478,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAVBNSVOC5V46LAMA727TCLP2JJHTANCNFSM4C5V34HA
.

PyAthenaJDBC is a wrapper library for the JDBC driver.
You need a Java environment. PyAthena is implemented only in Python. You do not need a Java environment.
The JDBC driver has been implemented to get results in streaming, but I do not know how fast it is. I can not find the benefit of using JDBC from Python. It seems that getting results is faster using PyAthena's PandasCursor. You should use it if you find it beneficial to get streaming results in the JDBC driver. Otherwise you may want to use PyAthena.

I created this library because at the beginning of the Athena release, only the JDBC client was provided, and I wanted to use it from Python. But now we can easily connect to Athena with Python. And I created PyAthena as a pure Python library. So I want you to use PyAthena unless you feel the benefits of JDBC.


ionic ion-navbar color attribute enhancement

I would like to have the option on the same color attr oh this component to put an hex color as string and detects that is not a sass variable.

Home

Home

I need to be able to change the color through a service and then the component make the change, but because the color never will be the same or a known color I can't not use sass variables.
Is there a way now to do it?
Or I need to inherit the directive color and modify it?
What is the best approach ?
Thanks!

First off, this is not the appropriate place for this issue.
Secondly, this is not possible, since the color is property sets a predefined class, not an arbitrary color.
So this would not be possible.

Yes I just notice I came to here fro ionic documentation with the wrong link.


Add release notes about write-write conflict changes

https://github.com/arangodb/arangodb/pull/17693

@Simran-B upstream has been merged

@mpoeter Thanks, it's on my list, but it needs quite some work to get it into a user-friendly shape. For example, we don't have proper definitions in the documentation of what write-write conflicts and single operations are. It would help if you could provide explanations.

requires regenerating examples for 3.11 based on the upstream

verified with jenkins https://jenkins.arangodb.biz:3456/view/Documentation/job/arangodb-ANY-examples/2785/


Add support for accessibility elements

Closes  #2463

Before merging this, #2432 needs to be merged first.

Merging now.


Add installation instructions to README

It's been a while but it came back to me:

Go to releases and download release file (.tar.gz)
Go to Extension in Browser > Enable Developer Mode
Click Load Packed

Why not just publish it to Chrome Webstore?

I think we should do both!


Will the Ear output be available

Hi!
Thank you for your work.
Will the ear segmentation be available after some time?
As I understand, ear segmentation is needed for the Celeb-A-HQ-Mask dataset, but I can not find it in the current "Facer" implementation?
Best regards,
Vadims.

Hi, celebm face parsing model is available, try it out here


Handle multiple aspect ratios

Right now RetroHub is locked at 1024x600 resolution, preventing other aspect rations from working, such as 16:9, 16:10, 21:9, 4:3, etc...
Since RetroHub is likely to run on more than just computer screens, it needs to accomodate better for multiple resolutions. Theme developers also need to take this into consideration, so these changes in resolution need to propagate to themes as well.

Closed by #102


youtube-dl still work

Checklist

[ ] I'm asking a question
[ ] I've looked through the README and FAQ for similar questions
[ ] I've searched the bugtracker for similar questions including closed ones

Question

WRITE QUESTION HERE

its not working with age restricted videos, at least not on youtube.. tried with cookies. im using python. YDL_OPTION { 'cookiefile' : 'cookies.txt' }.. at least not for me. I used Get cookies.txt to extract cookies.

ERROR: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

@yanquan2020: See #31530 😉

OK, duplicate of that issue.

i updated to latest Youtube-dl-master and it fixed the age restriction. (Thank you)
BUT, now the search results from YTsearch is REALLY bad. if i YTsearch miley cyrus flowers, i get miley cyrus - flowers 10Hour version etc..
One more is if i YTsearch for "værsågod", what i except getting is this:
"https://www.youtube.com/watch?v=3Ougb9F0Bd4" <-- correct one as i got with the older version
And what i get is this:
"https://www.youtube.com/watch?v=upAuXLjTORw" <-- no idea what this is.
I did not have this problem with the older version of 2021.12.17. Any ideas? :)
I'm using this for a private discord music-bot :)

This is what I get, matching what you expect:
 $ python -m youtube_dl --get-filename 'ytsearch5:værsågod'
Værsågod-3Ougb9F0Bd4.webm
Televerket Værsågod--sG6YcITRIg.mp4
Hotell Smarty, værsågod.... - Harald Heide-Steen Jr. (1985)-YSX85hI7xRg.mp4
Værsågod øvelser-eoXTyfgEF4Y.mp4
Værsågod, ferdig tråkka-fRUP-jv2WUo.webm

But with 2021.12.17:
$ youtube-dl --get-filename 'ytsearch5:værsågod'
ERROR: Signature extraction failed: Traceback (most recent call last):
...

Your unwanted video is:
Vinyl Værsågod - Teaser 1-upAuXLjTORw.mp4

Y'all, go /youtube_dl/extractor/common.py.
Line 983, change: fatal=True to fatal=False

Yes. when i do the same command i get the correct video in console. but that is not the song that starts to play.. hmm, only happen with the newest youtube-dl..
here is verbose:
python -m youtube_dl --verbose --get-filename 'ytsearch5:værsågod'
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', '--get-filename', 'ytsearch5:værsågod']
[debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.10.10 (CPython) - Windows-10-10.0.22621-SP0
[debug] exe versions: ffmpeg 2023-01-16-git-01f46f18db-full_build-www.gyan.dev, ffprobe 2023-01-16-git-01f46f18db-full_build-www.gyan.dev
[debug] Proxy map: {}
[debug] Default format spec: bestvideo+bestaudio/best
Værsågod-3Ougb9F0Bd4.webm
WARNING: unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[debug] Default format spec: bestvideo+bestaudio/best
Televerket Værsågod--sG6YcITRIg.mp4
WARNING: unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[debug] Default format spec: bestvideo+bestaudio/best
Hotell Smarty, værsågod.... - Harald Heide-Steen Jr. (1985)-YSX85hI7xRg.mp4
[debug] Default format spec: bestvideo+bestaudio/best
Værsågod-5UpTGHUjc0s.webm
WARNING: unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[debug] Default format spec: bestvideo+bestaudio/best
Oslo Nye Centralteatret - Jacobsen, værsågod!--6gPZORjk1o.mp

How does it "start to play"?
Eg, python -m youtube_dl -o - 'ytsearch5:værsågod' | mpv - ?

u mean like this?:
url = query if query.startswith("http") else None
if not url:
    YDL_OPTIONS = {
        'format': "bestaudio",
        'noplaylist': True,
        'default_search': 'ytsearch',
        'quiet': True,
        'cachedir': False,
        'nocheckcertificate': True,
        'force-ipv4': True
    }
    with youtube_dl.YoutubeDL(YDL_OPTIONS) as ydl:
        result = ydl.extract_info(query, download=False) ?

[debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252 [debug] youtube-dl version 2021.12.17 [debug] Python version 3.10.10 (CPython) - Windows-10-10.0.22621-SP0 [debug] exe versions: ffmpeg 2023-01-16-git-01f46f18db-full_build-www.gyan.dev, ffprobe 2023-01-16-git-01f46f18db-full_build-www.gyan.dev [debug] Proxy map: {} [download] Downloading playlist: v%C3%A6rs%C3%A5god [youtube:search] query "v%C3%A6rs%C3%A5god": Downloading page 1 [youtube:search] playlist v%C3%A6rs%C3%A5god: Downloading 1 videos [download] Downloading video 1 of 1 [youtube] upAuXLjTORw: Downloading webpage [youtube] Downloading just video upAuXLjTORw because of --no-playlist [youtube] upAuXLjTORw: Downloading player 11e3a4ec [debug] [youtube] Decrypted nsig bmJ9b08pz8oLbzu4 => 8UCMq4Hkcx2s3g [debug] [youtube] Decrypted nsig eMRz851GeDs7ynXj => nctpjSgfD7FHTA [download] Finished downloading playlist: v%C3%A6rs%C3%A5god [2023-02-19 14:17:40] [INFO    ] discord.voice_client: Connecting to voice... [2023-02-19 14:17:40] [INFO    ] discord.voice_client: Starting voice handshake... (connection attempt 1) [2023-02-19 14:17:40] [INFO    ] discord.voice_client: Voice handshake complete. Endpoint found stockholm8901.discord.media [debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252 [debug] youtube-dl version 2021.12.17 [debug] Python version 3.10.10 (CPython) - Windows-10-10.0.22621-SP0 [debug] exe versions: ffmpeg 2023-01-16-git-01f46f18db-full_build-www.gyan.dev, ffprobe 2023-01-16-git-01f46f18db-full_build-www.gyan.dev [debug] Proxy map: {} [youtube] upAuXLjTORw: Downloading webpage [youtube] Downloading just video upAuXLjTORw because of --no-playlist [youtube] upAuXLjTORw: Downloading player 11e3a4ec [debug] [youtube] Decrypted nsig B_QfIQnZqzPGDyBK => Ob58VCtGTs_F9g [debug] [youtube] Decrypted nsig coF5BwCoyHCffTa6 => -QBLwyxn3soi4Q [debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252 [debug] youtube-dl version 2021.12.17 [debug] Python version 3.10.10 (CPython) - Windows-10-10.0.22621-SP0 [debug] exe versions: ffmpeg 2023-01-16-git-01f46f18db-full_build-www.gyan.dev, ffprobe 2023-01-16-git-01f46f18db-full_build-www.gyan.dev [debug] Proxy map: {} [generic] videoplayback?expire=1676834262&ei=diHyY4XRAYSB7QSbp6LoDw&ip=<IP_ADDRESS>&id=o-ACvFrJAeJpeEc9ze8dU0jQjQTlLlZsApvdQYO8CYhyZF&itag=249&source=youtube&requiressl=yes&mh=pn&mm=31,29&mn=sn-5aupcvm-n8bz,sn-5goeenes&ms=au,rdu&mv=m&mvi=3&pcm2cms=yes&pl=20&initcwndbps=3070000&vprv=1&mime=audio/webm&ns=1I3uw9cM1bhPKmKaFyF-_aEL&gir=yes&clen=764263&dur=124: Requesting header

[debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.10.10 (CPython) - Windows-10-10.0.22621-SP0
[debug] exe versions: ffmpeg 2023-01-16-git-01f46f18db-full_build-www.gyan.dev, ffprobe 2023-01-16-git-01f46f18db-full_build-www.gyan.dev
[debug] Proxy map: {}
[download] Downloading playlist: v%C3%A6rs%C3%A5god
[youtube:search] query "v%C3%A6rs%C3%A5god": Downloading page 1
[youtube:search] playlist v%C3%A6rs%C3%A5god: Downloading 1 videos
[download] Downloading video 1 of 1
[youtube] upAuXLjTORw: Downloading webpage
[youtube] Downloading just video upAuXLjTORw because of --no-playlist
[youtube] upAuXLjTORw: Downloading player 11e3a4ec
[debug] [youtube] Decrypted nsig bmJ9b08pz8oLbzu4 => 8UCMq4Hkcx2s3g
[debug] [youtube] Decrypted nsig eMRz851GeDs7ynXj => nctpjSgfD7FHTA
[download] Finished downloading playlist: v%C3%A6rs%C3%A5god
[2023-02-19 14:17:40] [INFO    ] discord.voice_client: Connecting to voice...
[2023-02-19 14:17:40] [INFO    ] discord.voice_client: Starting voice handshake... (connection attempt 1)
[2023-02-19 14:17:40] [INFO    ] discord.voice_client: Voice handshake complete. Endpoint found stockholm8901.discord.media
[debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.10.10 (CPython) - Windows-10-10.0.22621-SP0
[debug] exe versions: ffmpeg 2023-01-16-git-01f46f18db-full_build-www.gyan.dev, ffprobe 2023-01-16-git-01f46f18db-full_build-www.gyan.dev
[debug] Proxy map: {}
[youtube] upAuXLjTORw: Downloading webpage
[youtube] Downloading just video upAuXLjTORw because of --no-playlist
[youtube] upAuXLjTORw: Downloading player 11e3a4ec
[debug] [youtube] Decrypted nsig B_QfIQnZqzPGDyBK => Ob58VCtGTs_F9g
[debug] [youtube] Decrypted nsig coF5BwCoyHCffTa6 => -QBLwyxn3soi4Q
[debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.10.10 (CPython) - Windows-10-10.0.22621-SP0
[debug] exe versions: ffmpeg 2023-01-16-git-01f46f18db-full_build-www.gyan.dev, ffprobe 2023-01-16-git-01f46f18db-full_build-www.gyan.dev
[debug] Proxy map: {}
[generic] videoplayback?expire=1676834262&ei=diHyY4XRAYSB7QSbp6LoDw&ip=<IP_ADDRESS>&id=o-ACvFrJAeJpeEc9ze8dU0jQjQTlLlZsApvdQYO8CYhyZF&itag=249&source=youtube&requiressl=yes&mh=pn&mm=31,29&mn=sn-5aupcvm-n8bz,sn-5goeenes&ms=au,rdu&mv=m&mvi=3&pcm2cms=yes&pl=20&initcwndbps=3070000&vprv=1&mime=audio/webm&ns=1I3uw9cM1bhPKmKaFyF-_aEL&gir=yes&clen=764263&dur=124: Requesting header

This doesn't reveal with what command-line/parameter dict yt-dl was invoked? In particular the URL.

When I use youtube_dl to search for a song without a URL, it will use the default_search option to search YouTube for the query im provide (in this case "værsågod". The query can be a string representing the name of the song, artist, or any relevant keywords.
Here's an example command-line that youtube-dl uses when performing a default search:
youtube-dl "ytsearch:my search query"
So, in the code, the youtube_dl command will use the options specified in the YDL_OPTIONS dictionary and the query parameter. If the query starts with "http", it will use the URL directly. Otherwise, it will use default_search to search for the query on YouTube.

With (roughly) your code and also with --default-search ... on the command line I also get this file:
Audi RS6 v Tesla Model 3 Performance  - DRAG RACE _ICE vs EV-gKT-x1wJpTY.webm

This is because the actual search being performed is ytsearch:v%C3%A6rs%C3%A5god. The query term is getting URL-encoded as it's passed through yt-dl. Now of course if everyone would stick to ASCII alphanumeric searches that would fine, but then there are people who insist on using æ and å and such-like, not mention the whole of China, etc.
The default search "URL" is constructed in the generic extractor and redirected through an info_dict with '_type': 'url'. yt-dl calls sanitize_url() on the info_dict['url'] when processing this type of extractor result. This causes the URL encoding.
A solution could be to pass the search terms using the smuggle_url()/unsmuggle_url() mechanism. I'll check this further.

Fixed in yt-dlp with commit bc6b9bcd6554c10aa321cbfe151272e0df1a869b, so we should pull that.

is there a way for me to get it to my youtube-dl or is bigger changes that need to be done? :)
tried to change those lines alone, but did break core.py

This is the working fix that I made out of the yt-dlp commit. You don't need to modify test/test_utils.py or youtube_dl/extractor/generic.py for the fix: they're just extra tests.
commit 1d3751c3fe50b203d3e2bff71d866c8c500f8288 (HEAD -> newmaster)
Author: pukkandan<EMAIL_ADDRESS>Date:   Tue Jun 1 18:05:41 2021 +0530

    Escape URLs in `sanitized_Request`, not `sanitize_url` d2558234cf5dd12d6896eed5427b7dcdb3ab7b5a added escaping of URLs while sanitizing. However, `sanitize_url` may not always receive an actual URL. Eg: When using `youtube-dl "search query" --default-search ytsearch`, `search query` gets escaped to `search%20query` before being prefixed with `ytsearch:` which is not the intended behavior. So the escaping is moved to `sanitized_Request` instead.

diff --git a/test/test_utils.py b/test/test_utils.py
index 9d364c863..ea2b96ed2 100644
--- a/test/test_utils.py
+++ b/test/test_utils.py
@@ -250,6 +250,7 @@ class TestUtil(unittest.TestCase):
         self.assertEqual(sanitize_url('httpss://foo.bar'), 'https://foo.bar')
         self.assertEqual(sanitize_url('rmtps://foo.bar'), 'rtmps://foo.bar')
         self.assertEqual(sanitize_url('https://foo.bar'), 'https://foo.bar')
+        self.assertEqual(sanitize_url('foo bar'), 'foo bar')

     def test_expand_path(self):
         def env(var):
diff --git a/youtube_dl/extractor/generic.py b/youtube_dl/extractor/generic.py
index 0e473e952..b01900afa 100644
--- a/youtube_dl/extractor/generic.py
+++ b/youtube_dl/extractor/generic.py
@@ -2320,6 +2320,25 @@ class GenericIE(InfoExtractor):
                 'height': 720,
                 'age_limit': 18,
             },
+        }, {
+            # would like to use the yt-dl test video but searching for
+            # '"\'/\\ä↭𝕐' fails, so using an old vid from YouTube Korea
+            'note': 'Test default search',
+            'url': 'Shorts로 허락 필요없이 놀자! (BTS편)',
+            'info_dict': {
+                'id': 'usDGO4Zb-dc',
+                'ext': 'mp4',
+                'title': 'YouTube Shorts로 허락 필요없이 놀자! (BTS편)',
+                'description': 'md5:96e31607eba81ab441567b5e289f4716',
+                'upload_date': '20211107',
+                'uploader': 'YouTube Korea',
+                'location': '대한민국',
+            },
+            'params': {
+                'default_search': 'ytsearch',
+                'skip_download': True,
+            },
+            'expected_warnings': ['uploader id'],
         },
     ]

diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py
index 4edbfa27b..761edcd49 100644
--- a/youtube_dl/utils.py
+++ b/youtube_dl/utils.py
@@ -2176,11 +2176,11 @@ def sanitize_url(url):
     for mistake, fixup in COMMON_TYPOS:
         if re.match(mistake, url):
             return re.sub(mistake, fixup, url)
-    return escape_url(url)
+    return url

 def sanitized_Request(url, *args, **kwargs):
-    return compat_urllib_request.Request(sanitize_url(url), *args, **kwargs)
+    return compat_urllib_request.Request(escape_url(sanitize_url(url)), *args, **kwargs)

 def expand_path(s):

Can confirm it works. 👍
other bugs got fixed as well, were a few videos that didnt play at all (even with direct URL). But now that works too.
Thank you sir! 100% chad! 🥇

Fixed in https://github.com/ytdl-org/youtube-dl/commit/1d3751c3fe50b203d3e2bff71d866c8c500f8288.


Java Generics

The Optional.empty() in of method will return an Optional, which is then pass to the argument of type Optional<Expr>
I dont understand why Optional can be substituted by Optional<Expr>

I believe the first Optional.empty() is type-inferred to be equivalent to Optional.<Expr<T>>empty() and the second Optional.empty() is type-inferred to be equivalent to Optinal.<Operator<T>>empty().

ohhh i see, thanks!


[Question]: gnetv2 client的问题

Actions I've taken before I'm here

[X] I've thoroughly read the documentations about this problem but still have no answer.
[X] I've searched the Github Issues/Discussions but didn't find any similar problems that have been solved.
[X] I've searched the internet for this problem but didn't find anything helpful.

Questions with details
var cli, _ = gnet.NewClient(
	slf,
	gnet.WithLogLevel(logging.ErrorLevel),
	//gnet.WithCodec(codec),
	gnet.WithReadBufferCap(8*1024),
	//gnet.WithLockOSThread(true),
	//gnet.WithTCPNoDelay(TCPNoDelay),
	gnet.WithTCPKeepAlive(time.Minute),
	gnet.WithSocketRecvBuffer(8*1024),
	gnet.WithSocketSendBuffer(8*1024),
	//gnet.WithTicker(true),
)

slf.cli = cli
var conn, err = slf.cli.Enroll(rawConn)
if err != nil {
	return nil, fmt.Errorf("gnet cli enroll, %w", err)
}

var err = slf.cli.Start()
一个rawconn的流程是上面这样，如果我有二个连接rawconn
是用如下的流程吗
var cli, _ = gnet.NewClient
var err = slf.cli.Start()
var conn, err = slf.cli.Enroll(rawConn1)
var conn, err = slf.cli.Enroll(rawConn2)
还是需要二个gnet的client
Code snippets (optional)
No response

不需要一个新的 Client，Client 和 Conn 是一对多的关系，一个 Client 管理多个 Conn，所以直接 cli.Dial() 就行了。


@APiModelProperty annotation (hidden = true) don't work with XML annotations

In my annotations, hidden = true doesn't work if I combine it with other annotations like Xml annotations. For example
  @XmlElementWrapper(name="order_specials")
    @XmlElement(name="order_special")
    @ApiModelProperty(hidden = true)
    public List<SpecialOrderItem> getOrder_specials() {
        return order_specials;
    }

the List variable "order_specials" should not be displayed in the swagger docs but it is. When I remove the xml annotations and make it
@ApiModelProperty(hidden = true)
public List<SpecialOrderItem> getOrder_specials() {
    return order_specials;
}

it works properly. Weirdly I also tried
@XmlElementWrapper(name="order_specials")
@XmlElement(name="order_special")
@ApiModelProperty(hidden = true, value = "check")
public List getOrder_specials() {
return order_specials;
}
This displays value as "check" in swagger doc, but doesn't hide the variable. Any idea/solution?

verified fixed in 1.5.1-M1.

Did it fix in milestone v1.3.12?

@kiennguyen - I don't think so.


[Doc] Update maintainer doc

https://github.com/opensearch-project/dashboards-desktop/blob/main/MAINTAINERS.md

nominate @johnnyon-amzn per
https://github.com/opensearch-project/.github/blob/main/MAINTAINERS.md#becoming-a-maintainer


Fresh start vs Full restart are behaving differently when using DraggableScrollableSheet.

Steps to Reproduce
Run this code:
void main()  => runApp(MaterialApp(home: FooPage()));

class FooPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: DraggableScrollableSheet(
        builder: (_, controller) {
          return ColoredBox(
            color: Colors.blue,
            child: ListView.builder(
              controller: controller,
              itemCount: 20,
              itemBuilder: (_, i) => ListTile(title: Text('Item $i')),
            ),
          );
        },
      ),
    );
  }
}

Problem:
On the first run, DraggableScrollableSheet works as expected, the list is filling up the entire available space on dragging. Now, do a full restart. This time the DraggableScrollableSheet is behaving differently. It isn't allowing the content to take up the space. This is weird. You can watch this behavior in this video. Jump to 0:30 (where fresh install occurs)
Flutter doctor:
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel dev, 1.24.0-10.2.pre, on Mac OS X 10.15.7)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.1)
[✓] IntelliJ IDEA Community Edition (version 2020.3)
[✓] VS Code (version 1.49.0)
[✓] Connected device (4 available)

https://www.youtube.com/watch?v=Hgw819mL_78&vl=en
Watch this builder need a scrollable widget.

@iLoveDocs
I tried your code sample on latest stable using Android 8.1.0 device but didn't see the issue after I did hot restart from IDE as well as from terminal (R).
From your video, it seems you are using an emulator. Can you provide OS version of emulator ? Also can you try it on physical device and see if you get similar behavior ?

@darshankawar I ran the app on:

Emulator (Android 11)
Physical device (Android 10)

Same behavior.

@iLoveDocs
It seems the issue is only happening on dev 1.24 version. I tried it on stable and master latest versions, the issue doesn't occur.
Can you try to upgrade to latest dev (1.25) and see if you get same behavior ?
Also, dev branch is updated everyday and is very dynamic. I'd suggest you to be either on master or stable for your app / project.
Anyways, you may try to upgrade to latest dev and see if issue persists or not.
Thanks.

@darshankawar

Also, dev branch is updated everyday and is very dynamic. I'd suggest you to be either on master or stable for your app / project.

Are you sure you aren't interchanging "master" with "dev"?

@iLoveDocs
Verified on latest dev and saw no issues.
72199_d.mov.zip

flutter doctor -v

[✓] Flutter (Channel dev, 1.25.0-8.0.pre, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.25.0-8.0.pre at /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision a12e2a473a (6 days ago), 2020-12-08 23:13:04 -0500
    • Engine revision df39e5c515
    • Dart version 2.12.0 (build 2.12.0-133.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 46.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.51.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (3 available)
    • sdk gphone x86 arm (mobile) • emulator-5554 • android-x86    • Android 11
      (API 30) (emulator)
    • macOS (desktop)             • macos         • darwin-x64     • Mac OS X
      10.15.4 19E2269 darwin-x64
    • Chrome (web)                • chrome        • web-javascript • Google
      Chrome 87.0.4280.88

• No issues found!

@darshankawar Upgrade fixed the issue.


White texte instead of black

Hello there,
The date and time are written in white this morning.

Do you know where that comes from ?
Thanks for your help !
Matthieu

@mattvalle Can you tell me about your setup? Can you reliably reproduce this behavior, and if so, can you tell me how? This should only occur if you are using the dark menu bar. In that case, it is something macOS does automatically.

My problem didn't come up this morning... It seems to be related to the light/dark menu feature of MacOS but doesn't seem to be a huge issue. I'd rather not bother you with it...


feat(outputs): add additional values to output block

What this PR does / why we need it:
Much of the underlying IaaS resources are computed as part of the ARM template expansion. External consumers of this information don't currently have a structured way to access this data. This PR adds additional values to the "outputs" section of the template.
Special notes for your reviewer:
Release note:
Record additional data for resources created during the evaluation of the ARM template.

Adds the following values:
- resourceGroup
- subnetName
- securityGroupName
- virtualNetworkName
- routeTableName
- primaryAvailablitySetName

This change is

@slack,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

@slack, LGTM. It might be useful to add to this the agent pool only PR as well.

One outstanding question is agentPools in different subnets. This layout won't accommodate that configuration, but I'm not sure that is something we support.

@slack yes we do support agent pools in different subnets. ACS Engine also supports outputting params per agent pool. One e.g. is how the storage account names info containing agent pool VHDs are outputted (so that RP can reconstruct storage account names).
The formula is: StorageAccountCount. e.g.: agentpool1StorageAccountCount
Similarly subnet can be: Subnetname

@slack, yes we do support agent pools in different subnets.
ACS Engine also supports outputting params per agent pool. One e.g. is how the storage account names info containing agent pool VHDs are outputted (so that RP can reconstruct storage account names).
The formula is: [AgentPoolName] StorageAccountCount. e.g.: agentpool1StorageAccountCount
Similarly subnet can be: [AgentPoolName] Subnetname e.g.: agentpool1Subnetname
This is the file: https://github.com/Azure/acs-engine/blob/master/parts/agentoutputs.t#L8-L15
Following needs to be added to it:
"{{.Name}}SubnetName": {
"type": "string",
"value": "[variables('{{.Name}}SubnetName')]"
}

@jchauncey @jackfrancis FYI.

Last question... Since these outputs will be consumed by another system, I'd like to get a test in place... Any recommendations for a good spot?

Best place to do this IMO would be in static tests like: https://github.com/Azure/acs-engine/blob/master/pkg/acsengine/transform_test.go that use: https://github.com/Azure/acs-engine/tree/master/pkg/acsengine/transformtestfiles for expected file contents.

I ended up placing the tests in engine_test, seemed like that was the spot that was generating fresh templates.


Tk/modal for standards

Modal For Standards (currently frontend only)
Issue Number(s): #17
What does this PR change and why?
This PR includes adding cards and editing cards.
Specifics:

can add card by entering title, tags, images and body
can add card by leaving all/some fields empty
can edit card by changing the title, tags, images and body fields
can edit card leaving all/some of the title, tags, images and body fields empty

Checklist

[ ]  Database schema docs have been updated or are not necessary
[ ]  Code follows design and style guidelines
[ ]  Code is commented with doc blocks
[ ]  Tests have been written and executed or are not necessary
[ ]  Latest code has been rebased from base branch (usually develop)
[ ]  Commits follow guidelines (concise, squashed, etc)
[ ]  Github issues have been linked in relevant commits
[ ]  Relevant reviewers (Senior Dev/EM/Designers) have been assigned to this PR

Damn so no feedback?


There aren't any open issues.

Use the links above to find what you're looking for, or try a new search query. The Filters menu is also super helpful for quickly finding issues most relevant to you.

Thanks


[Feature Request]: Allow user to change type of f1 score

Is your feature request related to a problem? Please describe.
It would be nice to be able to change the type of f1 score that is displayed as a metric.
Describe the solution you'd like
The user should be able to choose which f1 score they want to use in the config (maybe even a list of f1 scores?) and they should be calculated using sklearn.metrics.f1_score.
Additional context
See conversation here

@Tyrest can this be closed out now?


Cloud November Release Notes

https://cockroachlabs.atlassian.net/browse/CC-3671

This change is

Also can you add @kevin-v-ngo to the reviewer list? I know its a lot of PMs but for now till we have a better process, let's err on the side of adding more reviewers.
Kevin - specifically for you, I wasn't sure if we had called our statements, transactions, sessions pages being released already.

Hi @stbof and @ianjevans, how are we handling release notes and documentation between the cc console and db console? CRDB-2505


How to change stored image size pulled from Unsplash?

Hey, I'm wondering if there's any way to default to using one of the smaller image sizes for the selected image that's stored on Sanity. Many of the images I select are way too large and it results in a large asset (4+ MB). It would be awesome to select one of the other image size urls provided by the Unsplash API:
 "urls": {
    "raw": "https://images.unsplash.com/photo-1472289065668-ce650ac443d2?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEwMDg3MX0",
    "full": "https://images.unsplash.com/photo-1472289065668-ce650ac443d2?ixlib=rb-1.2.1&q=85&fm=jpg&crop=entropy&cs=srgb&ixid=eyJhcHBfaWQiOjEwMDg3MX0",
    "regular": "https://images.unsplash.com/photo-1472289065668-ce650ac443d2?ixlib=rb-1.2.1&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=1080&fit=max&ixid=eyJhcHBfaWQiOjEwMDg3MX0",
    "small": "https://images.unsplash.com/photo-1472289065668-ce650ac443d2?ixlib=rb-1.2.1&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=400&fit=max&ixid=eyJhcHBfaWQiOjEwMDg3MX0",
    "thumb": "https://images.unsplash.com/photo-1472289065668-ce650ac443d2?ixlib=rb-1.2.1&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=200&fit=max&ixid=eyJhcHBfaWQiOjEwMDg3MX0"
  },

any guidance in this would be appreciated. Thank you!

+1 I came here looking for a way to do this too!

I've just realised that a potential solution could be to add a URL parameter on the end of the image URL to request a smaller image from Sanity. See here: https://www.sanity.io/docs/image-urls
So you could append '?h=200' to the end of the URL and Sanity would return the image with a height of 200.
This seems like a nice solution as it allows you to keep the full resolution images stored in Sanity, however, it would still use up more storage on your Sanity account


Added a few more converters

Description of Change
Added a few more common converters.
Bugs Fixed

Related to issue #116

API Changes
Added:

EqualsConverter
NotEqualsConverter
ListIsNullOrEmptyConverter
ListIsNotNullOrEmptyConverter

PR Checklist

[ ] Has tests (if omitted, state reason in description)
[ ] Has samples (if omitted, state reason in description)
[X] Rebased on top of master at time of PR
[X] Changes adhere to coding standard
[ ] Updated documentation

@sthewissen can you rebase this please, then the CI should also pick this up. Thanks :)


Analog write value

Hey Nathan,
Starting line 393 in Camino.cpp, analog write only accepts a value between 0-254. Shouldn't the write value be dataArray[1]. It seems to work when I test.
Analog read is 10 bit, 0-1023
Analog write is 0-255
void _analogWrite(byte dataLength, byte *dataArray) {
  // analogWrite(dataArray[0], dataArray[1]*256 + dataArray[2]); // was this
  analogWrite(dataArray[0], dataArray[1]);  // Should be this?
}

Thanks

I gave it a try :)


Update the stage info

I only update the README.md and I think the auto update tool change the index.html. But I don't think you need this PR any more since the README.md is already updated by someon else.

Thanks @FrankYFTang.


fix: activate rollbar for dev.peerpad.net as well

License: MIT
Signed-off-by: Victor Bjelkholm<EMAIL_ADDRESS>

Looks good. I'll merge!


[Ready] Fixing incompatabilities and upgrading to work with php7.

Leaving this for now. Locally everything runs fine using php 5.6 and 7 with Mongo 3.2.1 and MySQL 5.7.10. It looks like the service provider just isn't being booted on travis and I have no idea why. If anyone has some advice I'd really appreciate it.

Yep I have no idea why the various 'on null' errors are happening.

@WillSkates Nice Job.. I tested that and working well.. Could you please fix StyleCI tests also? Hope to be merged by @jenssegers soon..

@amiri27 I'll push what I have on my machine and see if that solves it.
Note If you plan on using this library with the pecl-mongodb extension and testing with travis then make sure that you use the addons section from the .travis.yml config file. I don't know why it doesn't work with the stock 2.4.* version of mongo that comes in travis containers but it doesn't.
Apologies for the wild goose chase (I thought the above issue might be something far more complicated.) I'll see if I can fix the styleci issues.

Sorted. This should be ready to merge.

Is this code also compatible with 5.1? I would rather do one change at a time. Having the new mongodb support for 5.1 LTS would be the next major release.

@jenssegers Yep it works against 5.1.28 using testbench 3.1.7.

Any chance you could squash your commits into 1 single commit?

Yep I can squash them all. Lets see if I can get it working consistently first.
I reverted the array_map based change for two reasons the first being that the errors in the build say to me that the method returns an object that uses an iterator interface and I'm not currently able to find out which one and whether ArrayObject::getArrayCopy() is available.
The second is that it seems the simpler alternative of the two.

There we are @jenssegers. I hope I saved you some time :D.

@WillSkates Thanks a lot for the time you put.. That saved us a lot of time due to working on same PR...

No problem @amiri27 I hope this makes things easier for a lot of people wanting to use php7.

When I run the test for 5.1, it seems that I'm getting errors during the mysql relations tests. Did you get those as well?

Hi Jenssegers I didn't get those. I tested using mysql 5.7.10 within a docker container.

How can I install this new branch: "jenssegers:pecl-mongodb" via composer?

The functionality is the same. You should be able to install it by using "dev-pecl-mongodb" as the version constraint in your composer file.

Thanks @WillSkates very helpfull.

@WillSkates Im making tests with Lumen 5.2 and Php7, Ubuntu... if something goes wrong I will return with the scenario.

@WillSkates @jenssegers
The only change I notice is:
use Jenssegers\Mongodb\Model;

to
use Jenssegers\Mongodb\Eloquent\Model;

This will remain so? Or it will change when It merges the master branch?

"Jenssegers\Mongodb\Model"

But it dont exist yet. https://github.com/jenssegers/laravel-mongodb/tree/pecl-mongodb/src/Jenssegers/Mongodb. And I can find it in the Eloquent folder. For now the second choice is working, while the first one throw a error.

The location of the model class will change to Jenssegers\Mongodb\Eloquent\Model in the new major version.

@WillSkates I'm still getting this on L5.1:
1) MysqlRelationsTest::testMysqlRelations
Failed asserting that 0 matches expected 1.

/var/www/laravel-mongodb/tests/MysqlRelationsTest.php:37

@jonathanpmartins Apologies @jenssegers is correct you should be using "Jenssegers\Mongodb\Eloquent\Model". I looked in the wrong branch facepalm.
@jenssegers How do you have it set up cause I honestly cant replicate that.

I have merged the branch into master. I'm now wondering if I should do a rework of the embedded models in this major release or the next one.

Honestly I'm not sure what you mean but as a general rule I'd say if you are thinking about it then push it to the next release.
Did you fix your issue with the MySQL relations test?

@jenssegers @WillSkates  Why does 3.0 dont appear on packagist?
https://packagist.org/packages/jenssegers/mongodb

I need to fix new test issues first


Playground - adding new Gist-related features.

This needs some design work before it can be merged, but it's functionally ready.


Create an outgoing connection with the QUIC library
What did you see happen?
The first UDP packet sent by the QUIC client is padded up to 1200 bytes.
The padding is done by appending 'raw' zeros past the Initial packet, which is not spec compliant.
[ UDP Header ]
[ Initial Packet ]
[ Zero Padding ... ]

RFC 9000 says:

A client MUST expand the payload of all UDP datagrams carrying Initial packets to at least the smallest allowed maximum datagram size of 1200 bytes by adding PADDING frames to the Initial packet or by coalescing the Initial packet;

x/net/quic currently uses coalescing (the Initial Packet ends before the UDP datagram payload ends). Rules on coalescing:

Using the Length field, a sender can coalesce multiple QUIC packets into one UDP datagram.

QUIC makes no specific allowance to coalesce a QUIC packet with zeros into a UDP datagram.
Many QUIC servers try to parse the zeros sent by x/net/quic, and interpret it as garbage data.
What did you expect to see?
x/net/quic should append padding frames to increase the size of the Initial Packet to 1200.
On the wire, this would look like random bytes (the zero padding is encrypted)

cc @neild

I missed this note in RFC 9000 Section 14.1. Initial Datagram Size.
x/net/quic is doing the correct thing here and this bug report is invalid.

Initial packets can even be coalesced with invalid packets, which a receiver will discard.


Package is missing required files

I got the files and checked all boxes when requesting it yet when I uploaded the zip file it just told me this:
Package is missing required file(s): events.json in /activity/reporting
I made sure 3 times to check all boxes so why doesnt it work?

I think the first time I tried it I checked all boxes but Discord sent me an incomplete package anyway - not sure if anyone else had that same experience, but maybe that's what happened to you too.
Alternatively it's possible they've changed the file name's format/structure and I'll need to update the site.
If you unpack the package zip yourself and look inside, can you take a screenshot of the content of the folder in the error (/activity/reporting/)? It won't contain any sensitive info, but it would be good to know if it exists in the first place, and whether the files in there are looking as expected.

Folder structure changed, in case you aren't aware yet @davidbmaier:
📂 activity
   📂 analytics
      📄 events-2024-00000-of-00001.json
   📂 tns
      📄 events-2024-00000-of-00001.json

There's no reporting folder anymore.

Should be fixed, I adjusted some of the directory structure-related stuff to adapt to the new formats. Looks like they also changed their channel type IDs, so there were some more issues.
Feel free to reopen if you still see issues with current packages - especially accounts with strict privacy settings might still run into edge cases I haven't been able to test yet, but I'm hopeful it'll work fine.


BPE's  default alpha with sentencepiece

Description
As BPE-dropout is applied to sentencepiece recently, it can be tokenized based on sampling.
alpha = 1 is for optimally training not for inference.
Default alpha=1 isn't appropriate because most users and models provided by gluonnlp expect to deterministically tokenize.
https://github.com/google/sentencepiece/issues/371
To Reproduce
path = gluon.utils.download('https://kobert.blob.core.windows.net/models/kogpt2/tokenizer/kogpt2_news_wiki_ko_cased_818bfa919d.spiece')
tok = nlp.data.SentencepieceTokenizer(path)
tok('안녕하세요.')
['▁', '안', '녕', '하', '세', '요', '.']
tok = nlp.data.SentencepieceTokenizer(path, 0, 0.5)
tok('안녕하세요.')
['▁', '안', '녕', '하', '세요', '.']
tok('안녕하세요.')
['▁안', '녕', '하', '세요', '.']
tok('안녕하세요.')
['▁안녕', '하', '세요', '.']
tok('안녕하세요.')
tok = nlp.data.SentencepieceTokenizer(path, num_best=0, alpha=0)
tok('안녕하세요.')
['▁안녕하세요', '.']

agreed. feel free to propose a PR to update this.

Nice observation, I've fixed it in the new version: See https://github.com/dmlc/gluon-nlp/pull/1225


Sahil

Added evaluation code for sparse implementation, along the lines of the eval code for the dense representation case.
Signed-off-by: Sahil Suneja<EMAIL_ADDRESS>

 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.:x: sahilsuneja1 sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Does this look correct?


Error while validating the service descriptor 'ServiceType: Bunit.Rendering.WebTestRenderer

Describe the bug
Validating TestContext.Services fails with the error in the title.
I am writing tests that validate that my Dependency Injection is configured correctly. When I try to use bUnit's TestContext the validation fails.
public class StartupTests : TestContext
{
    [Fact] public void ShouldStartupWithAllDependencies()
    {
        var serviceProvider = Services.BuildServiceProvider(new ServiceProviderOptions
        {
            ValidateOnBuild = true,
            ValidateScopes = true
        });

        serviceProvider.ShouldNotBeNull();
    }
}

Results in this output:
System.AggregateException : Some services are not able to be constructed (Error while validating the service descriptor 'ServiceType: Bunit.Rendering.WebTestRenderer Lifetime: Singleton ImplementationType: Bunit.Rendering.WebTestRenderer': No constructor for type 'Bunit.Rendering.WebTestRenderer' can be instantiated using services from the service container and default values.)
---- System.InvalidOperationException : Error while validating the service descriptor 'ServiceType: Bunit.Rendering.WebTestRenderer Lifetime: Singleton ImplementationType: Bunit.Rendering.WebTestRenderer': No constructor for type 'Bunit.Rendering.WebTestRenderer' can be instantiated using services from the service container and default values.
-------- System.InvalidOperationException : No constructor for type 'Bunit.Rendering.WebTestRenderer' can be instantiated using services from the service container and default values.

  Stack Trace:
ServiceProvider.ctor(ICollection`1 serviceDescriptors, ServiceProviderOptions options)
ServiceCollectionContainerBuilderExtensions.BuildServiceProvider(IServiceCollection services, ServiceProviderOptions options)
StartupTests.ShouldStartupWithAllDependencies() line 21
----- Inner Stack Trace -----
ServiceProvider.ValidateService(ServiceDescriptor descriptor)
ServiceProvider.ctor(ICollection`1 serviceDescriptors, ServiceProviderOptions options)
----- Inner Stack Trace -----
CallSiteFactory.CreateConstructorCallSite(ResultCache lifetime, Type serviceType, Type implementationType, CallSiteChain callSiteChain)
CallSiteFactory.TryCreateExact(ServiceDescriptor descriptor, Type serviceType, CallSiteChain callSiteChain, Int32 slot)
CallSiteFactory.GetCallSite(ServiceDescriptor serviceDescriptor, CallSiteChain callSiteChain)
ServiceProvider.ValidateService(ServiceDescriptor descriptor)

Expected behavior:
No exception.
Version info:

bUnit version: 1.3.42
.NET Runtime and Blazor version: 6.0.100, 6.0.0
OS type and version: Windows 10, 10.0.19043 Build 19043

bUnit's TestServiceProvider, available through the Services property, is hybrid between an IServiceCollection and an IServiceProvider. It works by switching from a service collection to a service provider when the first GetServices call is received.
It also comes with a bunch of bUnit specific services added out of the box, so it might not be useful or do this verification based on bUnits services collection.
Can you share more about the motivation behind this need to verify dependency injection through bUnit.

I would like to validate my Dependency Container configuration, making sure I don't get any "missing dependency" errors at runtime.
The reason I'm trying to use bUnit for this is that it looked like bUnit would add the services that Blazor adds on its own, e.g. NavigationManager, IJSRuntime, etc, which I had started to mock on my own.
My expectation was that it would just work. I'm happy to be told that bUnit doesn't support this use case and get back to my manual mocking, but it would seem like a shame given the amount of effort you've put into providing suitable test fakes for those services :-)
More details:
I have created a Startup class that has a AddServices(IServiceCollection) function. This is what both Program and my test call, and this is how I manage to test my DI.
Program.cs
var builder = WebAssemblyHostBuilder.CreateDefault(args);

var configurationData = ConfigurationDataBuilder.Build();

var startup = new Startup(configurationData);
startup.Configure(builder);
startup.AddServices(builder.Services);

await builder.Build().RunAsync();

StartupTests.cs
[Fact] public void ShouldStartupWithAllDependencies()
{
    var configurationData = new ConfigurationData("test-this", "test-that");

    // Without bUnit, I would have to:
    //Services.AddSingleton(new Mock<Microsoft.JSInterop.IJSRuntime>().Object);
    //Services.AddSingleton(new Mock<AuthenticationStateProvider>().Object);
    //Services.AddSingleton(new Mock<NavigationManager>().Object);
    // Any others...
    // as well as solve all the issues that come from trying to do the above, which is not trivial.

    var sut = new Startup(configurationData);
    sut.AddServices(Services);

    var serviceProvider = Services.BuildServiceProvider(new ServiceProviderOptions
    {
        ValidateOnBuild = true,
        ValidateScopes = true
    });

    serviceProvider.ShouldNotBeNull();
}

I see.
bUnit does indeed add a bunch of fake or mock implementations of the common Blazor runtime services. Most you can replace without issue, but bUnits IJSruntime comes with a whole bunch of extensions that makes some of the 1st party components in Blazor work in a testing context. You can learn more about them here: https://bunit.dev/docs/test-doubles
bUnit TestServiceProvider does validate dependencies once the first service is requested from it ValidateScopes, so the thing you are attempting to test will happen implicitly, as far as I understand.

Thanks, @egil .
I took a look at the code and I think bUnit does not perform the same validation. I can see it's using "validateScopes", which is a subset of the validations. .net 6 added the option "validateOnBuild" which makes sure every single registered dependency can be resolved. This is the line of code I found
rootServiceProvider = serviceCollection.BuildServiceProvider(validateScopes: true);
https://github.com/bUnit-dev/bUnit/blob/471e7d9aa94263789204d514b9255a64f68e3e66/src/bunit.core/TestServiceProvider.cs#L86
The change seems to be quite simple, although it will probably require a preprocessor directive to use the new method from net 6. Something like:
#if (NET6_0)
rootServiceProvider = serviceCollection.BuildServiceProvider(new ServiceProviderOptions
        {
            ValidateOnBuild = true,
            ValidateScopes = true
        });
#else
rootServiceProvider = serviceCollection.BuildServiceProvider(validateScopes: true);

I will be delighted to submit a PR if you think that solution is acceptable. I can see you're using preprocessor directives already, but I'm more worried about this being a breaking change that might require a version bump and some doc changes too.
Let me know. It would be great to get this from bUnit!

We can certainly give it a try.
Feel free to give it a try with #if (NET6_0_OR_GREATER) and lets see what happens. No promises though, haven't thought through the implications of this.
I am still wondering what value that test gives you? You are both testing your own registrations and that of bUnit.
Can you perhaps get what you need by using a Fallback service provider?

That's fair enough :-) I will give it a go and let you know.
As for the value of the test, I'm not trying to test bUnit's registrations. They get validated by accident. I'm just trying to validate my own registrations and I'm using bUnit because it registers those pesky Blazor dependencies that I would otherwise have to deal with myself.
As one of the few corners of the code that cannot be validated by the compiler and can result in nasty runtime errors, I see huge value on validating that every dependency can be indeed instantiated when requested. Otherwise, it could be a user in production hitting that button/link that finds your missing dependency.
If I understood the Fallback service provider documentation, I don't think that's the way to go, as I would have to provide an instance of Bunit.Rendering.WebTestRenderer in order to solve the original issue.

OK, there it goes! It's my first PR on this project, so please be patient :-)