Predicting input nii files?

Hello,
I can't seen to figure out how to run your code in, nift input files.
I was looking for something simple such as python3 run.py --in path/to/file.
Thank you!

Hi,
Please check the recently pushed upgrades.
One important thing to do before deployment is to run
mri_convert --conform <input_volume> <out_volume>

using FreeSurfer to standardize the input required for QuickNAT.

Closed due to inactivity. Feel free to open the issue if the problem persists.

Hello! Sorry for the delay on a response.
I did install the requirements.txt packages and setup my settings_eval file correctly, and i got that error:

python3 run.py --mode=eval_bulk
Starting evaluation
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'quicknat.QuickNat' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'torch.nn.modules.conv.Conv2d' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'torch.nn.modules.batchnorm.BatchNorm2d' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'torch.nn.modules.activation.PReLU' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'torch.nn.modules.dropout.Dropout2d' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'nn_common_modules.modules.DecoderBlock' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
Traceback (most recent call last):
File "run.py", line 168, in
evaluate_bulk(net_params, settings_eval['EVAL_BULK'])
File "run.py", line 137, in evaluate_bulk
mc_samples)
File "/home/diedre/git/quickNAT_pytorch/utils/evaluator.py", line 239, in evaluate
model.load_state_dict(torch.load(coronal_model_path))
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 751, in load_state_dict
state_dict = state_dict.copy()
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 539, in getattr
type(self).name, name))
AttributeError: 'QuickNat' object has no attribute 'copy'

Seems to be a problem on unpacking the saved weights, maybe new code is not compatible with the saved weights?

Hi,
I made some changes to the code. It should work out now. Although the warnings still persists. Let me know if it works out for you
Best
Abhijit

Thanks for the quick response!
Now i get this:

Starting evaluation
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'quicknat.QuickNat' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'torch.nn.modules.conv.Conv2d' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'torch.nn.modules.batchnorm.BatchNorm2d' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'torch.nn.modules.activation.PReLU' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'torch.nn.modules.dropout.Dropout2d' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
/usr/local/lib/python3.6/dist-packages/torch/serialization.py:454: SourceChangeWarning: source code of class 'nn_common_modules.modules.DecoderBlock' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
Evaluating now...
Traceback (most recent call last):
File "run.py", line 168, in
evaluate_bulk(net_params, settings_eval['EVAL_BULK'])
File "run.py", line 137, in evaluate_bulk
mc_samples)
File "/home/diedre/git/quickNAT_pytorch/utils/evaluator.py", line 264, in evaluate
device)
File "/home/diedre/git/quickNAT_pytorch/utils/evaluator.py", line 169, in _segment_vol
out = model(batch_x)
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 493, in call
result = self.forward(*input, **kwargs)
File "/home/diedre/git/quickNAT_pytorch/quicknat.py", line 49, in forward
e1, out1, ind1 = self.encode1.forward(input)
File "/usr/local/lib/python3.6/dist-packages/nn_common_modules/modules.py", line 148, in forward
out_block = super(EncoderBlock, self).forward(input)
File "/usr/local/lib/python3.6/dist-packages/nn_common_modules/modules.py", line 99, in forward
o3 = self.conv1(o2)
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 493, in call
result = self.forward(*input, **kwargs)
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/conv.py", line 331, in forward
if self.padding_mode == 'circular':
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 539, in getattr
type(self).name, name))
AttributeError: 'Conv2d' object has no attribute 'padding_mode'

This is strange. Seems to work for me. What is your pytorch and CUDA version? I saw its not working on CUDA 10.1, but working on CUDA 9

CUDA 9 and pytorch 1.1.0
I ll try in another computer with newer pytorch and cuda 10.0.

I tried on a new computer and this worked out for me:

First I installed the requirements
Next I manually installed pytorch (version 1.3, ubuntu, anaconda, cuda 9.2)

Maybe try the similar sequence in a separate virtual environment

I updated to pytorch 1.3 and Cuda 10.2
Now i got that error:

Evaluating now...
Traceback (most recent call last):
File "run.py", line 168, in
evaluate_bulk(net_params, settings_eval['EVAL_BULK'])
File "run.py", line 137, in evaluate_bulk
mc_samples)
File "/home/diedre/git/quickNAT_pytorch/utils/evaluator.py", line 264, in evaluate
device)
File "/home/diedre/git/quickNAT_pytorch/utils/evaluator.py", line 169, in _segment_vol
out = model(batch_x)
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 541, in call
result = self.forward(*input, **kwargs)
File "/home/diedre/git/quickNAT_pytorch/quicknat.py", line 57, in forward
d3 = self.decode1.forward(d4, out3, ind3)
File "/usr/local/lib/python3.6/dist-packages/nn_common_modules/modules.py", line 201, in forward
concat = torch.cat((out_block, unpool), dim=1)
RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 1. Got 44 and 45 in dimension 2 at /pytorch/aten/src/THC/generic/THCTensorMath.cu:71

Which is probably related to not performing mri_convert  (i wanted to see the effect).
Problem is, when i try to do mri_convert, seems like my nift files don't have enough orientation information in them, and mri_convert fails:

niiRead(): NIFTI_UNITS_UNKNOWN, assuming mm
WARNING: neither NIfTI-1 qform or sform are valid
WARNING: your volume will probably be incorrectly oriented
TR=0.00, TE=0.00, TI=0.00, flip angle=0.00
WARNING: it does not appear that there was sufficient information
in the input to assign orientation to the volume...
i_ras = (-1, 0, 0)
j_ras = (0, 1, 0)
k_ras = (0, 0, 1)
changing data type from float to uchar (noscale = 0)...
MRIchangeType: Building histogram
Reslicing using trilinear interpolation
MRIresample(): WARNING: ras_good_flag is not set, changing orientation
to default.
MRIresample(): source volume orientation is unknown
No such file or directory

What kind of pre-processing can i do manually do replace mri_convert?

Hi,
I would recommend reconverting the nifti files from Dicom files maintaining the header information. Unfortunately I haven't used any other alternative versions of mri_convert.

Hi, i managed to get the original DICOM files and used them for mri_convert.
Thanks for the help!
About versioning, i could make it work in two different computes with torch 1.3 and cuda 10.2.
Thanks for the help, and nice work! Predictions seem to be very good.


Loading slow webpage and immediately going to comments keeps web navigation open

The web navigation controls will be visible if you click a (slowly loading) web page and immediately swipe down to see the comments, this is clearly unacceptable!

Couldn't reproduce this now, there's recently been some changes in this department so closing.


Created cplusplus feature to isolate C++ only elements

Isolate AMQP "composite" type to C++ only because it has no fe2o3 equivalent (the AMQP "composite" type is handled using macros in fe2o3).

You can probably "cplusplus" to the global dictionary.


Clean up  & simplify the for comprehensions api

Goals

Method reference friendly
Separate value / aggregation issues (aggregations can flatMap value results but not vice versa)
Remove the number of potential options (size of api)
Up to 5 generators to participate
Return types should be values or traversables (possibly AnyMValue / AnyMSeq)
Integrate with reactive-streams

Value and traversable should also offer a cut down version of the api.
 For.values.each2(this::initialData, this::loadData,
                             this::filter,this::process)
                             .toEval(); //create a lazy reference to this result

Maybe<String> initData();
Maybe<User> loadData(String input);
boolean filter(String key, User user);

Output process(String key, User user);

With traversables or seqs challenges arise in terms of identitying a common interface (these also exist for Optional and CompletableFuture) this could be helped with static methods (e.g. stream( ), optional( ), future( ). yield and filter could also be annotated in a similar way and this could be used to support curried interfaces.
 For.seqs.each2(stream(this::initialData), this::loadData,
                             this::filter,this::process)
                             .toEval(); //create a lazy reference to this result

Stream<String> initData();
List<User> loadData(String input);
boolean filter(String key, User user);

Output process(String key, User user);

completed on branch


Title: Spotify Clone (using HTML,CSS,JS)

Is your proposal related to a problem? Please describe.
i wanna add this project in beginner level website folder.
Add any other context or screenshots about the proposal request here.
No response

Can you assign this to me @Kushal997-das


Cache prefix mode for separating tenant caches

closes #531
This PR adds support for cache prefix mode for separating tenant caches using a bootstrapper that can be enabled. The bootstrapper simply adds the prefix for cache keys.

Note: It does not work for the file driver.

Usage
enable bootstrapper in the tenancy.php config.
'bootstrappers' => [
        Stancl\Tenancy\Bootstrappers\DatabaseTenancyBootstrapper::class,
        // Stancl\Tenancy\Bootstrappers\CacheTenancyBootstrapper::class,
        Stancl\Tenancy\Bootstrappers\FilesystemTenancyBootstrapper::class,
        Stancl\Tenancy\Bootstrappers\QueueTenancyBootstrapper::class,
        Stancl\Tenancy\Bootstrappers\BatchTenancyBootstrapper::class,
        Stancl\Tenancy\Bootstrappers\PrefixCacheTenancyBootstrapper::class, // prefix cache keys
        // Stancl\Tenancy\Bootstrappers\RedisTenancyBootstrapper::class, // Note: phpredis is needed
    ],

That's it. Your cache keys are prefixed now.
The cache will behave like this.
cache()->put('key', 'original-value');

tenancy()->initialize($tenant1);
cache('key') // returns null;
cache()->put('key', 'value-for-tenant1');

tenancy()->initialize($tenant2);
cache('key') // returns null;
cache()->put('key', 'value-for-tenant2');

tenancy()->end();
cache('key') // returns 'original-value';

tenancy()->initialize($tenant1);
cache('key') // returns 'value-for-tenant1'

tenancy()->initialize($tenant2);
cache('key') // // returns 'value-for-tenant2'

Codecov Report

Merging #1014 (e5658fa) into master (2a39b05) will decrease coverage by 0.07%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##             master    #1014      +/-   ##
============================================
- Coverage     87.98%   87.91%   -0.08%
- Complexity      526      535       +9
============================================
  Files           130      131       +1
  Lines          1473     1489      +16
============================================
+ Hits           1296     1309      +13
- Misses          177      180       +3

Impacted Files
Coverage Δ

...c/Bootstrappers/PrefixCacheTenancyBootstrapper.php
100.00% <100.00%> (ø)

...e/TenantDatabaseManagers/SQLiteDatabaseManager.php
68.42% <0.00%> (-8.05%)
:arrow_down:

src/Resolvers/Contracts/CachedTenantResolver.php
92.85% <0.00%> (-7.15%)
:arrow_down:

src/Concerns/TenantAwareCommand.php
88.88% <0.00%> (-1.12%)
:arrow_down:

src/Commands/TenantDump.php
80.95% <0.00%> (-0.87%)
:arrow_down:

src/Commands/Install.php
81.08% <0.00%> (-0.50%)
:arrow_down:

...rc/Bootstrappers/FilesystemTenancyBootstrapper.php
95.74% <0.00%> (-0.18%)
:arrow_down:

src/Database/DatabaseConfig.php
93.42% <0.00%> (-0.09%)
:arrow_down:

src/Concerns/HasTenantOptions.php
100.00% <0.00%> (ø)

src/Concerns/HasATenantArgument.php
0.00% <0.00%> (ø)

... and 1 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

How does this feature work if someone configures a prefix for the central cache?

How does this feature behave when someone configures a prefix for the central cache?

it will remain intact. When tenancy revert, We reset back the original prefix.

How does this feature behave when someone configures a prefix for the central cache?

it will remain intact. When tenancy revert, We reset back the original prefix.

I think the prefixes used for the tenant keys should also include the original prefix. It should be $originalPrefix . $tenantPrefix . $key (pseudocode).

Could we also add a test where we use a different cache repo in a service? Probably one that's always central regardless of tenancy. If we want to use DI then I think the right way is to use CacheManager in the constructor parameters but then use $this->cache = $cacheManager->driver('foo') (or some call like that) to inject the actual repository?
We could also inject CacheManager, but assuming we never destroy it and only make changes on the single instance that's always kept in the container, that's probably not needed since it has predictable behavior. Injecting a specific repository is a bit more unpredictable so it'd be good to have it covered in tests. I wonder how the current implementation will handle that.

Probably one that's always central regardless of tenancy

With the current code, only the default cache driver gets prefixed. The default driver is the one CacheManager uses for cache operations – if we want a different driver to perform the cache operations, we'd have to make it default. This means that any driver we use other than the default will be central (= won't get any prefix).
I pushed a test that tests that behavior

