Chunked reading over HTTP from node?

Looking through the documentation and the source, it seems that the UrlFetcher only works when exifr is running in a browser. Is there a way to make this work from node using node-fetch or axios? I realize you might not want to make either one a hard dependency, but it would be an enormous help not to have to transfer an entire 2.5 GB TIFF just to read its Exif data.
If this is not currently possible, I'd be happy to write and contribute a reader for it, but I'm not quite sure how to hook it into the main reader code. Is it just a matter of adding another conditional here to see if /^https?:/.test(arg) and delegating to the new reader?

Hello, first of all, I'm sorry for the late response. There's never enough of free time to dedicate to open source projects :D. Secondly, thank you for the interest in the library.
Now about the issue. Wow, 2.5GB, that's a hella big way to show off the chunked reading right? Anyway, you're right. I tried very hard to keep exifr without any dependencies. Especially XMP was hard since other libraries depend on bloated (that's not strictly bad, they might be well tested, but enormous for use in browsers) XML parsing libraries. And then there's a case with zlib which is required for ICC in PNG. In nodejs, exifr tries to use builtin zlib library, whereas in browser it just doesn't parse ICC at all. But that's off topic. Though I've been thinking of an API with which you could pass your own zlib (in browser) or xml parser (if you don't like exifr's basic implementation) for exifr to use. This could be the way to go without hardcoding node-fetch or axios.
I'd be very happy to accept PR and I'll be happy to help you along.
Where to hook in: Yes, good find. Something like this I think.
function readString(arg, options) {
	if (isBase64Url(arg))
		return callReaderClass(arg, options, 'base64')
	else if (platform.browser)
		return callReader(arg, options, 'url', fetchUrlAsArrayBuffer)
	else if (ARG IS URL && options.customFetch)
		return callReader(arg, options, 'url')
	else if (platform.node)
		return callReaderClass(arg, options, 'fs')
	else
		throwError(INVALID_INPUT)
}

You can ignore fetchUrlAsArrayBuffer in the reader.mjs since that is just a fallback for fetching the whole file if UrlFetcher
and then the UrlFetcher could look something like this
export class UrlFetcher extends ChunkedReader {

	async readWhole() {
		this.chunked = false
		let arrayBuffer
		if (this.options.customFetch)
			arrayBuffer = await this.options.customFetch(this.input)
		else
			arrayBuffer = await fetchUrlAsArrayBuffer(this.input)
		this._swapArrayBuffer(arrayBuffer)
	}

	async _readChunk(offset, length) {
		let end = length ? offset + length - 1 : undefined
		// note: end in http range is inclusive, unlike APIs in node,
		let headers = {}
		if (offset || end) headers.range = `bytes=${[offset, end].join('-')}`
		let res
		if (this.options.customFetch)
			res = await this.options.customFetch(this.input, {headers})
		else
			res = await fetch(this.input, {headers})
		let abChunk = await res.arrayBuffer()
		let bytesRead = abChunk.byteLength
		if (res.status === 416) return undefined
		if (bytesRead !== length) this.size = offset + bytesRead
		return this.set(abChunk, offset, true)
	}

}

Perhaps let abChunk = await res.arrayBuffer() should be part of the else branch. And obviously there will be a different way to get the status code and bytesRead.
Also I'm not that happy with customFetch :D I hope we can come up with some better name.
Anyway. This is just a brainstorming and a pseudo code of where to start and there's a lot more work. Looking forward to collaborating with you.

Thanks for the thorough response! I hope my teammates and I will have a chance to dive into this soon.


aspectFit stretch glitch

I'm using this plugin in my nativescript-vue app to cache images from my events listing site and display them in a list. I have them inside FlexboxLayouts with stretch set to aspectFit. Originally, if I did not set a height my image would appear like this LINK. I thought maybe setting a height or width would fix the problem but not really as you can see here: LINK Images which are already taller than the height I set will simply be cropped, otherwise they stretch in that really glitchy manner to fill the container. Without a set height they just seem to stretch to some arbitrary distance... Thoughts?
Sidenote: I can confirm this glitch did not happen when I was using Image tags with aspectFit. The issue started immediately after implementing ImageCacheIt tags
Relevant code below
    <FlexboxLayout backgroundColor="black" color="white" flexDirection="column">
      <!-- Events List -->
      <ScrollView flexGrow="1">
        <ListView for="event in events" minHeight="1920" flexGrow="1" class="eventsList">

          <v-template>
            <!-- event listing -->
            <FlexboxLayout flexDirection="row" width="100%">
              <FlexboxLayout flexDirection="column" class="eventImageWrapper" width="30%" @tap="eventTap(event)">
                <ImageCacheIt :src="'https://sfvm.la'+event.image" class="eventImage" stretch="aspectFit" height="100%"/>
              </FlexboxLayout>
              <FlexboxLayout flexDirection="column" class="eventDetails" width="70%" @tap="eventTap(event)">
                <Label :text="event.name" fontSize="22" textWrap="true"/>
                <Label :text="(event.price == '0.00' ? 'FREE' : '$'+event.price)" />
                <Label :text="event.city" />
              </FlexboxLayout>
            </FlexboxLayout>
          </v-template>

        </ListView>
      </ScrollView>
    </FlexboxLayout>

Which platform(s) does your issue occur on?

Android
NativeScript Vue

Fixed but not released yet .... i'll try to push it soon

Fixed but not released yet .... i'll try to push it soon

Awesome! Any idea approximately when it will be released?

After some upgrading a feature I recently added was not added back to android ... so that's the delay 😃

Fixed but not released yet .... i'll try to push it soon

Aw man, I'll keep an eye out for the update in the meantime. Thank you. Godspeed!


Is it possible for mxnet to save the best model and early stopping

Hello, thanks for sharing the framework.
I want to do some objection task based on the finetuned mxnet official SSD model.
I observe that after several epochs, the cross-entropy loss and smooth L1 loss will no longer be reduced.
How can I save the best epochs and stop early instead of saving the parameters when the setting epochs is over?
Thanks & regards!

@momo1986 Glad that you are experimenting with the framework, I assume you are using a for loop setup for the epochs?could you share with us a snippet of code, on what you are trying to achieve? I guess that will help us answer this question better.
@mxnet-label-bot add [Question]

@momo1986 Glad that you are experimenting with the framework, I assume you are using a for loop setup for the epochs?could you share with us a snippet of code, on what you are trying to achieve? I guess that will help us answer this question better.
@mxnet-label-bot add [Question]

Hello, @vrakesh .
Here is my code.
#############################################################################################
# Try use GPU for training
try:
    a = mx.nd.zeros((1,), ctx=mx.gpu(0))
    ctx = [mx.gpu(0)]
except:
    ctx = [mx.cpu()]

#############################################################################################
# Start training(finetuning)
net.collect_params().reset_ctx(ctx)
trainer = gluon.Trainer(
    net.collect_params(), 'sgd',
    {'learning_rate': 0.001, 'wd': 0.0005, 'momentum': 0.9})

mbox_loss = gcv.loss.SSDMultiBoxLoss()
ce_metric = mx.metric.Loss('CrossEntropy')
smoothl1_metric = mx.metric.Loss('SmoothL1')

for epoch in range(0, 100):
    ce_metric.reset()
    smoothl1_metric.reset()
    tic = time.time()
    btic = time.time()
    net.hybridize(static_alloc=True, static_shape=True)
    for i, batch in enumerate(train_data):
        batch_size = batch[0].shape[0]
        data = gluon.utils.split_and_load(batch[0], ctx_list=ctx, batch_axis=0)
        cls_targets = gluon.utils.split_and_load(batch[1], ctx_list=ctx, batch_axis=0)
        box_targets = gluon.utils.split_and_load(batch[2], ctx_list=ctx, batch_axis=0)
        with autograd.record():
            cls_preds = []
            box_preds = []
            for x in data:
                cls_pred, box_pred, _ = net(x)
                cls_preds.append(cls_pred)
                box_preds.append(box_pred)
            sum_loss, cls_loss, box_loss = mbox_loss(
                cls_preds, box_preds, cls_targets, box_targets)
            autograd.backward(sum_loss)
        # since we have already normalized the loss, we don't want to normalize
        # by batch-size anymore
        trainer.step(1)
        ce_metric.update(0, [l * batch_size for l in cls_loss])
        smoothl1_metric.update(0, [l * batch_size for l in box_loss])
        name1, loss1 = ce_metric.get()
        name2, loss2 = smoothl1_metric.get()
        if i % 20 == 0:
            print('[Epoch {}][Batch {}], Speed: {:.3f} samples/sec, {}={:.3f}, {}={:.3f}'.format(
                epoch, i, batch_size/(time.time()-btic), name1, loss1, name2, loss2))
        btic = time.time()

#############################################################################################
# Save finetuned weights to disk
net.save_parameters('ssd_512_mobilenet1.0_right_hand.params')

It does not change a lot from official gluon code.
In the MXNET/Gluon forum in Chinese, there is a discussion with some demos to save the best check-point.
However, I am very curious about a better solution to save the best parameter.
Thanks for your answer.
Momo

Hi, Any update on when early stopping functionality will be available in Mxnet python?

@roywei is currently working on this :)
Here's a PR that you can track for this : https://github.com/apache/incubator-mxnet/pull/14629/files

Thanks.


[BUG][CI] e2e-mysql CI build fails

Describe the bug
e2e-mysql CI build fails
To Reproduce
Expected behavior
remove “apk add --no-cache tar” will not affect CI running

Screenshots

Additional context
Add any other context about the problem here.

I think we should pre-built this package into lake-builder

resolved, close issiues


support validation of currency-formatted numbers

A negative number formatted as a currency is marked as an empty cell. Example: (42.45)
Since we're using a third-party library (SheetConverter) for these conversions, this issue may need to be raised on their issue tracker.

There may be other number/date formats that aren't supported.


Update shields.io guidance following change in API / query unsupported

It's likely all readmes using dynamic json badges will be broken due to a change in how they're handling JSONpath after a vulnerability was disclosed.
We should:

[ ] update the sample readme in create-plugin
[ ] post in community forum and slack

