use and api for programming quotes

Please install flake8 for linting so that it wont fail.

@hitblast I went with an API so we could add a bit more variety

Is this your API?

@hitblast
We cant do this

PR closed.


SetVariable handler needs null checks

If you create a setVariable with nulls currently it throws a NPE.
Same with GetVariable/GetVariables

Merged into develop


chore: ability to bundle a fedimintd package

Build with:
nix bundle .#fedimintd -o fedimintd.bundled

This binary will work on any Linux machine (allegedly).

Codecov Report
Patch and project coverage have no change.

Comparison is base (13c5ed4) 62.56% compared to head (fade132) 62.56%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##           master    #2036   +/-   ##
=======================================
  Coverage   62.56%   62.56%
=======================================
  Files         143      143
  Lines       28479    28479
=======================================
  Hits        17818    17818
  Misses      10661    10661

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


PictureBox Height and Width not work

@generalloki
Test code :
 private void button1_Click(object? sender, EventArgs e)
 {
     pictureBox1.Image = Image.FromStream(streamFromFile(@"d:\downloads\AlternetSoft.png"));
     pictureBox1.Height = (int)this.Height / 2;
     pictureBox1.Width = (int)this.Width / 2;
 }

  public FileStream streamFromFile(string filename)
  {
      FileStream stream = File.OpenRead(filename);
      return stream;
  }

PictureBox not resize

@generalloki
Fix doesn't full work.
Change size of picturebox works only if event "Resize" is present.
This code doesn't works :
 public Form1()
 {
     InitializeComponent();
}

private void loadBtn_Click(object sender, EventArgs e)
{
    pictureBox1.Size= new SizeD(400, 600);
}

This code works with event Resize for pictureBox1 is present :
 public Form1()
 {
     InitializeComponent();
     pictureBox1.Resize += PictureBox1_Resize;
}

private void loadBtn_Click(object sender, EventArgs e)
{
    pictureBox1.Size= new SizeD(400, 600);
}

private void PictureBox1_Resize(object sender, EventArgs e)
{
    pictureBox1.Size= new SizeD(400, 600);
}

It is incorrect to change size in the Resize event. Resize event is fired after size is changed.
The problem is in uixml. Please send the full project or at least uixml.

@generalloki
Here is the test project :
test1.zip

I have checked the project. It doesn't work that way. You need to add some container control like VerticalStackPanel and insert PictureBox and Buttons there.

Ok, thanks.


The original dataset should be saved as a mitigation for potential data corruption during processing

August 10 Update - See curation-api:

@ebezzi to review caching the original dataset as part of this epic per @atolopko-czi 's recommendation as a backup in cases of data corruption.
There is no Q3 work for the curation API at this time. If 1 is implemented, it can be exposed later in the API if needed.

Context
See wrangling for reference. If the technical requirement is implemented, then there are potential product uses.
When a dataset is submitted to the cellxgene portal, human-readable labels are applied for gene and ontology terms. If a dataset is later downloaded to be revised by a curator, these terms must be deleted before re-submitting the dataset to the portal; otherwise, validation fails.
One mitigation is to add a label remover to cellxgene-schema or to overwrite the labels if present. (This was included in 3.0.0).
Another approach is to allow curators to download the original dataset if available. Once the curation API is implemented, all submitted datasets are stored during ingestion in their original format.
Scenarios
Updating ontology versions
The pinned ontology versions in the cellxgene schema are updated. Many datasets in the corpus must be updated to reflect the change, including:

Addressing obsolete terms
Addressing changes to human readable names (re-labeling)
Updating cases where a less specific CL term was used until a new version of the CL ontology was supported

It would be more efficient if a curator could simply download the original dataset to make such changes.
(Temporary) differences in submission and download file formats
The second case is more theoretical. Imagine a case where cellxgene allows a curator to submit multimodal or multiomic datasets in a format such as mudata instead of anndata. (There's a desire to capture this data now rather than requiring the curators to return to the contributors later.) The ingestion process ignores unsupported modalities because end-to-end support is incomplete. This requires one format for ingestion, while using the current formats (.h5ad, .rds) for downloads of the RNA data.  In this case, the curator would require access to the original submission in its original format.

Dan's notes from Curators can download the original dataset submission.
Curators must be able to get download links for dataset assets for

all PUBLIC Datasets, and
those PRIVATE Datasets for which they are authorized

This should likely be bundled in as another asset, perhaps with an attribute label (file_name) of original, in the response for GET to /curation/collections/{collection_uuid}/asset. This is TBD and must be approved by the other members of the Curator API project.
Remember to refer to the API spec.

We can add a path in the submission pipeline to upload the original file to s3 before or after we finish processing it. Since we will be resubmitting all of the datasets during the migration, this will allow us to update all of the datasets with a copy of the original.

We need to decide how we will mark the asset as the original.
Options:

use filename and name it original.

Easy, doesn't require database migration.
Could be problematic if we want to save the original name of the file in the future.

add a new column to the asset table to indicate its original

requires migration and adding a new column to the database
uses more space on the database

add a new enum to the DatasetArtifactFileType to indicate it is the original file.

requires migration and adding an enum
uses less space than adding a new column to the database.

The reason we are moving forward with this is to be overly cautious. If our pipeline corrupts a dataset, we will have the original data to correct the mistake. Another benefit of this approach is allowing users to download the original dataset if they wish, without our added labels.


feat(satp-hermes-monitoring): integrating prometheus and grafana

Add grafana support for SATP-Hermes, that consumes our prometheus endpoints defined on #2855.
Provide a dockerfile to launch a grafana instance configured to consume the SATP-Hermes prometheus endpoints.
More: https://prometheus.io/docs/visualization/grafana/
@petermetz please assign it to me. @AndreAugusto11 and I are managing these tasks.
Related to #2855

@RafaelAPB I did the assignment just now to you but to share it @AndreAugusto11 also needs to comment on the issue otherwise I have no permission to assign!

Here! 😀

@AndreAugusto11 Thank you! Assigned! :-)


Sync phala for rmrk problem

Changes:

https://github.com/Phala-Network/phala-blockchain/pull/1086
Also bump spec version to 1203

LGTM


Add skip options to goals

Description
Similar in spirit to the skip goals of d-m-p, fabric8 should support options to skip certain goals:

resource (fabric8.skip.resource)
build (already supported via docker.skip.build, should have a correspondent fabric8.skip.build)
push (already supported via docker.skip.push, should have a correspondent fabric8.skip.push)
apply (fabric8.skip.apply)
deploy (fabric8.skip.deploy)

Nice starter task which should be implemented to guarantee consistency.

@rhuss @rohanKanojia @lordofthejars
https://github.com/fabric8io/fabric8-maven-plugin/blob/master/plugin/src/main/java/io/fabric8/maven/plugin/mojo/build/BuildMojo.java#L85
Every mojo has a skip option already..I don't follow why we need skip.build ..skip.push etc properties ?


Add support for customizing the prefix format

This PR proposes a way of adding support to customize the prefix format used by glog.
With it users can declare a callback (PrefixAttacherFunction(std::ostream&, const LogMessageInfo&)) that will receive the relevant log details for the line and a stream to write a corresponding prefix.
That callback is enabled by passing it to a new overloaded InitGoogleLogging().  (The callback cannot be changed once the instance is initialized.)
If no callback is specified, LogMessage will follow the same path as it  does now and write the current hardcoded format.
For an example use case, see the unit tests in src/logging_custom_prefix_unittest.cc.

This currently fails the CI step that builds with C++98, which does not provide std::function. The changes in this PR could be made conditional on the value of CXX_STANDARD, only providing the new functionality for C++11 and later.

@santigl great work, I really wanted that functionality as well.
For the whole C++11 thing - why not just use a function pointer instead of std::function<>? Since this is a global state you don't really need any stateful callback here and wouldn't it be noticably faster? And it would be C++98 compatible as well.
Also, why using std::string for log-specific data like severity (instead of enum/index), filename (instead of const char*)? There can be a noticeable performance penalty because of this.

Thanks for your input, @RippeR37!
An std::function gives more flexibility, For example, if you are implementing a wrapper around glog for a logging facility in a library, you could easily customize the callable with information that you gathered at runtime right before calling InitGoogleLogging().
Having said that, I have not done any performance testing (I was hoping to get reviews on the overall idea first). But, if benchmarks show that it's faster, I'm happy to add support/make it a raw pointer across all implementations.
+1 on the const char pointers. Since that is how they are stored internally, that will reduce the overhead. And the reason why I didn't add the enum value for the severity is that I felt that it was exposing an implementation detail from glog's internals.

An std::function gives more flexibility, For example, if you are implementing a wrapper around glog for a logging facility in a library, you could easily customize the callable with information that you gathered at runtime right before calling InitGoogleLogging().