This means that any driver we use other than the default will be central (= won't get any prefix).

Could the list of tenant-aware caches be configurable?

Could the list of tenant-aware caches be configurable?

Yeah

Can you resolve conflicts so that CI can run?

But I also thought that since the users probably mostly want to prefix all drivers by default

Don't think so because most people don't use multiple drivers. They use just one cache. And if they create a new dedicated one, the odds that it's a central one are decently high.
Specifying the drivers in a static property seems like the right approach.

No, I think testing that it doesn't get prefixed makes sense here because the point of the test is to verify that people can use a central cache inside their services. If we tested that it gets prefixed we'd be testing the same thing we're already testing in a different way, but we wouldn't cover the use case where people want to explicitly use the central cache at all.

I see, thanks for the clarification

I updated the test and the service, what do you think now @stancl?
https://github.com/archtechx/tenancy/pull/1014/files/52db2a0c06ccb11ccf673d0a3e518cdea250895a..caa0c87153507abdd02499b965a0e5a7ec8a9f6b

I updated the test and the service, what do you think now @stancl?
https://github.com/archtechx/tenancy/pull/1014/files/52db2a0c06ccb11ccf673d0a3e518cdea250895a..8deeef25beb2bd549aecf264484dccef29020232

Is the $expectPrefixToBe($originalPrefix); assertion also used after ending tenancy? To check that after reverting, the cache is correct.

Is the $expectPrefixToBe($originalPrefix); assertion also used after ending tenancy? To check that after reverting, the cache is correct.

It wasn't used @stancl. I updated the test so that tenancy is ended and it's checked if the prefix gets reverted correctly here

Linking this here for easy access: cache-methods (compare)

Reverted 5f3079d2ff62979e79ab2cfd94f45f917f66b317 since the matrix is defined inside the tests job. So the phpstan job will be failing here but we can ignore that.

@stancl, there's a resource syncing test that began failing after a recent Laravel release. Locally, the tests run fine when using specifically v10.1.1 (there's just the one cache prefixing test that I expect to fail – should have marked that one as skip), but using ^10.0 installs v10.1.4, and after that, the resource syncing test starts failing. So somewhere after Laravel v10.1.1, there was a change that broke our test.

So it worked in v10.1.1 but is failing in v10.1.4?

Yeah, this change most likely caused that

Not sure about the CacheTaggingBootstrapper, CacheTagsBootstrapper might be better but neither sounds perfect. Maybe go with the latter for now and we can change it later.

Everything seems to be completed here, so a summary of the changes:

A new cache bootstrapper is added (prefix). This supports all cache drivers, not just Redis
The original approach to cache tenancy is completely unchanged, however it is not recommended anymore and will likely be deprecated in the next major version (v5)
The prefix bootstrapper supports all approaches to dependency injection

Injecting CacheManager and manually feching the cache store/repository every time it needs to be used (this is identical to calling cache() / Cache::)
Injecting CacheManager and storing a specific store/repository in a property

Tenancy will update the prefix of these repositories even if they're persisted anywhere in memory

The tags bootstrapper doesn't support any dependency injection properly:

The actual tenancy logic is in the CacheManager (__call()), not the repositories, so they cannot be injected. All calls must go through the CacheManager
The bootstrapper replaces the CacheManager in the container, so it cannot be injected

If a specific request happened entirely in the tenant context, without switching back to the central context, you could in theory inject the CacheManager. It will just not update when you revert back to the central context or switch to another tenant
For this reason, it's recommended to avoid using any cache-related dependency injection with the tags approach

@stancl does this change fix issues related to why Laravel officially undocumented cache tags (due to memory leaks, according to them)?

No, it just lets us support many more drivers more reliably.


feat: #40 Allow custom FlatList prop

Implemented by @kav. I borked the attempt to bring his branch up to date, so have replicated the change here and added documentation and minor naming updates. Tested using the example app and passing a custom FlatList.

@kav 's original is #44.


Improve cutback_2x2

Improve cutback_2x2.
Closes https://github.com/gdsfactory/gdsfactory/issues/1373

Thank you Skandan!


[Python APIView] ForwardRef being added to TypedDict

The following APIView diff is being created off of [this PR to generate Schema Registry with typespec]: https://apiview.dev/Assemblies/Review/79dbf3282c51418e8038af11a837431e?diffRevisionId=8b516ccdb151447eb968b05987eb556a&diffOnly=False&revisionId=385d46de532d4ebd84815b9ab18d80e9&doc=False
Behavior: A ForwardRef has been added to the MessageContent TypedDict, even though it's not annotated that way in the patch file [here].
Expected behavior: ForwardRef is not added to the MessageContent keys.

If this is a python parser improvement/issue, then it should go to the Python team instead.


can there be a race between a read or write operation and a close

If a read or write operation is in-flight, has it incremented an entry in the file descriptor table?, so if a close for the same file descriptor were to come to the same submission queue, or a different one, or as a synchronous close(2) call, will the file descriptor be kept open until the in-flight read or write is done?

I understand the risk of a race if the sqe had not been flushed to the device yet and a close for the same file descriptor made it to the kernel first though another mechanism. I'm curious whether once the enter call has returned so the submission queue has a been fully read, is it safe to allow a close for a related file descriptor to happen, on the same thread, or is it necessary to hold the close until the operation has completed?

io_uring resolves files (and takes refs) lazily, so you'd need to wait for completions or order close requests with reads/etc. (e.g. via links). In practice, files are eagerly resolved except for links and draining but that may change.

Ok. I don't like the answer, (lazy references are taken), but I'm very happy you could answer this so quickly. It means the code that's been in tokio-uring to block closing until all operations on the fd are complete is justified and I won't be lobbying to remove it.
Thank you!


Reporter incorrectly reports disabled specs as failed

Specs like:  it('should initalize with no errors'); cause spec-reporter to report a failure when a pending spec would be more appropriate.

I can't reproduce the behaviour you describe...
This kind of spec are reported (by default or jasmine spec reporter) as:

with jasmine1: successful
with jasmine2: pending

I have used the example spec (npm run example) to test it.
Could you reproduce your your issue with it?

I finally succeed to reproduce this issue by focusing a spec:
describe('suite', function() {
  fit('should be executed', function() {
  });

  it('should be skipped', function() {
  });
});

Executed 1 of 2 specs SUCCESS (1 SKIPPED) in 0.042 secs.
So in v2.2.1, disabled specs are reported as skipped.


Rebase on master to clean history

Configure auto merge in order to squash the pullrequest !

I juste have done that.
Sorry for the force push on master ^^


Integrate textual forecast (Produkt: Aktuelles Wetter und Vorhersagen)

Hi and thanks for your great integration :)
What do you think about integrating the DWD textual forecasts into your Plugin?

Description
Example (NDS)

Is your feature request related to a problem? Please describe.
No
Describe the solution you'd like
I would like to see a textual forecast of todays weather for my region aka 'Bundesland' in HA
Describe alternatives you've considered

I tried to load the entire Page into an iframe card but that is not allowed
than i tried to fetch the page into a template sensor entity but that failed because of the 255 characters constraint, Works but only truncated
i considered creating a local webservice that fetches the HTML and transforms it into JSON so i could use a rest integration to load it into ha

Additional context
Would also be great to add pictures like warnings and current conditions but that is doable with a markdown card. So: nice to have :)

I will do this in the next days :)

Great to hear :1st_place_medal:

I have added the forecasts to the underlying python module, but not yet to this integration. I am not sure on how to include the information for display in HA. Right now it will fetch the pure html code. But as far as I have seen, there is no possibility to display entity content as a webpage.
If I strip all the HTML tags from the text, we are loosing the styling and we also have too much information to display this in a good way.
Do you have any ideas on how to display the weather forecast in HA?

Would it be possible to strip out the contents of <div id="wettertext"> and convert that to markdown?
Than one could use the value in a markdown card.
I would also suggest to strip out all br Tags and style attributes...

Do you have any ideas on how to display the weather forecast in HA?

I would use a browser_mod popup to display the data on demand.
Currently i use popup cards to display all the dwd images i am interested in and also created a css animation from current satellite images. Works quite well.
A card that can expand on click could be nice also... Accordion style or something like lovelace-fold-entity-row

I've added this to the new version 1.2.9.

It' s AWESOME!
Thank you very much!


Update backend_test.py

Description
Please summarise the changes.
Related issues
Please mention any github issues addressed by this PR.
Checklist

[ ] I have performed a self-review of my code.
[ ] I have commented hard-to-understand parts of my code.
[ ] I have made corresponding changes to the public API documentation.
[ ] I have added tests that prove my fix is effective or that my feature works.
[ ] I have updated the changelog with any user-facing changes.

Updated the wrong testcase

I am not sure what is happening, I see both results from time to time. I would suggest this as a temp fix, but we should follow on and check what is really going on remotely on QA...

Here is a the issue: https://github.com/CQCL/pytket-quantinuum/issues/417

@cqc-alec I would merge this without the calender check working?

@cqc-alec I would merge this without the calender check working?

Yes, that's an unrelated issue.


Update SECURITY.md from 0.0.2 to 0.0.9

Summary of the Pull Request
With https://github.com/microsoft/repo-templates/pull/13 merged we can now take the new security.md file

@Aaron-Junker
I am the wrong person for reviewing this because I don't have any insights on this.


Add human-readable description to QKColor, QKPalette, and QKShade.

Can this be closed now?

 Add human-readable descriptions to QKColor instances


Requirements for custom SVGs to work properly

Not sure if it's necessarily a bug, but it just seems very hard to create a SVG that is compatible with your plugin. I understand that this specific feature is not stable, but if I copy-paste an image from a pre-existing pack that in my custom folder it will work fine, so I think this might be a problem with the software used.
I used Photoshop and Inkscape. The only important thing I do is make work path / trace bitmap aside from removing backgrounds and zeroing RGB in the subject area when necessary (most are simple, nothing complex or colourful).
Yet it shows no reaction when I change the whole colour scheme or specifically to the sidebar text. Example below:

Example image from Inkscape. Exported as a standard SVG. Haven't had much success with PS since it'll either be too big in size and resolution or too fuzzy if I reduce it.

I totally agree with you. At the moment, the process is not 100% clear and it's similar to #224. I'll take care of that soon!


Tag Git versions 0.10.14 through 0.10.17

Tags make it really easy to browse back and forth between revisions. the master version reports 0.10.17, however the latest git tag is 0.10.13. It would be nice if you could tag versions.
npm has a tool for this; if you type npm version [patch|minor|major] it will increment the patch/minor/major version number, create a commit with the new version number, and a corresponding git tag.
(I suspect this is also why half of the git tags begin with v and half of them do not.)

I'm seeing tags for 0.10.15 through 0.10.17 here: https://github.com/balderdashy/waterline/tags
Do you agree that only 0.10.14 needs a tag, or am I misunderstanding?  (Also, looks like 0.10.11 does not have a tag.)

Looks like we are missing 0.10.11 and 0.10.14 but the rest are there. Didn't realize I sometimes put a v in front though...whoops! @kevinburkeshyp where are you seeing that last tag at 0.10.13?

Just realized I might have had pulled master /still had outdated tags locally.. whoops. Thanks for fixing.


Add a build&test script

This is needed to be done for getting rid on run_after_success.
should be a no-op because this script hasn't been used anywhere else.

@icygalz: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/release-e2e-simpleTests
939fd36fef0603a9dd4144b985a4637719b47cf7
link
/test release-e2e-simpleTests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

/test release-e2e-simpleTests

/test release-e2e-stackdriver

@icygalz: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/release-e2e-simpleTests
939fd36fef0603a9dd4144b985a4637719b47cf7
link
/test release-e2e-simpleTests

prow/release-e2e-stackdriver
939fd36fef0603a9dd4144b985a4637719b47cf7
link
/test release-e2e-stackdriver

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test release-e2e-stackdriver


Testsuite re-org & code style

This re-organizes the test/ directory in prevision for adding support
for the different backing stores.
This is solely about moving files around and updating the code style to
be consistent across all files, no change to the actual code is included
in this commit.
Signed-off-by: Stéphane Graber<EMAIL_ADDRESS>

I'm +1 on this, works for me, but I can't run the migration tests... @tych0 ?

the migration test fails here in the same way as it did before :)

To be honest, I'm not sure those have worked for a while. I'll take a look, but let's not block merging this on that.

Or, are they failing even when you don't have criu installed?

nah, without criu they pass fine, it's just the criu part which fails as it always did for me.

would be nice if we could get criu 1.7 in the archive and have the tests pass


PR merge events are not present

Hi,
I saw that there are now more events like comments. But there are no merge event for PRs. I think that it would be useful to track PRs that take a long time but just get merged after some point. Thanks!

I couldn't find a way to retrieve these with the graphql API. The doc mentions MergeEvents but it looks like there is no way of actually requesting them.
Ofc if someone finds the graphql query that works I'm happy to add that.

There are at least 2 ways to find that:

using the most recently updated pullRequests:

  viewer {
    login
    pullRequests(
      states: MERGED
      first: 10
      orderBy: {field: UPDATED_AT, direction: DESC}
    ) {
      nodes {
        url
        mergedAt
        mergedBy {
          login
        }
      }
    }

(this way you get pull requests opened by viewer and who merged them - not sure what you want to include)
The other one is to fetch the timeline of the pull request contributions, and only consider MergedEvents in there (once again, including who merged this)
    contributionsCollection(from: "2024-01-01T00:00:00Z") {
      pullRequestContributions(first: 10) {
        nodes {
          pullRequest {
            timelineItems(first:10, itemTypes:[MERGED_EVENT]) {
              nodes {
                ... on MergedEvent {
                  createdAt
                  actor {
                    login
                  }
                }
              }
            }
          }
        }
      }
    }

Thanks! I will have a shot at it next week.


fix: Missing keys in list_to_arrow_table

Feature or Bugfix

Bugfix

Detail

Utility list_to_arrow_table relies on the 1st item in the list for the column names and ordering. This has an impact on dynamodb.read_items in case of some table attributes being empty resulting in missing columns in the data frame.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

AWS CodeBuild CI Report

CodeBuild project: GitHubCodeBuild8756EF16-4rfo0GHQ0u9a
Commit ID: 9f6ea48f0c4cbf1b76867881666c5473adacf1df
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID: 9f6ea48f0c4cbf1b76867881666c5473adacf1df
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubCodeBuild8756EF16-4rfo0GHQ0u9a
Commit ID: 22b3e5101890fa8f10c46e0eee519297d400b47c
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID: 22b3e5101890fa8f10c46e0eee519297d400b47c
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubCodeBuild8756EF16-4rfo0GHQ0u9a
Commit ID: 5bba0076ae0f6712f8f81c44314bb53c1c88a099
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID: 5bba0076ae0f6712f8f81c44314bb53c1c88a099
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubCodeBuild8756EF16-4rfo0GHQ0u9a
Commit ID:<PHONE_NUMBER>35fa8fe9ee9ce09b412a8282a68b71
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubCodeBuild8756EF16-4rfo0GHQ0u9a
Commit ID: 091f1bf97cf97a844dd764f92df904e151ce798d
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID:<PHONE_NUMBER>35fa8fe9ee9ce09b412a8282a68b71
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID: 091f1bf97cf97a844dd764f92df904e151ce798d
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


Support for Falcon models

Hey, is there any plan to add support for Falcon models ?
That would be really great !

Thanks for the feature request @Mehdi-Aiyad I have tagged it in our system

yes, we do plan to test support for Falcon soon. Please keep track of this repo to stay up to date.

Thanks ! Will do !


Refactor course choices controller

Context
The controller has grown over time as we've added more features and complexity, and is now long and hard to navigate.

Changes proposed in this pull request

Extract all actions in CourseChoicesController to more specific controllers. Those that relate to the process of choosing a course live under a new CourseChoices namespace.
The pick_site_for_course and pick_new_site_for_course methods are used in multiple places. Extract them into service objects called PickCourseOption and PickReplacementCourseOption, respectively.

Guidance to review

Per-commit review highly recommended.
Is it clearer? Does the new structure make sense? Is any of the naming confusing?
There's still plenty of scope to refactor some of the longer actions, eg - pick_course, but limiting to these changes for now to discuss the approach and keep the PR to a manageable size.

Link to Trello card

https://trello.com/c/5rSJREyS
Things to check

[x] This code doesn't rely on migrations in the same Pull Request
[x] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[x] API release notes have been updated if necessary
[x] New environment variables have been added to the Azure config

@tvararu I'd say that if we don't need a spec for the service, then we don't need to add it. Perhaps we sometimes over test some bits because we feel we need to add to the existing unit tests?


Dk/automate hadoc

:nut_and_bolt: Description: What code changed, and why?

:chains: Related Resources
:+1: Definition of Done
:athletic_shoe: How to Build and Test the Change
:white_check_mark: Checklist
All PRs must tick these:

[ ] I have read the CONTRIBUTING document.
[ ] All commits signed-off for the Developer Certification of Origin.

With occasional exceptions, all PRs from Progress employees must tick these:

[ ] Is the code clear? (complicated code or lots of comments--subdivide and use well-named methods, meaningful variable names, etc.)
[ ] Consistency checked? (user notifications, user prompts, visual patterns, code patterns, variable names)
[ ] Repeated code blocks eliminated? (adapt and reuse existing components, blocks, functions, etc.)
[ ] Spelling, grammar, typos checked? (at a minimum use make spell in any component directory)
[ ] Code well-formatted? (indents, line breaks, etc. improve rather than hinder readability)

All PRs from Progress employees should tick these if appropriate:

[ ] Tests added/updated? (all new code needs new tests)
[ ] Docs added/updated? (all customer-facing changes)

Please add a note next to any checkbox above if you are NOT ticking it.
:camera: Screenshots, if applicable

Hi Deepa,
Thanks for getting this PR up!
If you look at the netlify deploy preview, you'll see that it failed.  The hugo_lint tests in the buildkite/chef-automate-main-verify-private pipeline also failed. If you look at those--or if you build the PR locally with make serve, you'll get information to fix the problems.

It looks like the frontmatter for HA_system_requirements.md isn't correct.
It also looks like you have multiple files with the frontmatter "automate/install/ha_system_requirements.md", so please fix that.
There are two files without frontmatter, ha_aws_credentials.md and ha_iam_user.md. Please add frontmatter and use draft = true if you don't want these visible.
The file naming pattern is inconsistent, please choose between HA_ or ha_ and rename the files accordingly.
Rename ha-firewall.md to use the underscore ha_firewall.md

Let me know when you've made the changes

Hi Deepa,
Thanks for getting this PR up! If you look at the netlify deploy preview, you'll see that it failed. The hugo_lint tests in the buildkite/chef-automate-main-verify-private pipeline also failed. If you look at those--or if you build the PR locally with make serve, you'll get information to fix the problems.

It looks like the frontmatter for HA_system_requirements.md isn't correct.
It also looks like you have multiple files with the frontmatter "automate/install/ha_system_requirements.md", so please fix that.
There are two files without frontmatter, ha_aws_credentials.md and ha_iam_user.md. Please add frontmatter and use draft = true if you don't want these visible.
The file naming pattern is inconsistent, please choose between HA_ or ha_ and rename the files accordingly.
Rename ha-firewall.md to use the underscore ha_firewall.md

Let me know when you've made the changes

Yep, done Kim. Please check.


Fixed exponent parsing

closes #16
Additional: fixed typo in MissingComma

Thanks a lot, @universalmind303 ! Merged and released under 0.4.4


[Feat] A competitive Web Browsing agent

This PR aims at enabling a competitive browsing agent for #1470.
Now I transplanted the simplified demo agent used in WebArena in our agent hub.
To test, it works best with GPT-4 LLMs such as GPT-4o.
poetry run python ./opendevin/core/main.py -i 5 -t "tell me the usa's president using google search" -c BrowsingAgent -m gpt-4o-2024-05-13

Example logs:

Sad, our project coverage reduced by 5.87%... let me thing if there's anything we could do to test this.

I've made some progress in creating an integration test for this agent! Will create a PR in a day.


Add GitHub Action to check the validity of json files

@ojousima Is it possible to enable "Squash and Merge" for this repo?

@ojousima Is it possible to enable "Squash and Merge" for this repo?

No. We used to have squash+merge enabled, but that lead to dev getting squash+merged to master and then dev and master had differing histories. We'll just live with a chatty commit history in this repo.
You can do interactive rebase locally to squash the commits and then force-push to your working branch, that way we get only one commit per feature branch to dev.


[MOB-4840] Fix iframe height setting

JIRA Ticket(s) if any

MOB-4840

Description
The iframe document body has an 8px margin all around. The iframe height is set based on the body's scrollheight without taking the margin into consideration. Adds 16px to the iframe's scrollheight to eliminate the scrollbar that occurs when user uses the WYSIWYG editor to create their in-app.
Test Steps

Create WYSIWYG in-app template
Send to yourself
Render in web sample app
No scrollbar

Could you add a quick comment for context just so it doesn't get regressed later on accidentally?


Snap-package broken MySQL TLS, HTTPS repo-migration

Gitea version (or commit ref): 1.12.3
Git version:
Operating system: Ubuntu 20.04 Focal Fossa
Database (use [x]):

[ ] PostgreSQL
[x] MySQL
[ ] MSSQL
[ ] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ ] No
[x] Not relevant

Log gist:

Description
TLS-connection to MySQL-server only works with skip-verify option because Gitea is unable to verify certificate-authority. The server uses a Let's Encrypt - certificate, so no idea if that is relevant or not. TLS-connection works fine with the non-snap version.
Trying to migrate a repo from Gogs or Github with an HTTPS URL fails with Gitea-log complaining about "warning: templates not found /usr/share/git-core/templates" and "fatal: Unable to find remote helper for 'https'"
This is with a fresh install of Gitea; no previous settings, database or anything else used.

I guess we're not allowing gitea to get to the root certificates in the snap version. I bet we need to add another directory to snap but quite which I don't know.
I'm gonna prod @popey who might know the simplest thing to do here.

Any progress here? Is there a workaround?

Any progress here? Is there a workaround?

I have no idea. I decided to just run Gitea without Snap, since the Snap-package is too broken to be useable for my needs.


Dependabot running for more than 6 hours since update to version 2.40

Up to (including) Dependabot version 2.39.1099, Dependabot took ~1 hour for one of our repositiories.
Since the update to 2.40.1110, Microsoft is aborting the pipeline after 6:15 hours.

I have the exact same issue. I have multiple dependabot pipelines, with distinct repositories. Since 1.40 all processing times exploded.

This is probably a spin-off of #1441.

@epicstar, the behaviour is clearly aligned with the 2.40 release:

The only code change in 2.40 was https://github.com/tinglesoftware/dependabot-azure-devops/pull/1514. This change sets the default list of experiments to match those used by the GitHub hosted Dependabot, for better accuracy of updates.
Could you try explicitly set the experiments list in your task input so that the GitHub defaults are not used and see if this reduces the task runtime. e.g.

steps:
- task: dependabot@2
  inputs:
    experiments: 'foo=bar' # override the GitHub defaults

Could you try explicitly set the experiments list in your task input so that the GitHub defaults are not used and see if this reduces the task runtime. e.g.

Indeed it seems to solve the issue. Thanks !


Feature/759/93 test categorize using tags

What this PR changes/adds:

Adds tags to categorize tests.
Adds capability to include tags for test run.
Update integration test workflow to use tags to run specific group of tests.
Update documentation.
Add annotation to exclude a code from code coverage.

Why it does that

To have better categorization and discovery & fine-grained execution control of different types of tests.
To provide possibility to exclude piece of code from code coverage.

Linked Issue(s)
Relates to #93
Checklist

[x] added appropriate tests?
[x] performed checkstyle check locally?
[x] added/updated copyright headers?
[x] documented public classes/methods?
[x] added/updated relevant documentation?

Codecov Report

:exclamation: No coverage uploaded for pull request base (feature/759-testing-enhancements@30c3e4b). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Current head 1c9ad9f differs from pull request most recent head 7a7c55b. Consider uploading reports for the commit 7a7c55b to get more accurate results

@@                         Coverage Diff                         @@
##             feature/759-testing-enhancements     #125   +/-   ##
===================================================================
  Coverage                                    ?   56.78%
  Complexity                                  ?     2157
===================================================================
  Files                                       ?      599
  Lines                                       ?    13265
  Branches                                    ?      948
===================================================================
  Hits                                        ?     7532
  Misses                                      ?     5308
  Partials                                    ?      425

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 30c3e4b...7a7c55b. Read the comment docs.

IT pipelines are needlessly running checkstyleMain and Test, should be excluded as in CI

IT pipelines are needlessly running checkstyleMain and Test, should be excluded as in CI

Moving to use on test as check is already covered during build and other place in CI. Also this workflow focuses on running IT tests so test seems a good fit here.


 This only applies to the Parallel GC.
-XX:MinHeapFreeRatio and -XX:MaxHeapFreeRatio -- These flags strain the JVM heap and are only useful in very niche scenarios. Also the majority of info on these two flags are from the early 2010s.
Added:
-XX:+UseZGC -- The ZGC garbage collector has been deemed stable by Oracle and provides faster and more stable memory management.
-XX:+DisableExplicitGC -- This flag forcefully disables the manual garbage collection calls available in the Java library, such as System.gc(). Many programmers think they know better than the JVM and use this which ultimately ends up harming performance. This disables the calls globally, ensuring that the garbage collector can do its job when it needs to.
Ultimately, it's better to keep it simple when it comes to flags and to avoid using obscure flags from 2013. The JVM developers know it better than most.

Thanks @ReperakPro - The JVM Flags have been on my list of things to look at given most of the flags are from the startup scripts I used for CJF back in the day.


don't animate until element comes into view

What's the best way to do this? I want the animation to happen when they scroll it into view

What's your setup? Are you using Next.js?

I would like to do this too - my setup is next.js.

Until CSS has scroll driven animations (Work in progress, not supported by any browser), animating on scroll will require JavaScript code.
I'm not going to require JavaScript for this library, so I suggest that you look for other JavaScript libraries for now if you want to do this.


Fixing Typos and punctuation

Fixing Typos and Punctuation errors in documentation

@gogi2811 : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@ktoliver : Thanks for your contribution! The author(s) have been notified to review your proposed change.

(Resolved the merge conflict.) @bwren I think the edits are good to merge, but could you confirm that "though" should be "through"? Then we can merge. Thanks.

@ktoliver any updates on the merge?

@bwren could you review the proposed updates and sign off if they're approved? Thanks.
Hi @gogi2811 - We're awaiting author approval.

Let's merge this as likely the intended meaning. @bwren let me know if a follow-up PR is needed. Thanks.


Local Scope with Less Loader

Hi,
the great functionality of local scopes, works with the less-loader?
There's a way to combine the two things?
Thanks in advice

Good question! +1

