EF6 Code-First Add-Migration failed

From VS Feedback:
After writing my program, I wanted to change the structure of the project.
That means I have a common dll with interfaces and the designed models.
A controller dll and a view dll.
As you can see in the screenshot is my ApplicationDbContext in the controller dll.
(I have the image - @ajcvickers)
I'm trying to make an add-migration and update-database but it does not seem to work the up and down methods are empty.
(I have the image - @ajcvickers)
Why is that? Where everything was in a dll, it worked.
And my connectionString is in my controller dll. Because everyone uses the controller dll will use the same connectionString.
Thank you for your efforts.

EF Team Triage: This issue is lacking enough information for us to be able to effectively triage it. In particular, it is missing the following information requested in the new issue template. Can you please provide this information?

Steps to reproduce

Ideally include a complete code listing that we can run to reproduce the issue.
Alternatively, you can provide a project/solution that we can run.
BTW we're not just doing this to be mean :smile:... we get a lot traffic on this project and it takes time to attempt to reproduce an issue based on fragments of information. In addition, our attempt is often unsuccessful as the exact conditions required to hit the issue are often not explicitly included in the code provided. To ensure we maximize the time we have to work on fixing bugs, implementing new features, etc. we ask that folks give us a self-contained way to reproduce an issue.
For a guide on submitting good bug reports, read Painless Bug Tracking.
BTW this is a canned response and may have info or details that do not directly apply to this particular issue. While we'd like to spend the time to uniquely address every incoming issue, we get a lot traffic on the EF projects and that is not practical. To ensure we maximize the time we have to work on fixing bugs, implementing new features, etc. we use canned responses for common triage decisions.


Easy way to polyfill fetch and use this in Node?

This lib relies on window.fetch, which does not exist in Node. Here is what I did in a node script, in order to make it work. Is it the best approach?
const fetch = require('node-fetch');
// Polyfill for GwentAPI
global.fetch = fetch;

const GwentAPI = require('gwent-api-client').default;

// Use GwentAPI

I just released 1.1.0 with isomorphic-fetch, which means it now works with NodeJS out of the box 🎉


How can we select default option if some one does not select any option of auto complete

Issue description
Steps to reproduce and a minimal demo of the problem
_Use https://plnkr.co or similar -- try this template as a starting point: http://plnkr.co/edit/YX7W20?p=preview
What steps should we try in your demo to see the problem?
Current behavior
Expected/desired behavior
angular2 & angular-google-maps version
Other information

Actually my problem is that if some one just copy and paste the actual address in auto complete search bar and then if he doesn't select any option, I want to set the first matching address in that field so I can get that position. I am using agmcoremodule in angular 2. Please help mr.

Hi there,
Im not sure what you mean by 'they don't select an option' but could using ngOnChanges help?

User is not selecting any option. He just wrote in text box and move forward to another field. In this case, I want to show the first option in text box.

Ok then I believe ngOnChanges will work for that. When value in text box
has changed or in your case, the user has moved to the next field,
onChanges will be called. From within that fiction,  you can make a places
API call to get lat/lng of address and set your map marker lat / lng to
match.
That's the basic idea anyways I think.
On 23 Mar 2017 8:00 pm, "sudhirroy-tudip"<EMAIL_ADDRESS>wrote:

User is not selecting any option. He just wrote in text box and move
forward to another field. In this case, I want to show the first option in
text box.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/SebastianM/angular2-google-maps/issues/949#issuecomment-288670645,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AY4FmDYvOZ0Z1ygH502j2llBG2ZM4u32ks5rokLZgaJpZM4Ml20w
.