For those finding this issue - until we update the docs:
Example/Reference PR: https://github.com/grafana/grafana-polystat-panel/pull/424
Changes:
url - set to https://grafana.com/api/plugins/<your-plugin-id>
query- set to $.downloads for downloads and $.version for version
make sure the url and query parameter values are urlencoded when used.


KeyError: 'attention_scores' when setting unk_replace to True

I am getting the following error when I ran decoding with unk_replace. The training was done with nmt_medium.yml, which is using AttentionSeq2Seq model.
Traceback (most recent call last):
  File "/Users/png/.pyenv/versions/3.5.3/lib/python3.5/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/Users/png/.pyenv/versions/3.5.3/lib/python3.5/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/Users/png/repos/seq2seq/bin/infer.py", line 129, in <module>
    tf.app.run()
  File "/Users/png/.pyenv/versions/tf-seq2seq/lib/python3.5/site-packages/tensorflow/python/platform/app.py", line 44, in run
    _sys.exit(main(_sys.argv[:1] + flags_passthrough))
  File "/Users/png/repos/seq2seq/bin/infer.py", line 125, in main
    sess.run([])
  File "/Users/png/.pyenv/versions/tf-seq2seq/lib/python3.5/site-packages/tensorflow/python/training/monitored_session.py", line 462, in run
    run_metadata=run_metadata)
  File "/Users/png/.pyenv/versions/tf-seq2seq/lib/python3.5/site-packages/tensorflow/python/training/monitored_session.py", line 786, in run
    run_metadata=run_metadata)
  File "/Users/png/.pyenv/versions/tf-seq2seq/lib/python3.5/site-packages/tensorflow/python/training/monitored_session.py", line 744, in run
    return self._sess.run(*args, **kwargs)
  File "/Users/png/.pyenv/versions/tf-seq2seq/lib/python3.5/site-packages/tensorflow/python/training/monitored_session.py", line 899, in run
    run_metadata=run_metadata))
  File "/Users/png/repos/seq2seq/seq2seq/tasks/decode_text.py", line 172, in after_run
    attention_scores = fetches["attention_scores"]
KeyError: 'attention_scores'

I have the same error here...I wonder if you have solved it?

I had the same error.
I found that it occurs only when I use both unk_replace and inference.beam_search.
The error does not occur when only one of them is used.

I think in the current version of the implementation it is not possible to use both unk_replace and beam_search together, because either you can specify either AttentionDecoder or BeamSearchDecoder but not both at the same time. I will be more than happy to extend the idea of using unk_replace for the beam search. In fact I have a use case where I want to use unk_replace for top k beams of the beam search. But before moving with the implementation I would like to get some suggestions what would be the best way to implement the same, considering the current project and its modules.

It seems like my previous understanding was not correct and actually BeamSearchDecoder wraps around the AttentionDecoder in case if we use latter during training our model. Someone trying to work on this issue had any luck of solving it? @dennybritz can you help us with the direction of looking into.

I will be more than interested if someone comes up with an idea to try this out :+1:

I too discovered this behaviour today. I'll look into it as best I can, but it would be cool if we can get perspectives from the devs on this

Well I was able to make it work, i.e. beam search with attention scores.
Changes I made, in hook of dump_beams, before_run function I asked to fetch attention_scores along with source_tokens information. And in after_run function I dumped it along with other previous information of dump_beams. Then I wrote another python script namely generate generate_beam_attention_viz.py. In this script I basically merged the functionalities of dump_attention and generate_beam_viz together and then used matplotlib to visualize beam vs source_tokens for all beams in beam search.
I am not sure the way I worked out it is the cleanest way (especially when I am merging the functionalities of both generate_beam_viz and dump_attention) but it works for my usecase.

I'm not sure I see how this relates to combining the copy-mechanism (unk_replace: True) and the beam search decoder.

@nevakanezzar Basically I explored all the beams using the tree structure of beam_search and then I replaced each UNK token in the beam using corresponding attention_scores which is of size = len(source_tokens). You can have a look into dump_attention code as a reference. In dump_attention it considers only one beam where as in my script I considered it for all the beams.

@vijaydaultani When I try to fetch attention_scores fetches["attention_scores"] = self._predictions["attention_scores"] in before_run function, I get the KeyError: u'attention_scores'. How did you pass the attention_scores through it ?


Use (duration, end) instead of (begin, end) for communication

This saves some bandwidth thanks to variable-length encoding of protobufs.
More details in the bug.
GPU-related events are (at least for now) not included in the change. As the
frequency of those events is relatively low compared to scheduler, thread state,
dynamic instrumentation, that would in any case have a smalelr impact.
This does not affect "client protos" (i.e., serialization to file), so that we
don't break compatibility with previous versions.
Bug: http://b/177222925
Test: Update unit tests. Take a few captures on Trata and Infiltrator and verify
that things look good.

By the way, any objections, or downsides I missed?

By the way, any objections, or downsides I missed?


Document $geoService, $getDimensions, $dimensionKey and other APIs for child components

I'm trying to figure out how the bubble is placed so well in the google maps example, and there's this important block of code which makes use of three undocumented props
// baloon position calc
    const mapWidth = this.props.$geoService.getWidth();
    const mapHeight = this.props.$geoService.getHeight();
    const markerDim = this.props.$getDimensions(this.props.$dimensionKey);

IMO public and private API should be cut in future versions, as almost all methods and props were created having heavy deadline pressure ;-)
Also there are some hard to implement issues with current API, and internally for some tasks I use the other ideas of rendering react over map, but these ideas should be generalized. (Like subgrouping children, tiles rendering, etc)


Added more operations in Bitwise Calculator

Fixes Issue🛠

Closes #705
Description👨💻
Added NAND, NOR, & XNOR operations to bitwise calculator.

Type of change📄

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)

How this has been tested✅
Tested locally.

Checklist✅

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have added demonstration in the form of GIF/video file
[x] I am an Open Source Contributor

Screenshots/GIF📷

Merged  🎉 @agastya3636


TSR: Invalid elimination of an inlined-named function as parameter

Part of https://github.com/TanStack/router/pull/1837, moving TanStack Router's plugins to use babel-dead-code-elimination.

For reference, this is our current dead code elimination process that currently works!
For reference, this is how we are consuming the babel-deal-code-elimination package on our end

This is the test case that is failing.
Input:
const ReactUseMemoCall1 = React.useMemo(function performAction() {
  return 'true';
}, []);

Current output:
const ReactUseMemoCall1 = React.useMemo([]);

Expected output:
const ReactUseMemoCall1 = React.useMemo(function performAction() {
  return 'true';
}, []);

This is the original test file should it prove useful.

Thank you!!! 🙌🏼


Add .NET Framework 4.5 and strong name signing

This PR adds a .NET Framework 4.5 build target to the existing .NET Standard 2.0 target (which can be used for .NET Framework 4.6.1+).
It also adds strong name signing. While this is losing importance in the .NET Core era, MS guidelines still recommend strong-name signing for open-source libraries: https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/strong-naming

@bastianeicher Thanks for taking the time to do this. However, I do not wish to add the extra support burden of supporting net45 and strong naming. Is there a specific reason you want to add this to this library?

I would like to use your library Spectre.Console (which has a dependency on Wcwidth) in Zero Install which targets .NET Framework 4.5 and .NET 5.0 and uses strong naming (and can therefore only use dependency with strong naming).
I've adjusted the PR to include a reference to Microsoft.NETFramework.ReferenceAssemblies, allowing the build to succeed without .NET Framework 4.5 installed (e.g. during CI builds).

@bastianeicher While I sympathize with your problem, I have no intention of supporting .NET framework or strong naming in Spectre.Console either. I could stretch myself to support strong naming if there was a good enough reason, but not .NET framework. Sorry.
My recommendation would be to drop net45 and strong naming to use Spectre.Console in your project or use something like StrongNamer.