Hey @LucaColonnello  you can use less/sass with scoped css like you do with normal css. I was trying to solve a similar scenario today:

// add to loaders
{
  test: /\.css$/,
  loader: ExtractTextPlugin.extract('style-loader', 'css-loader?module&localIdentName=css_[name]__[local]___[hash:base64:5]')
},
{
  test: /\.less/,
  loader: ExtractTextPlugin.extract('style-loader', 'css-loader?module&localIdentName=less_[name]__[local]___[hash:base64:5]!less')
}

// register plugin
plugins: [
  new ExtractTextPlugin('style.css', { allChunks: true })
]}

This worked for me :)

Issues are for feature requests & bugs. All support requests / questions should be done in either the Webpack Gitter or in Stack Overflow  w/ the webpack tag


i18n(pt-BR): create guides/cms/prismic.mdx file

Description (required)
create i18n/pt-br/guides/cms/prismic.mdx file

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

pt-br
guides/cms/prismic.mdx
Localization added, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


fix up a number of misplace commands

ps now on main command
sign is no longer on main commmand
ls, list no longer are valid main aliases for images
ls, list does work for podman image

Signed-off-by: baude<EMAIL_ADDRESS>

Code tests well.  However ubuntu test isn't happy atm.

This is a partial fix, now the podman commands match the man pages.  But we still have issues with
podman image and podman container.
Lets merge this and then work on those.
/lgtm


OsgiClassPathLocationScanner takes wrong classpath

When flyway is used in osgi the classpathLocationScanner uses the methode FrameworkUtil.getBundle(getClass()) which gives the bundle from flyway core instead of the bundle using flyway.  This results in flyway looking for it's resources on the wrong classpath.

Hi, I got tired of trying to make Flyway classpath scanning work in an OSGI environment and decided that using the Extender Pattern was the way to go instead. So I created #1102 and started a fork to see if this was feasible. Feel free to contribute -any feedback is welcome!

Isn't it an option to simply use the classloader passed to Flyway?  Doing so when using a bundleactivator we could pass the classloader of the activator class. I've seen that you can set the classloader on flyway but the classpathLocationScanner isn't using it.

You may very well be right in which case the easiest fix to get Flyway working for OSGI would be to simply ensure that ClassPathLocationScanner uses the classloader set on the Flyaway instance.  I will look into this tonight.
To set the Flyway classloader to that of our bundle one option is to use an Activator as you suggest, you could also do the same in a custom Blueprint bean.
However, I kind of like the idea of using the OSGI Extender Pattern with Flyway which means that you only would have to add a default configuration in a standard location (META-INF/flyway/name.properties in my fork) and an environment specific configuration in a ManagedServiceFactory configuration (org.flywaydb.core-name.cfg) and then Flyway would automatically pick up your migrations. As soon as I get the pesky Maven integration tests working I will submit a pull request to include this functionality.
Yet another option is to use a Blueprint extension (custom XML configuration); I have not yet looked to closely into this.

Just checked the code and the snippet you are referring to is found in the class OsgiClassPathLocationScanner. The assumption here is that when you specify the bundle: protocol scheme your migrations will be found in a framgent of the Flyway fragment host which is why FrameworkUtil.getBundle(getClass()) should work - the classloader of the fragment host has access to all resources in the fragment bundle that contains the migrations.
Thus I believe that the right classloader is taken given that the OSGI implementation is based on the migrations being provided in a fragment bundle of the Flyway fragment host. I think this issue can be closed.
Cheers,
Chris
PS I am not sure why the classloader set on Flyway is not used but I would not be surprised to find that there are classloading issues when classes are loaded using Class.forName(..) in ClassUtils. Also if I remember correctly there are issues scanning/reading resources if not using the bundle.
In any case, fragments are a mess to deal with, at least in my limited experience and I would rather get away from this solution.

Hi,
Thanks for your answer. Indeed I've also got it working using fragments. I didn't test it further on large scale but still think it doesn't feel ideal. Anyway you are right and it can work with fragments.
Thanks for your response,
Gianni


Minio always uses MD5 also for SHA256 hashes?

I noticed this reading the code so must admit I haven't actually tried it, but...
Shouldn't this line:
https://github.com/minio/minio-go/blob/master/api.go#L92
Be using https://github.com/minio/sha256-simd instead?

I noticed this reading the code so must admit I haven't actually tried it, but...
Shouldn't this line:
https://github.com/minio/minio-go/blob/master/api.go#L92
Be using https://github.com/minio/sha256-simd instead?

No, it is not @ItalyPaleAle it is just interface compatibility it is not used by default - that has nothing to do with the actual usage internally.
You don't need to set CustomMD5, CustomSHA256 unless you writing your own implementation.

Ok thanks for clarifying :)
I'm trying to update my code to use the v7 APIs but can't find docs besides the API themselves, so I've been digging in the source code.

I'm trying to update my code to use the v7 APIs but can't find docs besides the API themselves, so I've been digging in the source code.

Docs are available at https://pkg.go.dev/github.com/minio/minio-go/v7?tab=doc and also

I don't know if I'm doing something wrong on my side, then, but the docs here: https://docs.min.io/docs/golang-client-api-reference and the examples like: https://github.com/minio/minio-go/blob/master/examples/s3/getobject.go#L40
Don't seem to work to create a new Minio Client object.
The API reference shows a different interface than the docs and code samples: https://pkg.go.dev/github.com/minio/minio-go/v7?tab=doc#New

I don't know if I'm doing something wrong on my side, then, but the docs here: https://docs.min.io/docs/golang-client-api-reference and the examples like: https://github.com/minio/minio-go/blob/master/examples/s3/getobject.go#L40

Those were missed in our updates I am fixing them now @ItalyPaleAle


[Flaky Test] Numerical gradient test for greater op

Error log. https://ci.mlc.ai/blue/organizations/jenkins/mlc-ai-relax/detail/relax/45/pipeline
=================================== FAILURES ===================================
___________________ test_binary[greater-relax.greater-llvm] ____________________

target = 'llvm', dev = cpu(0)
binary_op_func = <function greater at 0x7f6df80c5cb0>
binary_op_name = 'relax.greater'

    @tvm.testing.parametrize_targets("llvm")
    def test_binary(target, dev, binary_op_func, binary_op_name):
        data1_numpy = np.random.uniform(1, 2, (3, 3)).astype(np.float32)
        data2_numpy = np.random.uniform(1, 2, (3, 3)).astype(np.float32)
        relax_check_gradients(
>           binary_op_func, binary_op_name, [data1_numpy, data2_numpy], target, dev, (3, 3)
        )

tests/python/relax/test_op_gradient_numeric.py:156:

...

            if dist > atol * sqrt_n + rtol * grad_norm:
                raise AssertionError(
                    "Analytical and numerical grads wrt '{}' differ too much\n"
                    "analytical grad = {}\n numerical grad = {}\n"
                    "{}% of elements differ, first 10 of wrong positions: {}\n"
                    "distance > atol*sqrt(n) + rtol*grad_norm\n"
                    "distance {} > {}*{} + {}*{}".format(
                        x_name,
                        grad,
                        ngrad,
                        wrong_percentage,
                        wrong_positions[:10],
                        dist,
                        atol,
                        sqrt_n,
                        rtol,
>                       grad_norm,
                    )
                )
E               AssertionError: Analytical and numerical grads wrt '1' differ too much
E               analytical grad = [[0. 0. 0.]
E                [0. 0. 0.]
E                [0. 0. 0.]]
E                numerical grad = [[   0.        0.     -943.2258]
E                [   0.        0.        0.    ]
E                [   0.        0.        0.    ]]
E               11% of elements differ, first 10 of wrong positions: [(0, 2)]
E               distance > atol*sqrt(n) + rtol*grad_norm
E               distance<PHONE_NUMBER>78125 > 0.01*3.0 + 0.1*943.225830078125

python/tvm/testing/utils.py:263: AssertionError
=========================== short test summary info ============================
FAILED tests/python/relax/test_op_gradient_numeric.py::test_binary[greater-relax.greater-llvm]

cc @Ubospica @SiriusNEO

Fix patch: https://github.com/mlc-ai/relax/pull/136

Fixed in #136


Refactoring: change from linuxes to elinux - step2

I renamed linuxes to elinux.
Related PR

https://github.com/sony/flutter-embedded-linux/pull/171

@taka-okayama Can you review my PR?


Set content-encoding to identity when un-gzipping

If the original request has Accept-Encoding not set, the server may still send a gzipped response back to the zuul proxy. In that case, zuul will copy the backend response's headers to the zuul response headers (including Content-Encoding: gzip). Therefore, when zuul is intentionally ungzipping the response, it must set the response Content-Encoding to identity - otherwise, zuul's response would have the Content-Encoding: gzip header but the body would not be gzipped.

I've added a test, runWithOriginContentLength_gzipNotRequested_gzipResponse_content_encoding_header, that demonstrates this problem.
It's just the existing test runWithOriginContentLength_gzipNotRequested_gzipResponse with one line added:
RequestContext.getCurrentContext().addZuulResponseHeader("Content-Encoding", "gzip");

Thanks I think it makes sense to submit this against the 2.0.x branch and then we can merge it forward

Thanks I think it makes sense to submit this against the 2.0.x branch and then we can merge it forward

I've rebased onto 2.0.x, thanks!

Can you look at the test failures?

I can't see how my change could be related to the failing test, which is:
[INFO] Running org.springframework.cloud.netflix.turbine.stream.TurbineStreamTests
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.983 s <<< FAILURE! - in org.springframework.cloud.netflix.turbine.stream.TurbineStreamTests
[ERROR] contextLoads(org.springframework.cloud.netflix.turbine.stream.TurbineStreamTests)  Time elapsed: 0.001 s  <<< ERROR!
java.lang.IllegalStateException: Failed to load ApplicationContext
Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates for configuration class [org.springframework.boot.autoconfigure.integration.IntegrationAutoConfiguration$IntegrationConfiguration]; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.integration.config.IntegrationRegistrar]: Unresolvable class definition; nested exception is java.lang.ExceptionInInitializerError
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.integration.config.IntegrationRegistrar]: Unresolvable class definition; nested exception is java.lang.ExceptionInInitializerError
Caused by: java.lang.ExceptionInInitializerError
Caused by: org.springframework.context.ApplicationContextException: Starting with Spring Integration 5.0, the 'spring-integration-java-dsl' dependency is no longer needed; the Java DSL has been merged into the core project. If it is present on the classpath, it will cause class loading conflicts.