*function not fiction (:
On 24 Mar 2017 7:53 am, "Nathan Watson"<EMAIL_ADDRESS>wrote:

Ok then I believe ngOnChanges will work for that. When value in text box
has changed or in your case, the user has moved to the next field,
onChanges will be called. From within that fiction,  you can make a places
API call to get lat/lng of address and set your map marker lat / lng to
match.
That's the basic idea anyways I think.
On 23 Mar 2017 8:00 pm, "sudhirroy-tudip"<EMAIL_ADDRESS>wrote:

User is not selecting any option. He just wrote in text box and move
forward to another field. In this case, I want to show the first option in
text box.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/SebastianM/angular2-google-maps/issues/949#issuecomment-288670645,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AY4FmDYvOZ0Z1ygH502j2llBG2ZM4u32ks5rokLZgaJpZM4Ml20w
.

Autocomplete is not part of this project right now, so I'm closing this. Feel free to comment.


Synchronous Redis Interface

Is your feature request related to a problem? Please describe.
For Postgres, there is a synchronous interface to be able to wait for a response.
This is important if you want to handle the response first before you return a response in the controller itself.
For example, if you can't use co-routines or don't wan't to fall into the callback hell.
Describe the solution you'd like
The solution I would like to see is a synchronous interface when setting off a redis request.
Describe alternatives you've considered
Currently I use a custom solution with condition variables, which works, but it's weird that I have to do it myself.

We will consider this.
BTW, how did you use RedisResult out side the callback? The hiredis documentation says you can't do that.
https://github.com/redis/hiredis/blob/d5b4c69b7113213c1da3a0ccbfd1ee1b40443c7a/README.md?plain=1#L372-L374

If the reply for a command with a NULL callback is read, it is immediately freed. When the callback for a command is non-NULL, the memory is freed immediately following the callback: the reply is only valid for the duration of the callback.

I didn't. I just extracted the result string from the RedisResult object inside of the callback and saved it outside of the callback.
This is my current workaround to get a synchronous redis request:
std::optional<std::string> SessionsDB::execRedisCommandSync(const std::string& command)
{
    std::mutex mutex;
    std::unique_lock<std::mutex> lock(mutex);
    std::condition_variable commandFinished;

    std::optional<std::string> result;

    redis->execCommandAsync(
            [&](const drogon::nosql::RedisResult& r) {
                if (!r.isNil())
                    result = r.asString();

                commandFinished.notify_all();
            },
            [](const std::exception& e) {
                throw e;
            },
            command
    );

    commandFinished.wait(lock);

    return result;
}```

Here is the reason why there isn't sync interfaces for redis in drogon.
In drogon, sync interfaces for pg and mysql are simulated by using async interfaces with a blocking operation (such as future.get()). However, as I mentioned above, we can not do this for redis. Hiredis doesn't allow us to hold a response object outside the async callback. So we must use hiredis sync interfaces to achieve that.
Currently, integrating hiredis sync interfaces is not of high priority for us, because:

It needs lots of code structure changes.
We already have coroutine, which has the same code flow as sync interface.
Using sync interfaces will only cause performance drop, which is quite contradictory against the purpose of using c++ web framework.

If hiredis provides a way to access response object outside async callback in future, we will provide sync interfaces based on that.
Hope you understand us.

#1216 What about this solution？


How does the geo: URL in a view work?

I can't get geo: to workd in ntfy 1.28.0, neither with the CLI program nor when posting with curl.
I'm trying the example from the documentation (though I'd like to specify lat,lon only):
$ ntfy publish --actions '[ { "action" : "view", "label": "Jane lives here", "url":"geo:0,0?q=1600+Amphitheatre+Parkway,+Mountain+View,+CA" }]' mytopic

and I'm rewarded with (formatted for clarity):
{
  "id": "ddIAjxyW2v4P",
  "time":<PHONE_NUMBER>,
  "event": "message",
  "topic": "mytopic",
  "message": "triggered",
  "actions": [
    {
      "id": "wHhMdkN8Qd",
      "action": "view",
      "label": "Jane lives here",
      "clear": false,
      "url": "geo:0,0?q=1600+Amphitheatre+Parkway,+Mountain+View,+CA"
    }
  ]
}

The UI (here in Chrome) displays:

but when I click on the link, Chrome opens a new tab with about:blank. (For the record: the ntfy iOS app does nothing)
I'm sure I must be formatting the URL incorrectly, but how?
I've also tried this, but there's no distinct behavior:
"url": "geo:48.856826,2.292713"

In FireFox, the result of clicking on the geo: URL is:

geo: URIs are not universally understood by all operating systems, similar to tel:. Android knows what to do with them, but apparently your OS does not. I'm sure there's some application you can install that will handle the geo: URL. If you send a Google Maps link instead, it'll likely have the same desired effect.

Thanks for the clarification.
I suppose I was expecting ntfy do do the "magic" conversion to proper URLs, but what you say makes sense.


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_28k91y2_sh/clone/recipe/meta.yaml:1: patch_must_be_in_build: patch must be in build when source/patches is set.
ERROR: /tmp/abs_28k91y2_sh/clone/recipe/meta.yaml:17: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_28k91y2_sh/clone/recipe/meta.yaml:23: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_28k91y2_sh/clone/recipe/meta.yaml:23: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_28k91y2_sh/clone/recipe/meta.yaml:30: missing_pip_check: For pypi packages, pip check should be present in the test commands
WARNING: /tmp/abs_28k91y2_sh/clone/recipe/meta.yaml:39: missing_description: The recipe is missing a description
Errors were found


NuGet Config needs examples of getting a value

Reading this document, it says config values can be retrieved (Get value), but fails to show the syntax structure or an example of this.
An example is, nuget config HTTP_PROXY, which I don't see how I could know that from this doc page.

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

ID: e92758db-8866-42b0-156d-7a7adedbbabb
Version Independent ID: d49de222-1342-9e17-516b-5572c72a8181
Content: NuGet CLI config command
Content Source: docs/reference/cli-reference/cli-ref-config.md
Product: nuget
GitHub Login: @karann-msft
Microsoft Alias: karann

@donnie-msft So what you're hoping for here is an example such as:

Which shows using the respective "Get" value?

That's one example. But you can also do  -set anything=something and then say
nuget config anything which will output something

@donnie-msft Maybe we show both example types then or just one?

I suggest adding some description under Usage that explains nuget config anything results in something.
Then, yes, adding an example below would also be nice. Can show the resulting output with a // comment (I think that's how we do this in docs).


More clarification on Dynamic Linking Chapter

Review comment come from @anderslindgren-iar and Anders Berg(IAR) https://lists.riscv.org/g/tech-toolchain-runtime/message/344

Chapter 6. Dynamic Linking
Any functions that use registers in a way that is incompatible with the register convention of the ABI in use must be annotated with STO_RISCV_VARIANT_CC, as defined in Section 8.4.
...

Anders: The title and the text do not seem to be connected. Is this about dynamic linking? It does not look like that. Please explain better!

This is explained by the non-normative note immediately below the paragraph


Dim display when idle

Maybe dim after 1 min, and sleep after 10 min.
Would that use more or less power than no dim, and sleep after 5 min?

Closed by 2a00fb2


feat: key interface

This commit adds an easy way to add additional key types into connaisseur. The first set of supported keys are: ECDSA, RSA[cosign], KMS[cosign] and Keyless[cosign] ande each gets automatically recognized.
Description
We eventually want to support more types of keys and even apply additional logic to specific types, while also have a common interface so that the types can be easily exchanged.
Checklist

[x] PR is rebased to/aimed at branch develop
[x] PR follows Contributing Guide
[ ] Added tests (if necessary)
[ ] Extended README/Documentation (if necessary)
[ ] Adjusted versions of image and Helm chart in values.yaml and Chart.yaml (if necessary)

Codecov Report

Merging #540 (14dddd0) into develop (455704a) will increase coverage by 0.05%.
The diff coverage is 95.93%.

@@             Coverage Diff             @@
##           develop     #540      +/-   ##
===========================================
+ Coverage    94.24%   94.30%   +0.05%
===========================================
  Files           22       22
  Lines         1129     1193      +64
===========================================
+ Hits          1064     1125      +61
- Misses          65       68       +3

Impacted Files
Coverage Δ

connaisseur/validators/cosign/cosign_validator.py
98.76% <92.85%> (+0.96%)
:arrow_up:

connaisseur/keys.py
95.91% <95.91%> (ø)

connaisseur/exceptions.py
100.00% <100.00%> (ø)

connaisseur/validators/notaryv1/key_store.py
100.00% <100.00%> (ø)

...naisseur/validators/notaryv1/notaryv1_validator.py
98.31% <100.00%> (+0.01%)
:arrow_up:

connaisseur/validators/notaryv1/trust_data.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 455704a...14dddd0. Read the comment docs.


reportbutton: Add Game Ticks option

Counts game ticks since login and displays them on the Report button

Thank you, I commited the changes. I'm not sure if updateReportButtonTime() should be in onGameTick, should I at least add an if clause that runs it only if config.time() is GAME_TICKS?

Yeah, updateReportButtonTime should probably be in onGameTick like you currently have it, so that the tick count is updated when the tick changes. It won't have the same updating behaviour as the other time styles, but those don't require the same accuracy either.
You should probably add the config.time() == GAME_TICKS check to onGameTick.

Changed, it's wrapped with if now


A clearer navigation bar would improve the user experience

Description
The navigation bar's current UI could be improved. For example, the logo is not clearly visible, which impacts brand visibility and overall aesthetics. This makes the navigation bar feel incomplete and harder to use at a glance.
please assign me with this @mdazfar2
Screenshots

Any additional information?
No response
What browser are you seeing the problem on?
Chrome
Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I'm a GSSoC'24-Extd contributor
[X] I'm a Hacktoberfest'24 contributor
[X] I am willing to work on this issue (optional)

@shar2710, set your screen size to 100% and then check again. It looks good and nice. I am closing the issue for now. Please raise another issue, which I am happy to assign to you, but make sure the issue is valid and addresses something important on our website. Otherwise, invalid issues will be closed. Thank you!


Aggregating SPI operations

Hi,
I am using your driver and I'd like to reduce the number of calls to the low level SPI driver. Do you foresee any problems in aggregating SPI operations into a single one? As an example, page program (write) actually performs: write enable, command + address, data (3 SPI operations). I'd like to try to change the driver to use a larger buffer and call the driver with a single SPI operation.

Auto answering to myself: no, it won't work. Most flash chips require CS to be driven high after each command sequence, so write enable can't be aggregated with program command, since a CS up/down cycle is require.
Sorry for bothering you, I should have done my homework before asking.


Add mutation testing to the framework

https://stryker-mutator.io/

seems to be broken for our case right now :/


Plans on releasing a TypeScript type?

Hi, everything is in the question:
Are there any plans on doing a TypeScript definition? Would be amazing to have the autocompletion features and validation.
Thanks for any information :)
Tom

Definitely something worth introducing. Thanks for the suggestion.

I released a new version of this plugin v1.1.0 that adds types. Please try it out and let me know if it works for your use case. Cheers!

Hi,
I do have some problems here, I put them here, let me know if you think this is the type definition or my implementation.
1- I used import mongooseSoftDelete from "mongoose-softdelete"; instead of require, because with Require, TS seems to cast the plugin to a type of any (thus, deactivating TS type). So here is my first not-by-the-doc line.
2- I tried to import the plugin in my root mongoose file and apply this to the mongoose global object, like this:
  mongoose.connect(uri, connectionParams);
  mongoose.plugin(mongooseSoftDelete);

and It gives me this warning:
Argument of type 'typeof import("/home/user/work/project-api/node_modules/mongoose-softdelete/index")' is not assignable to parameter of type '(schema: Schema<any>) => void'.
  Type 'typeof import("/home/user/work/projet-api/node_modules/mongoose-softdelete/index")' provides no match for the signature '(schema: Schema<any>): void'.ts(2345)

Note that even when I add the plugin directly to my schemas, It gives me the same warning.
Do you experience the same errors or does it looks like it is on my side?
Thanks for the help!

I resolved typing issue with this
import softDelete from 'mongoose-softdelete';
// ...
userSchema.plugin(softDelete as () => Schema<any>);

Also maybe it is simplier to make a PR on https://github.com/DefinitelyTyped/DefinitelyTyped ?

@madeindjs PRs are always welcomed 😃

@riyadhalnur , I made a simple PR :wink:


feat: turn healthCheckHttpClient timeout from 500ms to 3s

What does this PR do?
It change the timeout of the healthcheck client from 500ms to 3s
What issues does this PR fix or reference?
Linked to https://github.com/eclipse-che/che/issues/23067
Is it tested? How?
In progress
PR Checklist

[ ] E2E tests pass (when PR is ready, comment /test v8-devworkspace-operator-e2e, v8-che-happy-path to trigger)

[ ] v8-devworkspace-operator-e2e: DevWorkspace e2e test
[ ] v8-che-happy-path: Happy path for verification integration with Che

Setup in a working environment, with the linked PR work

/ok-to-test

HI @AObuchow,
This PR is part of an issue in the Che Side where I have a problem with a slow CNI.
Your gut instinct are the same as mine, the end goal would be to have it merged with a possibility to set this value but i was conflicted on how to have it match between the Che Operator and the DevWorkspace Operator.
I'm totally okay on reworking this PR and if you have time I'm waiting for your guidance.

Instead of increasing the timeout, what about returning a RetryError when the health check fails here , and handle it with checkDWError? This is so that another reconcile request would be created if the attempt to ping the health endpoint fails.
@batleforc does that work for your use case?
We do something similar when waiting for the workspace deployment to be ready: https://github.com/devfile/devworkspace-operator/blob/0055cb602028aed9a5ce86cbbf61d4f0c4377dd8/pkg/provision/workspace/deployment.go#L91
https://github.com/devfile/devworkspace-operator/blob/0055cb602028aed9a5ce86cbbf61d4f0c4377dd8/controllers/workspace/devworkspace_controller.go#L485-L489

I think that it could fix the problem, totally answer my case @dkwon17, and could remove the need of changing the Che operator source code.
What I really need is to not wait for Five more minutes when the IDE is already up but the CNI took too long to broadcast the IP of the Pod (it annoys me and kind of irritate the user).

And your answer wouldn't lock the operator on this action and potentially unlock the process for future action

In my experience, I've seen DWO continuously re-attempt the health check when getting a 502 bad gateway response. However, in these cases you'd see a Main URL server not ready -- are you not seeing that message?

I've experienced the opposite actually, after handling all the queued reconciles, a retry doesn't happen for the health fail check

@AObuchow I think you're thinking about this case, where the health check endpoint is accessible, but a 502 is returned: https://github.com/devfile/devworkspace-operator/blob/533d1f0510b4dcfaee8682e5e0b8103812f79cfe/controllers/workspace/devworkspace_controller.go#L497-L501
This PR is to handle the case where there is an a timeout when trying to access to health check

@AObuchow I think you're thinking about this case, where the health check endpoint is accessible, but a 502 is returned:
https://github.com/devfile/devworkspace-operator/blob/533d1f0510b4dcfaee8682e5e0b8103812f79cfe/controllers/workspace/devworkspace_controller.go#L497-L501
This PR is to handle the case where there is a timeout when trying to access the health check endpoint

@dkwon17 thank you for the confirmation, yes you're right - I believe that's the case I was thinking about.

Hi @AObuchow  @dkwon17 ,
Didn't have time to try it yet (was pretty late), I will try to set it up in both instance that encounter the problem during the following day and will come back to you as fast as possible.

Hi @AObuchow @dkwon17 , Didn't have time to try it yet (was pretty late), I will try to set it up in both instance that encounter the problem during the following day and will come back to you as fast as possible.

Sounds great to me :) I hope this resolves your issue. FWIW: This PR is approved and can be merged (after my final request on cleaning up the commit log) :)

@batleforc Thank you for updating your PR, sounds good to me. Keep us updated when you have a moment :) It's greatly appreciated.

After 5 day of testing, the problem didn't appear again, so it's a fix

After 5 day of testing, the problem didn't appear again, so it's a fix. And the user are more than happy about the 1 minute at most startup 🤣

I'm glad to hear this PR seems to resolve your issue :grin:
Thank you so much for the great contribution @batleforc & thank you, @dkwon17, for steering this PR in the right direction with your review :)
Merging this PR now.


cannot run "neon --gpu cudanet examples/convnet/i1k-alexnet-fp32.yaml" on tegra k1

root@tegra-ubuntu:/home/hsl/neon# neon --gpu cudanet examples/convnet/i1k-alexnet-fp32.yaml
WARNING:neon.util.persist:deserializing object from:  examples/convnet/i1k-alexnet-fp32.yaml
WARNING:neon.datasets.imageset:Imageset initialized with dtype <type 'numpy.float32'>
2015-06-19 12:47:19,332 WARNING:neon - setting log level to: 20
Traceback (most recent call last):
File "/usr/local/bin/neon", line 240, in
experiment, result, status = main()
File "/usr/local/bin/neon", line 202, in main
device_id=args.device_id)
File "/usr/local/lib/python2.7/dist-packages/neon/backends/init.py", line 157, in gen_backend
raise RuntimeError("Can't find CUDA capable GPU")
RuntimeError: Can't find CUDA capable GPU
I use a tegra k1 GPU

Since you appear to be running as root on Ubuntu, can you first make sure that nvidia-smi is in that users PATH, and produces sensible output when run from the command line?  It doesn't look like this command is being found.
I'd also suggest having a look at the items in our installation FAQ: http://neon.nervanasys.com/docs/latest/faq.html

Hi scttl, thanks for your reply. you are right about that the nvidia-smi command is not found.
I've checked my installation and configuration carefully, and it seems that it's a tegra k1 specific problem.
What I am doing is trying to run neon on the nvidia jetson tk1 devkit, and NVML is not supported on Jetson TK1, so nvidia-smi command would not be found, even when CUDA installation is all right.
Is NVML required to run neon demo ? or Is there anyway to solve my problem without NVML ?
ps: I can ran caffe with cudnn with no problem on jetson tk1, so I guess the CUDA installation is all right

nvidia-smi is not required to run any of the examples, we just use it as a proxy to validate that the user has the CUDA SDK installed.  Provided you were able to install the cudanet python library ok, for the moment you can work around your issue by editing neon/backends/__init__.py to replace the line:
             gpuflag = (os.system("nvidia-smi > /dev/null 2>&1") == 0)
with
             gpuflag = (os.system("nvcc --version > /dev/null 2>&1") == 0)
We made a similar change in the Makefile a while back, but needed to update the check here as well.  I've created a fix, and will get this merged into master for the next release of neon.

thanks scttl! editing neon/backends/init.py works, but I still can't run this sample because another erro appears:
root@tegra-ubuntu:/home/hsl/neon# neon --gpu cudanet examples/convnet/i1k-alexnet-fp32.yaml
WARNING:neon.util.persist:deserializing object from:  examples/convnet/i1k-alexnet-fp32.yaml
WARNING:neon.datasets.imageset:Imageset initialized with dtype <type 'numpy.float32'>
2015-07-01 04:52:29,170 WARNING:neon - setting log level to: 20
2015-07-01 04:52:31,733 INFO:init - Cudanet backend, RNG seed: None, numerr: None
2015-07-01 04:52:31,735 INFO:mlp - Layers:
ImageDataLayer d0: 3 x (224 x 224) nodes
ConvLayer conv1: 3 x (224 x 224) inputs, 64 x (55 x 55) nodes, RectLin act_fn
PoolingLayer pool1: 64 x (55 x 55) inputs, 64 x (27 x 27) nodes, Linear act_fn
ConvLayer conv2: 64 x (27 x 27) inputs, 192 x (27 x 27) nodes, RectLin act_fn
PoolingLayer pool2: 192 x (27 x 27) inputs, 192 x (13 x 13) nodes, Linear act_fn
ConvLayer conv3: 192 x (13 x 13) inputs, 384 x (13 x 13) nodes, RectLin act_fn
ConvLayer conv4: 384 x (13 x 13) inputs, 256 x (13 x 13) nodes, RectLin act_fn
ConvLayer conv5: 256 x (13 x 13) inputs, 256 x (13 x 13) nodes, RectLin act_fn
PoolingLayer pool3: 256 x (13 x 13) inputs, 256 x (6 x 6) nodes, Linear act_fn
FCLayer fc4096a: 9216 inputs, 4096 nodes, RectLin act_fn
DropOutLayer dropout1: 4096 inputs, 4096 nodes, Linear act_fn
FCLayer fc4096b: 4096 inputs, 4096 nodes, RectLin act_fn
DropOutLayer dropout2: 4096 inputs, 4096 nodes, Linear act_fn
FCLayer fc1000: 4096 inputs, 1000 nodes, Softmax act_fn
CostLayer cost: 1000 nodes, CrossEntropy cost_fn
2015-07-01 04:52:31,738 INFO:batch_norm - BatchNormalization set to train mode
2015-07-01 04:52:32,228 INFO:val_init - Generating AutoUniformValGen values of shape (363, 64)
2015-07-01 04:52:32,254 INFO:batch_norm - BatchNormalization set to train mode
2015-07-01 04:52:32,340 INFO:val_init - Generating AutoUniformValGen values of shape (1600, 192)
2015-07-01 04:52:32,370 INFO:batch_norm - BatchNormalization set to train mode
2015-07-01 04:52:32,432 INFO:val_init - Generating AutoUniformValGen values of shape (1728, 384)
2015-07-01 04:52:32,506 INFO:batch_norm - BatchNormalization set to train mode
2015-07-01 04:52:32,552 INFO:val_init - Generating AutoUniformValGen values of shape (3456, 256)
2015-07-01 04:52:32,602 INFO:batch_norm - BatchNormalization set to train mode
2015-07-01 04:52:32,639 INFO:val_init - Generating AutoUniformValGen values of shape (2304, 256)
2015-07-01 04:52:32,691 INFO:batch_norm - BatchNormalization set to train mode
2015-07-01 04:52:32,702 INFO:val_init - Generating AutoUniformValGen values of shape (4096, 9216)
2015-07-01 04:52:34,805 INFO:batch_norm - BatchNormalization set to train mode
2015-07-01 04:52:34,813 INFO:val_init - Generating AutoUniformValGen values of shape (4096, 4096)
2015-07-01 04:52:35,728 INFO:val_init - Generating AutoUniformValGen values of shape (1000, 4096)
Traceback (most recent call last):
File "/usr/local/bin/neon", line 240, in
experiment, result, status = main()
File "/usr/local/bin/neon", line 207, in main
experiment.initialize(backend)
File "/usr/local/lib/python2.7/dist-packages/neon/experiments/fit_predict_err.py", line 62, in initialize
super(FitPredictErrorExperiment, self).initialize(backend)
File "/usr/local/lib/python2.7/dist-packages/neon/experiments/fit.py", line 62, in initialize
self.model.initialize(backend)
File "/usr/local/lib/python2.7/dist-packages/neon/models/mlp.py", line 68, in initialize
dtype=self.layers[1].deltas_dtype)
File "/usr/local/lib/python2.7/dist-packages/neon/backends/cc2.py", line 536, in zeros
dtype=dtype)),
MemoryError
Is memory size a problem? tegra k1 has 2GB memory. or just something else lead to this problem? any advice for me to check out what happened?

Try reducing your batch size down to 32 and see if the problem still
exists. If it runs then you probably don't have enough memory to train at
mb=128
Is there any particular reason you are using this system to train?  You
would get much better performance by using a more standard graphics card.
On Monday, June 29, 2015, yuehusile<EMAIL_ADDRESS>wrote:

thanks scttl! editing neon/backends/init.py works, but I still can't
run this sample because another erro appears:
root@tegra-ubuntu:/home/hsl/neon# neon --gpu cudanet
examples/convnet/i1k-alexnet-fp32.yaml
WARNING:neon.util.persist:deserializing object from:
examples/convnet/i1k-alexnet-fp32.yaml
WARNING:neon.datasets.imageset:Imageset initialized with dtype
2015-07-01 04:52:29,170 WARNING:neon - setting log level to: 20
2015-07-01 04:52:31,733 INFO:init - Cudanet backend, RNG seed: None,
numerr: None
2015-07-01 04:52:31,735 INFO:mlp - Layers:
ImageDataLayer d0: 3 x (224 x 224) nodes
ConvLayer conv1: 3 x (224 x 224) inputs, 64 x (55 x 55) nodes, RectLin
act_fn
PoolingLayer pool1: 64 x (55 x 55) inputs, 64 x (27 x 27) nodes, Linear
act_fn
ConvLayer conv2: 64 x (27 x 27) inputs, 192 x (27 x 27) nodes, RectLin
act_fn
PoolingLayer pool2: 192 x (27 x 27) inputs, 192 x (13 x 13) nodes, Linear
act_fn
ConvLayer conv3: 192 x (13 x 13) inputs, 384 x (13 x 13) nodes, RectLin
act_fn
ConvLayer conv4: 384 x (13 x 13) inputs, 256 x (13 x 13) nodes, RectLin
act_fn
ConvLayer conv5: 256 x (13 x 13) inputs, 256 x (13 x 13) nodes, RectLin
act_fn
PoolingLayer pool3: 256 x (13 x 13) inputs, 256 x (6 x 6) nodes, Linear
act_fn
FCLayer fc4096a: 9216 inputs, 4096 nodes, RectLin act_fn
DropOutLayer dropout1: 4096 inputs, 4096 nodes, Linear act_fn
FCLayer fc4096b: 4096 inputs, 4096 nodes, RectLin act_fn
DropOutLayer dropout2: 4096 inputs, 4096 nodes, Linear act_fn
FCLayer fc1000: 4096 inputs, 1000 nodes, Softmax act_fn
CostLayer cost: 1000 nodes, CrossEntropy cost_fn
2015-07-01 04:52:31,738 INFO:batch_norm - BatchNormalization set to train
mode
2015-07-01 04:52:32,228 INFO:val_init - Generating AutoUniformValGen
values of shape (363, 64)
2015-07-01 04:52:32,254 INFO:batch_norm - BatchNormalization set to train
mode
2015-07-01 04:52:32,340 INFO:val_init - Generating AutoUniformValGen
values of shape (1600, 192)
2015-07-01 04:52:32,370 INFO:batch_norm - BatchNormalization set to train
mode
2015-07-01 04:52:32,432 INFO:val_init - Generating AutoUniformValGen
values of shape (1728, 384)
2015-07-01 04:52:32,506 INFO:batch_norm - BatchNormalization set to train
mode
2015-07-01 04:52:32,552 INFO:val_init - Generating AutoUniformValGen
values of shape (3456, 256)
2015-07-01 04:52:32,602 INFO:batch_norm - BatchNormalization set to train
mode
2015-07-01 04:52:32,639 INFO:val_init - Generating AutoUniformValGen
values of shape (2304, 256)
2015-07-01 04:52:32,691 INFO:batch_norm - BatchNormalization set to train
mode
2015-07-01 04:52:32,702 INFO:val_init - Generating AutoUniformValGen
values of shape (4096, 9216)
2015-07-01 04:52:34,805 INFO:batch_norm - BatchNormalization set to train
mode
2015-07-01 04:52:34,813 INFO:val_init - Generating AutoUniformValGen
values of shape (4096, 4096)
2015-07-01 04:52:35,728 INFO:val_init - Generating AutoUniformValGen
values of shape (1000, 4096)
Traceback (most recent call last):
File "/usr/local/bin/neon", line 240, in
experiment, result, status = main()
File "/usr/local/bin/neon", line 207, in main
experiment.initialize(backend)
File
"/usr/local/lib/python2.7/dist-packages/neon/experiments/fit_predict_err.py",
line 62, in initialize
super(FitPredictErrorExperiment, self).initialize(backend)
File "/usr/local/lib/python2.7/dist-packages/neon/experiments/fit.py",
line 62, in initialize
self.model.initialize(backend)
File "/usr/local/lib/python2.7/dist-packages/neon/models/mlp.py", line 68,
in initialize
dtype=self.layers[1].deltas_dtype)
File "/usr/local/lib/python2.7/dist-packages/neon/backends/cc2.py", line
536, in zeros
dtype=dtype)),
MemoryError
Is memory size a problem? tegra k1 has 2GB memory. or just something else
lead to this problem? any advice for me to check out what happened?
—
Reply to this email directly or view it on GitHub
https://github.com/NervanaSystems/neon/issues/51#issuecomment-116924730.


Add LICENSE

@bebraw @TheLarkInn @SpaceK33z What license do we choose for our docs page? If we add a license, we need to make sure that the fonts and the logo are excluded. See #173.

One of the Creative Commons variants might work. I might pick CC BY myself so people can reuse the content however they like while having to attribute. There are more restrictive options too if you prefer those.

CC BY seems like a good idea, it should not be too restrictive.

Good with CC BY? If so, let's update the readme and add a mention to the site (image + link at the footer would be enough).

Sounds good 👍


Modify Centinel of YAML to avoid Templater Notice

Hello
When I try to make a DB Folder and do anything with it, i get in the range of 150 errors. Here's how you reproduce.
Make a DB Folder from this zip file. There is a folder note named 1. Classifcation. DB Folder will error out, and create "untitled database". Rename it 1. Classification Database.
1. Classification.zip
Enable "created date" column. Notice that a created date column is not added. Create a new column. Name it Created:
You will get several errors about nested YAML. This is because notes have a "created" field already but it is not being added.
Here are all of the errors:
Uncaught TypeError: Cannot read properties of undefined (reading 'length')
    at eval (plugin:obsidian-collapse-all-plugin:367:46)
    at Array.every (<anonymous>)
    at TagPaneProvider.tagsAreCollapsed (plugin:obsidian-collapse-all-plugin:367:22)
    at TagPaneProvider.allCollapsed (plugin:obsidian-collapse-all-plugin:355:21)
    at TagPaneProvider.updateButtonIcon (plugin:obsidian-collapse-all-plugin:208:39)
    at eval (plugin:obsidian-collapse-all-plugin:173:18)
    at Array.forEach (<anonymous>)
    at TagPaneProvider.updateButtonIcons (plugin:obsidian-collapse-all-plugin:172:21)
    at eval (plugin:obsidian-collapse-all-plugin:485:34)
    at Array.forEach (<anonymous>)
plugin:metaedit:5266 Uncaught (in promise) TypeError: Cannot convert undefined or null to object
    at Function.keys (<anonymous>)
    at OnFileModifyAutomatorManager.onFileModify (plugin:metaedit:5266:29)
plugin:obsidian-banners:13 Uncaught (in promise) TypeError: Cannot destructure property 'frontmatter' of 'this.metadata.getFileCache(...)' as it is null.
    at Ne.getBannerDataFromFile (plugin:obsidian-banners:13:831)
    at Mu.lintBannerSource (plugin:obsidian-banners:28:11227)
    at eval (plugin:obsidian-banners:28:9340)
    at t.e.tryTrigger (app://obsidian.md/app.js:1:964139)
    at t.e.trigger (app://obsidian.md/app.js:1:964072)
    at t.trigger (app://obsidian.md/app.js:1:1514235)
    at t.activeLeafEvents (app://obsidian.md/app.js:1:1504934)
    at a (app://obsidian.md/app.js:1:264389)
app.js:1 Uncaught TypeError: Cannot read properties of undefined (reading 'length')
    at eval (plugin:obsidian-collapse-all-plugin:367:46)
    at Array.every (<anonymous>)
    at TagPaneProvider.tagsAreCollapsed (plugin:obsidian-collapse-all-plugin:367:22)
    at TagPaneProvider.allCollapsed (plugin:obsidian-collapse-all-plugin:355:21)
    at TagPaneProvider.updateButtonIcon (plugin:obsidian-collapse-all-plugin:208:39)
    at eval (plugin:obsidian-collapse-all-plugin:173:18)
    at Array.forEach (<anonymous>)
    at TagPaneProvider.updateButtonIcons (plugin:obsidian-collapse-all-plugin:172:21)
    at eval (plugin:obsidian-collapse-all-plugin:485:34)
    at Array.forEach (<anonymous>)
plugin:metaedit:5266 Uncaught (in promise) TypeError: Cannot convert undefined or null to object
    at Function.keys (<anonymous>)
    at OnFileModifyAutomatorManager.onFileModify (plugin:metaedit:5266:29)
plugin:templater-obsidian:82 Templater Error: Template parsing error, aborting.
 Bad template syntax

Unexpected token '%'
====================
var tR='',__l,__lP,include=E.include.bind(E),includeFile=E.includeFile.bind(E)
function layout(p,d){__l=p;__lP=d}
const _prs = [];
tR+='---\n\ndatabase-plugin: basic\n\n---\n\n'
_prs.push(%
name: new database
description: new description
columns:
  column1:
    input: text
    key: column1
    accessor: column1
    label: Column 1
    position: 0
    skipPersist: false
    config:
      enable_media_view: true
      media_width: 100
      media_height: 100
      isInline: false
      task_hide_completed: true
config:
  enable_show_state: false
  group_folder_column:
  remove_field_when_delete_column: false
  cell_size: normal
  sticky_first_column: false
  show_metadata_created: false
  show_metadata_modified: false
  source_data: current_folder
  source_form_result: root
  show_metadata_tasks: false
  frontmatter_quote_wrap: false
  row_templates_folder: /
  current_row_template:
filters:
%);
tR+='rJ2KqXzxQg'
const _rst = await Promise.all(_prs);
tR = tR.replace(/rJ2KqXzxQg/g, () => _rst.shift());
if(__l)tR=await includeFile(__l,Object.assign(tp,{body:tR},__lP))
if(cb){cb(null,tR)} return tR

log_error @ plugin:templater-obsidian:82
2app.js:1 Uncaught TypeError: Cannot read properties of undefined (reading 'length')
    at eval (plugin:obsidian-collapse-all-plugin:367:46)
    at Array.every (<anonymous>)
    at TagPaneProvider.tagsAreCollapsed (plugin:obsidian-collapse-all-plugin:367:22)
    at TagPaneProvider.allCollapsed (plugin:obsidian-collapse-all-plugin:355:21)
    at TagPaneProvider.updateButtonIcon (plugin:obsidian-collapse-all-plugin:208:39)
    at eval (plugin:obsidian-collapse-all-plugin:173:18)
    at Array.forEach (<anonymous>)
    at TagPaneProvider.updateButtonIcons (plugin:obsidian-collapse-all-plugin:172:21)
    at eval (plugin:obsidian-collapse-all-plugin:485:34)
    at Array.forEach (<anonymous>)
react-beautiful-dnd.esm.js:39 react-beautiful-dndA setup problem was encountered.> Invariant failed: Draggable[id: column1]: Unable to find drag handle👷 This is a development only message. It will be removed in production builds.
log @ react-beautiful-dnd.esm.js:39
react-beautiful-dnd.esm.js:39 react-beautiful-dndA setup problem was encountered.> Invariant failed: Draggable[id: __file__]: Unable to find drag handle👷 This is a development only message. It will be removed in production builds.
log @ react-beautiful-dnd.esm.js:39
react-beautiful-dnd.esm.js:39 react-beautiful-dndA setup problem was encountered.> Invariant failed: Draggable[id: column1]: Unable to find drag handle👷 This is a development only message. It will be removed in production builds.
log @ react-beautiful-dnd.esm.js:39
react-beautiful-dnd.esm.js:39 react-beautiful-dndA setup problem was encountered.> Invariant failed: Draggable[id: __file__]: Unable to find drag handle👷 This is a development only message. It will be removed in production builds.
log @ react-beautiful-dnd.esm.js:39
9app.js:1 Uncaught TypeError: Cannot read properties of undefined (reading 'length')
    at eval (plugin:obsidian-collapse-all-plugin:367:46)
    at Array.every (<anonymous>)
    at TagPaneProvider.tagsAreCollapsed (plugin:obsidian-collapse-all-plugin:367:22)
    at TagPaneProvider.allCollapsed (plugin:obsidian-collapse-all-plugin:355:21)
    at TagPaneProvider.updateButtonIcon (plugin:obsidian-collapse-all-plugin:208:39)
    at eval (plugin:obsidian-collapse-all-plugin:173:18)
    at Array.forEach (<anonymous>)
    at TagPaneProvider.updateButtonIcons (plugin:obsidian-collapse-all-plugin:172:21)
    at eval (plugin:obsidian-collapse-all-plugin:485:34)
    at Array.forEach (<anonymous>)
app.js:1 TypeError: t.view.revealInFolder is not a function
    at e.revealInFolder (app://obsidian.md/app.js:1:1728486)
    at eval (plugin:alx-folder-note:46:14219)
    at e.l [as revealInFolder] (plugin:alx-folder-note:46:1379)
    at Object.checkCallback (app://obsidian.md/app.js:1:1727019)
    at fH (app://obsidian.md/app.js:1:1668261)
    at e.executeCommand (app://obsidian.md/app.js:1:1669608)
    at e.executeCommandById (app://obsidian.md/app.js:1:1669515)
    at eval (plugin:key-promoter:280:63)
    at e.check (plugin:key-promoter:176:53)
    at e.wrapper (plugin:key-promoter:155:24)
e.executeCommand @ app.js:1
4app.js:1 Uncaught TypeError: Cannot read properties of undefined (reading 'length')
    at eval (plugin:obsidian-collapse-all-plugin:367:46)
    at Array.every (<anonymous>)
    at TagPaneProvider.tagsAreCollapsed (plugin:obsidian-collapse-all-plugin:367:22)
    at TagPaneProvider.allCollapsed (plugin:obsidian-collapse-all-plugin:355:21)
    at TagPaneProvider.updateButtonIcon (plugin:obsidian-collapse-all-plugin:208:39)
    at eval (plugin:obsidian-collapse-all-plugin:173:18)
    at Array.forEach (<anonymous>)
    at TagPaneProvider.updateButtonIcons (plugin:obsidian-collapse-all-plugin:172:21)
    at eval (plugin:obsidian-collapse-all-plugin:485:34)
    at Array.forEach (<anonymous>)
ErrorComponents.tsx:9 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'map')
    at generateErrorComponent (plugin:dbfolder:56355:22)
    at DbFolderError.render (plugin:dbfolder:56381:32)
    at DatabaseView.eval (plugin:dbfolder:133181:23)
    at Generator.throw (<anonymous>)
    at rejected (plugin:dbfolder:39:65)
app.js:1 Uncaught TypeError: Cannot read properties of undefined (reading 'length')
    at eval (tag-pane.ts:47:42)
    at Array.every (<anonymous>)
    at TagPaneProvider.tagsAreCollapsed (tag-pane.ts:47:18)
    at TagPaneProvider.allCollapsed (tag-pane.ts:33:17)
    at TagPaneProvider.updateButtonIcon (base.ts:236:33)
    at eval (base.ts:191:12)
    at Array.forEach (<anonymous>)
    at TagPaneProvider.updateButtonIcons (base.ts:190:17)
    at eval (plugin.ts:56:22)
    at Array.forEach (<anonymous>)

looks like a problem with the yaml that you shared under filters:
Have to test it well. Thanks for the report @brimwats

I don't think i have any filters. Or at least I can't find anywhere to set filters

If you have activated the Templater option of run qith every new file, the database has the same centinel
<%%
yaml bere
%%>
but should not be problem with that, Templater just ignore that possible script.
Anyway, could be an option to substitute the plugin script in the future, I will add this Fr as visual label to the roadmap

I see, what you're saying is that the templater setting "run at file creation" is what is interfering with the dbfolder working? so I should try it with that switched off?

you can leave it enabled, the error message does not affect the behaviour, Templater take the dbfolder yaml as and js code and try to execute it, fails and nothings happend

ah, so I can't fix or use db folder until it is resolved then? (just trying to understand if anything I can do! :) )

You can use it completely normally, it doesn't affect the plugin logic at all or at least it shouldn't

well the plugin isn't working? I have the reproduction steps there— the created date doesn't show a created date because my yaml already has a created date. there's an invisible column called column 1 that always shows up, but I don't think it should?

Its a default column, you can delete it and add the columns that you want


Redirecting to a download in an Action within a modal causes the modal to reopen on next close

Package
filament/filament
Package Version
v3.2.131
Laravel Version
v11.36.1
Livewire Version
v3.5.12
PHP Version
PHP 8.3.14
Problem description
After clicking on an Action that is set to redirect to a download attachment URL (that will open the download dialog) inside a modal, then closing the modal, the modal reopens one time.
Expected behavior
That the modal does not reopen at all.
Steps to reproduce
In the reproduction repository:

composer install, php artisan key:generate, php artisan migrate --seed
Head to /admin
Login as<EMAIL_ADDRESS>password test
Click on the "Test" page
Click on the "Actions" header action in the top right
Click on the "Download" Action (will try to download Github Desktop)
Cancel or Accept
Click "Close"
Note the modal reopens. Close again
Modal closes properly

The related code is in app/Filament/Pages/Test.php:
Action::make('actions')
    ->modal()
    ->extraModalFooterActions([
        Action::make('download')
            ->action(function() {
                // This works, but causes the containing modal to reopen when it is next closed.
                // I cannot use url() instead of action() because I also need to run other logic.
                $this->redirect('https://central.github.com/deployments/desktop/desktop/latest/win32');
            })
        ])

Reproduction repository (issue will be closed if this is not valid)
https://github.com/ahamilton9/filament-issue
Relevant log output
No response

You should be able to use URL with a closure?
                    ->extraModalFooterActions([
                        Action::make('download')
                            ->url(fn($record) => 'https://central.github.com/deployments/desktop/desktop/latest/win32')
                            ->openUrlInNewTab(),
                    ])
                    ```


gRPC appears to only link against static CRT

Is your feature request related to a problem? Please describe.
the gRPC port appears to build gRPC against static CRT using the following option:
-DgRPC_MSVC_STATIC_RUNTIME=${gRPC_MSVC_STATIC_RUNTIME}
This is problematic when consuming the gRPC libraries in a solution that only relies on the dynamic CRT.
In my triplet override I am specifying set(VCPKG_CRT_LINKAGE dynamic), however I believe that is getting ignored by the -DgRPC_MSVC_STATIC_RUNTIME=${gRPC_MSVC_STATIC_RUNTIME} option.
Proposed solution
Allow gRPC to be built against dynamic CRT.
Describe alternatives you've considered
I am thinking of changing the port to link against dynamic CRT, however I'm not sure how to best do that as I'm not familiar with the side effects of the gRPC options.
Additional context
Visual Studio 2015, Windows.

Strangely, which I run dumpbin /DIRECTIVES grpc.lib it shows /DEFAULTLIB:MSVCRT. What does the -DgRPC_MSVC_STATIC_RUNTIME=${gRPC_MSVC_STATIC_RUNTIME} option actually do, as I think I'm getting confused by it.

Furthermore, any reason gRPC is only built as static lib. Following option in port file appears to indicate so:
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)