Yes, but as far as I know, glog is "static"/global anyway (i.e. you can't have two instances at the same tme) so you can do the same by having global state and a free function which reads that state so you can do pretty much the same things with this normal function pointers as with std::function<> and not depend on C++11 to give this functionality.

Having said that, I have not done any performance testing (I was hoping to get reviews on the overall idea first). But, if benchmarks show that it's faster, I'm happy to add support/make it a raw pointer across all implementations.

I did a quick benchmark of overhead of calling function via std::function versus function pointer. In the field it might be bigger or smaller difference (and might depend on compiler/stdlib/switches/...) but in some cases I've seen a difference of function pointers being up to 7x faster then std::function.
https://quick-bench.com/q/5VlPI3I0QPW3-RT_Ywvc8g3ZT_E

+1 on the const char pointers. Since that is how they are stored internally, that will reduce the overhead. And the reason why I didn't add the enum value for the severity is that I felt that it was exposing an implementation detail from glog's internals.

IMHO it would still be better to not waste cpu cycles on enum=>string conversion. Exposing level as an int (0=INFO, 1=WARNING, 2=ERROR, 3=FATAL, verbose(N)=-N) or enum (+ something for verbose levels, e.g. old plain enum with predefined values only for named levels but also allowing for unnamed levels like verbose ones?) would be much better, especially for systems which can log hundreds of MBs or even GBs of data. It would be very bad to lose performance due to using this functionality.

I'm not convinced to have a feature to change logging format.
better to file issue first to explain the needs?

Ok, @ukai. I opened #578.

Personally, I would like to see a customizable log message format. Logging frameworks that I use in other languages can be customized. For an organization that creates software in multiple languages, it can be hugely beneficial (and perhaps a requirement) that messages are logged in a consistent way regardless of which language that software is written in.

@ukai There are many other logging libraries available in C++, all of which have the functionality to customise logging. This is a sorely missing feature of glog.

log4cpp allows for customising the log message
log4cplus allows specifying patterns for the log layout
log4cxx allows for specifying a PatternLayout
spdlog allows the user to customise the formatting
plog allows for a number of formatters
boost allows for log record formatting
Panetheios allows the user to specify a custom back-end to specify the log format.
BDE allows for customising the record format

Allowing the user to customise the format would make for a really portable, performant and feature rich logging library. What is the downside that concerns you with this feature?

@ukai Unless you are strongly opposed to this feature, I will go forward and merge it once it's ready.
@santigl It would be nice to have an example how to setup a custom prefix, preferably somewhere in README.rst.

If I read this correctly, even with -DWITH_CUSTOM_PREFIX=ON, behavior is not changed by default, when new variant of InitGoogleLogging function is not used, so I wonder why this feature is disabled by default or why there is even cmake option for this feature...

Since there are some reservations regardings this feature e.g. from @ukai, the compromise is to declare it experimental and allow future (potentially breaking) changes based on user comments. Meanwhile, users (and package maintainers) still have the ability to enable the option at anytime. Hence, I don't see any issue here.


Cortana not speaking BuildForm values, build using Bot Framework developed in C#

I am having a Bot Framework developed in C#, for placing an order. This Bot is also using Luis & LuisDialog. There is a Cortana Skill added to Cortana for placing an order.
I have Microsoft Cortana app installed in my iPhone
In Bot Framework(C#), I have OrderFormDialog, where it is asking question of ProductName, then Product Size & confirm order, which is not Speaking the text, when it is responded in Cortana Screen
Below is my code in Bot Framework(C#):
MessageController:
    [ResponseType(typeof(void))]
    public virtual async Task<HttpResponseMessage> Post([FromBody] Activity activity)
    {
        if (activity != null)
        {
            switch (activity.GetActivityType())
            {
                case ActivityTypes.Message:
                    activity.Speak = "Welcome to ordering system";
                    await Conversation.SendAsync(activity, MakeRoot);
                    break;
                case ActivityTypes.ConversationUpdate:
                case ActivityTypes.ContactRelationUpdate:
                case ActivityTypes.Typing:
                    Trace.TraceInformation($"Typing Activity Type : {activity.GetActivityType()}");
                    break;
                case ActivityTypes.DeleteUserData:
                default:
                    Trace.TraceError($"Unknown activity type ignored: {activity.GetActivityType()}");
                    break;
            }
        }
        return new HttpResponseMessage(System.Net.HttpStatusCode.Accepted);
    }

----------------------MyOrderDialog Class----------------
class MyOrderDialog : LuisDialog
{
private readonly BuildFormDelegate MakeOrderForm;
    internal MyOrderDialog(BuildFormDelegate<MyOrder> makeOrderForm)
    {
        this.MakeOrderForm = makeOrderForm;
    }

    [LuisIntent("order_hit")]
    public async Task ProcessOrderForm(IDialogContext context, LuisResult result)
    {
        var entities = result.Entities.ToList();

        var orderForm = new FormDialog<MyOrder>(new MyOrder(), this.MakeMyOrderForm, FormOptions.PromptInStart, entities);

        context.Call<MyOrder>(orderForm, MyOrderFormComplete);
    }

}
------ProductOptions-------
public enum ProductOptions { HandBag, Wallet, Bag, Carpet, Mobile, LEDTV};
------MyOrder Class--------
public class MyOrder
{
[Prompt("Which product would you like to have?")]
public ProductOptions? ProductName;
[Prompt("Please choose size?")]
public SizeOptions? Size;
[Prompt("Would you Confirm your Order?")]
public ConfirmOption? Confirm;
    internal static IForm<MyOrder> BuildOrderForm()
    {
        var builder = new FormBuilder<MyOrder>();

        ActiveDelegate<MyOrder> isConfirm = (order) => order.Confirm == ConfirmOption.Yes;

        return builder
        .Field(nameof(MyOrder.ProductName))
        .Field(nameof(MyOrder.Size))
        .Field(nameof(MyOrder.Confirm), isConfirm)
        .AddRemainingFields()
        .Confirm("Please Finalize Order, {ProductName} in {Size} ? {Confirm}", isConfirm)//, isConfirm
        .Message("Thanks for Order")
        .Build();
    }

Expected Behavior is : It should speak up the options available for ProductNames inside enum of ProductOption and then ProductSize as well
Please help.

I am facing same issue.
Please suggest

Thank you for opening an issue against the Bot Framework SDK v3. As part of the Bot Framework v4 release, we’ve moved all v3 work to a new repo located at https://github.com/microsoft/botbuilder-v3. We will continue to support and offer maintenance updates to v3 via this new repo.
From now on, https://github.com/microsoft/botbuilder repo will be used as hub, with pointers to all the different SDK languages, tools and samples repos.
As part of this restructuring, we are closing all tickets in this repo.
For defects or feature requests, please create a new issue in the new Bot Framework v3 repo found here:
https://github.com/microsoft/botbuilder-v3/issues
For Azure Bot Service Channel specific defects or feature requests (e.g. Facebook, Twilio, Teams, Slack, etc.), please create a new issue in the new Bot Framework Channel repo found here:
https://github.com/microsoft/botframework-services/issues
For product behavior, how-to, or general understanding questions, please use Stackoverflow.
https://stackoverflow.com/search?q=bot+framework
Thank you.
The Bot Framework Team


all items marked as read when not requested to

I just watched goread jump from ~950 unread items to 0 without me doing anything. I do have "mark read on scroll" enabled.

Thanks! When can I expect this to go live on goread.io?


Cupra formentor

Will this repo work with Formentor? I already installed it but I'm stuck on login screen.

Hi,
I got a formentor and for me it is working.
Remember to change the update interval to 600

Okey, right now i have problem with login. When i enter creditentials from app circle is spinning and nothing happens. Then in hass log there is too much login attempts.

Hi, I got a formentor and for me it is working. Remember to change the update interval to 600

Why we must change update interval to 600, default is 60?

ok, thanks for info

Model image url of cupra formentor is white. Can I change it or can it be fixed?

Where is this setting?

Hi, I got a formentor and for me it is working. Remember to change the update interval to 600

Why we must change update interval to 600, default is 60?

Because the VWGROUP limit requests to 1000 per day. With the default of 60 you will exceed this Limit and the values wont get updated any more

aaaaaa ok, now i know the reason why it stops working after few hours! Thank you

This code is no longer being maintained by me and requires contributors in order to fix issues.


Push fails with "Expected file at path: force-app\main\core\ReadMe.md-meta.xml" when ReadMe.md files are added under force-app directory

Summary
After updating cli version to 7.76.1 running force:source:push fails with the following error -
ERROR running force:source:push:  Expected file at path: C:\Users\pk1772\Documents\Dev\force-app\main\core\ReadMe.md-meta.xml
Steps To Reproduce:

Add "**/ReadMe.*" to .forceignore file.
Add a ReadMe.md file in the under force-app\ directory
Run sfdx force:source:push to push the changes

Expected result
It should not treat ReadMe.md file as custom metadata and it should be ignored as defined in .forceignore
Actual result
sfdx force:source:push  fails with:
ERROR running force:source:push:  Expected file at path: C:\Users\pk1772\Documents\Dev\force-app\main\core\ReadMe.md-meta.xml
Additional information
SFDX CLI Version

sfdx-cli/7.76.1-f301d5641f win32-x64 node-v12.18.3

SFDX plugin Version

@oclif/plugin-autocomplete 0.1.5 (core)
@oclif/plugin-commands 1.3.0 (core)
@oclif/plugin-help 3.2.0 (core)
@oclif/plugin-not-found 1.2.4 (core)
@oclif/plugin-plugins 1.9.1 (core)
@oclif/plugin-update 1.3.10 (core)
@oclif/plugin-warn-if-update-available 1.7.0 (core)
@oclif/plugin-which 1.0.3 (core)
@salesforce/sfdx-trust 3.4.3 (core)
alias 1.1.2 (core)
analytics 1.12.1 (core)
config 1.1.9 (core)
generator 1.1.3 (core)
salesforcedx 50.1.1 (core)
├─ custom-metadata 1.0.10 (core)
├─ templates 50.1.0 (core)
├─ salesforce-alm 50.1.1 (core)
├─ @salesforce/sfdx-plugin-lwc-test 0.1.7 (core)
└─ apex 0.1.1 (core)
sfdx-cli 7.76.1 (core)

OS and version

@pk1772 - I tried to reproduce this on windows with the same plugin versions and it ignored the ReadMe.md file.  That said, there are others reporting problems with forceignore behavior (see #684 and #690) and we are addressing them.  The fixes will go into the next release candidate update either today or tomorrow.
One thing you can try to debug this is to modify the installed files to find out why it's not being ignored.  Depending on how you installed the CLI the source is in different locations.  For a default installer installation, the files will be within a path like, C:\Users\pk1772\AppData\local\sfdx and the file you're looking for is forceIgnore.js.  I would add debugging to ensure the proper forceignore file is being used and the filepath passed to denies/accepts is correct.

@pk1772 - I left some details in the other issues about how this is happening.  I'm going to close this one but please reference the others for those details.  Thanks for reporting!

@shetzel I'm encountering the same issue, here is the toolset inforamtion
VERSION
sfdx-cli/7.125.0 win32-x64 node-v16.13.0
@salesforce/analytics 1.0.1
@salesforce/sfdx-scanner 2.12.0
isvte-sfdx-plugin 1.1.12


WIP Setup pact

What does this pull request do?
Set up pact with a dummy test.
What is the intent behind these changes?
Required.

This is replaced by #12.


Test the performance of retrieving data from the Mirror vs the Consensus nodes

In relation to - https://github.com/hashgraph/hedera-sdk-cpp/issues/637 - we want to test if there is any significant difference between retrieving token balance data from the Mirror node vs retrieving the same data from the Consensus node.

These are the measured times for an account balance query from Mirror and Consensus nodes. The measurement is SDK agnostic it should produce the same results in all the SDKs. The measurement was done on a REST API call for the Mirror Node. For the Consensus Node it is simply a GRPC call to the appropriate endpoint.


Add error for empty instance list for tenant API

Currently, we return an empty list when no instances are tagged with the particular tag corresponding to a tenant. I have changed this to throw an exception.

Codecov Report

Merging #4969 into master will decrease coverage by 21.03%.
The diff coverage is 0%.

@@              Coverage Diff              @@
##             master    #4969       +/-   ##
=============================================
- Coverage      57.1%   36.06%   -21.04%
=============================================
  Files          1175     1175
  Lines         62413    62418        +5
  Branches       9179     9182        +3
=============================================
- Hits          35638    22512    -13126
- Misses        24117    37907    +13790
+ Partials       2658     1999      -659

Impacted Files
Coverage Δ
Complexity Δ

...ller/api/resources/PinotTenantRestletResource.java
0% <0%> (-34.54%)
0 <0> (ø)

.../org/apache/pinot/common/http/MultiGetRequest.java
0% <0%> (-100%)
0% <0%> (ø)

...che/pinot/common/restlet/resources/TablesList.java
0% <0%> (-100%)
0% <0%> (ø)

...che/pinot/pql/parsers/pql2/ast/OptionsAstNode.java
0% <0%> (-100%)
0% <0%> (ø)

...ot/core/query/scheduler/TableBasedGroupMapper.java
0% <0%> (-100%)
0% <0%> (ø)

...t/core/segment/index/readers/OnHeapDictionary.java
0% <0%> (-100%)
0% <0%> (ø)

...t/core/query/scheduler/OutOfCapacityException.java
0% <0%> (-100%)
0% <0%> (ø)

...ot/core/query/scheduler/SchedulerQueryContext.java
0% <0%> (-100%)
0% <0%> (ø)

...pinot/common/exception/TableNotFoundException.java
0% <0%> (-100%)
0% <0%> (ø)

...aggregation/function/SumMVAggregationFunction.java
0% <0%> (-100%)
0% <0%> (ø)

... and 587 more

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 5503d4d...4589677. Read the comment docs.


New rule - Warn if protocol is not omitted from embedded resources ('http://' or 'https://' rather than '//')

Incorrect example:
<link href="https://fonts.googleapis.com/css?family=Lato:400,300,700italic" rel="stylesheet">

This should ideally be:
<link href="//fonts.googleapis.com/css?family=Lato:400,300,700italic" rel="stylesheet">

Incorrect example:
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>

This should ideally be:
<script src="//code.jquery.com/jquery-1.9.1.min.js"></script>

Google's HTML/CSS style guide has a similar thing: https://google.github.io/styleguide/htmlcssguide.xml?showone=Protocol#Protocol
In it, they explain:

Omitting the protocol—which makes the URL relative—prevents mixed content issues and results in minor file size savings.
Omit the protocol portion (http:, https:) from URLs pointing to images and other media files, style sheets, and scripts unless the respective files are not available over both protocols.

Agree.

Fixed in https://github.com/ecomfe/htmlcs/pull/90

Probably this needs to be closed.


How to set the default file url?

When editing an image record that has already been uploaded, I do not know how to set the default image url.
(Sorry, my English is very poor)

Hi @wangooooooo I'm not sure what you mean with "default image url", can you elaborate?

When the user edits an object that contains a picture,I would like to show them the recently uploaded picture and give them the option to delete that one and upload another.

@wangooooooo you can use the files array to set the currently uploaded files. See the setting initial files entry in the docs.

Thanks for being so responsive.


Improve executor performance

This PR applies two minor improvements:

(1) Avoid to repeating some iterations over the same colections.
Doesn't reduce time complexity, but it reduces the total amount of "operations" done.
(2) Cache the created wait set and resize it.

The second item seems to be a good improvement as allocation/deallocation is slow.
I have still some tests issues that I'm trying to figure out.
I have done some profiling, though nothing great (I need to create a demo with more entities to get more interesting results)
To profile:

Download visualvm, it can be run using ./visualvm_212/bin/visualvm after extracting the archive.
Run the listener and publisher demos:

ros2 run rcljava_examples subscriber_lambda &
ros2 run rcljava_examples publisher_lambda &

Profile the subscriber_lambda

Pick the org.ros2.rcljava.examples.subscriber.SubscriberLambda (pid <pid>) entry in Local.
Go to the profiler tab and add org.ros2.rcljava.executors.** to the "profile classes:" list.
Start running "CPU" profiling.

I have compared between this branch and main:

In my machine, (1) only improved performance marginally (could've been measurement error).
It's reasonable because I'm only testing with one subscription available.
(2) gives a more noticeable improvement.
waitForWork() went from taking 50% of the time to 37%.
We still need to test in a more realistic application to confirm.

Note: To make the measurements stable, I have disabled frequently scaling in my machine temporally.
See for example here for details.

I have still some tests issues that I'm trying to figure out.

I knew I was doing something wrong there when I saw the test failures, but I couldn't find the problem :joy:.
Fixed it in https://github.com/osrf/ros2_java/pull/87/commits/80ff53dba799f239fef0a5f546fb0b5f8a24656a.


Restore Didn't Restore Status Page

I've been testing Uptime Kuma for a few weeks now on my PC and now I'm moving it to one of our docker hosts.
When restoring everything came back but no status page. Is this a bug or by design?

this should be part of the integrated backup. I second this feature request, if restoring volume manually is the way to restore then this feature shouldn't exist at all. but yet it does, and its used and it fails to restore the status page.
I would actually like to see this feature implemented along side an option to execute the backup from a cli command or some other automated way that could be implemented in your own docker compose file.
The use case is that as a user I do not want to maintain a persistent volume for this service and additionally I would like the ability to deploy uptime kuma to different locations / regions to montior from those locations. If the status page would restore from my json backup, and i had a way to import the backup as part of my deployment, then i could just include a json file of what I want to monitor as part of my deployment, deploy it anywhere and not need to worry about a persisten volume.

You don't actually need a persistent volume to backup the kuma.db file. The /app/data directory is available in the container whether you have a persistent volume or not. A persistent volume is just convenient when you upgrade UK. You can actually set a cron job within the container itself to scp out the kuma.db file to some other machine.

Im not posting support for this feature because i need help understanding how to copy a volume. please read my use case. this is specifically requested to make it easy to deploy the service at different endpoints / regions.
Having a JSON source file that is plain text is easily configured with ansible or tarraform. For example when you deploy to US-WEST-2 vs US-WEST-1 I want to update the title on the status page and additionally want the alerts that come into discord or slack to say which region failed. if I go down the route of restoring the volume i have to manually set all of this.
Additionally a persistent volume is absolutely required if you run in an HA environment like k3s, k8 or ECS in AWS. if your health check fails for any reason, node goes down, your HA system is going to automatically relaunch the service. If you do not have a persistent volume the way this project works right now everything will just disappear when it is launched. If this feature is implemented, then I can make the restore part of the launch config and it will not require a persistent volume.

Sorry, a little confused. You mentioned in your post 3 days ago, '"The use case is that as a user I do not want to maintain a persistent volume for this service" but then in your latest post you say "Additionally a persistent volume is absolutely required if you run in an HA environment". So, do you want to use a PV or not?
Also from your latest post:

If you do not have a persistent volume the way this project works right now everything will just disappear when it is launched.

But UK does use PV. The first step of the installation instructions for the docker installation is to make the volume. the docker start command subsequently is to start with the PV.
docker volume create uptime-kuma
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1

I apologize if I don't understand and I've got things wrong.

@louislam @markdesilva Thank for you help. Any links on this?

Hi @aaronstuder, apologies, I missed this post.
https://youtu.be/r_A5NKkAqZM
This video goes through a lot on UK, but there is a portion about using the back up feature where host says to just back up the docker persistent volume for that container.
If you want a one liner in your crontab, you could use this:
0 0 * * * cp /var/lib/docker/volumes/uptime-kuma/_data/kuma.db /full/path/to/backup/directory/kuma.db_`date +"%d-%m-%Y_%H%Mhrs"`

This will make a backup copy of the kuma.db with the date and time appended in the directory where you want to store the backups.
Or if you have passwordless ssh set up between a remote machine and UK server then use rsync:
0 0 * * * /usr/bin/rsync -avzPq root@<UK server>:/var/lib/docker/volumes/uptime-kuma/_data/kuma.db /full/path/to/backup/directory/kuma.db_`date +"%d-%m-%Y_%H%Mhrs"`

You can remove backups from the directory older than 7 days using this in the crontab as well:
0 0 * * * /usr/bin/find /full/path/to/backup/directory/ -type f -atime +7 -name "kuma.db_*hrs"
Again, replace /full/path/to/backup/directory/ with the full path of where you want to store your backups.
Hope this helps.

@markdesilva
⚠ Don't just backup the kuma.db. The sqlite db could be corrupted in this way.
Backup the whole data directory is suggested.

@markdesilva
⚠ Don't just backup the kuma.db. The sqlite db could be corrupted in this way.
Backup the whole data directory is suggested.

Oh ok!
In that case, I'll modify the crontab as such:
0 0 * * * cp -R /var/lib/docker/volumes/uptime-kuma/ /full/path/to/backup/directory/uptime-kuma_`date +"%d-%m-%Y_%H%Mhrs"`

And if using rsync:
0 0 * * * /usr/bin/rsync -avzPq root@<UK server>:/var/lib/docker/volumes/uptime-kuma /full/path/to/backup/directory/uptime-kuma_`date +"%d-%m-%Y_%H%Mhrs"`

And to remove backups over 7 days old:
0 0 * * * /usr/bin/find /full/path/to/backup/directory/ -type d -atime +7 -name "uptime-kuma_*hrs" -exec rm -rf {} \;

Essentially if you want to restore from the backup do:
cd /var/lib/docker/volumes
docker stop uptime-kuma
mv uptime-kuma uptime-kuma.bak
cp -R  /full/path/to/backup/directory/uptime-kuma-<date and time of backup you want to restore> uptime-kuma
docker start uptime-kuma

@markdesilva
i think this feature request has become a mix of instructions on how to copy a volume properly and a feature request to make the status page part of the JSON clear text backup file.
I am only speaking to the feature request and my comments are advocating for this feature and describing why this is not fully covered by backing up a volume. if you are trying to backup your volume, then my request isnt exactly what you are trying to do though it would be an easier way for you to backup if this feature were accepted by the authors.
to make this work i would also need an automated way to restore created or documented from json backup file as well. Then in theory i could pull this project, build the container with a custom docker file which initiated a restore after the container came up. I could also modify the clear text json as part of my build process. I could then push the build to ECR and run in fargate in different AWS regions with minor customizations such as the alert name and test titles, urls,etc.
since the alerts can all go to slack or discord or wherever a consolidated database as being discussed in some other feature requests is not required. This is a easier way of turning this into a monitoring system from different regions. you would just have a different fqdm for each region and alerts would all be consolidated into your notify endpoint with custom messages.

Hi @jasonwitty, yes I understand what you are trying to have put in place, just that your earlier posts were contradictory.
In any case, I did try to look at a means to convert the SQLite db to a json file from the command line, but it requires several steps and isn’t straightforward. It’s a far way off from what you actually want but I thought I’d try anyway. However, in light of what @louislam mentioned of not just backing up the kuma.db I put that on hold.

thank you

duplicate of #555?


Discord.Discord version 1.0.9002

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?

[x] Does your manifest conform to the 1.0 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Don't submit already existing packages.


Better handling of user interrupts (fixes #299)

@soenkehahn thanks for the review. I am away from the computer right now, I will do a rebase later.

I will do a rebase later.

Done.

@sol: I think the PR makes sense, so I'll merge it. I'm a bit confused by the title: before ctrl+c was also delegated to the child process. Did you experience a case where it wasn't?

I'm a bit confused by the title: before ctrl+c was also delegated to the child process. Did you experience a case where it wasn't?

@soenkehahn see #299.
Also note that before this PR, any process that would call garn run could not detect when the subprocess was canceled due to ctrl-c, which can be a problem in some situations.


An error occurred while installing flask-wtf! Will try again.

pipenv install --skip-lock
Installing dependencies from Pipfile…
An error occurred while installing pandas==0.23.3! Will try again.
An error occurred while installing requests==2.18.4! Will try again.
An error occurred while installing tzlocal==1.5.1! Will try again.
An error occurred while installing tushare! Will try again.
An error occurred while installing flask-wtf! Will try again.

Please provide more detailed information and maybe pipenv --support

No new updates, close this now, feel free to reopen when you get more information about the bug.


Fix for #163, take 2.

Compared to my previous PR (#171):

no refactoring of vcr/serializers/compat.py -- turns out to be unnecessary
more extensive tests

I'd really like to be able to see the body in the cassette file where possible.

Eg utf8 bodies display as possible text in the yaml file.

I'd really like to be able to see the body in the cassette file where possible.

So would I. But this PR is focused on fixing a bug with accepting existing YAML cassettes. I need this fix so I can continue porting code to Python 3. I cannot use VCR for a Python 2/3 codebase without this fix (or without a gross workaround).
So can we please get this fix in, and then see about nicer-looking request bodies in YAML cassette files?

Alternately, please let me know if my fix looks good. Worst case, I'll extract the patch and apply it to our RPM of VCRpy.

This looks good to me. @kevin1024 @graingert thoughts?


Refactor peerDependencies to use initialize method from DrupalJsonApi…

Following up on #73 ..

-.-" sorry about the commit message. Its actually supposed to mean Refactor getDrupalJsonApiParams ...

Thanks @d34dman, appreciate the followup.
Will test tomorrow.


Always set mac address to sriov vf

What type of this PR
Bug fixes
Which issue(s) this PR fixes:
Fixes #1519

Thanks! Please format the code using go fmt ./....


fixing double touch on two different images

As https://github.com/davemorrissey/subsampling-scale-image-view/pull/119 but now the feature is disabled only if two images are clicked at the same time (so it should work fine with viewpagers if there is only one image per page).

This problem is caused by a bug in Android triggered by using the support library and the snackbar in your app and by using two views on the page - a very rare combination. The bug isn't caused by this view alone, it's been reported to Google by other developers.
This change carries a risk of breaking view paging if an expected touch event is missed due to the activity ending or a screen orientation change, so I'd rather not merge it. I think the best option for you is to use your own fork or try extending the class to override touch handling.
I will try to reproduce and investigate this problem to see if there's a safer workaround.

Actually I have no snackbar. I've not tried, but I think that to reproduce the problem you just have to put two images in the same layout, put one finger to each view and simply move them keeping touching the screen.
The solution I proposed will disable the feature only when you have 2 images touched at the same time. So it will work as it works right now, except when you touch 2 images at once. You will have a bug only if you touch 2 images IN a viewpager with this fix --> almost never and it is safe.
If you don't want to merge it ok, but I think it's pretty safe right now.

Ah sorry, it was the Snackbar in some of the other bug reports, but the DrawerLayout in yours. I would like to find a workaround for this problem but I spent a lot of time getting touch handling to work properly for view pagers and I don't want to take any risks to support a rare case like this. I'm not keen on the use of statics for communication between views, not least because it is possible for the ACTION_UP event to be missed, which would corrupt the view until the app is force stopped. I hope there's a better solution, and I'll do some investigation when I can.

Ok. I'll let you know if I came up with a better solution then, thanks :)


[BUG] Version 1.5.1 cannot be deployed with ArgoCD

Describe the bug (🐛 if you encounter this issue)
Longhorn deployment via Argo CD fails, the syncing hangs stuck in the pre-upgrade job.

Error creating: pods "longhorn-pre-upgrade-" is forbidden: error looking up service account longhorn-system/longhorn-service-account: serviceaccount "longhorn-service-account" not found

To Reproduce
Create a longhorn application in Argo CD and try to sync Longhorn.
Expected behavior
Longhorn should be deployable by ArgoCD
Environment

Longhorn version: 1.5.1
Installation method: ArgoCD with Helm
Underlying Infrastructure (e.g. on AWS/GCE, EKS/GKE, VMWare/KVM, Baremetal): Baremetal

Additional context
Trying to install Longhorn using Helm directly and not with Argo CD works, which means the nodes are properly configured.
Argo CD application:
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: longhorn
  namespace: argocd
spec:
  project: anchor
  sources:
    - chart: longhorn
      repoURL: https://charts.longhorn.io
      targetRevision: 1.5.1
      helm:
        valuesObject: {{ lookup('template', 'applications/longhorn/values.yaml') | from_yaml }}
  destination:
    server: https://kubernetes.default.svc
    namespace: longhorn-system
  syncPolicy:
    automated: {}
    syncOptions:
      - CreateNamespace=true

values.yaml:
Notice: Trying also without any custom values also did not work.
persistence:
  defaultClass: true
  defaultFsType: ext4
  defaultClassReplicaCount: 2
  defaultDataLocality: disabled
  reclaimPolicy: Retain
ingress:
  enabled: true
  ingressClassName: nginx
  host: "longhorn.{{ domain_name }}"

Seems related to https://github.com/longhorn/longhorn/issues/6623
I will make sure and close it if it is really the same


[Dev support]: Failed to start sso sign in flow in action based message extension

Please be sure to check the Discussions Q&A section before filing a new question.
How to add SSO to action based message extension, TeamsSsoAuthentication failed to sing user in with error (composeExtension/fetchTask)

Incoming activity is not a valid activity to initiate authentication flow.

Following is my code:
    IConfidentialClientApplication msal= ConfidentialClientApplicationBuilder.Create(config.AppId)
                                        .WithClientSecret(config.AppPassword)
                                        .WithTenantId(config.AppTenantId)
                                        .WithLegacyCacheCompatibility(false)
                                        .Build();

    string signInLink = $"{baseUrl}/auth-start.html";
    AuthenticationOptions<AppState> options = new();
    options.AddAuthentication("graph", new TeamsSsoSettings(new string[] { "User.Read" }, signInLink, msal));

    var appBuilder = new ApplicationBuilder<AppState>()
        .WithAIOptions(new(planner))
        .WithStorage(storage)
        .WithLoggerFactory(loggerFactory)
        .WithTurnStateFactory(() => new AppState())
        .WithAuthentication(adapter, options);

    Application<AppState> app = appBuilder.Build();
    app.MessageExtensions.OnFetchTask("myaction", fetchTaskHandler);

When click action to fetch task, cannot start sign in flow, and an AuthException can be found when debug in Microsoft.Teams.AI.Application. If I tried to send an OauthCard or SignInLink in  fetchTaskHandler, it seems that is incorrect because they cannot be include in task module.
How to trigger SSO sign in and consent flow when task fetch?

following this general example https://github.com/microsoft/teams-ai/blob/main/dotnet/samples/06.auth.teamsSSO.messageExtension/Program.cs#L162, you should be able to call app.Authentication.SignIn from your handler which would send the card for you.


Missing Footnote in Blog Post

In the “Inverse Document Frequency” section and the fourth footnote you can see the text [^moretfidf].

🙏  Thanks for letting me know! Fixed.


Create schemafile.sql

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

hello thanks for your submission.
If you'd like to propose a new clickhouse based, docker compose recipe, please open a single PR including:

the docker-compose.yaml
relevant config files
updates to all relevant README.md files

you can find an example of the above here.
The PR will need to follow the existing folder(s) structure and add a description of the intended changes.
I will close this PR for the time being.
Many thanks!


fix item slots in config

This PR fixes the item slots for the buttons and change the names of some fields for the options for names that are closer to the one used in the game's UI.

personally prefer keeping the old variable names because it matches what the inlined functions call them in debug rom, but there isn't a hard rule set so maybe others can give input

I feel the names for the calibration pointers are more meaningful, but for the rest of them it's not necessary and I can remove those change. The main thing was the item slot fix.

Are you sure that your names for the calibration values are correct? I wouldn't normally expect X/Y to have different types, but one is u16, and one is u8.

@magcius When I was calibrating the pointer while looking at the data, one was controlling the horizontal calibration, the other was for the vertical. And yes, The vertical value has a lot less resolution than the horizontal one.

I would prefer to keep the game's names for now

where did these name came from? I don't see them in the map file.

they're from the debug rom. such as dSv_player_config_c::setCalibrateDist. there's a lot of these types of functions that were inlined in retail

All the new code that was merged recently made a mess in this PR. So I will close this PR and open an other one with the item slot fix only.


Evaluation Script

Thanks for this amazing repo. Could you please provide:

an evaluation script of two images if they are the same person or not
an evaluation script that takes an image as an input and search for the top similar persons in multiple images directories

The video_test.py is updated to image_video_test.py, which can be used teting both images and video inputs.
Comparing imagespython image_video_test.py --images test1.jpg test2.jpg test3.jpg
# >>>> image_path: test1.jpg, faces count: 1
# >>>> image_path: test2.jpg, faces count: 1
# >>>> image_path: test3.jpg, faces count: 1
# cosine_similarities: [[1.0000001 1.0000001 1.0000001]
#  [1.0000001 1.0000001 1.0000001]
#  [1.0000001 1.0000001 1.0000001]]

Search in known userspython image_video_test.py --images test.jpg --known_users test
# >>>> image_classes info:
# 0  10
# 1  10
# ...
# recognition_similarities: [0.47837412]
# recognition_classes: ['9']
# bbs: [[176.56265   54.588932 272.8746   181.40137 ]]
# ccs: [0.8820559]
# >>>> Saving result to: test_recognition_result.jpg

Video testpython image_video_test.py --known_users test --video_source 0

May import or modify it for your own usage.

The video_test.py is updated to image_video_test.py, which can be used testing either images or video input.
Comparing imagespython image_video_test.py --images test1.jpg test2.jpg test3.jpg
# >>>> image_path: test1.jpg, faces count: 1
# >>>> image_path: test2.jpg, faces count: 1
# >>>> image_path: test3.jpg, faces count: 1
# cosine_similarities: [[1.0000001 1.0000001 1.0000001]
#  [1.0000001 1.0000001 1.0000001]
#  [1.0000001 1.0000001 1.0000001]]

Search in known userspython image_video_test.py --images test.jpg --known_users test
# >>>> image_classes info:
# 0  10
# 1  10
# ...
# recognition_similarities: [0.47837412]
# recognition_classes: ['9']
# bbs: [[176.56265   54.588932 272.8746   181.40137 ]]
# ccs: [0.8820559]
# >>>> Saving result to: test_recognition_result.jpg

Video testpython image_video_test.py --known_users test --video_source 0

May import or modify it for your own usage.

Noted with thanks,
I will check and get back to you if something happened.
Thanks for your support and time.


Renamed agla dekh bhai to aur bata bhai

I am thinking that "aur bata bhai" sounds more bhai-lang-ish than "agla dekh bhai".  Reference to (continuing) / never-ending phone conversations with one's bhai.

I will suggest to rename this to laga reh bhai because this exactly resembles to continue in other programming languages' constructs.

How do you guys feel about aage badh bhai ?

aur bata bhai seems like a prompt for input agla dekh bhai or laga rah bhai seems more appropriate


dart-sass: 1.62.1 -> 1.63.3

Description of changes
The cli now includes sass-embeded as the subcommnad: sass --embedded.
Changelog: https://github.com/sass/dart-sass/blob/main/CHANGELOG.md#1630
Depends on: https://github.com/NixOS/nixpkgs/pull/236557

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

@ofborg build dart-sass dart-sass.passthru.tests

Result of nixpkgs-review pr 236572 run on aarch64-darwin 1

1 package built:

dart-sass


Oracle rpcs should allow weightage value from 0 to 250

What would you like to be added:
Improve existing test units for AppointOracle and UpdateOracle rpcs to allow weightage value from 0 to 250
Why is this needed:
Weightage is no longer limited from 1 to 100 after the eunospaya hard fork
https://github.com/DeFiCh/jellyfish/pull/478

Do you mean 0 - 255?
/triage accepted
/area jellyfish-api-core
/priority urgent-now for 1.8.x, target https://github.com/DeFiCh/jellyfish/pull/478
/assign @jingyi2811

I think I heard 250. I were wrong.

I refactor the following text

APPLE to AAPL
TESLA to TSLA
oracleid to oracleId

and park them in this PR too.

/close via #515


Creating a static library on Kotlin Native crashes with "have the same architectures (arm64) and can't be in the same fat output file"

project:
https://github.com/realm/realm-kotlin-samples/tree/main/Intro
I want to package it as a static library instead of dynamic, so I add the following in build.gradle.kts
targets.withType<org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTarget> {
        // use static
        binaries.withType<org.jetbrains.kotlin.gradle.plugin.mpp.Framework> {
            isStatic = true
        }
    }

task:
./gradlew assemble
failed：

folder：

I guess that the executable file generated in the iosX64 folder contains the arm64 architecture, so the execution of linkDebugFrameworkIosFat fails.
The error is as follows
 have the same architectures (arm64) and can't be in the same fat output file
Please reply as soon as possible, I need your help！

Is there any update? @cmelchior

Is there any update now? 😊 @cmelchior

Looking a bit into this. Have you tried setting this setting in XCode? https://stackoverflow.com/questions/64022291/ios-14-lipo-error-while-creating-library-for-both-device-and-simulator

Looking a bit into this. I suspect that changing that setting the way you do, renders something else in the build pipeline invalid. According to https://kotlinlang.org/docs/multiplatform-build-native-binaries.html#declare-binaries the way to define static libraries is slightly different.
You need instead to set kotlin.<target>.binaries.staticLib()
I modified our Intro example like this:
    listOf(
        iosX64(),
        iosArm64(),
        iosSimulatorArm64()
    ).forEach {
        it.binaries.apply {
            framework {
                baseName = "shared"
            }
            staticLib()
        }
    }

Which seems to work:

First of all thanks for your reply. I changing that setting according to your suggestion. Just add staticLib(),run ./gradlew assemble, then I found the following problem.
See the static product path is as follows
Intro/shared/build/bin/iosX64/debugStatic/libshared.a  is architecture: x86_64 arm64 i386
Intro/shared/build/bin/iosArm64/debugStatic/libshared.a is architecture: arm64

Why does the iosX64 target include arm64 architecture？
Then I modified your Intro example like this:
    listOf(
        iosX64(),
        iosArm64(),
        iosSimulatorArm64()
    ).forEach {
        it.binaries.apply {
            framework {
                baseName = "shared"
                isStatic = true
            }
        }
    }

run ./gradlew assemble, path as below
Intro/shared/build/bin/iosArm64/debugFramework/shared.framework/shared is architecture: arm64
Intro/shared/build/bin/iosX64/debugFramework/shared.framework/shared are: x86_64 arm64 i386

The iosX64 target still includes arm64 architecture.
Before my project dependence realm, there was only x86_64 architecture under the iosX64 target.
I don't have any idea about this problem now, please help me. @cmelchior

@DeftMKJ I was able to reproduce your issue, a PR fixing this is in review https://github.com/realm/realm-kotlin/pull/737

Hi @DeftMKJ this is fixed now in 0.10.1 could you try, please.

Great! It works fine. 👏 👏 👏


Resolved several valid sonar complaints and enabled AsyncTexture2D on Markers.  Also implemented Equals on AsyncTexture2D.

Resolves the following SonarCloud issues:
https://sonarcloud.io/project/issues?branch=dev&id=blish-hud_Blish-HUD&open=AWvSLOxR7BGPHuO3rJh-&resolved=false&types=BUG
https://sonarcloud.io/project/issues?branch=dev&id=blish-hud_Blish-HUD&open=AWvSLOrm7BGPHuO3rJgs&resolved=false&types=BUG
https://sonarcloud.io/project/issues?branch=dev&id=blish-hud_Blish-HUD&open=AWvSLOfV7BGPHuO3rJdX&resolved=false&types=BUG
https://sonarcloud.io/project/issues?branch=dev&id=blish-hud_Blish-HUD&open=AWvSLOfV7BGPHuO3rJdd&resolved=false&types=BUG
https://sonarcloud.io/project/issues?branch=dev&id=blish-hud_Blish-HUD&open=AWvSLOfV7BGPHuO3rJda&resolved=false&types=BUG
https://sonarcloud.io/project/issues?branch=dev&id=blish-hud_Blish-HUD&open=AWvSLOfU7BGPHuO3rJdW&resolved=false&types=BUG
The changes to move the Input types into a proper namespace is a change that breaks any module with a custom control.  Here is the PR for the Community-Module-Pack: https://github.com/blish-hud/Community-Module-Pack/pull/3

unfortunately, you sent the same link 6 times and it shows 0 entries for me.
If you want us to see something, use the permanent link, highlighted in light blue:

unfortunately, you sent the same link 6 times and it shows 0 entries for me.
If you want us to see something, use the permanent link, highlighted in light blue:

The links are in fact different.  They may no longer show as I marked them as "Resolved in next release."  I think I should have waited to mark them until the PR went through, but that doesn't matter too much now.
I will try the permalink option next time, though.

i found out that you can just remove the &resolved=false&types=BUG and they will show up again


Running cargo semver-checks with no other arguments should default to checking

Describe your use case
I ran cargo semver-checks and it said i needed to pick a command or argument.
Describe the solution you'd like
Instead it should "do the right thing" and just do the checks if no command or argument is provided.
Alternatives, if applicable
No response
Additional Context
No response

100% agreed. Originally, I thought we might have multiple subcommands, but that turned out to not be the case and I've even considered deprecating check-release as a subcommand instead of just running it by default. I'm still not sure if we should go that far, but certainly running check-release by default would be an improvement.
If you'd be open to putting together a PR for this, I'd be thrilled to merge it.

Related to: https://github.com/obi1kenobi/cargo-semver-checks/issues/86#issuecomment-1374672344

@obi1kenobi I can send a PR changing the behaviour to run check-release by default.

Sounds great, thank you!

Fixed in #459 and shipped already, just forgot to close this issue!


Suggestion: Make this project a bigger priority for the Angular team

Hey guys,
At ng-conf, the router was positioned as the main bridge between Angular 1 and Angular 2. That makes it a vital component for a whole whole lot people. I was surprised to see the project is not as far along as described-- there's not any way at all to use it with NG2 yet, and moreover it seems like a lot of stuff is incomplete. I discovered while implementing support for directives just how many hiccups there will be in setting this up to work well with NG 1 source code. From the outside, it seems like most of the Angular team is focused on ongoing speed improvements in NG2--- and I get that NG2 is the new shiny where you can implement a bunch of great ideas for the web of tomorrow -- but meanwhile it seems like @btford is the only one left on this project, which for the rest of the world is by far the most important thing so we can start prepping our NG1 projects for NG2. There's a line of pull requests and issues, and not a lot of engagement from whomever are the core contributors. Anyway, just trying to offer some feedback on the optics from the outside-- this isn't meant as criticism as at all -- thank you all for all that you do on Angular and I know yall are working incredibly hard.

+1, I completely agree with this statement. From my point of view the router is an essential part to play around with ng2 (and so to be able to give feedback). Many people out there would like to know how the new router is integrated in ng2 (and to prep ng1 apps )
There is a "progress" document ( https://docs.google.com/document/d/1-DBXTHaeec6XH5qx2tKVrgrjiILy76_lSrjgJv95RJ4/edit#) where the last entry is for March 2nd !!
Core contributors are busy in many areas but not in routing (other than finding a new name for the router)
I think the (urgently waiting) community would really appreciate any progress.

Thanks for the feedback!
Much of the work in the compiler has been to clear the way for routing in Angular 2. See b69f3043e031a4a7c08259ef5c2ec034875fd6d2, 7488456d6819b230b294971b4bed250b95373142, and 2041860a21c021efc10589533f23c8df6dc611d3 in angular/angular.
Apologies on the doc not getting updated. I partially automate those messages from my own task list system, and my script for syncing to the doc seems to have broken. I've updated the doc with what I've been up to.
There are only so many hours in the day, and the more time I spend replying to threads like this and writing docs about my progress, the less I have to actually get code out there. I realize it's frustrating to not have great insights to what's happening always, but please understand that I'm doing my best. Striking the right balance is a bit tricky.
I'm going to close this since it's not totally actionable, but feel free to keep the discussion going.

from the progress [doc]
(https://docs.google.com/document/d/1-DBXTHaeec6XH5qx2tKVrgrjiILy76_lSrjgJv95RJ4/edit#)
It looks like the focus is on what you want.
Monday, March 30 – Friday April 3
Progress:
Converted much of the existing router code to TypeScript, refactored as needed
Wrote directives for Angular 2
Most (35/40) tests passing
Work on documentation system for splitting routing docs into parts for Angular 1 and Angular 2
Goals:
Finish directives for Angular 2

Thanks @btford for taking the time to respond to this and I do apologize for pulling you away from coding. The update to the progress document makes a huge difference in terms of clarity of what's happening -- hopefully that's automated as well now so that it doesn't take a lot of time away as well. One other thing that would be super helpful is identifying GH issues are can easily be completed by outside contributors and marking them as such. In a project this early on-- that's also very integrated with two other large codebases-- it's clear some tickets are better left alone to those who have big picture understanding on both the NG1 and NG2 code. I went ahead and implemented support for using directives in 1.x, mainly cause it's one I wanted most, but in retrospect that might have been too many unknowns in terms of the direction you guys for me to implement that properly. If there are tickets that are more chore like -- and that don't require a deep knowledge of the internal process -- I'd love to help out and I imagine others would as well. :)


boards: Update all boards config after updating NSH_CMDPARMS

Summary
Update all boards after https://github.com/apache/nuttx-apps/pull/1492
Impact
Fix CMDPARMS dependencies
Testing
esp32-devkit and stm32f4discovery

@hartmannathan I just ran:
$ ./tools/refresh.sh --silent --defaults all

I think these changed configuration were left behind by previous change that people did and forgot to refresh the config, i.e.:
config STDIO_DISABLE_BUFFERING
        bool "Disable STDIO Buffering"
        depends on FILE_STREAM
        default n

These boards are disabling FILE_STREAM, so they can't disable STDIO_DISABLE_BUFFERING because it depends on FILE_STREAM that is already disabled. "You can't do without onboard services if you're not even on board!" ;-)
I'll divide it in separated logic commits.

"You can't do without onboard services if you're not even on board!" ;-)

Haha :-p

I'll divide it in separated logic commits.

Cool


Negative padding

I fixed pooling functions to support negative value for padding.
fix #138

I notice that when pad < 0, cudnn cannot pass gradient check.

It makes a fatal conflict.

I'll close this pr because I cannot merge the current master.


support UDP drops

on newer linux systems /proc/net/udp (and /proc/net/udp6) have a drop column on the far right:

$ uname -a
Linux ip-172-31-10-56 5.4.0-1045-aws #47~18.04.1-Ubuntu SMP Tue Apr 13 15:58:14 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

$ cat /proc/net/udp
  sl  local_address rem_address   st tx_queue rx_queue tr tm->when retrnsmt   uid  timeout inode ref pointer drops
 4000: 3500007F:0035 00000000:0000 07 00000000:00000000 00:00000000 00000000   101        0 256693 2<PHONE_NUMBER>000000 0
 4015: 380A1FAC:0044 00000000:0000 07 00000000:00000000 00:00000000 00000000   100        0 1016179 2<PHONE_NUMBER>000000 0
 5890: 0100007F:8797 0100007F:C351 01 00000000:00000000 00:00000000 00000000  1001        0 1016395 2<PHONE_NUMBER>000000 0
 8736: 00000000:12B5 00000000:0000 07 00000000:00000000 00:00000000 00000000     0        0 32052 2<PHONE_NUMBER>000000 0
12419: 00000000:2118 00000000:0000 07 00000000:00000000 00:00000000 00000000     0        0 24157 2<PHONE_NUMBER>000000 0

@discordianfish, can you please assign this to me? tnx

The TCP and UDP interfaces are very different after the inode column in /proc/net/udp | /proc/net/tcp files.
Maybe it's worth creating separate structures for UDP and TCP instead of a single netIPSocketLine?


Changelog

I saw from Maven release that version 1.23 is out.
Is there any changelog available to understand the differences between 1.22 and 1.23?

I know in the past that is something that usually happened on the blog: http://google-api-java-client.blogspot.com/ and I am going see about starting that back up for the next release.
I tend to prefer the command line for these sorts of things:
git log 1.22.0..1.23.0
git diff 1.22.0..1.23.0
But if you know a repo’s tags you can craft a custom URL on Github too:
https://github.com/google/google-api-java-client/compare/1.21.0...1.23.0


Client App crashes when evaluated split's config is nil, using FlutterSplit.getTreatmentsWithConfig

Fixed in commit bc94138d182c08910d1905d4b9bfbe9c92ba5b76


Strange issue with AsyncContext + TweetInvi's Sync.

Hello. I'm having a strange issue with my project, and I'm not sure what is to blame - AsyncEx, TweetInvi, or me. :(
Basically, I have a working WPF app that uses TweetInvi and plenty of async - it all works fine. I recently wanted to make a console version, and found AsyncEx with its AsyncContext class, which resolves issues with using async methods with console applications. It sounded perfect. Unfortunately, my application didn't work. I've managed to shrink the issue down to these three scenarios:
Scenario 1:
This is what I'm trying to do. It doesn't work. I use TweetInvi's Sync.ExecuteTaskAsync method from within AsyncEx's AsyncContext.Run. TweetInvi's Sync.ExecuteTaskAsync never returns - I can set a breakpoint on the following line and it never triggers. This completely stops my application from progressing.
private static int Main(string[] args) {
	return AsyncContext.Run(Program.MainAsyc);
}

private static async Task<int> MainAsyc() {
	var twitterCredentials = new TwitterCredentials(blankedOut1, blankedOut2, blankedOut3, blankedOut4);
	Auth.SetCredentials(twitterCredentials);

	var latestTweets = await Sync.ExecuteTaskAsync(() => Timeline.GetUserTimeline(blankedOut5, new UserTimelineParameters {
		MaximumNumberOfTweetsToRetrieve = 20,
		ExcludeReplies = true
	}));

	return 0;
}

Scenario 2:
In this scenario, I use TweetInvi's Sync.ExecuteTaskAsync on its own in the normal Main method, without using AsyncEx at all. It works fine and returns.
private static int Main(string[] args) {
	var twitterCredentials = new TwitterCredentials(blankedOut1, blankedOut2, blankedOut3, blankedOut4);
	Auth.SetCredentials(twitterCredentials);

	Sync.ExecuteTaskAsync(() => Timeline.GetUserTimeline(blankedOut5, new UserTimelineParameters {
		MaximumNumberOfTweetsToRetrieve = 20,
		ExcludeReplies = true
	})).Wait();

	return 0;
}

Scenario 3:
In this scenario, I use AsyncEx's AsyncContext.Run method, without using TweetInvi at all. It works fine and returns.
private static int Main(string[] args) {
	AsyncContext.Run(Test);
	return 0;
}

private static async Task Test() {
	await Task.Run(() => Thread.Sleep(5000));
}

Why doesn't scenario 1 work? I'd really appreciate any help with this.

The Sync.ExcecuteTaskAsync(...) call seems to imply that TweetInvi has its own sync-to-async wrapper which is possibly making assumptions that don't quite hold in all cases.  I only say this because in the TweetInvi wiki none of the examples I've come across so far seems to do anything async and there's no Sync.ExcecuteTaskAsync(...) to be found.

Here's the awesome code ;)
https://github.com/linvi/tweetinvi/blob/master/Tweetinvi/Sync.cs#L43
I suspect the problem lies in there.  Perhaps take that code, or a variant of it, into your own code and then you can step through it more easily.  I'd add some logging in there too.
It really sounds like it's doing a sync-over-async style API (search the pfxteam blog for articles about that) which can be tricky.

Thanks for bringing up those details, @IanYates.
The problem is that the default ITaskFactory.ExecuteTaskAsync implementation is using Task.Factory.StartNew without specifying a TaskScheduler. The default value for TaskScheduler is (unfortunately) TaskScheduler.Current, not TaskSchedler.Default.
Since AsyncContext uses TaskScheduler, this means the ITaskFactory is in fact trying to queue its work on the AsyncContext, not the ThreadPool.

Thanks, for looking into this so quickly I will read your article and update the library if needed!

Thanks for taking a look at this, both of you. For now, I have my project working by just waiting on Task.Result, but I would like to be able to use AsyncContext. It sounds like the issue is with TweetInvi, then? Is that right?

Quick question to you. I am well used to threads but I do have less knowledge on the async/await.
Quickly reading your article, would you agree that instead of await Task.Factory.StartNew(action);, I should use await TaskEx.Run(action);, or is defining the TaskCreateOption manually a better option?

I would say to just call TaskEx.Run. There are several less-than-satisfactory defaults with StartNew. Since you're using Microsoft.Bcl.Async, a proper call would look something like Task.Factory.StartNew(A, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default), which is very long compared to TaskEx.Run. :)

The new version of AsyncContext hides the current TaskScheduler.
While I think this is technically incorrect, this kind of bug is found all over the place (almost all uses of StartNew/ContinueWith on the Internet are wrong). As such, the new AsyncContext goes out of its way to hide its TaskScheduler.

With the new AsyncContext, will Tweetinvi need to upgrade/change some of the code?

No, Tweetinvi doesn't have to change. The hiding of the TaskScheduler works around that bug.
However, I still do recommend using Task.Run (or at least specifying TaskScheduler.Default). It works with the new AsyncContext, but it may not work with other custom contexts.


Correct URL for Pull Requests

Pull Request notifications had the URL: https://www.github.com/atom/find-and-replace/pulls/399
Which would link to an author. This PR corrects it to be: https://www.github.com/atom/find-and-replace/pull/399
I only had one notification to test it with though.

Hey @richrace ! Yes you're right! Was about to fix this one exactly the same way! :rocket:


Add online documentation setup

This PR adds a setup to build online documentation (issue https://github.com/bsmurphy/PyKrige/issues/14), which can be done for instance with,
conda create -n pykrige-env numpy scipy matplotlib python=3.6
cd PyKrige
python setup.py develop
# these are only used to build the docs
pip install sphinx recommonmark sphinxcontrib-napoleon sphinx_rtd_theme sphinx-gallery pillow
cd doc/
make html

which would produce the html docs under _build/html. Temporary the current version of the generated docs could be visualized here but we would need to host those e.g. on  https://readthedocs.io
This PR,

setup to automatically generate the class/function documentation form the code
setup to run examples and visualize the output with with sphinx-gallery
changes the README from .md to .rst so that it can be included in the docs (writing documentation with .md files is also supported, I just have not figured out yet how to include .md file from another .md file..)

it does not contain,

setup to update the docs automatically online (will be added in the next PR)
docstrings formatting would need to be improved for the autodoc to parse them correctly (cf. e.g. Numpy style docstring formating)

@bsmurphy  Could you please activate CircleCI on this repo (which could be used to build the docs) ? Thanks!

I got this:
ValueError: Sphinx-Gallery relies on the matplotlib 'agg' backend to render figures and write them to files. You are currently using the TkAgg backend. Sphinx-Gallery will terminate the build now, because changing backends is not well supported by matplotlib. We advise you to move sphinx_gallery imports before any matplotlib-dependent import. Moving sphinx_gallery imports at the top of your conf.py file should fix this issue
Fixed it by adding the following lines on top of conf.py:
import matplotlib
matplotlib.use("Agg")

The error is probably dependent on sphinx version, but adding those tow lines on top of conf.py won't hurt.

Thanks for testing it @basaks !  I added matplotlib.use("Agg") to conf.py.

For including markdowns:
from recommonmark.parser import CommonMarkParser
source_parsers = {'.md': CommonMarkParser}
source_suffix = ['.rst', '.md']

@basaks Yep, the doc/conf.py contains those lines already..

@bsmurphy , @basaks  could you please merge this if you are OK with it? Thanks.

Yep, this looks great. I'll work on the CircleCI setup.

thanks for this @rth.


inline k8s corev1 Container over ContainerSourceSpec

Expected Behavior
ContainerSourceSpec has some but not all k8s corev1 Container. If k8s corev1 Container is inlined here, we then don't need to hardcode the pull policy here and will make is easier for sources that base on ContainerSource.
Actual Behavior
Steps to Reproduce the Problem

Additional Info
@n3wscott @grantr

Perhaps container source should bump out and have a the container template?

if that is not a big inconvenience, please get a pod template

I think it is a good idea. @evankanderson and @grantr were looking at this a bit too

/assign

+1 to this.
We need to be able to use a full Pod spec in the Container source manifest.
Being able to use secrets as env variables is one good use-case.

@tzununbekov let's discuss this one, I think you could help here

I'm closing this because this has been fixed by using the podtemplatespec. Re-open if there's something else that's needed.
https://github.com/knative/eventing/pull/1321


contentPadding support

LazyColumn has a param named contentPadding which is related to scroll bars. The current implementation doesn't take it into account, so I believe something needs to be done. I've implemented a ViewHelper for RecycleView that I think has the same logic as yours but considered padding, but I don't quite understand part of your code and don't know how to convert it. Do you have any suggestions for this?

For your information, my implementation is here:
import android.graphics.Rect
import android.view.View
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView

open class LinearLayoutViewHelper(private val list: RecyclerView) :
    BaseRecyclerViewHelper(list) {
    private val layoutManager: LinearLayoutManager = list.layoutManager as LinearLayoutManager
    private val itemCount: Int
        get() = list.adapter!!.itemCount
    private val mTempRect: Rect = Rect()

    private fun mockOffsetToReal(offset: Int): Int = mTempRect.height() * offset / mockItemSize

    private fun realOffsetToMock(offset: Int): Int = mockItemSize * offset / mTempRect.height()

    override fun getScrollRange(): Int = list.height +
            if (list.isContentScrolls()) {
                val firstIndex = layoutManager.findFirstVisibleItemPosition()
                getItemBounds(layoutManager.findViewByPosition(firstIndex)!!)
                val firstPartial = realOffsetToMock(list.paddingTop - mTempRect.top)

                val lastIndex = layoutManager.findLastVisibleItemPosition()
                getItemBounds(layoutManager.findViewByPosition(lastIndex)!!)
                val lastPartial = realOffsetToMock(mTempRect.bottom - list.height)

                realOffsetToMock(list.paddingBottom) +
                        mockItemSize * itemCount -
                        (mockItemSize * (lastIndex - firstIndex + 1) - firstPartial - lastPartial)
            } else {
                0
            }

    override fun getScrollOffset(): Int {
        val index = layoutManager.findFirstVisibleItemPosition()
        if (index == RecyclerView.NO_POSITION || index >= itemCount) {
            return 0
        }
        getItemBounds(layoutManager.findViewByPosition(index)!!)
        return index * mockItemSize - realOffsetToMock(mTempRect.top - list.paddingTop)
    }

    private fun getItemBounds(itemView: View) {
        list.getDecoratedBoundsWithMargins(itemView, mTempRect)
    }

    private var lastIndex: Int = -2
    private var lastOffset: Int = -1
    override fun scrollTo(offset: Int) {
        // Stop any scroll in progress for RecyclerView.
        list.stopScroll()
        val index = offset / mockItemSize
        val targetView = layoutManager.findViewByPosition(index)
        if (targetView != null) {
            getItemBounds(targetView)
            val realOffset = -mockOffsetToReal(offset - index * mockItemSize)
            layoutManager.scrollToPositionWithOffset(index, realOffset)
        } else {
            if (index == lastIndex - 1) {
                list.scrollBy(0, mockOffsetToReal(offset - lastOffset))
            } else {
                layoutManager.scrollToPositionWithOffset(index, 0)
            }
        }
        lastIndex = index
        lastOffset = offset
    }

    init {
        if (BuildConfig.DEBUG) {
            require(layoutManager !is GridLayoutManager || layoutManager.spanCount == 1)
        }
    }

    companion object {
        private const val mockItemSize: Int = 10000
    }
}

@GuhDoy what is the behaviour you expect for the scrollbar when one adds contentPadding to the lazy column?
Right now the code for the scrollbar does take into consideration the contentPadding but given is not an "item" of the lazy list you can't "scroll to" it with the scrollbar, nevertheless is its height is taken into account when calculating the scrollbar size.
The way is taken into account is implicit (visible lazy column height vs visible column total items height) so you won't find it mentioned directly in the code.

I'm using the following code (simplified) to support WindowInsets:
val state = rememberLazyListState()
LazyColumn(
    state = state,
    contentPadding = PaddingValues(
        bottom = with(LocalDensity.current) {
            WindowInsets.navigationBars.getBottom(this).toDp()
        }
    )
) {
    // Some items.
}
my.nanihadesuka.compose.InternalLazyColumnScrollbar(
    listState = state,
    modifier = Modifier
        .windowInsetsPadding(
            WindowInsets.systemBars
                .only(WindowInsetsSides.Horizontal + WindowInsetsSides.Bottom)
        )
)

Current implementation has 2 issues:

LazyColumn can still scroll backward when I drag the Scrollbar to the bottom.

Scrollbar moves out of the screen (below) when I scroll the LazyColumn to the bottom.

BTW, I've tried changing this line of code to 1f - it.visibleItemsInfo.last().fractionVisibleBottom(it.viewportEndOffset - it.afterContentPadding) and the issues seem to be resolved, although I'm not sure if the logic is the same as the implementation I posted earlier.

Sorry for the (long) wait. Added in e31ff77fe9b772bd77da3f8ccbfd640bfb582929 and release in 1.10.0 lib version.

Thanks for the fix!


Failed to load resource

Hi there - thanks for a great plugin!
I'm following the instructions on https://tochoromero.github.io/aurelia-table/ but the app breaks at the moment I add ".plugin('tochoromero/aurelia-table');" to the main.js.
This is the error I get:
Failed to load resource: the server responded with a status of 404 (Not Found)
vendor-bundle.js:1399 Unhandled rejection Error: Script error for "tochoromero/aurelia-table"
http://requirejs.org/docs/errors.html#scripterror
    at Error (native)
    at F (http://localhost:9000/scripts/vendor-bundle.js:3763:290)
    at HTMLScriptElement.onScriptError (http://localhost:9000/scripts/vendor-bundle.js:3786:113)
From previous event:
    at DefaultLoader.loadModule (http://localhost:9000/scripts/vendor-bundle.js:11532:14)
    at _loadPlugin (http://localhost:9000/scripts/vendor-bundle.js:10294:21)
    at http://localhost:9000/scripts/vendor-bundle.js:10287:16
From previous event:
    at loadPlugin (http://localhost:9000/scripts/vendor-bundle.js:10286:75)
    at next (http://localhost:9000/scripts/vendor-bundle.js:10547:20)
From previous event:
    at next (http://localhost:9000/scripts/vendor-bundle.js:10547:56)
    at http://localhost:9000/scripts/vendor-bundle.js:10554:16
From previous event:
    at FrameworkConfiguration.apply (http://localhost:9000/scripts/vendor-bundle.js:10539:44)
    at Aurelia.start (http://localhost:9000/scripts/vendor-bundle.js:10156:23)
    at Object.configure (http://localhost:9000/scripts/app-bundle.js:138:13)
    at http://localhost:9000/scripts/vendor-bundle.js:9250:29
From previous event:
    at config (http://localhost:9000/scripts/vendor-bundle.js:9249:48)
    at handleApp (http://localhost:9000/scripts/vendor-bundle.js:9240:12)
    at http://localhost:9000/scripts/vendor-bundle.js:9269:13
From previous event:
    at http://localhost:9000/scripts/vendor-bundle.js:9267:40
From previous event:
    at http://localhost:9000/scripts/vendor-bundle.js:9266:29
From previous event:
    at run (http://localhost:9000/scripts/vendor-bundle.js:9262:26)
    at Object.<anonymous> (http://localhost:9000/scripts/vendor-bundle.js:9289:3)
    at Object.execCb (http://localhost:9000/scripts/vendor-bundle.js:3785:299)
    at Object.check (http://localhost:9000/scripts/vendor-bundle.js:3774:50)
    at Object.enable (http://localhost:9000/scripts/vendor-bundle.js:3779:58)
    at Object.enable (http://localhost:9000/scripts/vendor-bundle.js:3783:433)
    at Object.<anonymous> (http://localhost:9000/scripts/vendor-bundle.js:3778:436)
    at http://localhost:9000/scripts/vendor-bundle.js:3763:140
    at y (http://localhost:9000/scripts/vendor-bundle.js:3762:207)
    at Object.enable (http://localhost:9000/scripts/vendor-bundle.js:3777:469)
    at Object.init (http://localhost:9000/scripts/vendor-bundle.js:3772:154)
    at http://localhost:9000/scripts/vendor-bundle.js:3782:308

Am I doing something wrong?

This seems to be an error with your bundles. How are you adding the aurelia table to your bundle?
You should have something like this:
'tochoromero/aurelia-table',
'tochoromero/aurelia-table/*.html!text'
This will ensure you also include the html files in your bundle.

do you mean config.js?

Well, the error references vendor-bundle.js.
So, how are you running the app, are you using gulp watch?

au run --watch

Ah, so you are using Aurelia CLI. I have never used it, so I haven't tested my app there. Do you know if the CLI tries to bundle the app before running it?

Yes - the vendor-bundle.js is generated before running it.

So you need to make sure that your bundle includes the two lines I mentioned before. You need to find the configuration file that defines what classes go into your bundles and add them there.

Still trying to find it... very divergent documentation about Aurelia online! It's confusing.

Hi there. I've been trying to configure aurelia-table in a project built with aurelia-cli and ran into the exact same problem. Would love to find out how to properly configure the importing of aurelia-table as this plugin seems brillant and very useful !

@paulolvac I've finally found how to properly include this plugin when using aurelia-cli. You need to
npm install tochoromero/aurelia-table --save

and then write the following in your aurelia.json project file:
{
  "name": "aurelia-table",
  "path": "../node_modules/aurelia-table/dist/amd",
  "main": "index",
  "resources": [
    "au-table-pagination.html"
  ]
}

and finally include the plugin like so:
aurelia.use
    .standardConfiguration()
    .plugin('aurelia-table')
    .feature('resources');

in your main.js file.
@tochoromero I suggest this is worth adding in your documentation for people using aurelia-cli and wanting to use your plugin.

Now it loads but there's still a conflict with the "import {HttpClient} from 'aurelia-fetch-client';" that breaks the app. Still looking into it. Anyway, your plugin is the best I found on the web for datatables - it's awesome!

Never mind... looks like the cli does not come with it: http://ilikekillnerds.com/2016/08/adding-aurelia-fetch-client-aurelia-cli-project/

Also I realized that this plugin has a master branch ahead of its releases and documentation. For example, the filter feature (as documented) doesn't work from the master branch. So in order to avoid this problems, I suggest to import the library with an indication of the release you want to install. I currently installed like so:
npm install tochoromero/aurelia-table#0.1.4

This will install the 0.1.4 release corresponding to the current documentation. The filter feature will work with this version.

@ben-girardet You are right, the master is ahead of the documentation. I just haven't had chance to update it. The search plugin is the only breaking change I have added, but it is quite easy to use.
The change was basically to get rid of the fiterText and filterKeys properties and replace them with a filters property that takes in an array of objects like this:
      {value: '', keys: ['name', 'company']},
      {value:'', keys:['email']}
    ];```
And then you bind each value to an input or select or whatever you want:

```<input value.bind="filters[0].value & throttle">```
And of course you set the property in the table:

```<table aut-table="filters.bind: filters">```

Everything works perfectly now! What an awesome plugin. It really WORKS - also on Aurelia CLI.

@ben-girardet I have done a new release that includes the multiple filters features. At this point master is up to date with the documentation

Hi @tochoromero, thanks for such a great tool!
May I suggest adding https://github.com/tochoromero/aurelia-table/issues/9#issuecomment-246630267 (or at least a link to it) to the installation docs?

Sure thing, I will add it to the documentation

@ben-girardet I'm planning on adding the aurelia-cli installation instructions to the documentation, but I don't really understand what is going on (never used aurelia-cli).
So, why is it that you need to do add the au-table-pagination.html to a resources array, and why just that one and not the rest of the html files the plugin has?
Thanks a lot

@tochoromero from my understanding aurelia-cli can find the javascript files once you provide the entry point to the plugin. It doesn't always work (depending on plugins and how the imports are done). However it cannot load the other resources such as .css and .html files, therefore you must add them to the resources of the plugin. In my case, when I tried to use your plugin without this resource indicated in aurelia.json I would get an error telling me it doesn't find the au-table-pagination.html template file. Once added everything works correctly.
I didn't see other .html files in your plugin. What other files are you talking about ?

Ah you are right, there no other html files, my bad, it makes sense now, thank you for the clarification, adding to the documentation.

Done, documentation added :)

Thanks @tochoromero, sorry to be annoying, but for me it had to be .plugin('aurelia-table') and not .plugin('tochoromero/aurelia-table') as mentioned in your docs =)

Ah right, I have an entry on the JSPM registry to just use 'aurelia-table' but doesn't work on npm, thanks for the heads up will fix it

Thanks @lebolo I have fixed it :)

Hector Romero, first of all, thanks for a great plugin. We talked about it some months ago, and we use Aurelia Table a lot here – if only it were for public websites…
Do you know a way we can filter only absolute values? For instance, if I type in “3” in a filter, I get 3, 13, 33, 39, 300… that makes sense, but we have a situation where it should only return the absolute value – in this case, 3.
So by typing 3, only results with ID=3 should appear. By Typing 29, only ID=29 (and not 290 for instance) and so on.
Any ideas on how this can be achieved?
Thank you!
Paulo
From: Hector Romero<EMAIL_ADDRESS>Sent: Monday, November 14, 2016 1:20 PM
To: tochoromero/aurelia-table<EMAIL_ADDRESS>Cc: Paulo Vinicius<EMAIL_ADDRESS>State change<EMAIL_ADDRESS>Subject: Re: [tochoromero/aurelia-table] Failed to load resource (#9)
Thanks @lebolohttps://github.com/lebolo I have fixed it :)
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHubhttps://github.com/tochoromero/aurelia-table/issues/9#issuecomment-260466028, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AT2yV7l7niSg1cD1hSvIO5odg8RK0DbOks5q-NCEgaJpZM4J60qZ.

Hello @paulolvac
It is funny you mentioned this because it I just had the same need.
The way how I will solve this will be with an exact flag in the filters, so it would look like this:
filters = [
    {value: '', keys: ['name'], exact: true}

Beware that with this new option the filter will become case sensitive.
I will implement this new feature in the next couple of days. If you need it right now you can always use a custom filter. There is one example in the documentation.
Also, would you mind to create a new Issue for this specific feature?
Cheers.
Hector Romero

Thank you Hector,
It didn’t seem to work… I still get 33 when I type 3. I saw the custom filter but couldn’t find a way to make it work exactly like this.
Sure, I will create it. I’ve never done this but I’ll give it a try!
Thank you so much,
Paulo
From: Hector Romero<EMAIL_ADDRESS>Sent: Tuesday, May 23, 2017 8:48 AM
To: tochoromero/aurelia-table<EMAIL_ADDRESS>Cc: Paulo Vinicius<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [tochoromero/aurelia-table] Failed to load resource (#9)
Hello @paulolvachttps://github.com/paulolvac
It is funny you mentioned this because it I just had the same need.
The way how I will solve this will be with an exact flag in the filters, so it would look like this:
filters = [
{value: '', keys: ['name'], exact: true}

Beware that with this new option the filter will become case sensitive.
I will implement this new feature in the next couple of days. If you need it right now you can always use a custom filter. There is one example in the documentation.
Also, would you mind to create a new Issue for this specific feature?
Cheers.
Hector Romero
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/tochoromero/aurelia-table/issues/9#issuecomment-303441907, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AT2yV7GW7EoJEN6yGNEbSlXkZb_GTou-ks5r8v-2gaJpZM4J60qZ.

Actually, I already created the issue a couple of days ago, I forgot I had created it
https://github.com/tochoromero/aurelia-table/issues/35
I will work on it as soon I have a chance

Thank you Hector – I think this feature will be perfect.
Still learning the ropes with Aurelia…
From: Hector Romero<EMAIL_ADDRESS>Sent: Tuesday, May 23, 2017 9:00 AM
To: tochoromero/aurelia-table<EMAIL_ADDRESS>Cc: Paulo Vinicius<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [tochoromero/aurelia-table] Failed to load resource (#9)
Actually, I already created the issue a couple of days ago, I forgot I had created it
#35https://github.com/tochoromero/aurelia-table/issues/35
I will work on it as soon I have a chance
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/tochoromero/aurelia-table/issues/9#issuecomment-303446583, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AT2yV7DqzIXzOnV-B09IhR6LCDhbrFMRks5r8wKOgaJpZM4J60qZ.

Hector,
Just to let you know that this custom filter worked like a charm:
customFilterExactMatch(filterValue, row) {
return row.rowyouwanttofilter == filterValue;
}
Again, thanks for delivering this great plugin! Is there a testimonial area in one of your sites where I can post a five-star testimony? :)
Paulo
From: Hector Romero<EMAIL_ADDRESS>Sent: Tuesday, May 23, 2017 8:48 AM
To: tochoromero/aurelia-table<EMAIL_ADDRESS>Cc: Paulo Vinicius<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [tochoromero/aurelia-table] Failed to load resource (#9)
Hello @paulolvachttps://github.com/paulolvac
It is funny you mentioned this because it I just had the same need.
The way how I will solve this will be with an exact flag in the filters, so it would look like this:
filters = [
{value: '', keys: ['name'], exact: true}

Beware that with this new option the filter will become case sensitive.
I will implement this new feature in the next couple of days. If you need it right now you can always use a custom filter. There is one example in the documentation.
Also, would you mind to create a new Issue for this specific feature?
Cheers.
Hector Romero
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/tochoromero/aurelia-table/issues/9#issuecomment-303441907, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AT2yV7GW7EoJEN6yGNEbSlXkZb_GTou-ks5r8v-2gaJpZM4J60qZ.

@paulolvac I'm glad you figured it out. And no, I don't have anywhere for testimonials, but a star in the GitHub project would be appreciated :)

Sure – starred right now!
From: Hector Romero<EMAIL_ADDRESS>Sent: Wednesday, May 24, 2017 9:44 AM
To: tochoromero/aurelia-table<EMAIL_ADDRESS>Cc: Paulo Vinicius<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [tochoromero/aurelia-table] Failed to load resource (#9)
@paulolvachttps://github.com/paulolvac I'm glad you figured it out. And no, I don't have anywhere for testimonials, but a star in the GitHub project would be appreciated :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/tochoromero/aurelia-table/issues/9#issuecomment-303782515, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AT2yV-sE8YD8cAH1tWb_A0uAihNRQpu3ks5r9F5sgaJpZM4J60qZ.

See this issue #38


Clamp bilinear samples to cube map face

Sample locations can overflow to neighboring cube map faces, which will lead to slight artifacts if not addressed.
The best solution would be to mutate the coordinates to sample the correct neighboring faces in case of overflow, but clamping will at least mitigate the problem and is much simpler to implement.
This change is sponsored by Higharc

@haruishi43 Please take a look!

@Oletus thanks for your pull requests!
I'll take a look ASAP.

I'd think that the artifact affects bicubic to some extent too.
The artifact probably happens on torch as well.

But those cases seem more complicated to fix, so I started from the bilinear/numpy case. I don't have prior experience working with torch. The artifact is not as noticeable with higher resolutions or less iterations but it would be good to have it fixed everywhere regardless. Changing the cube map format so that each cube face is a separate image could make fixing it easier, but I didn't want to start making too intrusive changes yet.
And ideally sampling would overflow to the neighboring cube map face instead of simply clamping within each cube map face, but clamping gets us 80% of the way. Padding each cube map face with data from neighboring cube map faces and modifying the grid accordingly could be the simplest way to implement proper overflow if I understand the constraints of numpy/torch correctly.

@Oletus I think you're right. Padding the cubemaps will probably help in the interpolation.
I was testing cube2equi and equi2cube and I think your PR fixes the problem, but I think when we consider the future interpolation algorithm (e.g. padding), I think I want to separate it from the grid sampling function for now. I made a refactored version of your pull request along with fixes in pytorch (pytorch version is a tad blurry, but I think it's good enough).

Ok! It's good if you're able to make a solution also for torch. And it looks like the new patch has equivalent code as this one for numpy, just cleaned up to follow project conventions? I'm happy to close this PR if so.

Ok, sounds good.
The motivation for this project was to get equi2pers and equi2equi for an image augmentation pipeline used in semantic segmentation. I'm very thankful to get help from you to brushup on the other functions! Thank you so much


Add Pull Request template

We want to add templates to the repository to make it easier for folks to raise issues, contribute ideas and get involved in the project.
For inspiration on projects using great templates check:
https://github.com/alan-turing-institute/the-turing-way/issues/new/choose
https://github.com/pypa/pip/blob/main/.github/ISSUE_TEMPLATE/config.yml
📖   The documentation for GitHub templates can be found here:
https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository
What needs doing?

[ ] Add a PR template for folks contributing to the project

Hi, @trallard. @yashasvimisra2798 and I are working on this!

Yeah as a part of the mentored sprint

Thanks folks!

Hey @trallard, we were thinking about creating a pull_request_template.md in the docs directory. Is that fine or do you want it somewhere else?

for Pull requests templates to be findable by GitHub they need to be in .github/PULL_REQUEST_TEMPLATE.md


Fix false positive unescaped output detected

This PR fixes #102

Hi @lenaorobei,
When are you going to prepare new release of this tool that will contain this fix?

Hello @ihor-sviziev, we are planning to do monthly sniffs review and release.


CC2

Value: $4,500.00Closes: Thursday, March 29, 2018Location: Port Alberni Some in-person work requiredOpportunity DescriptionbAcceptance CriteriadHow to ApplyGo to the Opportunity Page, click the Apply button above and submit your proposal by 16:00 PST on Thursday, March 29, 2018.We plan to assign this opportunity by Thursday, March 29, 2018 with work to start on Thursday, March 29, 2018.Proposal Evaluation Criteriad

This was a test.