This PR doesn't impact Turbine.

We had the same problem, because OWASP ZAP by default removes the "Accept-Encoding" header if no supported encoding is left after filtering the given encodings (see JAVADOC) .  GZIP seems to be an unsupported encoding in an OWASP ZAP point of view... :-)
After reading the RFC7231 and looking into the HTTP Content Coding Registry of the IANA I think "identity" is reserved only for the "Accept-Encoding" header as synonym for "no encoding". Besides the RFC says, that the "Content-Encoding" header field only needs to be set by the sender, if one or more encodings have been applied to a representation.
In my opinion it would be better to remove the "Content-Encoding" header from the response, if no content-encoding was applied.

Thank you for that information, @mum-viadee - I agree, so I've updated this PR to not set the Content-Encoding response header for the unzipping case.

@candrews I am not sure I didn't have time to look into it since there are other things on my plate.  I just know the test is not failing in the 2.0.x branch without your code.

@candrews I am not sure I didn't have time to look into it since there are other things on my plate. I just know the test is not failing in the 2.0.x branch without your code.

All tests are now passing, so whatever it was, it's no longer happening and is no longer relevant :)

Can this PR now be merged?

@ryanjbaxter can you please merge this PR (and tell me what I can do to get it to that point)?
Also, once this is merged, can you please consider making a release? This is a really big problem for my project, and working around it is troublesome.

@spencergibb is this something you can merge and consider for a near term release?
Thanks again!


I18n: Localized paths helper and frontmatter keys

I've done a bit of reading in the issues, and I think it's time I bring up my pet enhancement in Middleman, which is out-of-the-box link helpers for localized paths. I even want to go a step further, which is to make it work without putting the paths in the dictionary.
We've discussed refactoring in depth in #924, but I think that this enhancement warrants its own issue as I18n is a bit of a mega-feature. Multiple people also seem to have raised such a need, such as #1146, #1306.
Here are the end goals I see:

Have the possibility to easily link to localized content in a language-agnostic way, ie. in a layout nav
Install a locale switcher link, which would link to the same resource, if available, in the target locale
Not relying on the locale dictionary to make this work

The alternative I'd suggest to putting paths in the locale file is this: Put a frontmatter key on localized pages that would identify pages. If no key is there, the extensionless path of the page is assumed.
In Gherkin terms, here's what I have in mind:
    Given an i18n fixture app
    And a file named "config.rb" with:
      """
        activate :18n
      """
    And a locale dictionary like:
      """
        en:
          about: About
        fr:
          about: À propos
      """
    And a layout file with:
      """
        <%= link_to t(:about), locale_path(:about) %>
      """
    And a file named "about.en.html.erb" with:
      """
        Here's what it's all about
      """
    And a file named "a-propos.fr.html.erb" with:
      """
        ---
        key: about
        ---
        Voici ce que nous faisons
      """
    Given the server is running
    When I go to "/"
    And I click on "About"
    Then I should see "Here's what it's all about"
    When I go to "/fr/"
    And I click on "À propos"
    Then I should see "Voici ce que nous faisons"

I realize key is probably not the ideal... uh... key.
In code terms, the localization_data hash seems like the perfect place to store this kind of info.
I'd contribute it myself, I just need to know if my approach is the one we want to take. I'm also a bit disoriented about where to put my fixtures and tests, but nothing impossible!
Time for feedback!

I'm doing some issue-gardening 🌿🌷🌾 and came across this issue.
Sorry that this has lingered for quite a while! I'd suggest either closing this issue or submitting a PR with an implementation.

Set it


Full Support for Services Providing Only a Subset of Features

This means

No extra code is required by implementations for features they do not support
Applications can query exchanges for what features they provide

I am interested in coding a solution to this issue.  I think it will require at least a little refactoring.
This could provide

The supported featureset to expand without increasing maintenance and implementation work immediately
Ease of supporting exchanges with poor featuresets
The creation of generic applications which can query exchanges for feature support in order to intelligently consolidate the data they provide

From #578:

Now that so many exchanges are supported, we could re-work the polling services so that when it is
extended, not every method needs be implemented. A generic "method not implemented" exception
could be thrown.
For instance, say someone is adding a new exchange implementation to XChange. They're doing the
market data service implementation. The exchange doesn't have an API method for bulk tickers. The dev
doesn't have to think about getBulkTickers(). They don't even mention it in their
NewExchangePollingMarketDataService, and if an end user attempts to call the method, they just see
that the method is not available for NewExchange

This would also help allow #1096 #1098 .
Ideas for how this might be implemented:

Base classes for exchange services (rather than interfaces)

takes e.g. EnumSet of supported features in constructor
provides default implementations which throw NotAvailableFromExchangeException
this new base class would break inheritance tree for exchanges where generic services inherit from raw services.  composition could be used instead, providing a getter.

Providing registerServiceFeature() on e.g. Exchange to register features as callbacks or add them to a list

other?

An additional thought is that many exchanges provide multiple datastreams, each which provides its own featureset.  A more thorough solution to this would allow the application to enumerate the datastreams, the featuresets each provides, and decide which ones to access.

I'm not convinced, but willing to hear you out more.

No extra code is required by implementations for features they do not support

Yeah, but there's a lot of extra code needed to define what featureset each impl. provides.

The creation of generic applications which can query exchanges for feature support in order to intelligently consolidate the data they provide. Applications can query exchanges for what features they provide

That's the main feature you're going for right?

takes e.g. EnumSet of supported features in constructor

So the client has to pass an EnumSet? Seems weird.

this new base class would break inheritance tree for exchanges where generic services inherit from raw services. composition could be used instead, providing a getter.

Which services inherit from the raw services? I didn't know there was anything like that.

No extra code is required by implementations for features they do not support

Yeah, but there's a lot of extra code needed to define what featureset each impl. provides.
So the client has to pass an EnumSet? Seems weird.

The implementation I'm currently playing with adds a protected specifyFeatures() method to BaseExchangeService which derived classes override to specify the features they provide.  It returns a collection of enums.  I've then changed BasePollingExchangeService to override this function and return a set of features which are automatically inferred via reflection from which interfaces are implemented by the class.  So a polling service implementer needs only derive from BasePollingExchangeService and implement interfaces, and the enumset is populated automatically.
For this approach I've split the interfaces up so that there is one for each possible function call.  The class signature for the services changes to implement many interfaces rather than just one.  I feel it's a little messy to infer the features via reflection, but it means that the implementer only has to specify them in one place, hopefully easing service maintenance.
I imagine one might have BaseStreamingExchangeService such that the enums are passed as a variable argument list to the constructor, alongside the Exchange instance.  Polling exchanges could do this as well if reflection were to be avoided.

The creation of generic applications which can query exchanges for feature support in order to intelligently consolidate the data they provide. Applications can query exchanges for what features they provide

That's the main feature you're going for right?

The intent of this issue is to address the comment I quoted in #578 and take advantage of that addressing to introduce whatever extra generality to the system that the maintainers will allow.  I have a personal desire to consolidate streaming depth data which is not readily available from the current api, which requires resolving #1096 .  It seems like if I'll be going through many exchanges anyway changing things, I should come up with some more generic solution so it doesn't have to happen much in the future, so I'm trying to come up with something powerful enough to fit that.

Which services inherit from the raw services? I didn't know there was anything like that.

There's a pattern in the implementations of the generic services inheriting from the raw services.  For example, BitstampMarketDataService extends BitstampMarketDataServiceRaw .  What I'm currently trying out is keeping that inheritance hierarchy where it exists, allowing the overload/interface reflection technique to specify that the Raw services simply provide no standard features at all.
I'm definitely looking for input on good ideas or changes that will or won't be accepted to the project.

I like the reflection idea and the way of automatically generating that Collection. The need for separate interfaces for each method is the only negative I can see. Perhaps each interface should inherit from a parent interface like "MarketDataService" and appear in its own package to maintain that separation we have now with the 3 different services.
All in all, I think it's a good idea and it seems like you are willing to do the refactor and address the other issies, which is a lot of work.
I'd be interested to get feedback from others on this too!

Here are two ideas to remove some of the clutter for separate interfaces for each method:

Creating interfaces which consolidate common methods together, for exchanges to implement in fewer keystrokes
Using annotations on methods, rather than implementing interfaces, to identify that they provide service features.  I suppose validation would then happen at runtime rather than compile time.
Do either of those sound preferable to just a lot of small interfaces?

I'd also like to split some of the current features out into multiple features.  For example, I'd like to split getOrderBook into getDepthFull and getDepthTop depending on whether the exchange provides the entire orderbook or only a few entries from the top for display to the user.  I think they should be separate functions because it's possible for an exchange to provide both, and they have different benefits.  The recent trades are similar -- some exchanges only provide recent trades, some allow to query historical trades, and for example hitbtc has a separate function for each.  There's a similar situation with the streaming services, where some exchanges provide an orderbook delta (changes made to orderbook since last update), some exchanges provide orderbook snapshots (entire orderbook), and many exchanges provide both.
May I rename and split out the features to make such situations more precise?

Do either of those sound preferable to just a lot of small interfaces?

Not really. Others are welcome to comment.
Isn't there a getPartialOrderbook method or was that already removed? I know that was originally there.

some exchanges only provide recent trades, some allow to query historical trades, and for example hitbtc has a separate function for each.