Thanks for posting this issue. Due to grpc has problems with exporting symbols, it only support static build. You can get more information from: #539 #535

@LilyWangL Thanks for your reply.
OK that's no problem if it builds as a static lib. However, I just want to confirm my understanding. gRPC is built as a static lib, however it's linked against the dynamic CRT, correct?
Thanks.

If you build grpc:x86-windows, you will get a static lib and it's linked the dynamic CRT.

Thanks for the confirmation.


mbed-cli can clone mbed-os.lib more than once

As a creator of an mbed library that people can add to their projects, I want to be able to build and test my library against mbed-os. To do so, I put an mbed-os.lib file in my top level directory so that mbed-cli will clone mbed-os when I do an "mbed import" of my library.
However, the presence of the mbed-os.lib file in my library wreaks havoc on projects that import my library. The reason is that mbed-cli seems to recurse through directories looking for *.lib files. So, the presence of mbed-os.lib in my library will end up with mbed-os being cloned twice by an app that uses my library: once for the app's own mbed-os.lib and again for my libraries mbed-os.lib.
I'm not sure how to fix this. I'm looking at using the solution outlined in http://stackoverflow.com/questions/229186/os-walk-without-digging-into-directories-below. I've coded this up but haven't tested it yet. If I can get this to work, and the mbed-cli maintainers agree this is a valid request, I will do a pull request.