Ok, thanks for the feedback.
I do intend to retarget to .NET Framework 4.6.1 sooner or later, so that problem will take care of itself.
Unfortunately StrongNamer is not really an option for me, since I also publish NuGet packages for others to consume, so they'd have a transitive dependency on a still-unsigned Spectre.Console.
I suppose the only arguments I can make for strong naming are: adding it is pretty easy, it has no runtime impact (therefore shouldn't add to the support burden) and MS recommends it since it increases the number of projects that consume a lib.

Ok, thanks for the feedback.
I do intend to retarget to .NET Framework 4.6.1 sooner or later, so that problem will take care of itself.
Unfortunately StrongNamer is not really an option for me, since I also publish NuGet packages for others to consume, so they'd have a transitive dependency on a still-unsigned Spectre.Console.
I suppose the only arguments I can make for strong naming are: adding it is pretty easy, it has no runtime impact (therefore shouldn't add to the support burden) and MS recommends it since it increases the number of projects that consume a lib.


Make Sensors aware of CameraPassCountPerGpuFlush & Scene::PostFrame

🎉 New feature
See ignitionrobotics/ign-rendering/issues/323
Summary
ign-rendering has a new feature aimed to improve performance but also fixes a few bugs related to particle simulations; which is controlled via Scene::SetCameraPassCountPerGpuFlush.
A value of 0 will use the legacy mode (i.e. previous behavior) to ease porting from older version.
A value > 0 controls performance vs RAM tradeoff (note that it is an upper limit; a very high value doesn't immediately waste RAM. See Scene::SetCameraPassCountPerGpuFlush documentation for details)
These changes makes sensors aware of legacy and new setting so that it adapts to both modes of operation.
This PR depends on https://github.com/ignitionrobotics/ign-rendering/pull/353 otherwise it will not compile.
Test it
Just run the code again. This PR changes SetCameraPassCountPerGpuFlush in tests explicitly to 6 to take advantage of the new feature. Set it to 0 for legacy.
Outside of tests, this PR will not change CameraPassCountPerGpuFlush (since it has to respect what the user selects); thus the default value of Ogre2ScenePrivate::cameraPassCountPerGpuFlush matters.
Checklist

[x] Signed all commits for DCO
[ ] Added tests
[ ] Added example and/or tutorial
[ ] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[x] codecheck passed (See contributing)
[ ] All tests passed (See test coverage)
[x] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge

@osrf-jenkins run tests please

looks good to me. I just merged ignitionrobotics/ign-rendering#353 so I think we'll need to wait a day for the ign-rendering nightly debs to be available first before getting the ubuntu CI build to pass.

Mmm I wasn't ign-rendering expecting to be merged so fast! :)
I thought testing was going to be made "sandboxed" before merging.
Until this PR is not merged, ign-rendering's will break stuff for everybody. Please change Ogre2ScenePrivate::cameraPassCountPerGpuFlush default to 0 at least until ign-sensors is PR is merged.

I can submit a PR if you are far away from a PC to submit that change yourself

I tested the 3 PRs locally and it's working well. I was going to merge 3 in a row today but found that the CI uses nightlies instead of source builds so couldn't get this one in.
hmm ok I'll set Ogre2ScenePrivate::cameraPassCountPerGpuFlush to 0 and switch it back once the 3 PRs are in.

hmm ok I'll set Ogre2ScenePrivate::cameraPassCountPerGpuFlush to 0 and switch it back once the 3 PRs are in.

https://github.com/ignitionrobotics/ign-rendering/pull/367

ubuntu build is passing, approving.


internal error description: issue deserializing the object of type. nothing downloads.

issue deserializing the object of type tumblrthreeapplications.datamode;s.tumblrapijson. encountered unexpected character '<'
also tells me that "a post from **** was not parsable, setting 'posts per page' to 1 in the details might increase the download content.
the thing is when i download my likes as a separate blog entry it works however nothing downloads from the main blog.

I also have this problem.

Did you get the error message: "Confirming the Tumblr privacy consent failed. There might a connection issue" before that error? If so, are you within the EU?


Safe SDK Bug: Txn executes successfully from the ui, however not from the executeTransaction method of safeSDK

Description
I have the following issue:

I have my dapp create, sign, and propose a transaction to gnosis safe using safe-core-sdk.

I then approve this transaction from another dapp as a user (both addresses are owners in the multisig).

(To be more specific the transaction is to call a method from my team's own smart contract.)

On gnosis ui I see that I have 2 approvals, great.

When I go to execute the transaction using safeSdk.executeTransaction() I receive an error:

 error: Error: execution reverted: GS026

When I manually execute the transaction on the ui, it completes fine, here's is an example:
https://goerli.etherscan.io/tx/0x2dae93f1e2769008aeb5a63b123a1188a9e6dc21649e2bc7d32e0821fa069657

- It appears to be related to the following bug: https://github.com/safe-global/safe-react/issues/4030

I have pasted the logs below our team would really like to get this working as soon as possible to meet internal deadlines, thank you in advance for your time.

Environment

Safe Core SDK version: 2.2.1
Safe contract version: [1.3.0+L2]
Environment:

non-browser

Steps to reproduce
Here is my goerli safe: https://gnosis-safe.io/app/gor:0x53f4be91b094a1B26CAd225937dD9179D42604D7/transactions/queue
The most recent completed transactions in the history executed correctly when manually executed.
Expected result
Expected executeTransaction to work given that the transaction executing from the gnosis safe ui is working.
Additional context
Error log from safeSdk.executeTransaction():
PLEASE NOTE THE GS026 ERROR CODE WHICH ISN'T APPEARING ON THE UI, UI HAS GREEN TENDERLY SIMULATION AND TRANSACTIONS EXECUTE FINE.
ChainID is:  5
SafeSDK:  0x0106bEC64f321796B9b79E8c81aE8f58F2e83f48
Safe Owners:  [
  '0x0DB6854c93bf578f6fA2962decF92eD0D08474c1',
  '0x47430D6f05f1A10484B1082ec27883002eA1eE1F'
]

SAFE CONFIRMATIONS:  [
  {
    owner: '0x0DB6854c93bf578f6fA2962decF92eD0D08474c1',
    submissionDate: '2022-07-22T21:31:09.950415Z',
    transactionHash: null,
    signature: '0x1916d438094fa135f21ac8badcca661897da729101e59e2edcdbcc5303f2d91e6e610a3b687ae62ff6bc0996590130fd5537fb73e521fb16e392ef74468ae05b1f',
    signatureType: 'ETH_SIGN'
  },
  {
    owner: '0x47430D6f05f1A10484B1082ec27883002eA1eE1F',
    submissionDate: '2022-07-22T21:36:13.075734Z',
    transactionHash: null,
    signature: '0xcaf960932f7b961c59f89067cf6ae376b7920bc8024c03baebdf7686817f25c57cdb84c5dad3e6fc1a906c9f43cd24448940afc7cec5bd1f20cbb63b499e3b661f',
    signatureType: 'ETH_SIGN'
  }
]

Unable to execute safeTransaction
Error occurred:  Error: cannot estimate gas; transaction may fail or may require manual gas limit [ See: https://links.ethers.org/v5-errors-UNPREDICTABLE_GAS_LIMIT ] (error={"reason":"processing response error","code":"SERVER_ERROR","body":"{\"jsonrpc\":\"2.0\",\"id\":75,\"error\":{\"code\":3,\"message\":\"execution reverted: **GS026**\",\"data\":\"0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000054753303236000000000000000000000000000000000000000000000000000000\"}}","error":{"code":3,"data":"0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000054753303236000000000000000000000000000000000000000000000000000000"},"requestBody":"{\"method\":\"eth_estimateGas\",\"params\":[{\"from\":\"0x0db6854c93bf578f6fa2962decf92ed0d08474c1\",\"to\":\"0x53f4be91b094a1b26cad225937dd9179d42604d7\",\"data\":\"0x6a761202000000000000000000000000f37d57b9b32b671b6e7bc1ee8619d64dec7f294c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba43b7400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000846df9f6ec00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000090000000000000000000000000000000700000000000000000000000047430d6f05f1a10484b1082ec27883002ea1ee1f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000820000000000000000000000000db6854c93bf578f6fa2962decf92ed0d08474c1000000000000000000000000000000000000000000000000000000000000000001caf960932f7b961c59f89067cf6ae376b7920bc8024c03baebdf7686817f25c57cdb84c5dad3e6fc1a906c9f43cd24448940afc7cec5bd1f20cbb63b499e3b661f000000000000000000000000000000000000000000000000000000000000\"}],\"id\":75,\"jsonrpc\":\"2.0\"}","requestMethod":"POST","url":"https://eth-goerli.g.alchemy.com/v2/WR-zKI2UmwzeCNAz5dZDInT7-EwUoEJl"}, method="estimateGas", transaction={"from":"0x0DB6854c93bf578f6fA2962decF92eD0D08474c1","to":"0x53f4be91b094a1B26CAd225937dD9179D42604D7","data":"0x6a761202000000000000000000000000f37d57b9b32b671b6e7bc1ee8619d64dec7f294c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba43b7400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000846df9f6ec00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000090000000000000000000000000000000700000000000000000000000047430d6f05f1a10484b1082ec27883002ea1ee1f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000820000000000000000000000000db6854c93bf578f6fa2962decf92ed0d08474c1000000000000000000000000000000000000000000000000000000000000000001caf960932f7b961c59f89067cf6ae376b7920bc8024c03baebdf7686817f25c57cdb84c5dad3e6fc1a906c9f43cd24448940afc7cec5bd1f20cbb63b499e3b661f000000000000000000000000000000000000000000000000000000000000","accessList":null}, code=UNPREDICTABLE_GAS_LIMIT, version=providers/5.6.1)

at Logger.makeError (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/logger/src.ts/index.ts:261:28)
    at Logger.throwError (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/logger/src.ts/index.ts:273:20)
    at checkError (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/providers/src.ts/json-rpc-provider.ts:80:16)
    at JsonRpcProvider.<anonymous> (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/providers/src.ts/json-rpc-provider.ts:562:20)
    at step (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/providers/lib/json-rpc-provider.js:48:23)
    at Object.throw (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/providers/lib/json-rpc-provider.js:29:53)
    at rejected (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/providers/lib/json-rpc-provider.js:21:65)
    at processTicksAndRejections (node:internal/process/task_queues:96:5) {
  reason: 'cannot estimate gas; transaction may fail or may require manual gas limit',
  code: 'UNPREDICTABLE_GAS_LIMIT',
  error: Error: processing response error (body="{\"jsonrpc\":\"2.0\",\"id\":75,\"error\":{\"code\":3,\"message\":\"execution reverted: GS026\",\"data\":\"0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000054753303236000000000000000000000000000000000000000000000000000000\"}}", error={"code":3,"data":"0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000054753303236000000000000000000000000000000000000000000000000000000"}, requestBody="{\"method\":\"eth_estimateGas\",\"params\":[{\"from\":\"0x0db6854c93bf578f6fa2962decf92ed0d08474c1\",\"to\":\"0x53f4be91b094a1b26cad225937dd9179d42604d7\",\"data\":\"0x6a761202000000000000000000000000f37d57b9b32b671b6e7bc1ee8619d64dec7f294c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba43b7400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000846df9f6ec00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000090000000000000000000000000000000700000000000000000000000047430d6f05f1a10484b1082ec27883002ea1ee1f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000820000000000000000000000000db6854c93bf578f6fa2962decf92ed0d08474c1000000000000000000000000000000000000000000000000000000000000000001caf960932f7b961c59f89067cf6ae376b7920bc8024c03baebdf7686817f25c57cdb84c5dad3e6fc1a906c9f43cd24448940afc7cec5bd1f20cbb63b499e3b661f000000000000000000000000000000000000000000000000000000000000\"}],\"id\":75,\"jsonrpc\":\"2.0\"}", requestMethod="POST", url="https://eth-goerli.g.alchemy.com/v2/WR-zKI2UmwzeCNAz5dZDInT7-EwUoEJl", code=SERVER_ERROR, version=web/5.6.1)
      at Logger.makeError (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/logger/src.ts/index.ts:261:28)
      at Logger.throwError (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/logger/src.ts/index.ts:273:20)
      at /Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/web/src.ts/index.ts:329:28
      at step (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/web/lib/index.js:33:23)
      at Object.next (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/web/lib/index.js:14:53)
      at fulfilled (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/web/lib/index.js:5:58)
      at processTicksAndRejections (node:internal/process/task_queues:96:5) {
    reason: 'processing response error',
    code: 'SERVER_ERROR',
    body: '{"jsonrpc":"2.0","id":75,"error":{"code":3,"message":"execution reverted: GS026","data":"0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000054753303236000000000000000000000000000000000000000000000000000000"}}',
    error: Error: execution reverted: GS026
        at getResult (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/providers/src.ts/json-rpc-provider.ts:97:28)
        at processJsonFunc (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/web/src.ts/index.ts:371:22)
        at /Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/web/src.ts/index.ts:308:42
        at step (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/web/lib/index.js:33:23)
        at Object.next (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/web/lib/index.js:14:53)
        at fulfilled (/Users/mona/Documents/dev-OneOf/polygon-express-app/node_modules/@ethersproject/web/lib/index.js:5:58)
        at processTicksAndRejections (node:internal/process/task_queues:96:5) {
      code: 3,
      data: '0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000054753303236000000000000000000000000000000000000000000000000000000'
    },
    requestBody: '{"method":"eth_estimateGas","params":[{"from":"0x0db6854c93bf578f6fa2962decf92ed0d08474c1","to":"0x53f4be91b094a1b26cad225937dd9179d42604d7","data":"0x6a761202000000000000000000000000f37d57b9b32b671b6e7bc1ee8619d64dec7f294c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba43b7400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000846df9f6ec00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000090000000000000000000000000000000700000000000000000000000047430d6f05f1a10484b1082ec27883002ea1ee1f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000820000000000000000000000000db6854c93bf578f6fa2962decf92ed0d08474c1000000000000000000000000000000000000000000000000000000000000000001caf960932f7b961c59f89067cf6ae376b7920bc8024c03baebdf7686817f25c57cdb84c5dad3e6fc1a906c9f43cd24448940afc7cec5bd1f20cbb63b499e3b661f000000000000000000000000000000000000000000000000000000000000"}],"id":75,"jsonrpc":"2.0"}',
    requestMethod: 'POST',
    url: 'https://eth-goerli.g.alchemy.com/v2/WR-zKI2UmwzeCNAz5dZDInT7-EwUoEJl'
  },
  method: 'estimateGas',
  transaction: {
    from: '0x0DB6854c93bf578f6fA2962decF92eD0D08474c1',
    to: '0x53f4be91b094a1B26CAd225937dD9179D42604D7',
    data: '0x6a761202000000000000000000000000f37d57b9b32b671b6e7bc1ee8619d64dec7f294c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba43b7400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000846df9f6ec00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000090000000000000000000000000000000700000000000000000000000047430d6f05f1a10484b1082ec27883002ea1ee1f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000820000000000000000000000000db6854c93bf578f6fa2962decf92ed0d08474c1000000000000000000000000000000000000000000000000000000000000000001caf960932f7b961c59f89067cf6ae376b7920bc8024c03baebdf7686817f25c57cdb84c5dad3e6fc1a906c9f43cd24448940afc7cec5bd1f20cbb63b499e3b661f000000000000000000000000000000000000000000000000000000000000',
    accessList: null
  }
}

@germartinez
Apologies to tag, but can this kindly be looked into by the team? It's blocking our team from executing transactions from the SDK on goerli.
Kind Regards and Thanks!

fixed with: https://github.com/safe-global/web-core/issues/710


Support for snakemake ^6.0.0

This PR addresses #99 by introducing support for the new module syntax.
Added

Support for module syntax: module keyword and use rule syntax (#99)
Support for containerized keyword

Changed

Updated snakemake dependency to ^6.0.0 (#99)

@mbhall88 I think this would be a change up to version 0.4.0 ? I haven't done that yet, wanted to review the code here first.

@mbhall88 @johanneskoester one good way of reviewing this is to test it against a set of snakefiles with the new module syntax. I checked all the examples in #99 pass, but perhaps there are others.


Parser suddenly cannot parse anymore.

Hello,
I made a small DSMR to MQTT application on a ESP8266 SOC.
This application has worked fine for several weeks but now does not anymore. I also log the errors generated by your parser-code. And there is always the same parsing error for each request.
I get the following error, but for me this looks like a valid line of a DSMR telegram. The OBIS. decimal, decimal separator, fractional digits and the unit are all there. Any idea why the parser trips up over these values?
1-0:31.7.0(007.18*A)
              ^
Missing unit

Hmm that is strange indeed, as far as I can see this should work. Do you have a full telegram I could test, or is it hard to dump one with your setup? And what brand/model meter are your reading?


Remove unneeded Android permissions

On today's update, my scanner reported:
! repo/org.adaptit.adaptitmobile_49.apk declares sensitive permission(s): android.permission.READ_MEDIA_IMAGES android.permission.READ_MEDIA_AUDIO android.permission.READ_MEDIA_VIDEO android.permission.READ_EXTERNAL_STORAGE

From the app description, I could understand READ_EXTERNAL_STORAGE to access .txt files. But what for is the media access needed? Thanks in advance for clarification!
Ps: The DEPENDENCY_INFO_BLOCK should be easy to get rid of if you use gradle:
android {
    dependenciesInfo {
        // Disables dependency metadata when building APKs.
        includeInApk = false
        // Disables dependency metadata when building Android App Bundles.
        includeInBundle = false
    }
}

For some background: that BLOB is supposed to be just a binary representation of your app's dependency tree. But as it's encrypted with a public key belonging to Google, only Google can read it – and nobody else can even verify what it really contains.

Hi Izzy -
Thanks for writing this issue up!
Some background: Adapt It Mobile is an Apache Cordova app, which is essentially just a web app with hooks to native API calls where needed. Prior to the 1.14.0 release, Adapt It Mobile scanned the local device for available files matching our supported file extensions (.txt, .sfm, .usfm, .xml, .aic, .lift, .tmx, .usx). We replaced that mechanism with a plugin that uses the native file chooser to access files -- much easier to work with, and doesn't feel weird.
I haven't investigated yet, but I suspect that those permissions were needed for the old mechanism and are no longer needed with the native dialogs. I'll update this issue once I find out more. Thanks!

Hi Izzy, I just verified that these permissions are no longer needed. I'll slate them for removal in the next update. Thanks again for letting me know!

Nice! Thanks for the investigation and swift action! :star_struck: Will you take care for that BLOB as well? Not sure how that works with Cordova, though… How do you sign your APKs? That's where that BLOB is injected.

Let me see about the dependency block / blob stuff. Apache Cordova does use Gradle for Android, but it tends to lag behind the latest versions a bit AND it auto-injects into the build scripts. I don't see the dependency info as valid settings under Android Studio's Project Structure settings (https://stackoverflow.com/questions/77815830/what-does-retain-information-about-dependencies-in-the-apk-bundle-do-in-androi). It's possible I'll need to manually add the settings in.

I don't see the dependency info as valid settings under Android Studio's Project Structure settings

No, you won't find it there. You'd need to add it to your build.gradle. An alternative would be using apksigner to sign the APK.

@IzzySoft - I've split off the issue to #552 . In talking with the Cordova devs, it sounds like they're using an included .gradle file that doesn't get overwritten with each build -- this is where I need to place the dependenciesInfo block.
A question for you: do you happen to know of a tool to verify that the block has been removed? Just want to ensure that the dependency blob actually is gone. Thanks!

do you happen to know of a tool to verify that the block has been removed?

Sure, how else should I have figured it? And as my code is FOSS, too, you can find it in my GitLab repo: CheckSigningBlocks.py (next to several other checker scripts :wink:) Run with -h for help/usage-hints – or just look at the end of the file for them.

Today the scanner just complains about a single missing explanation:
! repo/org.adaptit.adaptitmobile_50.apk declares sensitive permission(s): android.permission.READ_EXTERNAL_STORAGE

What shall we do with that?

track the fix in the next patch

Wonderful, thanks!

weirdness with the listing for Adapt It Mobile on the IzzyOnDroid

Suggestion: I open a PR providing the metadata set up with my repo. It's using Fastlane structures, which are pretty much standard for that. Then after merging that, you can adjust everything as you see it fit (be welcome to use my Fastlane Cheat Sheet for guidance with that). When ready let me know, and I enable it on my end – which means for each release after that, your Fastlane would be pulled along.

Where is that anti-feature message coming from?

That must have been pointed out somewhere at the time the app was added to IoD. Which is more than a year ago, so I don't remember all the details. Probably deduced from the linked page of the "original project".

There's no such thing as an "Adapt server" -- all the data is held on the mobile device in a SQLite database.

Then I'll remove that AF now. Effective with the next sync at 7 pm UTC. Thanks for pointing out! Might be a good idea having that in the app description then as well :wink:

Looks like you have added them, @eb1? Today the scanner reported:
! repo/org.adaptit.adaptitmobile_57.apk declares sensitive permission(s):
  android.permission.READ_EXTERNAL_STORAGE
  android.permission.READ_MEDIA_IMAGES
  android.permission.READ_MEDIA_VIDEO
  android.permission.READ_MEDIA_AUDIO

What is their purpose, so I can check to add them to your app's "green list"?

Either the app description is not up-to-date, or I must miss something (or both, who knows):

No word of images, videos or audio files there. So the app should not even announce a capability to receive such files, as what would it do with them? Guess I'm a bit confused now – so I really appreciate details on this :wink:

The app description is correct. Adapt It Mobile does only support / read text based content. We don't currently support images, videos, or audio -- and do not show up in the sharing panel as an app that would accept those types of data.
The issue is with a 3rd party plugin that treats the permissions as monolithic -- either you have asked for all the permissions (in which case it will convert the path from content:// to file://), or it will pass back a permissions exception.
This afternoon I did a fork of the plugin (https://github.com/VIAVI-Solutions/cordova-plugin-filepath), to see if the permission request is really needed in order to perform the conversion from content:// to file://. If it isn't needed, I might be able to publish and point to the fork and remove the permissions via a patch to Adapt It Mobile. No guarantees, though!

No guarantees expected – but your help and efforts highly appreciated, thanks!

Update on this issue:
I was able to fork the 3rd party plugin and rework it so that it only requested permissions for files of mime type video/*, audio/*, and image/*. I tested the changes on API 29 and 35, both for text and image content; it did appear to work properly in all permutations I tested. More importantly, Adapt It Mobile was able to open up shared text content under API 29 and 34 without requiring additional permissions.
I've created PR https://github.com/VIAVI-Solutions/cordova-plugin-filepath/pull/1 against the plugin, but I do have our forked repo to point to if there's no response. The next patch should have the change.


Override/change hover behaviour

Subject
Conditional styles
Description
I've noticed that _hover and _active fire incorrectly/unexpectedly on iOS touch devices. When scrolling a list of items, hover and active styles will be triggered.
I'm no CSS expert, but vaguely remember this as being a long-standing mobile web issue.
This styling reproduces the problem:
_hover={{
  backgroundColor: 'red'
}}

This styling fixes the problem:
className={
  css({
    '@media (hover: hover)': {
      _hover: {
        backgroundColor: 'red',
      },
    },
  })
}

I very much expect that the answer here will be that this is a CSS problem, not a Panda problem – fine, I get it.
However, I'd like to be able to redefine the global selector for all _hover conditional styles across my project. Initially it seemed like this might be possible via utilities.extend, but I have not been able to figure it out.
Surely I'm not the first to encounter this problem, and documentation would be great to have.
Edit 1: I have found the base configuration for hover here.
I assume that this can be changed via:
export default defineConfig({
  conditions: {
    extend: {
      hover: '???',
    },
  },
}

But I do not have a working value yet...
Edit 2: I have not been able to get any media query working at all. The only thing I've been able to come up with thus far that works, is:
export default defineConfig({
  conditions: {
    extend: {
      hover: '[data-hover-supported="true"] &:is(:hover, [data-hover])',
    },
  },
})

Wherein I am manually applying a data attribute based on a runtime window.matchMedia.
Would appreciate a more elegant CSS-only solution, as there are clearly media queries in preset-base conditions.

hey, you can replace the hover condition using conditions.extend, example here
https://play.panda-css.com/30JwSWcl2T
conditions: {
      extend: {
        hover: ['@media (hover: hover)', '&:is(:hover, [data-hover])']
      }
  },

see docs on the extend keyword, or customizing custom conditions and finally mixed conditions (media + selectors)

Ah, mixed conditions was the piece I was missing. Hilarious that supportHover was already in the docs – I did look for quite awhile but never found it. Thanks!


[ie/mediasite] Fix slide extraction

IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information

This PR allows downloading slide into mhtml
Fixes #10320
Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[x] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[ ] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

A video showing the main video and slides side by side can be found in the key Presentation.VodcastUrl, such as
https://videosolutions.mediasite.com/mediasite/FileServer/Presentation/1dcb41d8d44b49d4908cec4057c862d11d/videopodcast.mp4?attachmentName=How%2Bto%2Bfuture-proof%2Byour%2Bremote%2Baccess%252c%2Ba%2BSponsore.mp4
and
https://events7.mediasite.com/Mediasite/FileServer/Presentation/a7812390a2d44739ae857527e05776091d/videopodcast.mp4?attachmentName=Practical%2BPrevention%252c%2BDetection%2Band%2BResponses%2Bto%2Bt.mp4
Shall it be included as a format?

Hi, @kclauhk I've tried the latest release on your repo and it's giving me a HTTP 401 Error. Using mitmproxy, I have found that yt-dlp is trying to just use the url of the slide in this format
https://mediasite.com/Mediasite/FileServer/number1/Presentation/number2/slide_0001.jpg
Can you please add the ?playbackTicket=number2 bit so it becomes
https://mediasite.com/Mediasite/FileServer/number1/Presentation/number2/slide_0001.jpg?playbackTicket=number2
I believe this is already done when trying to download videos. This should fix the issue.

Hi, @kclauhk I've tried the latest release on your repo and it's giving me a HTTP 401 Error. Using mitmproxy, I have found that yt-dlp is trying to just use the url of the slide in this format https://mediasite.com/Mediasite/FileServer/number1/Presentation/number2/slide_0001.jpg
Can you please add the ?playbackTicket=number2 bit so it becomes
https://mediasite.com/Mediasite/FileServer/number1/Presentation/number2/slide_0001.jpg?playbackTicket=number2
I believe this is already done when trying to download videos. This should fix the issue.

Could you please give me the Presentation url? I couldn't find one failed when playbackTicket is not provided.
Anyway, I have made the changes to my repo. You may test it.

Hi, @kclauhk I've tried the latest release on your repo and it's giving me a HTTP 401 Error. Using mitmproxy, I have found that yt-dlp is trying to just use the url of the slide in this format https://mediasite.com/Mediasite/FileServer/number1/Presentation/number2/slide_0001.jpg
Can you please add the ?playbackTicket=number2 bit so it becomes
https://mediasite.com/Mediasite/FileServer/number1/Presentation/number2/slide_0001.jpg?playbackTicket=number2
I believe this is already done when trying to download videos. This should fix the issue.

Could you please give me the Presentation url? I couldn't find one failed when playbackTicket is not provided. Anyway, I have made the changes to my repo. You may test it.

Sorry for the late response @kclauhk , I didn't see it. However, I have tested it and your changes do now work and I am able to download the slides. Sadly, I can't give a URL because they require my university login.
I also noticed your other pull request about transcripts and subtitles. I have also tested that and while I am now able to download subtitles, transcripts still will not download. An example url is https://events7.mediasite.com/Mediasite/Play/a7812390a2d44739ae857527e05776091d
From a glance at the code, to me it appears the issue in the function at line 338 (in your repo). If the transcript extension is .txt, then yt-dlp will not write it. I think it may be that you need to reduce the indent at line 344 and 345 by one level.

From a glance at the code, to me it appears the issue in the function at line 338 (in your repo). If the transcript extension is .txt, then yt-dlp will not write it. I think it may be that you need to reduce the indent at line 344 and 345 by one level.

txt is not supported so it is filtered out by line 339

ERROR: The extracted extension ('en-US.txt') is unusual and will be skipped for safety reasons. If you believe this is an error, please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U

From a glance at the code, to me it appears the issue in the function at line 338 (in your repo). If the transcript extension is .txt, then yt-dlp will not write it. I think it may be that you need to reduce the indent at line 344 and 345 by one level.

txt is not supported so it is filtered out by line 339
ERROR: The extracted extension ('en-US.txt') is unusual and will be skipped for safety reasons. If you believe this is an error, please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U

Ah thank you. Is this not overrideable? vtts are also txts so I imagine the attack surface isn't much different.

From a glance at the code, to me it appears the issue in the function at line 338 (in your repo). If the transcript extension is .txt, then yt-dlp will not write it. I think it may be that you need to reduce the indent at line 344 and 345 by one level.

txt is not supported so it is filtered out by line 339
ERROR: The extracted extension ('en-US.txt') is unusual and will be skipped for safety reasons. If you believe this is an error, please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U

Ah thank you. Is this not overrideable? vtts are also txts so I imagine the attack surface isn't much different.

I don't think any change to support txt for subtitle will get approved because it is "skipped for safety reasons", so I didn't make any change to support it.

From a glance at the code, to me it appears the issue in the function at line 338 (in your repo). If the transcript extension is .txt, then yt-dlp will not write it. I think it may be that you need to reduce the indent at line 344 and 345 by one level.

txt is not supported so it is filtered out by line 339
ERROR: The extracted extension ('en-US.txt') is unusual and will be skipped for safety reasons. If you believe this is an error, please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U

Ah thank you. Is this not overrideable? vtts are also txts so I imagine the attack surface isn't much different.

I don't think any change to support txt for subtitle will get approved because it is "skipped for safety reasons", so I didn't make any change to support it.

Fair enough, thank you.

txt is not supported so it is filtered out by line 339

We could support txt, but in this case, it's better to add 'ext': 'vtt'

txt is not supported so it is filtered out by line 339

We could support txt, but in this case, it's better to add 'ext': 'vtt'

It's not actually a vtt, it's just a transcript in txt form.  There are vtt subtitles available but the transcript is different and is stored as plain text.

We could support txt, but in this case, it's better to add 'ext': 'vtt'

Yes, we can fake it as vtt and get it downloaded, but it is obviously a trick to bypass the format check.

We can't add support for downloading files with the .txt extension; they are deliberately disallowed for security reasons.

 There are vtt subtitles available but the transcript is different and is stored as plain text.

I thought we were talking about the subtitles. Can you give me an example of transcript?

 There are vtt subtitles available but the transcript is different and is stored as plain text.

My bad. I thought we were talking about the subtitles. Is transcript untimed? Can you give me an example of transcript?

https://videosolutions.mediasite.com/mediasite/FileServer/Presentation/78cc1777fad749ccb2381e41dc89ba0d1d/transcript.txt
It is "untimed" subtitles.


API cannot be found

I am unable to move past step 6, it fails to deploy because it cannot find the connections that I am making in step 7?
{"code":"DeploymentFailed","message":"At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/DeployOperations for usage details.","details":[{"code":"NotFound","message":"{\r\n "error": {\r\n "code": "ApiNotFound",\r\n "message": "The API 'azureblob_1' could not be found."\r\n }\r\n}"}]}

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

ID: f3cfabdb-11da-028e-d601-85b99c32f9b9
Version Independent ID: 143d1fbe-d125-366f-26f6-7e4cedc3ee4e
Content: Export flows from Power Automate to Azure Logic Apps - Azure Logic Apps
Content Source: articles/logic-apps/export-from-microsoft-flow-logic-app-template.md
Service: logic-apps
GitHub Login: @ecfan
Microsoft Alias: estfan

@rriley99 Thank you for your feedback! We will review and update as appropriate.

Hi @rriley99 - I have gone through the steps and didn't run into any issues. Deployment still carries on and when it is completed, you'd just need to reauthorize the connections. Also, please note that step 6 states the following as well:
"If you're creating your first logic app, all connections are created as new, so you can accept the default names."
Since we haven't any faulty steps in this documentation, we will now proceed to close this thread. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.


Lost Annotations

I was working on annotations for three days and had annotated around 700 frames. I saved my progress throughout, but today all of my annotations were lost. Is there any way to recover these annotated frames? (username: jm5679, Job #709547)

Hello,
Probably you mean task with ID 709547, as the specified user never worked on job with this ID.
I see there were annotations activitiy starting from beginning of June.
But last time you saved this job was on 2024-05-31 17:17:52.605 (UTC)
So, you just did not save any of your annotations on the server.
There is no way from our side to restore it somehow.
Please, enable auto-save in settings if you need that, or save manually when necessary.


JSSpreadesheet After dropdown selection unable to view the selected option

Hi,
In JSSpreadesheet After dropdown selection unable to view the selected option, when we double click on it, it is showing the selected value. Please go through the below mentioned screenshots. Can anyone please help me on this.

Hi,
Do you use last version of jsuites.js ?

Please make sure to declare KEY, VALUE correctly. If that is not correctly defined the result would be a blank value in the cells.


Nsight Systems profiling NVTX blocks are broken

For NVIDIA GPU Nsight Systems profiling, the NVTX blocks were, at some point, broken. It is unclear why, though it seems like it should be easy to track down. An example is in the image below for a 3D case.
Broken (current):

Working (old):

Out of curiosity, do you know when you most recently creating a working profile? I figured the fastest way I could address this is to determine which commit broke profiling.

I am not sure. I suspect it was either the PR that introduced AMD GPU support (I think @anandrdbz as primary author but it has like 20 contributors), or @wilfonba's PR that abstracted out all RHS functionality to different subroutines. I'm not sure which (or it could be something else).


License?

Hello,
I was wondering under what license are you distributing this code? I can't find any LICENSE file or similar in the repository.
thanks

As noted in the (README)[https://github.com/pvieito/PythonKit#notes], the Python interop code is from the Swift for TensorFlow codebase and its subject to its license 🙂


Bump shadow to 4.0.4

https://github.com/treasure-data/digdag/pull/981 introduce this issue.
gradlew test looks good, but gradlew cli and   gradlew build task failed as below:
$ ./gradlew clean cli

> Configure project :
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-cli
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-client
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-core
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-docs
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-guice-rs
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-guice-rs-server
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-guice-rs-server-undertow
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-plugin-utils
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-server
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-spi
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-standards
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-storage-s3
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-tests
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

> Configure project :digdag-ui
Publication mavenJava not found in project :.
Publication mavenJava not found in project :digdag-docs.

FAILURE: Build failed with an exception.

* What went wrong:
Method com/github/jengelman/gradle/plugins/shadow/internal/DependencyFileCollection.getBuildDependencies()Lorg/gradle/api/tasks/TaskDependency; is abstract

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.2/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 0s

We need to upgrade shadow. So, I've upgrade shadow from 2.0.3 to 4.0.4.

LGTM
Thanks very much. I confirmed the issue has been solved by this PR.


How would you break this structure in two micro-service if needed later

If i go through this structuring pattern , it seems to me that breaking this into say 2 micro-service would be very difficult. How would you go about this problem ?

Why would it be difficult?
Just use two servers with his pattern, try to separate your app by domain concern, like in one server have the Authentication Service (user database) and in another have the other models (i.e products on an e-commerce app)

@santiq say I've also got an order service which is a separate microservice. And in the order service, I need to know which user is ordering, and therefore I might need the user model. In this scenario don't I have to write the same User Model, schema in the order-service which I also wrote in the Auth service?
And therefore with this approach am I not keeping duplicate code in my whole eco-system? Or this is the usual approach?

This is rather a microservice design problem, but in this case, you might use the user id to identify your users and communicate with the auth service when needed to get user information. You could also store the user information in a jwt and share the public key. You should do more research on how to build microservices and how to handle data between services.

@barakcodes thanks. I think getting user information should not be part of the order service rather a user service or auth service. With the userId from jwt a REST/gRPC call will be made to the auth service which may return the user's info.
But yes, of course, it's a micro-service design problem.


overrides in .eslintrc doesn't work

Version
3.0.0-rc.3
Reproduction link
https://github.com/dcastil/vue-bug/blob/master/src/bug.spec.js
Steps to reproduce
Download my vue-bug repo (bootstrapped with $ vue create vue-bug), open the repo in VS Code, install ESLint extension for VS Code, navigate to bug.spec.js.
What is expected?
No linting errors showing up.
What is actually happening?
describe(), it() and expect() throws a linting error for rule no-undef, although jest env is specified in overrides of .eslintrc.js.

So this does only happen in vscode, not when running npm run lint?

The command outputs the same error.
➜  vue-bug git:(master) yarn lint
yarn run v1.7.0
$ vue-cli-service lint
error: 'describe' is not defined (no-undef) at src/bug.spec.js:4:1:
  2 | import HelloWorld from<EMAIL_ADDRESS>  3 |
> 4 | describe('HelloWorld.vue', () => {
    | ^
  5 |   it('renders props.msg when passed', () => {
  6 |     const msg = 'new message';
  7 |     const wrapper = shallowMount(HelloWorld, {

error: 'it' is not defined (no-undef) at src/bug.spec.js:5:3:
  3 |
  4 | describe('HelloWorld.vue', () => {
> 5 |   it('renders props.msg when passed', () => {
    |   ^
  6 |     const msg = 'new message';
  7 |     const wrapper = shallowMount(HelloWorld, {
  8 |       propsData: { msg },

error: 'expect' is not defined (no-undef) at src/bug.spec.js:10:5:
   8 |       propsData: { msg },
   9 |     });
> 10 |     expect(wrapper.text()).toMatch(msg);
     |     ^
  11 |   });
  12 | });
  13 |

3 errors found.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Since your overrides don't work with the vs code plugin for eslint - which doesn'r know about or interact with vue-cli I dont see how this could be related to vue-cli.
Are you actually sure that your glob for the files works?

I'm quite sure that it works. Here, in a small React app, it also works.

But you're right, I didn't think about the fact that the ESLint plugin doesn't know anything about the vue-cli.

I just found out that replacing the regex pattern
'**/*.spec.(js|jsx|ts|tsx)'

with
'**/*.spec.js'

makes ESLint work again. The parentheses aren't actual glob pattern syntax, but Jest supports that in its config, where I copied it from.

I've actually found that the pipe breaks it too, not just the parens.
In package.json "**/*.spec.js|**/*.test.js" won't work while "**/*.spec.js", "**/*.test.js" does. Not that we need the "**/*.test.js" for the unit tests, it just proves the point. The relevant section from the working config in package.json:
"eslintConfig": {
  "env": {
    "node": true
  },
  "overrides": [
    {
      "files": [
        "**/*.spec.js",
        "**/*.test.js"
      ],
      "env": {
        "jest": true
      }
    }
  ]
}


Remove version: Alibaba.AliIM version 10.01.03C

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

URL: https://download.alicdn.com/wangwang/AliIM_taobao_(10.01.03C).exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 910)


CIs are blocked on APIView approvals

At least for .NET - though I suspect something like this is true for all languages - the tests.yml runs in two modes: normal CI e.g., when merges to main occur; and releases. Releases definitely should be gated on APIView approval, but CIs are failing: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=1841596&view=results
Not only does this send notifications of build failures, but also shows a red "X" on the commits in GitHub which may not inspire confidence for people looking at general commit status. As you can see from the build above, it otherwise would've worked.
If the tests.yml-driven pipeline isn't be used for release i.e., not manually invoked, can we skip the APIView approval check?
/cc @weshaggard @benbp

If the tests.yml-driven pipeline isn't be used for release i.e., not manually invoked, can we skip the APIView approval check?

Will this help? https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/403/Build-and-Release-checks?anchor=how-to-override-release-check

Also, what you are saying sound slike it is by design. We want to make sure that teams know that their pipeline is broken until they get the approval, instead of them waiting to do a release and then finding out that they need to ask for it.
@praveenkuttappan for more context

CIs are run automatically, so no. But good to know for manual runs. It would be nice if the variable was predefined so it was more discoverable, though. If each pipeline defines it with the desired default - probably false - people see it in the per-run variables list and can change it as necessary.

Also, what you are saying sound slike it is by design. We want to make sure that teams know that their pipeline is broken until they get the approval, instead of them waiting to do a release and then finding out that they need to ask for it.
@praveenkuttappan for more context

It's misleading. It's not broken. APIView sign-off is only needed to release. Normal CIs are just to make sure everything builds right. This sends the wrong signal.

From the same wiki I sent you:

Build job will be marked as failed if latest revision of automatically created API review is not yet approved and if package version is GA if a release date is present in Change log for the version. Approval status is ignored and build won't fail if release date is unreleased in change log. So we need to ensure API review is approved in API review tool whenever developer makes a change to API review tool.

Understood, but I think it's misleading. APIView approval status doesn't matter until you ship; otherwise, you're just signaling that a CI build failed even though that build isn't capable of releasing (only manual runs are).
Let me put it this way: if users come to our repos and see this, you think that inspires confidence in our build just because we validate an API is approved when we don't even plan to - and can't, given it's a triggered CI - release it?

When I see that on repos, it generally raises a red flag to me about quality.

@heaths we don't start failing CI or scheduled pipelines until there is a signal that you plan to release. That signal comes from the changelog once you stamp in a ship date and you have a GA version we start validating this in the build. That was a major feature request folks wanted because they wanted a signal before they hit the approval on the release stage so it would fail earlier. Most folks don't ever check-in a release date until right before they plan to do a release and at that time the failure is an indication that they need to do something before they can release which in this case is to get the APIs approved.
Also as for the variable promotion, in this case it should be an exceptional case so not something someone does normally so we don't want to advertise that option.

I'm going to close this as I believe this is working as designed and at this point I'm not inclined to change that design. We can perhaps improve the errors or documentation but I think the behavior is what we want.


Tensorflow in requirements.txt

In #151 tensorflow was removed from the environment files. While reinstalling pycomlink from developer files running pip install -e pycomlink I noticed that pip still installs tensorflow. This is due to that setup.py installs all packages listed in requirements.txt, which still has tensorflow listed. I will fix this when I add sckikit-learn in soon up and coming PR.

Thanks for pointing out this issue.
Yes, please add this minor fix in your other PR, even though it is not directly within its scope, but related...

Closed in #156


Create Blog Post “2020-05-shifting-the-tide-dod’s-new-vulnerability-disclosure-policy”

Automatically generated by Netlify CMS

Deploy preview for dds-mil ready!
Built with commit 937a826c59163afc5e452abf30fd20695f0ca32f
https://deploy-preview-161--dds-mil.netlify.app


pipenv install cannot use --categories option along with --editable

pipenv install cannot use --categories option along with --editable
Expected result
Describe what you expected.
Actual result
pipenv install -e --categories detection ./akina/detection/livoxdetection/

Following error occurred:
Installing initially failed dependencies...
Traceback (most recent call last):
File "/home/js/.local/bin/pipenv", line 8, in
sys.exit(cli())
File "/home/js/.local/lib/python3.8/site-packages/pipenv/vendor/click/core.py", line 1130, in call
return self.main(*args, **kwargs)
File "/home/js/.local/lib/python3.8/site-packages/pipenv/cli/options.py", line 58, in main
return super().main(*args, **kwargs, windows_expand_args=False)
File "/home/js/.local/lib/python3.8/site-packages/pipenv/vendor/click/core.py", line 1055, in main
rv = self.invoke(ctx)
File "/home/js/.local/lib/python3.8/site-packages/pipenv/vendor/click/core.py", line 1657, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/js/.local/lib/python3.8/site-packages/pipenv/vendor/click/core.py", line 1404, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/js/.local/lib/python3.8/site-packages/pipenv/vendor/click/core.py", line 760, in invoke
return __callback(*args, **kwargs)
File "/home/js/.local/lib/python3.8/site-packages/pipenv/vendor/click/decorators.py", line 84, in new_func
return ctx.invoke(f, obj, *args, **kwargs)
File "/home/js/.local/lib/python3.8/site-packages/pipenv/vendor/click/core.py", line 760, in invoke
return __callback(*args, **kwargs)
File "/home/js/.local/lib/python3.8/site-packages/pipenv/cli/command.py", line 233, in install
do_install(
File "/home/js/.local/lib/python3.8/site-packages/pipenv/routines/install.py", line 170, in do_install
do_init(
File "/home/js/.local/lib/python3.8/site-packages/pipenv/routines/install.py", line 777, in do_init
do_install_dependencies(
File "/home/js/.local/lib/python3.8/site-packages/pipenv/routines/install.py", line 455, in do_install_dependencies
batch_install(
File "/home/js/.local/lib/python3.8/site-packages/pipenv/routines/install.py", line 596, in batch_install
batch_install_iteration(
File "/home/js/.local/lib/python3.8/site-packages/pipenv/routines/install.py", line 538, in batch_install_iteration
_cleanup_procs(project, procs, failed_deps_queue, retry=retry)
File "/home/js/.local/lib/python3.8/site-packages/pipenv/routines/install.py", line 651, in _cleanup_procs
dep.use_pep517 = True
File "/home/js/.local/lib/python3.8/site-packages/pipenv/vendor/requirementslib/models/common.py", line 18, in setattr
raise ValueError(f'"{self.class.name}" object has no field "{name}"')
ValueError: "Requirement" object has no field "use_pep517"

pipenv install -e ./akina/detection/livoxdetection/ --categories detection ./akina/detection/livoxdetection/ works


Filter files when adding folders

When adding an entire folder, only add files that can be played back using the current player libraries.
This will most likely need some background thread for processing, since the check may take a long time.

A better overall change:

Freshly added songs won't be added to library immediately, but rather into a "new song queue"
Once the song's hash and length is calculated, it is added to library
Manual metadata is stored per-hash, rather than per-file


[silx view/io] Support filename::path

Add a generic proxy for python object (silx.utils.proxy.Proxy)
Implement filename::path in silx.io.open()

The implementation returns a proxy to the target node which also owns the opened file
This proxy provides API of the target object, plus common API of opened files (close method and context management)

Update silx view to avoid to check files before using silx.io.open

As result the viewer is always displayed anyway the files from the command line exist or not.

Closes  #1157
valls@linkdick ~/workspace/silx.git (support-path-in-filename) $ ./bootstrap.py silx view 201606id01-FZP-S0013-result-new.npz::obj ../all_types.h5::float toto ../data/cant_be_read.h5
ERROR:silx.app.view:Filename 'toto' must be a file path
ERROR:silx.app.view:Unable open file (unable to open file: name = '/workspace/valls/data/cant_be_read.h5', errno = 13, error message = 'Permission denied', flags = 0, o_flags = 0)

From a quick look at it, proxy.py license/copyright is not correct.

That's MIT license

The new proxy uses only original code. Then the license is fine.


Add Terraform code for deploying Azure Managed Lustre file system

Thanks for the comments, @TomArcherMsft. I'll incorporate change with my next commit.
One additional question - for naming of resources such as virtual network, subnet, etc., is it preferred to create a variable with a default of "", and randomly generate a string if it's blank? Similar to what's done for Key Vault? Or do we prefer a different approach? thx

Thanks for the comments, @TomArcherMsft. I'll incorporate changes with my next commit.
One additional question - for naming of resources such as virtual network, subnet, etc., is it preferred to create a variable with a default of "", and randomly generate a string if it's blank? Similar to what's done for Key Vault? Or do we prefer a different approach? thx

Please do follow the KV example.

@TomArcherMsft Review feedback is incorporated into the PR. Thanks!

@pauljewellmsft Thanks! I've run the e2e tests and they seem to be successful. @lonegunmanb , @grayzu , @stemaMSFT Please review.

LGTM!


Net Core Conversion

I've tried to port this to net core, but I have been unable to run it with this error:
Exception thrown: 'System.DllNotFoundException' in YoloCore.dll
Exception thrown: 'System.DllNotFoundException' in System.Private.CoreLib.dll
Exception thrown: 'System.DllNotFoundException' in System.Private.CoreLib.dll
Exception thrown: 'System.DllNotFoundException' in System.Private.CoreLib.dll
An unhandled exception of type 'System.DllNotFoundException' occurred in System.Private.CoreLib.dll
Unable to load DLL 'x64\yolo_cpp_dll_cpu.dll' or one of its dependencies: The specified module could not be found. (Exception from HRESULT: 0x8007007E)
If you help me deal with this I can update a new branch here with net core.

on which os you are test?

Windows 10 pro

No, it gives the same error with both of them.

 I can use OpenCVSharp Yolo V2 with dnn.readNetFromDarknet

Can you send a screenshot?

I started working on a .NET Standard port here.
It looks like you can't import DLL's from subfolders in .NET Standard.
My port seems to work fine on the CPU and the GPU, but it is still limited to Windows (for now) because all the included pre-compiled libraries (dependencies) are obviously only made for Windows.

Can we set the target Framework to this?<TargetFrameworks>net45;net461;netstandard2.0</TargetFrameworks>
Yes my librariers are pre-compiled for windows. I need a solution to compile it for both systems. For example a docker container compile the librariers.

Is there a specific reason why you also want it to specify net461? Since netstandard2.0 is already compatible with net461.

yes if you install a .netstandard dll in a .net 4.6.1 project you have many extra dlls. I like less :)

I started working on a .NET Standard port here.
It looks like you can't import DLL's from subfolders in .NET Standard.
My port seems to work fine on the CPU and the GPU, but it is still limited to Windows (for now) because all the included pre-compiled libraries (dependencies) are obviously only made for Windows.

Hello! Did you manage to adapt your fork for Linux? I want to try running this on Jetson Nano )

No, I never got that far (since my most powerful PC is on windows I didn't really care). But if I remember correctly the the only thing (in theory) that needs to happen is to compile yolo_cpp_dll for linux. The only problem is that there is no makefile or anything like that for it, just a visual studio project. Now this is the point where I stopped caring about making it work for linux, so I don't know how hard it would be to compile for linux (maybe feeding the files to gcc works just fine, or maybe you need to edit the source a bit since it was made specifically for windows). I might try to look into this soon, but I wouldn't hold my breath.

the yolo_cpp_dll can compile for linux check this How to compile on Linux

I have no linux enviorment for testing i have only my windows system

Thanks for advice,  @Fusion86, @tinohager  ! I already have yolo_console_dll.cpp  for linux-arm64. I will try it in near time


User are able to write 10 characters per day

changed requirements to only 5 characters per person per day


Enable a way to rotate the kids and decide which kid will be used in the token generation

Current Behavior
When a try to configure two JWKs entries with different kids and different private/public key the Spring Oauth2 Authorization server works okay and returns then in the http://[]/oauth2/token endpoint.
When I try to do a client credentials (POST http://[]/oauth2/token I got the error below. This error seems to be right, since the authorization server does not know which kid should use for the client is requesting the token.
org.springframework.security.oauth2.jwt.JwtEncodingException: An error occurred while attempting to encode the Jwt: Found multiple JWK signing keys for algorithm 'RS256'
    at org.springframework.security.oauth2.jwt.NimbusJwtEncoder.selectJwk(NimbusJwtEncoder.java:128) ~[spring-security-oauth2-jose-6.0.0.jar:6.0.0]
    at org.springframework.security.oauth2.jwt.NimbusJwtEncoder.encode(NimbusJwtEncoder.java:108) ~[spring-security-oauth2-jose-6.0.0.jar:6.0.0]
    at org.springframework.security.oauth2.server.authorization.token.JwtGenerator.generate(JwtGenerator.java:159) ~[spring-security-oauth2-authorization-server-1.0.0.jar:1.0.0]
    at org.springframework.security.oauth2.server.authorization.token.JwtGenerator.generate(JwtGenerator.java:58) ~[spring-security-oauth2-authorization-server-1.0.0.jar:1.0.0]
    at org.springframework.security.oauth2.server.authorization.token.DelegatingOAuth2TokenGenerator.generate(DelegatingOAuth2TokenGenerator.java:59) ~[spring-security-oauth2-authorization-server-1.0.0.jar:1.0.0]
    at org.springframework.security.oauth2.server.authorization.authentication.OAuth2ClientCredentialsAuthenticationProvider.authenticate(OAuth2ClientCredentialsAuthenticationProvider.java:125) ~[spring-security-oauth2-authorization-server-1.0.0.jar:1.0.0]
    at org.springframework.security.authentication.ProviderManager.authenticate(ProviderManager.java:182) ~[spring-security-core-6.0.0.jar:6.0.0]
    at org.springframework.security.oauth2.server.authorization.web.OAuth2TokenEndpointFilter.doFilterInternal(OAuth2TokenEndpointFilter.java:167) ~[spring-security-oauth2-authorization-server-1.0.0.jar:1.0.0]
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.0.2.jar:6.0.2]

My Code:
	@Bean
	public JWKSet jwkSet(AuthProperties authProperties) throws Exception {
		List<JWK> keys = new ArrayList<>();

		for (JksProperties jwk : authProperties.getJksList()) {
			keys.add(loadRsa(jwk));
			break;
		}

		return new JWKSet(keys);
	}

	@Bean
	public JWKSource<SecurityContext> jwkSource(JWKSet jwkSet) {

		return ((jwkSelector, securityContext) -> jwkSelector.select(jwkSet));
	}

	@Bean
	public JwtDecoder jwtDecoder(JWKSource<SecurityContext> jwkSource) {
		return OAuth2AuthorizationServerConfiguration.jwtDecoder(jwkSource);
	}

Expected Behavior
It would be nice (maybe it exists and I don't know) a way to decide which kids the authorization server is going to use (old kid or the new kid).
Context
I have a requirement to rotate the JWKS keys from time to time and keep both (old and new) kids for some days until the system is going to validate the token is able to use the new kid.

Thanks for getting in touch, but it feels like this is a question that would be better suited to Stack Overflow. We prefer to use GitHub issues only for bugs and enhancements.
NOTE: Spring Authorization Server only requires a JWKSource<SecurityContext> @Bean to provide the keys and is not concerned with the internal behaviours of the JWKSource<SecurityContext>, for example, key rotation or active/passive key lists. Key rotation can be implemented in many different ways and the source of the keys can be provided/stored in many different key storage systems. This is not a concern for this project and would not be a feature built into the framework. This concern is the responsibility of the consuming application to implement.
Related gh-544


multiple riak chat demos fail, binding to <IP_ADDRESS>:8443

trying to deploy multiple riak chat demos into a small clocker environment fails (with the 17 Sept preview) i think because the HAProxy controller requires 8443 on the host; if another instance has taken it, it fails.  it should be happy with any host port forwarding to 8443 on the container.  the error is below:
Caused by: org.jclouds.http.HttpResponseException: command: POST http://<IP_ADDRESS>:2377/v1.16/containers/af0384ff2203a5479c85b8fbd0abdfcb21a0d20fd2d8d01216aba626cb6e92f6/start HTTP/1.1 failed with response: HTTP/1.1 500 Internal Server Error; content: [Cannot start container af0384ff2203a5479c85b8fbd0abdfcb21a0d20fd2d8d01216aba626cb6e92f6: Bind for <IP_ADDRESS>:8443 failed: port is already allocated

Correct. Should the blueprint just be changed not to require the host port binding?

Duplicate of #173


Collection not initialized error despite not calling any operations on entity's collections

Description
Getting an error about a collection for an entity not being initialized despite only calling a simple find from a repository for that entity.
Stack trace
Error: Collection<Reservation> of entity User[4LvcX3AHjRh1FfwD4ccEX7VfnXu2] not initialized
at Collection.checkInitialized (/var/app/current/node_modules/@mikro-orm/core/entity/Collection.js:295:19)
at Collection.count (/var/app/current/node_modules/@mikro-orm/core/entity/Collection.js:163:14)
at Collection.get length [as length] (/var/app/current/node_modules/@mikro-orm/core/entity/ArrayCollection.js:110:21)
at isArrayLike (/var/app/current/node_modules/lodash/isArrayLike.js:30:42)
at keys (/var/app/current/node_modules/lodash/keys.js:34:10)
at baseGetAllKeys (/var/app/current/node_modules/lodash/_baseGetAllKeys.js:16:16)
at getAllKeys (/var/app/current/node_modules/lodash/_getAllKeys.js:13:10)
at baseClone (/var/app/current/node_modules/lodash/_baseClone.js:154:35)
at /var/app/current/node_modules/lodash/_baseClone.js:161:30
at arrayEach (/var/app/current/node_modules/lodash/_arrayEach.js:15:9)

To Reproduce
Running a simple findOneOrFail call for a given id passed in to the function:
async get(id: string): Promise<User> {
    const repo = this.em.getRepository(User)
    const user = await repo.findOneOrFail({ id })
    return user
}

Expected behavior
User entity should just return and no error should be thrown.
Additional context
User Entity:
import { Collection, Entity, Index, OneToMany, PrimaryKey, Property, Unique } from '@mikro-orm/core'
import { Invitation } from 'src/invitations/entities/invitation.entity'
import { Like } from 'src/likes/entities/like.entity'
import { Relationship } from 'src/relationships/entities/relationship.entity'
import { Reservation } from 'src/reservations/entities/reservation.entity'

@Entity()
export class User {
  @PrimaryKey()
  id!: string

  @Index()
  @Unique()
  @Property()
  username!: string

  @Property()
  name!: string

  @Property()
  birthday!: Date

  @Property()
  profile!: string

  @Property()
  photos?: string[]

  @Property()
  bio?: string

  // Relations

  @OneToMany(() => Reservation, (reservation) => reservation.user, { hidden: true })
  reservations = new Collection<Reservation>(this)

  @OneToMany(() => Like, (like) => like.user, { hidden: true })
  likes = new Collection<Like>(this)

  @OneToMany(() => Invitation, (invitation) => invitation.user, { hidden: true })
  invitations = new Collection<Invitation>(this)

  @OneToMany(() => Relationship, (relationship) => relationship.first, { hidden: true })
  firstRelationships = new Collection<Relationship>(this)

  @OneToMany(() => Relationship, (relationship) => relationship.second, { hidden: true })
  secondRelationships = new Collection<Relationship>(this)
}

Versions
| Dependency | Version |
| node | v17.0.1 |
| typescript | v4.3.5 |
| mikro-orm | v4.5.9 |

Well, you can clearly see from the stack trace that you are triggering some validation that checks the collection length - for that it needs to be initialized.
at Collection.get length [as length] (/var/app/current/node_modules/@mikro-orm/core/entity/ArrayCollection.js:110:21)
at isArrayLike (/var/app/current/node_modules/lodash/isArrayLike.js:30:42)

Is there any way that I could see where that validation check is occurring? I think that would be really helpful, but a bit unsure of the best way to go about it.

Okay I figured out the issue, for some reason NestJS throws an error when using a global CacheInterceptor when I try to get the entity without loading its collections. Not sure why, but turning the interceptor off fixed the issue, thank you for pointing out the validation piece!

You can use cache interceptor too, but you need to return POJOs from the endpoint explicitly.


Update to PHP8

👋
Would appreciate some eyes on this, I had to disable some stuff from the PHPUnit XML, weirdly --migrate-xml didn't do anything despite complaining about certain properties not being allowed.
Have tested that the tests run  and pass on PHP8 but nothing more.

I see we're not actually using Travis CI on this repo, perhaps that was just forked from the original repo. Do you think we should set this up? I think we can, as this is a public repo, but if it's too much work for now then don't worry!


#863 adds options to include 3rd party libs to test pages

#863
Adds 4 checkboxes to the top of the component test pages. Submits a form[method=get] with query params. Should maintain selections while on the same page but NOT across pages.

@saadmhybris fixed!


Redux Formik Axios example

📖 Documentation
Can someone add documentation for Redux + Formik + Axios integration.

You'll have to be a bit more specific here. Redux and Axios are both outside of the scope of Formik's documentation. The documentation for submitting is here: https://formik.org/docs/api/formik#onsubmit-values-values-formikbag-formikbag--void--promiseany
you can use onSubmit to call redux or axios according to their documentation.


Expose functionality for renaming/moving notes through the CLI

Please select if your request is either something new or an enhancement

[ ] Enhancement of an existing Feature.
[x] Request of a new feature.

Please select the area your request applies to. (Multiple selections are possible)

[ ] Onboard. Initial vault setup and import/export pods
[ ] Create. Note creation, lookup, snippets and templates
[ ] Retrieve. Backlinks, references, graph view
[x] Structure. Refactoring, multi-vault and schemas
[ ] Publish. Sharing your repo with the world
[ ] Misc (Choose this if your not sure)

Is your feature request related to a problem? Please describe
Currently, the Dendron CLI does not have exposed functionality for renaming/moving existing notes.
This means that CLI users will have to resort to opening VSCode to change where a note is in a hierarchy / what its name is while preserving internal references to it.
Describe the solution you'd like
I would want to be able to issue a command like:
dendron note (move|rename|mv) --wsRoot <dendron workspace> --query <note name> --newName <new name> [--fromVault <vault> --toVault <vault>]

Which would have the same effects as running Dendron: rename note or Dendron: move note in the VSCode extension.
Describe alternatives you've considered
I'm considering writing a shell script that would parse notes in a Dendron vault for references to a note to be renamed/moved and alter them accordingly along with the target note. This seems unnecessary when the logic for this is already in the engine, and it also wouldn't be as integrated with the rest of Dendron functionality.
Additional context
I mainly want this for purposes of using Dendron through scripts and editors like Vim and Neovim without having to use VSCode. I'd like to eventually be able to do most of what is currently possible in the VSCode interface from the terminal, scripts and other editors, and I gather that this is already part of the long-term vision for Dendron. Searching around, I found one prior issue #291 that this is possibly subsumed under.
The functionality for refactoring whole hierarchies is possibly related enough to be tackled alongside this.
I'm willing to muck around in the code myself to try and do this myself, but I would probably need some help and a lot of time since I don't have much experience, both in general and also with the Dendron codebase in particular.
Thanks for considering, and for planting and growing Dendron. 🌳

Thanks for the feature. Here is some documentation to help with the implementation. Feel free to post here or in the #dev channel if you run into any blockers or questions

Adding new subcommand to an existing command
Note commands code
Engine API

Closing this issue because I think it's resolved by #2408


fix shacknews relative links

Ported the fix for https://github.com/NiXXeD/chatty/issues/6 into the React version.

Checking this out now.
Thanks!

Should be live now as well.