Right now there is one method and depending on the args passed, the implementation is responsible for calling the appropriate exchange methods in *Raw. Do you think having separate methods is better? There's need to be more examples than not across all exchanges to justify it in my opinion.

There's a similar situation with the streaming services, where some exchanges provide an orderbook delta (changes made to orderbook since last update), some exchanges provide orderbook snapshots (entire orderbook), and many exchanges provide both.

Yeah, go for it in this case for sure.

Isn't there a getPartialOrderbook method or was that already removed? I know that was originally there.

Huh.
10fc7884ee9456420846b2bce7951f669a24835c (Nov 26 2013) condensed getPartial and getFull into just plain getOrderbook with variable arguments.  It added an OrderBookType enum to make up for this change.
d06922c3873a9c996cd464799c1628375ac1414d (Feb 18 2014) removed the OrderBookType enum and changed uses of it to the strings "partial" and "full".  This would have been a great thing to add to the OrderBook class itself to specify what kind of data it contains.
Unfortunately, not specifying how the generic getOrderBook should be used resulted in exchanges implementing it in different ways, leading to the present situation of an application needing to understand the individual exchange's implementations.
I don't think it's important whether there is one function or two (although I would prefer two), but I would like there to be a standard interface to differentiate between them.  Here are some ideas:

A separate function for each query possibility ("getFull" gets full orderbook, "getPartial" gets partial, "getSize" allows the caller to specify the number of items to return)
A single function with a formal signature which takes all possible query parameters and throws if an invalid one is passed.  i dislike this because it makes the implementation responsible for validation.
A single function which takes a variable argument list of e.g. OrderBookQueryParameter objects, and separate parameter possibilities derive from OrderBookQueryParameter.
A single function which takes a single argument of e.g. OrderBookQueryParameters, could perhaps be created with builder pattern.

I'm leaning towards either many functions or a single OrderBookQueryParameters.

I guess at this point this is justified mostly because there are multiple exchanges which allow querying the depth table in different ways and their method signatures are not consistent.  For example ANX allows either partial and full, and BTCE allows to specify the number of entries.

I've found TradeHistoryParams and its paradigm of using instanceof to identify features.  For now I suppose I'll bring back getPartialOrderBook for orderbooks and generalize TradeHistoryParams for marketdata trade history as well.

How about introducing OrderBookQueryParameters and sticking with the one method getOrderBook? That would be great and it'd be consistent with TradeHistoryParams. Maybe the OrderBook object can have an enum field for identifying partial or full?

Sounds great.  And also some TradesParams to give market trades the same interface as user trades?
There would be nearly-identical classes shared between these parameters groups.  I guess I'll move the shared interfaces to some QueryParams base interface.

Yup, sounds good!


docs: replace "Github" with "GitHub"

This the way GitHub refer to themselves.
I tried not to include changes to generated files, per contribution instructions.

What is the purpose of this change?
This spells "GitHub" the same way that that company does; with uppercase "G" and "H".
Was the change discussed in an issue or in the forum before?
No.
Checklist

[x] I have read the contribution guidelines.
[x] I have added tests for all changes in this PR if appropriate.
[x] I have added documentation for the changes if appropriate.

[ ] I'm done, this Pull Request is ready for review :-)

This looks great :-)  However can you drop the vendor directory changes please?  These mustn't be altered by anything except the go mod tool.
However that does give you some further repos you can send PRs too :-)

However can you drop the vendor directory changes please?

Done. Thanks, I had a hunch touching those was not right.
I'm not sure why some of the CI builds fail.

However can you drop the vendor directory changes please?

Done. Thanks, I had a hunch touching those was not right.

Thanks

I'm not sure why some of the CI builds fail.

The build was broken - now fixed but your branch hasn't got the fix.  No biggie, will merge anyway as I can see the changes are good.
Thank you very much :-)


Migrate extra DSpace-CRIS "Live Import" sources to DSpace (Scopus, WOS, PubMedEurope, CiNii)

References
Fixes https://github.com/DSpace/DSpace/issues/3359
To facilitate code review, the work was divided into 4 PRs.
This PR contains the following connectors:

ScopusImportMetadataSourceServiceImpl
WOSImportMetadataSourceServiceImpl
PubmedEuropeMetadataSourceServiceImpl
CiniiImportMetadataSourceServiceImpl

Instructions for Reviewers
All the connectors present in this PR are not active by default, in particular, to work it is necessary to configure the apiKey in   dspace.cfg
https://support.nii.ac.jp/en/cinii/api/developer
Checklist
This checklist provides a reminder of what we are going to look for when reviewing your PR. You need not complete this checklist prior to creating your PR (draft PRs are always welcome). If you are unsure about an item in the checklist, don't hesitate to ask. We're here to help!

[x] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & integration tests). Exceptions may be made if previously agreed upon.
[x] My PR passes Checkstyle validation based on the Code Style Guide.
[x] My PR includes Javadoc for all new (or modified) public methods and classes. It also includes Javadoc for large or complex private methods.
[x] My PR passes all tests and includes new/updated Unit or Integration Tests based on the Code Testing Guide.
[x] If my PR includes new, third-party dependencies (in any pom.xml), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
[x] If my PR modifies the REST API, I've linked to the REST Contract page (or open PR) related to this change.

@Micheleboychuk : This PR now has merge conflicts (and failing tests) after I merged #8238.  When you find a chance to update it, I'll gladly review & test it.
Also, as noted in #8238, I'd also appreciate your (and/or @abollini 's) thoughts on how to deal with Import Sources which require an auth key to work.  Currently, they are all enabled by default, but that means they will be listed in the UI but won't function properly (and some may even throw errors).   Can you think of a way to enable them only when their auth key is configured (maybe via @ConditionalOnProperty or similar)?  Or maybe we should comment them all out as disabled (by default) and document how to enable & configure them?

Merging with +1 approval & based on the internal testing done by the rest of the 4Science team.


HairSegmentationGpu not working with use_advanced_gpu_api and OPENGL

Hi, Recently I am working on GPU inference and looking for Examples in MeidiaPipe for help. I use hairsegamentationgpu for example and I found that it works well with default code, which equals to "use_advanced_gpu_api=false" (delegate v1 with OpenGL is used), when  I set "use_advanced_gpu_api=true" and set "api=OPENCL"(delegate v2 with OpenCL is used), it also works well. But if I change the api to OPENGL, I can't see any result(only raw camera video stream w/o mask on it),
Brifely, the problem is:
use_advanced_gpu_api=false                             √
use_advanced_gpu_api=true，api=OPENCL， √
use_advanced_gpu_api=true，api=OPENGL， ×
I tried make the smallest change to the source code and the problem still exist, the only part I modified is in mediapipe/graphs/hair_segmentation/hair_segmentation_mobile_gpu.pbtxt
  calculator: "TfLiteInferenceCalculator"
  input_stream: "TENSORS_GPU:image_tensor"
  output_stream: "TENSORS_GPU:segmentation_tensor"
  input_side_packet: "CUSTOM_OP_RESOLVER:op_resolver"
  node_options: {
    [type.googleapis.com/mediapipe.TfLiteInferenceCalculatorOptions] {
      model_path: "mediapipe/models/hair_segmentation.tflite",
      use_gpu: true,
      delegate: {
        gpu {
          use_advanced_gpu_api: true,
          allow_precision_loss: true,
          api: OPENGL,
          }
        }
    }
  }
}

I completely follow the offical instruction to build the hairsegmentationgpu.apk and everything works well.  Here are some of my enviroment info:

OS: Ubuntu 18.04.
Mobile Phone: OnePlus6 with snapdragon 845
OpenGL ES 3.2 is supported
Android SDK: android 10
NDK: r21b

I wonder if there something wrong with the example, If NOT, since I am not so familiar with OpenGL/OpenCL, I don't know how to check the InferenceRunner. please give me some suggestion.
THANKS

Finally I figured out this problem. In "tensorflow/lite/delegates/gpu/gl/api2.cc", At DefaultTensorTie/Init.
When external_def and internal_def is the same def.
On one hand, the class will not creat Converter, which makes "converter_from_" actually not working.
On the other,  the class will not AllocateInternalObject, which is crucial, because this function takes responsibility to Register SSBO Buffer to ObjectManager.
All changes I've made is following:
  absl::Status Init(TensorObjectConverterBuilder* converter_builder) {
    // First check is an object is user provided.
    const auto& external_def = def().external_def.object_def;

    const bool is_same_def = IsSameDef();

    // if (!is_same_def) {
    RETURN_IF_ERROR(converter_builder->MakeConverter(
        def().internal_def, def().external_def, &converter_to_));
    RETURN_IF_ERROR(converter_builder->MakeConverter(
        def().external_def, def().internal_def, &converter_from_));
    // }

    if (external_def.user_provided) {
      // if (is_same_def) {
      //   return absl::OkStatus();
      // }
      // Object is provided by a user, but runtime expects different object
      // type. Therefore, we have to allocate internal object and convert.
      return MaybeAllocateInternalObject();
    } else {
      RETURN_IF_ERROR(MaybeAllocateInternalObject());

      if (is_same_def) {
        // Object is NOT provided by a user, but it matches definition expected
        // by runtime. Conversion is not needed.
        external_obj_ = internal_obj_;
        return absl::OkStatus();
      }

      // Object is NOT provided by a user.
      return MaybeAllocateExternalObject();
    }
    return absl::OkStatus();
  }


add data reduction to hdf5

Is this referring to pre-processing data (e.g. xyz -> hdf5 input for training)?
If so, should it just be an extra option as part of training, or would you run it on its own first?

yes that is what I refer to. since is general is a one off, would be useful to be on its own


KANBAN-265 Updating Allele model for WB Transgenes

@markquintontulloch
OK, I've changed GenomicLocation to GenomicLocationAssociation and I think made all the appropriate changes to the model. I still want to add some more test data, but I think the model is in good shape.


Add conversion table for every Kubernetes version and machine image

Towards https://github.com/giantswarm/giantswarm/issues/23341
This PR:

Adds matrix with Kubernetes Version and machine image so customers can rely on defaults and we only need to define target k8s version

Testing

[x] Fresh install works.
[x] Upgrade from previous version works.

Checklist

[x] Update changelog in CHANGELOG.md.
[x] Make sure values.yaml is valid.

Maintaining a Matrix's is really hard to continually maintain. Can we not just tag on the k8s version to the image name?
ie:
nodeClasses:
  default:
    image: ubuntu-2004-kube-v{{.Values.kubernetesVersion}}

The above should work even from inside the values file AFAIK.

Maintaining a Matrix's is really hard to continually maintain. Can we not just tag on the k8s version to the image name?

We had a meeting last week and we discussed it. We decide to use the matrix because we might want to change the OS. More info here -> https://github.com/giantswarm/giantswarm/issues/23341#issuecomment-1315766253

@erkanerol and I talked about the different scenarios and why this change works along them

Customer wants to worry about the kubernetes version and rely on GS for the default version
It enables us to do automatic upgrades and lets us certify the version/image works (CI testing pipeline will help)

There is a new version of k8s that has been tested successfully
GS provides a new cluster OpenStack version with this default version and the image tested is included in the matrix

There is a new CVE in OS
We can change the matrix with the new OS-patched version for the selected k8s version and our automation will roll the new version

From
kubernetesVersionImages:
  v1.22.9: "ubuntu-2004-kube-v1.22.9"

To
kubernetesVersionImages:
  v1.22.9: "ubuntu-2005-kube-v1.22.9"

Customer wants to ping a cluster in a specific version
The customer can always use a custom value (Gitops or another method) that pings the version. We don't have a way to detect the static version but we could implement it in UI/monitoring and inform customers when this happens so they can consider upgrading the cluster

Rare corner case. Customer needs to use an image/k8s version not listed in our matrix under their own responsibility (we did not test it). Customers still can overwrite the matrix with their values

** This changes also allow other companies to use this chart and use their own images

yeah let's wait till we have an agreement

We had a meeting to discuss the direction of this and we agreed on
Also can’t remember fully, but IIRC TLDR was somewhere along the lines of:

Our goal is to continuously release towards the customer
We do not want gatekeepers for cluster versions
Upgrades should be automatable
As limitation we still need good testing to get there

So for now we keep this on hold, and most likely it will be revisited by releng team / area kaas once needed


FYI Alexa Developer and ASW Lambda has Change alot

Kate FYI Alexa Developer and ASW Lambda has Change a lot the Set up's to follow might need to be changed.

Ditto, just tried to set things up and more of it has changed, than remained the same.  I got stuck at Wiki step 3 > AWS Setup > #4 Paste alexa-smart-home-skill-adapter into the Search box. Select the blueprint with this name.
No blueprint comes up.  I even tried manually looking through all the available blueprints and nothing comes close to matching "alexa-smart-home-skill-adapter"
Please help!

@piconut StarfighterJ was able to set up the skill back in April when I revised the directions, I'll take a look again and rewrite them as soon as I'm able! This skill was just for fun, so I don't have a ton of time to maintain it but I'll do my best to fix it up soon, I appreciate knowing the instructions are (yet again) out of date :)

Thank you for your help on this Kate!   I have a 4 zone system but I would be happy to just be able to change the temperature in the main zone using Alexa (which if I understand correctly, is how this script works).


build: support static OCIO self-builds

Add build recipes for certain dependencies needed for linking static OpenColorIO libs: expat, minizip-ng, pystring, and yaml-cpp

Add SOURCE_SUBDIR option to build_dependency_with_cmake that mimics the behavior of the FetchContent option of the same name

Tweak OpenColorIO build recipe to always build static libraries by default.

Problem on Windows?

Problems on Windows, a tale older than time itself.
Just a little trouble with finding Expat's config. I haven't looked into this too carefully yet -- I'll have another go today.

Nice, putting some distance between building pystring and REQUIRED-finding it seems to more reliably pass all CI checks.


Suggested issues to be resolved

Excellent job on the codebase. Here are some polite suggestions we will like to point out;
HTML

Line 14 should be wrapped within a nav tag
Header tags were used properly
Issue with file naming on lines 57, 80, 103, 144,149,153,157,164,169
Wrong Alt names for different files, 57, 149,153,157,175,176,177

CSS

Nice declare color variables in the css file
Hierarchy in placing height and width before other rules on line 28
Issues on file naming on line 40 because of SEO ranking

Thanks for the reviews, the issues has been fixed


Allow non-bash shells, fix status bar non-reload after commands

Fixed

Reload whole editor when running commands.  Previously, the status bar would not get reloaded, and end up having visual glitches as a result.

Changed

Allow for running commands in non-BASH shells by reading from $SHELL

These are nice changes, thanks! Instead of merging it in here, I'll add it as a part of v1500, which should be released in the coming weeks.

I was just thinking... do you think you could make these changes over on the dev branch? I'd like to make sure that your name is on the contribution :)

Will do


Backport pick_first fix to v1.20.x

Directly applied https://github.com/grpc/grpc/pull/18598.

@AspirinSJL, please check the tests and put comment for failed tests. When it looks good, let me know so I can merge.

@AspirinSJL The tests are passed.

I think this branch should be protected?
Anyway, I'm merging this PR.


Avoid null pointer exception in the UIScaler

Fixes #838
Bug
UIScaler was using uiCamera's pixel size, while either UIView.instance or UIView.instance.uiCamera was null. This is now cached and double checked.
Potentially if UI never changes from 1920x1080, we can replace that entire code with a pair of const
Solution
A null check was added for both UIView.instance and UIView.instance.uiCamera, cached width and height are stored in case those are ever null.
Also: Change to WorldToScreenPoint has been reverted as it always been using Screen.height not GUI height.

Pushed the suggested change.

I'll see if this fixes any of the issues I'd been seeing in game.


Mobile - Screen Share - Any way to check if the user accepted/declined the system screen share prompt?

await _engine.startScreenCapture(
        const ScreenCaptureParameters2(captureAudio: true, captureVideo: true));

This function does not return any value which indicates whether the user accepted or rejected the screen share prompt. Is there any other method which gives us this information, or any way to find out?
flutter agora version - 6.0.0

You can implement the onLocalVideoStateChanged  callback to listen the current video state, check our example for reference.
https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK/blob/84fdfc275bf31d387cbb18b6fe470e43f0a7cf7f/example/lib/examples/advanced/screen_sharing/screen_sharing.dart#L68


Add "-*" guard clause to __cargo_remote_packages

I tried creating a PR but don't have the permissions, so here's my commit: https://github.com/blueted2/zsh-cargo-completion/commit/8c7e3cfcb0ce1edd87bdfce682e795251930bd3b
This adds a guard clause to the "__cargo_remote_packages" function to avoid running "cargo search" on something that would be interpreted as an optional parameter. This also speeds up completions for optional parameters.


Implement optional, dynamic loop counting

Currently, the output of loop_counter_output.txt is filled with dummys (1000).
Since the loop counting will most probably become a relevant feature for the upcoming pattern filtering / ranking, this should be fixed.
Because the dynamic loop counting could add a significant overhead to the profiler, this analysis needs to be made optional.

TODO:

[ ] implementation
[ ] test
[ ] documentation (docs/Pattern_Detection/Patterns/Do-All.md + wherever we document the command line options)

Note: iterations for some loops can be determined statically. It would be a good idea to store this information and ignore such loops in the instrumentation. To get the correct results in the end, nesting of loops has to be considered and the total amount of iterations adjusted accordingly.


Node_modules not updating when altering code

Describe the bug
I'd like to help out with some of the bugs but i'm having a hard time getting the demo to update when changes to rimble_ui is made.
To Reproduce
Steps to reproduce the behavior:

yarn install in the root, and yarn install in the demo directory.
Make changes to library. For example: changing /src/ToastMessage/index.js
yarn start in the demo directory

Expected behavior
node_modules in the demo directory does not update to reflect the changes made
Rimble UI Version

0.10.0 (latest)

Desktop (please complete the following information):

OS: Ubuntu 18.04.3
Browser: chrome
Version: 77

Additional context
I have tried doing yarn install , yarn install --no-lockfile, and yarn update to get it to change but node_modules never updates

Hi @RhinocerosBomb - thanks for taking a look and wanting to help with bugs!
You can get the library to re-compile on change by running yarn start from the root rimble-ui directory. This will watch the /src directory for changes and recompile the library that is used in the demo app. So you will need 2 terminals, both running yarn start - one for the library and one for the react app.
We need to update our instructions for how to work on the codebase. I think that should be the outcome to close this issue.


Ripple effect on tab bar and Fix Some minor Issues in instagram screen

Fix :

Ripple Effect On Tabbar
Keyboard Option and set Max Lines In Instagram Screen

We will review and take action accordingly! Thanks for showing interest! @PratikFagadiya


working CASSANDRA_YAML_ envvars, force lowercase

This change makes CASSANDRA_YAML_* environment variables work, and enforces lowercase to the parameter name.

I signed it!

ok to test

test this please

/files/run.sh line 192:
    val=$(echo ${envname}|cut -d= -f 2)
               ^-- SC2086: Double quote to prevent globbing and word splitting.

In ./container/files/run.sh line 193:
    if grep $name $CASSANDRA_CFG;then
            ^-- SC2086: Double quote to prevent globbing and word splitting.

if you run make lint it will show you the errors.

if you run make lint it will show you the errors.
Sadly it seems the makefile does contain any 'lint' rules. Anyways I fixed what you reported.

woops I pushed some other changes I didn't intend to on this PR. (3.11.4 version bump + added cassandra.replace_address_first_boot as an optional jvm parameter), I can make a separate PR if you wish.

Yah I would rather have a version upgrade in a different PR.  Sorry for the inconvenience.


segmentation fault

I installed gcc-5.3.0，but there was still a segmentation fault

Please follow the Error report issue template.