BTW - the workaround is to not put an mbed-os.lib in my library's repo. Instead, I do a git clone of the repo and then do an "mbed add mbed-os" inside it whenever I want to work on it. Or, I do an mbed import of an app that uses my library and then cd into the clone mbed-cli made of library and do a "git checkout develop" and work on the directory from there. Both are kind of clunky solutions.

I do a git clone of the repo and then do an "mbed add mbed-os" inside it whenever I want to work on it. Or, I do an mbed import of an app that uses my library

This is pretty much what we do (usually the latter) and it seems to generally work, if being a bit clunky.
If you have thoughts on alternative ways of doing this, I think we'd definitely be interested in hearing them!

@bridadan - I have an approach in the pull request associated with this issue, and I also suggest a more generic approach that may be possible. Please let me know what you think.

Apart mbed-os, what is happening when several libraries depend on other libraries?

IMO, that's a very good question and is something I allude to in https://github.com/ARMmbed/mbed-cli/pull/474#issuecomment-293861836. This is a problem that will surface in time, and is common across many platforms (golang's 'vendoring' quagmire, autotools, etc.).

I'm still struggling with this. The problem I face is that the current implementation seems to make it very cumbersome to develop and test a library. My directory structure is similar to this:

example_program
|- my-library (separate git repo added via 'mbed add')
`- TESTS
|- mbed-os
|- main.cpp
|- other-stuff.h

What I want to do is be able to simultaneously develop example_program and my-library. I can get pretty far if I use example_program as my primary development bed, but a problem arises when I want to run the TESTS in my-library via mbed test. The only way I've been able to run those TESTS is by having mbed-os added in my-library. But, if I do that in the structure above, compiling example_program results in multiple references to mbed-os (one for the mbed-os in example_program and another for the mbed-os in my-library).
So, what I do now is very very cumbersome. I check out my-library in two different directories: one under example_program and one in its own directory. I do all my-library development in the directory under example_program. Once I'm satisfied, I then create a patch and apply it to the my-library that is in its own directory so I can run mbed add mbed-os and mbed test there. Clunky.
Perhaps I'm missing some easier way to run the TESTS of my-library when my-library is checked out under example_program. If you know the magic incantations to do that, you'd solve the core problem that caused me to file this issue.
Any thoughts?

@screamerbg, @nikapov-ST,
we are actually facing this issue with a library (lets call it libA) (different from mbed-os) on which two other libraries (libB1 & libB2) depend on. As expected the compilation, or rather the build process is failing due to the double inclusion of the library libA. This is happening also when using the mbed online compiler!!!
Pls. give some advise on how to proceed.
Note: we cannot remove the dependencies in libB1 and libB2, as the user when writing an application just knows about these libraries and as he might even write an application which requires only one of them!

@betzw - I proposed a possible approach in my comment at https://github.com/ARMmbed/mbed-cli/pull/474#issuecomment-293861836. The problem here is very similar to the 'vendoring' problem the golang folks have yet to solve gracefully: you're going to run into this problem in any system that automatically fetches dependencies, especially when it fetches them recursively.

I'm facing a similar issue. My approach is to add an EXAMPLE folder in the root of the library and add EXAMPLE/* to the .mbedignore file.
Inside of the EXAMPLE folder is my mbed-os.lib file and a symlink to the library (e.g ln -s .. my-library). This way I can build and test the example code that relies on the library (yes, I realize that this creates a symbolic link loop, but this is what mbed forced me to do). It has the added benefit of providing up-to-date documentation to consumers of the library.
However, when using mbed add my-libary, the mbed cli automatically clones the mbed-os libary in the example, causing the add command to take way longer than necessary if no cache was set up. I think a nice solution would be to have mbed add respect the .mbedignore file.

@wdwalker,

BTW - the workaround is to not put an mbed-os.lib in my library's repo. Instead, ... I do an mbed import of an app that uses my library and then cd into the clone mbed-cli made of library and do a "git checkout develop" and work on the directory from there.

How about you make a "canonical" test app (as a peer repo to your lib), which includes both your lib and mbed-os as libraries?

ARM Internal Ref: MBOTRIAGE-461

It doesn't look like there's a good solution to this yet? I have been doing the workaround where I have a different repository for testing the library I am working on but it would be much better if
mbed add https://github.com/me/mylibrary
could "add it as a library" and ignore mbed-os and main.cpp
versus
mbed import https://github.com/me/mylibary
could "import it as a program" (like the --help seems to imply)
I have had the same odd behavior where it puts a copy of mbed-os inside the library directory when added. I also have the odd behavior if bot library has dependencies spektrum and nmea, and if they are used elsewhere it is not smart enough to realize that and clones it again.


Slack bolt-app invalid trigger_id [json-pointer:/trigger_id]

Description
Error(bolt-app invalid trigger_id [json-pointer:/trigger_id]) occurs on call view.open().
What type of issue is this? (place an x in one of the [ ])

[x] bug
[ ] enhancement (feature request)
[x] question
[ ] documentation related
[ ] example code related
[ ] testing related
[ ] discussion

const { App } = require("@slack/bolt");
const modalTemplate = require("./modal.json");

const app = new App({
  signingSecret: process.env.SLACK_SIGNING_SECRET,
  token: process.env.SLACK_BOT_TOKEN,
  appToken: process.env.SLACK_APP_TOKEN,
  socketMode: true,
});

(async () => {
  await app.start(process.env.PORT || 3001);

  console.log("⚡ Bolt app is running!");
})();

app.command("/code", async ({ ack, body, client }) => {
  await ack();

  try {
    const result = await client.views.open({
      trigger_id: body.trigger_id,
      view: {
        type: "modal",
        callback_id: "view_1",
        ...modalTemplate
      }
    });
    console.log(result);
  } catch (error) {
    console.error(error);
  }
});

[ERROR]  bolt-app invalid `trigger_id` [json-pointer:/trigger_id]
Error: An API error occurred: invalid_arguments

I'm using ngrok, can this be a problem?

Hi @chlghks, thanks for asking the question!
One possible cause that came to my mind is that your SLACK_BOT_TOKEN may be the one for another app. Can you verify the bot token is the one that the app you're currently working on? You can use this API tester page for it: https://api.slack.com/methods/auth.test/test
I hope this helps!

Thank you!
There was no problem with the token itself, but I was using the token of the app I was testing before, not the app that sends the request!
I was able to see the token's "user". Thank you!


Description for Distinct match threshold unclear

Hi - just some feedback about this label and the description.
Please clarify the description for "Distinct match threshold". If it is the total number of distinct data values that need to be found in a column before the scanner runs the data pattern on it, why then does apply to each of pattern if multiple where specified? Surely this is irrespective of pattern i.e. before any pattern is run, it checks to see how many distinct values are in the column and then if it is greater than the threshold each pattern is run looking for potential matches. If so perhaps a better label for this field is "distinct value threshold" as it has nothing to do with pattern matching but it is a pre-requisite for pattern matching. The current description of the label suggests that it is the minimum number of matched values that need to be found before the classification is applied. In the case of multiple patterns this would then make perfect sense that a given pattern would need to yield at least the minimum number of distinct matches before the classification could be applied.

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

ID: 6d5a3b2b-e6ca-f27d-1597-cad639b74ec2
Version Independent ID: 4a6e81b7-7064-3dd6-7df3-e19dd1819067
Content: Create a custom classification and classification rule (preview) - Azure Purview
Content Source: articles/purview/create-a-custom-classification-and-classification-rule.md
Service: purview
Sub-service: purview-data-catalog
GitHub Login: @AniMukherjee
Microsoft Alias: anmuk

@hurtn
Thanks for your feedback! We will investigate and update as appropriate.

@chanuengg could you please bring some clarification to the definition / bahavior / label of "Distinct match threshold" ?

@anmuk601 Can you please help update?


bug:  should document the requirement for wget in order to run the e2e test

Describe the bug
Running e2e tests now produces this error on a Mac M1 (arm64):
+ wget https://github.com/kubestellar/ocm-transport-plugin/archive/refs/tags/v0.1.0-rc2.tar.gz
/Users/paolo/go/src/github.com/pdettori/kubestellar/test/e2e/multi-cluster-deployment/../common/setup-kubestellar.sh: line 95: wget: command not found

Steps To Reproduce

clone latest kubestellar
run test/e2e/multi-cluster-deployment/run-test.sh

Expected Behavior
Should document the requirement for wget - it is not available by default on macOS
Additional Context
Up to 0.20.0 the e2e tests did not have a dependency on wget. This has been introduced since the new transport code has been merged.

@nirrozenbaum can you please have a look and see if we can replace the wget ?

yes.
is it acceptable if we replace it with curl?
I see curl is used also for other things in pre-reqs file.
https://github.com/kubestellar/kubestellar/blob/5a3dc4a973705e4aab0ebff0f34aefdd7cb3f42b/docs/content/direct/pre-reqs.md?plain=1#L33-#L44


⚠ ClamAV has degraded performance

In e965dee, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 623 ms

Resolved: ClamAV performance has improved in 5870541 after 5 minutes.


Feature/update material version

Fixes #9

I like it a lot, but I think that it needs a couple tweaks.

I think that there should be some more margin under the header or padding above the description.

These icons are hard to see. I think that you should use the Angular Material theming system rather than overriding the background color of the headers. I'm glad to help answer questions about it if you run into issues.


Make scaling of flyout independent from workspace scale

The flyout blocks could be scaled to a fixed configurable size, probably.

@NeilFraser for some comments on the last time he tried this.
Scratch currently does this, with the block changing size as you pick it up.

Getting addressed in Rachel's updated toolbox.


[Google Chrome] search bookmarks: extension not run bookmarklets

Extension
https://www.raycast.com/Codely/google-chrome
Raycast Version
1.75.2
macOS Version
13.5.2
Description
Error:
Error: Command failed with exit code 1: osascript -e
        set winExists to false
        tell application "Google Chrome"
            repeat with win in every window
                if index of win is 1 then
                    set winExists to true
                    exit repeat
                end if
            end repeat

            if not winExists then
                make new window
            end if

            tell window 1
                set newTab to make new tab with properties {URL:"javascript:(function(){var scripts=document.getElementsByTagName('div')

Steps To Reproduce

create bookmarklet
try to run it with raycast

Current Behaviour
nothing hapends - an error is thrown - see description above
Expected Behaviour
should detect if it is a bookmarklet and run the command with osascript

Mhh


Ethan: Blacklist (?-i:J4ZtPdt)(?#cutt.ly)

Ethan requests the blacklist of the website (?-i:J4ZtPdt)(?#cutt.ly). See the MS search here and the Stack Exchange search in text, in URLs, and in code.

(?-i:J4ZtPdt)(?#cutt.ly) has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Jeff Schaller in Charcoal HQ


Adding parameters to blob linked service

It seems that we are able to add parameters to blob storage linked services.
I was able to achieve this by adding parameters to blob storage properties in the advanced section.
Please let me know if I can use such code in production.
PS: I did post it as an answer on SO here
https://stackoverflow.com/questions/56067722/parameterize-azure-blob-storage-linked-service-in-adf/58111726#58111726

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

ID: 2bf75315-da09-2cf9-6db5-d12fcc804283
Version Independent ID: bf4deb1b-fe88-a9cb-3605-0500a60fb882
Content: Parameterize linked services in Azure Data Factory
Content Source: articles/data-factory/parameterize-linked-services.md
Service: data-factory
GitHub Login: @djpmsft
Microsoft Alias: daperlov

@dhruvjoshicontata Thanks for the feedback and bringing this to our notice. At this time we are reviewing the feedback and will provide an update as appropriate.

@dhruvjoshicontata This is valid parameterization and should work in production. We have added a work item to support this in the UX. We will update the docs as such.
#please-close

@djpmsft Thanks for processing this update, please also add a possibility to use KeyVault secret as LinkedService parameter. At the moment this type of dynamic parameter doesn't work
{
    "properties": {
        "type": "AzureBlobStorage",
        "annotations": [],
        "parameters": {
            "secretName": {
                "type": "string",
                "defaultValue": "top-secret-value"
            }
        },
        "typeProperties": {
            "connectionString": {
                "type": "AzureKeyVaultSecret",
                "store": {
                    "referenceName": "azureKeyVault",
                    "type": "LinkedServiceReference"
                },
                "secretName": "@string(linkedService().secretName)"
            }
        }
    }
}

The "Test connection" fails with an error "Connection failed
Invalid storage connection string provided to 'UnknownLocation'. Check the storage connection string in configuration. Settings must be of the form "name=value""

@tsart did you solved this issue somehow? I'm also getting Invalid storage connection string provided to 'UnknownLocation'

Hey all,
This looks like a syntax error. You need to specify that the secret name is an expressoin as below:

"typeProperties": {
            "connectionString": {
                "type": "AzureKeyVaultSecret",
                "store": {
                    "referenceName": "AKV",
                    "type": "LinkedServiceReference"
                },
                "secretName": {
                    "value": "@linkedService().test",
                    "type": "Expression"
                }
            }

@djpmsft
If I try to test this:
{
    "name": "TestingAzureBlob",
    "properties": {
        "type": "AzureBlobStorage",
        "typeProperties": {
            "connectionString": "DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;AccountName=@{linkedService().storageAccountName};",
            "AccountKey": {
              "type": "AzureKeyVaultSecret",
              "store": {
                  "referenceName": "AzureKeyVaultWithStorageAccountsSecrets",
                  "type": "LinkedServiceReference"
              },
              "secretName": {
                "type": "Expression",
                "value": "@{linkedService().storageAccountName}"
              }
            }
        },
        "parameters": {
            "storageAccountName": {
                "type": "String",
                "defaultValue": "fixmeaccountname"
            }
        },
        "annotations": []
    }
}

This error is returned:
Invalid storage connection string provided to 'UnknownLocation'. Check the storage connection string in configuration. Duplicate setting 'AccountName' found.

And if I try this:
{
    "name": "TestingAzureBlob",
    "properties": {
        "type": "AzureBlobStorage",
        "typeProperties": {
            "connectionString": "DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;",
            "accountKey": {
              "type": "AzureKeyVaultSecret",
              "store": {
                  "referenceName": "AzureKeyVaultWithStorageAccountsSecrets",
                  "type": "LinkedServiceReference"
              },
              "secretName": {
                "type": "Expression",
                "value": "@{linkedService().storageAccountName}"
              }
            },
            "accountName": {
                "type": "Expression",
                "value": "@{linkedService().storageAccountName}"
            }
        },
        "parameters": {
            "storageAccountName": {
                "type": "String",
                "defaultValue": "fixmeaccountname"
            }
        },
        "annotations": []
    }
}

I'm getting error:
Invalid storage connection string provided to 'UnknownLocation'. Check the storage connection string in configuration. Duplicate setting 'AccountKey' found.

Can you tell me what am I doing wrong? Thanks

I see that you are using entire connection string as a reference from Key Vault. But I only have a secret stored inside key vault and I know the accountName which is equal to key in key vault.
So is it somehow possible to construct connectionString based on secret retrieved from key vault and dynamic accountName which is basically key of secret?


Puzzled over the loss

I am puzzled over the loss, why use one of the confidence in the last dim [:, :, 0]
# derived from cross_entropy=sum(log(p))
loss = -F.log_softmax(confidence, dim=2)[:, :, 0]

confidence has a shape of (batch_size, num_priors, num_classes). Index 0 of the last dim is the prob of background, which is used to find difficult samples(i.e., is more confident to be background). This is called hard negative mining.
I hope this can solve your puzzle.

thankyou


Android studio doesn't recognize my real iOS device

iPhone 8   iOS 16
work: Android Studio Giraffe Kotlin Multiplatform Mobile plugin 0.8.1(223)-26
not work: Android Studio Iguana | 2023.2.1 Canary 18  ( Android Studio Hedgehong)  Kotlin Multiplatform Mobile plugin 0.8.1(232)-18

update xcode  fixed

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Proposal: Ignore private/protected members when doing inferrence

TypeScript Version:  2.0.3 / nightly (2.1.0-dev.201xxxxx)
Code
A trivial example of the problem I'm referring to is in the Gist linked below.
https://gist.github.com/chrisnicola/918f1f0cf3ddf35df2a354514edbf15a
Expected behavior:
I actually expected that this already worked this way, but I was surprised to find out that twoj types are incompatible even if they differ in their private members, not just their public members. I'm not sure if there are valid issues with inferring two objects of different types to be compatible based solely on their public methods but I can't really see why they wouldn't be.
The lack of compatibility here leads to just declaring the object as any to get around the compiler error, which feels like a suboptimal solution.
Actual behavior:
Two types are only compatible if the requested type is a subset of the provided type inclusive of all the requested types private members. My expectation would be that only public members are actually considered.
Resoning:
There are many cases where inference is preferred to declaring and using interfaces or using inheritance. Test substitutes are one example. We often use concrete test substitutes rather than mocking or spying libraries in our tests. These substitutes have identical public interfaces to the concrete implementations but are, obviously, of a different type.
While declaring a common interface would be one solution, as we are testing services in Angular 2 interfaces are an inconvenience with Angular 2's @Injectable behaviour. Also I personally feel it should be unnecessary, it is again just extra ceremony and given the choice I would just stick with just declaring the substitute instance as any in the test instead.

This seems like a bad idea?
class Alpha {
  x: number = 0;
  private y: string = "me";
  equals(other: Alpha) {
    return this.y.toLowerCase() === other.y.toLowerCase();
  }
}

class Beta {
  x: number = 0;
  private y: number = 0;
}

let a = new Alpha();
let b = new Beta();
a.equals(b); // OK according to types, but throws

Yeah we discussed this and I agree there are more edge cases than I originally considered. That being said I feel like there are ways for the compiler to manage this while providing the usability/productivity benefit of not always needing to define a common interface class just to make this work.
In the case above this is only possible because you've passed an object of a type to another object of the same type. In that case could the compiler not flag that as a potential error, or even be so specific as to warn based on the fact that you have an actual usage of a private variable.
In other words, could the compiler, as a default, infer that a type is represented by it's public interface, but if in usage a part of the private interface is accessed, then it would infer it as being represented by its whole?
Another way might be some sort of annotation or way of using a type that implies you intend only its public interface.
My main motivation is that 90% of all usages involve only the public interface.

Would this make sense as a generic type, e.g. Public<Alpha> or ShapeOf<Alpha>, that would give you an interface that includes only the public aspects of Alpha?
In midicast, I've got a Lerna-esque monorepo.  If I let each package have its own copy of RxJS, I get errors to the effect of "Observable is not compatible with Observable because they have different protected implementations of source".  If I hoist the rxjs dependency to a single node_modules folder that is shared amongst them all, TypeScript stops finding types in sibling packages,  and starts treating them as any.

If I hoist the rxjs dependency to a single node_modules folder that is shared amongst them all, TypeScript stops finding types in sibling packages, and starts treating them as any.

do you have path mapping entry for rxjs? can you share a repro?

Try:
git clone https://github.com/appsforartists/midicast.git
lerna run build
lerna bootstrap

and look at the type of messages in SongScanner.

I believe this is now addressed by https://github.com/Microsoft/TypeScript/issues/6496, can you give<EMAIL_ADDRESS>a try and let us know if you are still running into issues?

Worked.  Thanks.


handle deleting already cascade-deleted elements in processChanges

update existing branch deletion tests to include some cascade delete cases

try/catch missing element errors when deleting elements in processChanges.
Because the source doesn't have the information on elements which were deleted readily available, it is difficult to determine the previous relationship between elements in the source and anticipate how cascade deletion will occur in the target. It also would depend upon the handler in use by the IModelExporter. Instead of figuring that out, just ignore errors of missing elements while trying to delete each of them that may have been cascade-deleted by a previous deletion. In the future, the ExportHandler interface may be extended to provide a more robust way of communicating to the exporter that a delete cascaded and processChanges shouldn't re-delete.

use deleteElementTree instead of iModelDb.elements.deleteElement in the transformer's IModelHandler.onDeleteElement implementation, to make it possible to process changes with cascaded deletes in any order.

misc:

promote an inline note to a JSDoc @note so that it's shown by VSCode intellisense
fix a typo in docs

@mergifyio backport release/3.4.x


Add NPTS estimator

Description of changes:
Bring back the NPTS estimator.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Job PR-148/1 is complete.
Docs are uploaded to http://gluon-ts-staging.s3-accelerate.dualstack.amazonaws.com/PR-148/1/index.html

Codecov Report

Merging #148 into master will increase coverage by 0.45%.
The diff coverage is 96.4%.

@@            Coverage Diff             @@
##           master     #148      +/-   ##
==========================================
+ Coverage   79.15%   79.61%   +0.45%
==========================================
  Files         111      116       +5
  Lines        6414     6553     +139
==========================================
+ Hits         5077     5217     +140
+ Misses       1337     1336       -1

Impacted Files
Coverage Δ

src/gluonts/model/npts/_weighted_sampler.py
100% <100%> (ø)

src/gluonts/model/npts/__init__.py
100% <100%> (ø)

src/gluonts/model/npts/_estimator.py
100% <100%> (ø)

src/gluonts/model/npts/_model.py
95.65% <95.65%> (ø)

src/gluonts/model/npts/_predictor.py
95.89% <95.89%> (ø)

... and 3 more


Change my estimate?

What if I hear an insightful comment from someone else after I already submitted my estimate - can I change it, or would the host need to completely restart the active vote?

If you change your answer at any time, especially after the "show result", it will reflected immediately on screen.
You can also tap the same answer to "cancel" it - so that you are in "unanswered" state for that question.


ci: add CI, pre-commit, rustfmt, and dependabot configs

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
:information_source: You can also turn on project coverage checks and project coverage reporting on Pull Request comment
Thanks for integrating Codecov - We've got you covered :open_umbrella:


Travis - test on Trusty

As per their blog post they're making it the new default, best to be ahead of the curve.

Unneeded at this point.


Cannot find module '../package.json' when using webpack

Describe the bug
When building with webpack, the function Utils.getORMVersion throws an error as it is unable to import package.json. This used to work in 4.x when require('../package.json') was used instead of Utils.requireFrom. The bug occurs in 5.0.0, 5.0.1 and 5.0.2. The code runs fine when using ts-node.
Also another issue is with ConfigurationLoader.getPackageConfig which has the same problem as it recursively looks for package.json files and cannot import them. When deploying with webpack this won't be an issue as there would be no local package.json file but is an issue for those using webpack in development.
Stack trace
(node:6003) UnhandledPromiseRejectionWarning: Error: Cannot find module '../package.json'
    at webpackEmptyContext (/Users/agni/development/temp/bundle.js:2:324247)
    at /Users/agni/development/temp/bundle.js:2:320610
(Use `node --trace-warnings ...` to show where the warning was created)
(node:6003) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 3)
(node:6003) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

To Reproduce
Repo - https://github.com/sayav/mikro-orm-webpack-issue
yarn start runs using ts-node
yarn webpack creates bundle.js (when running with webpack, it's a good idea to copy bundle.js to a different location with no package.json files to avoid the second bug). Replacing return  this.requireFrom('../package.json',  __dirname).version with require('../package.json') in Utils.getORMVersion solves the issue.
Expected behavior
No crash
Versions

Dependency
Version

node
14.18.2

typescript
4.5.5

mikro-orm
5.x

your-driver
mysql

Thanks for the repro. I kinda hate webpack for this, but what can we do. Note that just changing it back to require in the bundle does not help, you need to rebuild it, in other words, this is not about webpack not liking createRequire, but rather about not bundling the package.json so it can't be required.
I guess I will revert back to the require calls, I hope it won't break something else like ESM support (but given its a known path, it should work fine).
I don't understand how getPackageConfig can have the same problem, as that should never throw if the file is not found (and is not using createRequire like the former). It even first checks if the file exists.

Thanks for the reply! So I was actually changing the code in node_modules not the bundle, and then rebuilding which seemed to do the trick.
Moving MIKRO_ORM_ALLOW_VERSION_MISMATCH would definitely help. I'll try and see if I can bundle my package.json to fix this one.

FYI I ended up doing both, moving the MIKRO_ORM_ALLOW_VERSION_MISMATCH check as well as adding try/catch to the getPackageConfig helper, let's stay safe.


Default Settings tab to Install section

Most of the time when I visit Settings, I intend to install something. If other users feel this way, could we have the Settings tab to open the Install section by default, for speed?

This is unlikely a sensible default to most users, but you can easily make this the default behavior on your machines by adding something like this to your ~/.atom/keymap.cson file
'atom-workspace':
  'cmd-,': 'settings-view:install-packages-and-themes'


Support nested dictionaries in ipc serialization & deserialization

Ipc serialization and deserialization of a column containing a dictionary nested within a struct does not seem to work as expected right now. Here's a small code snippet exhibiting that behavior.
use arrow::{
    array::{self, ArrayRef, StructArray},
    datatypes::{self, Field, Schema},
    ipc::{reader::FileReader, writer::FileWriter},
    record_batch::RecordBatch,
};
use std::sync::Arc;

fn main() {
    // This works
    // let inner: array::StringArray = vec![Some("a"), Some("b"), Some("a")].into_iter().collect();

    // This does not
    let inner: array::DictionaryArray<datatypes::Int32Type> =
        vec!["a", "b", "a"].into_iter().collect();

    let array = Arc::new(inner) as ArrayRef;

    let dctfield = Field::new("dict", array.data_type().clone(), false);

    let s = StructArray::from(vec![(dctfield, array)]);
    let struct_array = Arc::new(s) as ArrayRef;

    let schema = Arc::new(Schema::new(vec![Field::new(
        "struct",
        struct_array.data_type().clone(),
        false,
    )]));

    let batch = RecordBatch::try_new(schema.clone(), vec![struct_array]).unwrap();

    let mut buf = Vec::new();
    let mut writer = FileWriter::try_new(&mut buf, &schema).unwrap();
    writer.write(&batch).unwrap();
    writer.finish().unwrap();
    drop(writer);

    let reader = FileReader::try_new(std::io::Cursor::new(buf)).unwrap();
    let batch2: Result<Vec<_>, _> = reader.collect();

    assert_eq!(batch, batch2.unwrap()[0]);
}

The code panics when the struct field is a dictionary, but works as expected for other types.

FWIW when I tried the reproducer on current apache/master I still see an error:
    Finished dev [unoptimized + debuginfo] target(s) in 18.38s
     Running `target/debug/rust_arrow_playground`
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: InvalidArgumentError("dictionary id not found in schema")', src/main.rs:39:65
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

@helgikrs  do you know what is left for this PR?

@alamb Currently the deserializer only considers dictionaries at the top-level of the schema, so when a dictionary id is found during loading that is not at the top-level of the schema you get the panic above. I have a working fix, I'll submit a PR that closes this probably tomorrow.

Thank you @helgikrs


What to do with ticket?

Maybe I am missing something here in the flow.

User hits my defined login URL.
This redirects them to the CAS server.
After logging in user is redirected back to my page with the ?ticket=<...> get parameter appended.

At this point User.Identity reports authenticated: false
Should there be another endpoint to exchange the ticket for data, or am i missing a configuration option that would yield the user already being authenticated at this point.

I'm still responding to #16, but I think this has to do with the way your fork is replacing the service parameter.

In my fork I replace the entire "service" GET parameter with the value from the injected Configuration Service.

Are you still appending state?

The problem appears to be with GET URI string decoding and intrepretation on some CAS servers.
Here inside the BuildReturnTo function there is a Uri.EscapeDataString
private string BuildReturnTo(string state)
{
    return Request.Scheme + "://" + Request.Host +
           Request.PathBase + Options.CallbackPath +
           "?state=" + Uri.EscapeDataString(state);
}

Which is used here inside the HandleRemoteAuthenticateAsync function
var casService = Uri.EscapeDataString(BuildReturnTo(state));
var authTicket = await Options.TicketValidator.ValidateTicket(Context, properties, Scheme, Options, casTicket, casService);

cas.example.com/login?service=https://myapp.com/landing&signin-cas?state
This results in a URI that looks like <CAS_SERVER_LOGIN_URL>?service=<SERVICE_URL>&signin-cas?state=<ENCODED_STATE>
For example it could look like cas.example.com/login?service=https://myapp.com/landing&signin-cas?state=SDAF6SDFG...
We can see that there are two ? which signals the beginning of the GET parameters. Allthough the state passed in to BuildReturnTo is encoded, and then encoded again inside HandleRemoteAuthenticateAsync() I doubt the second call would modify the already encoded state data.
My concern is how the server will interpret the fact that the GET parameters dot'n start with ? and then append a & for any additional parameters.
That is too say a well formed URI would look like this:
example.com**?key1=val1&key2=val2&**key3=val3)
However the URI build looks like this
example.com**?key1=val1&key2=val2?**key3=val3)

This results in a URI that looks like <CAS_SERVER_LOGIN_URL>?service=<SERVICE_URL>&signin-cas?state=<ENCODED_STATE>

That's not quite true.  The resulting URL for casService used in the ticket validation phase looks like this (running on localhost):
http%3A%2F%2Flocalhost%3A58886%2Fsignin-cas%3Fstate%3DCfDJ8OS...
EscapeDataString will escape the 2nd ? for the ticket validating URL.
I won't have time today, but tomorrow I'll implement a 2.0.3 version that will allow you to manually specify the FDQN in the CasOptions.
If you'd like to continue pressing down this road, I wonder if you could upload your fork or grant me access?  I only did a quick look, but I couldn't find your fork to look at.  I'm still pretty sure replacing the service param outright is the cause of this problem (unless you're saying you can reproduce this with the default code/sample project).

Ill have to check when i'm back inside the firewall at work tomorrow and can access the CAS server.
It is possible I misunderstand the flow. Is the URI that the CAS server returns me to supposed to be the same (login) endpoint that redirected them there in the first place?
I simply cloned the repo for the fork. If I do figure out anything tomorrow I will submit a pull request for you to look at.

Added a dev/2.0.3 branch that adds a ServiceHost option.  This should let you specify the FDQN used when constructing the service param.
It's a pretty small addition and could help others in a similar situation, so I'm curious if it can solve the issue you describe in #16, even if you don't end up using this option as a solution.

This does work and adequately resolves the problem I was having.
Another resolution to the problem was to change the request Host header value before it hit ASP.net (IE in my reverse proxy).
This problem leads to another, however. For the same reason request.Host was giving the container name before, Request.Scheme is giving http.
Even though requests to the reverse proxy are all https, the proxy sends another http request back to the container in the middle.
I will submit a pull request to the dev branch using the same pattern to allow configurable http scheme as well.

Pull request is sent. I believe this resolves any issue I was having at this point.
Hopefully these changes will be reflected in the NuGet package soon.


Support serde data structures in pipeline

This is easy to review commit by commit.

I think the reasoning behind changing inputs: Vec<F> -> HashMap<u32, F> is that we might want to provide several variable-length vectors as input, which is complex to decode from a single list, right?

Right!

And the reason the key is u32 is that that's a word in the RISC-V machine, right? It feels like this is quite RISC-V specific. For example, the key could also be a String (a name) if it doesn't have to be computed dynamically. But just some random thoughts.

Yea ideally the key being a String would be very nice for UX, but that gets more complicated and I haven't thought of how to implement that yet. I think a single number is still alright though, because that's how message passing libraries work (or channels). The choice of u32 for that number is indeed RISCV inspired, but I think that's also alright for now since it surely covers any amount of inputs one might try to pass realistically.

Other than that, my main feedback is that we could speed up passing serde data 4x by passing 32-bit words instead of bytes!

Right, so we'd add another layer in between, right? When we serialize, we get a Vec<u8> from the library (serde_json, rmp-serde, etc). We'd need to pack that as a Vec<u32> with 1/4 the length. On the guest side, we would need to read the 1/4 length Vec<u32> from the prover, re-pack it as Vec<u8>, then deserialize it. I'm not sure it's worth it unless we can ser/de the object directly to/from Vec<u32>, but I'll check.

Do we still need to not use the key 0 after this PR?

On the guest side, we would need to read the 1/4 length Vec<u32> from the prover, re-pack it as Vec<u8>, then deserialize it.

I know very little about this stuff, but how is a Vec<u8> represented in memory? I would have expected it's basically the same as a Vec<usize>, so converting between them should be zero cost. But that could also be an optimization in the future.

Do we still need to not use the key 0 in get_data_serde after this PR?

Currently still yes, but that's gonna be fixed after this.

Applied the review comments, moved with_prover_input and tests back to Vec instead of HashMap.
Two things left:

changing riscv_executor to take the same callback as Pipeline or Pipeline itself (have to do for this PR)
try to improve the Vec data to packed Vec (don't think this is needed in this PR)

This is now ready for review. I'll squash after approval.

updated comments and squashed the whole thing, should be ready to be merged


Error sharing code on Deck.net

Not sure if there's a better place to raise this, but couldn't find a deck repo. When clicking Share on Deck using the code below, the URL text box remains blank and you get an error in the console:

Refused to execute script from 'https://api.github.com/gists?{%20%22description%22:%20%22deck.net%22,%20%20…0Activator.CreateInstance(typeof(T));\n}\n}%22%20%20}%20}}&_=1491834821272' because its MIME type ('application/json') is not executable, and strict MIME type checking is enabled.

Seems to be particular to this code; trimming it down seems to fix the issue.
public static class EnumExtensions
{
public static T GetAttribute<T>(this Enum value)
where T : Attribute
{
var customAttribute = value
.GetType()
.GetField(value.ToString())
.GetCustomAttributes(typeof(T), false)
.FirstOrDefault()
as T;

return customAttribute ?? (T) Activator.CreateInstance(typeof(T));
}
}

Hi @DanTup – Thanks for the report. This Deck.NET bug has something to do with the C# code containing ??.
I've recreated the issue at deckdotnet/Deck.NET/#17.

Ah, I didn't test with that, I was expecting it to be the chevrons or something! Thanks!

Hi @DanTup – The defect has been fixed and https://dev.deck.net has been updated. This fix will be pushed to https://deck.net once Bridge 16.0 is ready.
Looks like the source of the problem is a defect(?) in jQuery. Here's a few references to the problem we found:

https://stackoverflow.com/questions/17532018/submitting-jquery-ajax-data-with-string-containing-it-changes-value-to-jq
http://stackoverflow.com/questions/5707619/uncomprehensible-jquery-ajax-behavior-when-data-contains-consecutive-questio
https://forum.jquery.com/topic/strange-string-at-the-end-of-my-mesages-jquery15012356981023933311-1302979842877

We were also able to reduce the sample down to the following:
https://dev.deck.net/330999808d634cfd4638c214b0f8f57b
public class Program
{
    public static void Main()
    {
        // ??
    }
}

Thanks again for reporting the defect.

Amazing. I'm already not a fan of jQuery and magic behaviour like this only makes things worse! 😖


Nullability Specifiers

Details
In this PR we're adding Nullability Specifiers in (few) spots, for Swift safety purposes.
cc @eshurakov

Thank you sir!!


Any chance of a windows version with winfsp?

Thanks to WinFSP project it might be possible?
https://github.com/billziss-gh/winfsp
Rclone seems to mount in the beta version already.
Thanks for your work!

I don't think this will be created any soon. This is just a side project until rclone does support gdrive.

I thought rclone already supported gdrive, I can even mount a gdrive in windows in the beta version.
Thanks for the input.

Just a correction: rclone already supports Google Drive, but usage of rclone mounts triggers Google's API limit quickly, resulting in a 24hour ban.
This is what plexdrive solves.

I think this should be re-opened. Many out there that would benefit from this, especially with the newer transcoding via gpu that is finally gaining traction over at Plex.

Perhaps @billziss-gh could chime in? :)

Hi. This can definitely be done. After all we just did it for rclone :)
OTOH I looked at the code and it uses bazil/fuse. As far as I know this presents a "VFS" like interface: the biggest difference is that file lookups are done by (parent_dir, name) rather than path. We had to modify rclone to do path lookups and we also changed it to use cgofuse.
So these are non-trivial changes and would require that the project maintainers/collaborators actually want to see it happen.

Keeping my fingers crossed :)

Goes without saying that if the project does decide to go ahead, I will definitely provide support.


Correctly initialise reserved words for ES2017.

This was previously left uninitialised; consequently, the reservedWords regular expression was set to /^(undefined)$/, which in turn caused undefined to be flagged as a reserved word.

Thanks! I've pushed a somewhat more future-proof approach in attached patch.


feat(chain): add degen chain mainnet

Motivation
There is no support for Degen chain.
Solution
Add Degen chain to Chain.
PR Checklist

[ ] Added Tests
[ ] Added Documentation
[ ] Breaking changes

Thank you for the feedback on my pull request. I'm a bit confused about the request to update the spec. The failing tests I see appear to be related to rate limiting (daily request count exceeded, request rate limited) rather than the changes I made. I've reviewed the code and don't see any issues with the functionality I've updated.
Could you please provide more context on which specific part of the spec you would like me to update? I want to make sure I address the right issue. Additionally, I've checked the clippy errors, and they don't seem directly related to the change I submitted.
Please let me know if you need any clarification or have additional information I should review. I'm happy to make any necessary updates to ensure my pull request is ready for merging.

ah sorry, could you please open the pr against in this repo
https://github.com/alloy-rs/chains

Thanks for the help!
PR here https://github.com/alloy-rs/chains/pull/57

Revisiting this, can it be merged here too? 🙏🏼


Dev

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@0efce05). Click here to learn what that means.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage          ?   65.57%
=========================================
  Files             ?        2
  Lines             ?       61
  Branches          ?        0
=========================================
  Hits              ?       40
  Misses            ?       14
  Partials          ?        7

Flag
Coverage Δ

unittests
65.57% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


SAMZA-2674: Change StorageEngine and KeyValueStore init call parameters

Update the StorageEngine and KeyValueStore apis to only use Context parameter for custom store types
@Sanil15 @prateekm

The build failure seems to be caused by a library being deprecated, updated it here: https://github.com/apache/samza/pull/1522

Update the StorageEngine and KeyValueStore apis to only use Context parameter for custom store types

@dxichen please ensure wrapped store init is invoked and not raw store, else LGTM

@dxichen please ensure wrapped store init is invoked and not raw store in the new lifecycle, else LGTM

@Sanil15 yep, it is evoking wrapped store and not raw store directly


Issues with focus, focus-visible and Safari

We use a library to polyfill focus-visible. We want the focus to only be applied for keyboard users, not it you use a mouse.
I Safari, I see the native focus style for several elements. I can't see exactly why this is happening, but it seems to be related to attached screenshot of styles

Example URL https://energyvision.app.radix.equinor.com/careers/faq

This might not be relevant anymore due to the move from reachUI to ChakraUI

@millianapia to see if possible to replicate

not a problem after we started using another library for accordions