Disposable fix for statement result

This PR fixes the warning that was in the StatementResult. It keeps true to the API of both the Neo4j server and the driver API by consuming all records regardless if the user needs them and that only forward (and no restart) iteration is possible - eg consumes records when enumerated.
The only "breaking" thing is that IStatementResult has to be IDisposable to have the consume regardless feature. This is the correct way to do it in C#/.NET. I do not see this as a problem, because there might be other reasons in the future that ÌStatementResult`needs to be disposed and same behaviour is seen in other APIs for DBs.

Thanks so much. I talked with Chris and my collea a lot about this API change.
We would like to accept your changes to the enumerator, where GetEnumerator always returns a new enumerator and the enumerator get disposed properly when it is done. Your impl for this part is really neat.
But we still disagree with the the dispose method added on IStatementResult (though in this PR you actually did not make any changes to the interface but the impl)
So the idea is that the driver provides two ways of consuming the result:

lazy consumption
eager consumption

The Dispose method you added is actually helping us to impl eager consumption of the records in a result. So the Dispose method will eagerly pull all the records and block until the final record comes.
Without (Consume called in) Dispose method, the records are lazily pulled.
using(var session = driver.session())
{
    var result1 = session.Run("something");
    // if result1= [1,2,3], and at this moment, we only got [1]
    var result2 = session.Run("another thing");
   // while we sending run st, the result1 got [1.2.3]
   result2.Consume(); // this will wait for result 1 to receive [1,2,3], and all records in result2
}

As you could see in this example, we could choose not wait for result1. Then we could modify underlying impl to do batching for records for result1 and result2 or other network actions.
So all in all, as we still have so many opinions on this Dispose method, how about we leave it for now and add it when required?

Pls let me know if you have any concern about not having a Dispose method on StatementResult and/or IStatementResult.

If you agree to remove Dispose, I get this PR
https://github.com/IngvarKofoed/neo4j-dotnet-driver/pull/3

It is fine with me to not have the IDisposable in the IStatementResult. I just thought it was a API requirement (API that the Neo4j server exposes) to consume the rest of the records: See https://github.com/neo4j/neo4j-dotnet-driver/pull/42#issuecomment-203389162. And in https://github.com/neo4j/neo4j-dotnet-driver/pull/47 you have this code:
using(Driver driver = GraphDatabase.Driver(url))
using(ISession session = driver.Session())
{
    IStatementResult result = session.Run("A Cypher statement");
    //do sth with the result
    result.Consume(); // explicitly dispose all resources in result.
}

And like I wrote in that PR, it is not best practice to require users to do a result.Consume();. Best practice would be to do the following:
using(Driver driver = GraphDatabase.Driver(url))
using(ISession session = driver.Session())
{
    using(IStatementResult result = session.Run("A Cypher statement"))
    {
        //do sth with the result
    }
    using(IStatementResult result = session.Run("A nother Cypher statement"))
    {
        //do sth with the result
    }
}

Which requires IStatementResult to implemented IDisposable.
But as I said, its up to you :) So please let me know if you really want to remove the IDisposable from the IStatementResult. If you do, Ill merge your PR so it is ready :)

I have just reread you code example. I find it hard to see how you would accomplish this unless you put the 'batching' stuff in the session. See the NEW comments in your code below:
using(var session = driver.session())
{
    var result1 = session.Run("something");
    // if result1= [1,2,3], and at this moment, we only got [1]
    var result2 = session.Run("another thing"); // NEW: What if result1 is not done at this point? Would that not break the API rule to the Neo4j Server, because the server is not finished sending result1 records before you make a new query?
   // while we sending run st, the result1 got [1.2.3]
   result2.Consume(); // this will wait for result 1 to receive [1,2,3], and all records in result2
  // NEW: How would result2 now that it has to consume the rest of result1? I guess you would store this information in the session. If that is true, why not just do the consuming in the session Dispose method instead of calling Consume on result2.
}

It seems a little strange to me that calling Consume on result2, also consumes result1 records. What if the user did something like this:
using(var session = driver.session())
{
    var result1 = session.Run("something");
    var result2 = session.Run("another thing");
    result.Consume();
    foreach (var record in result1)
    {
        // Do someting with record
    }
}

I guess this would fail? I think your idea is leaking the 'dirty' details of how the driver must communicate with the Neo4j Server out to how to use the driver (consuming of records). I think this is a bad design and it will make it hard to change in the future.
I would recommend to remove the Consume method from the public part of the driver API. This is a 'dirty' detail that users of the driver should not be bothered with and it is something that I hope the Neo4j server is going to change in the future. And as I have suggested, use the common way of doing cleanup in .NET by using the IDisposable pattern :)

We have this test:
https://github.com/neo4j/neo4j-dotnet-driver/blob/1.1/Neo4j.Driver/Neo4j.Driver.IntegrationTests/ConnectionIT.cs#L163

The consume still just consume the records in the result2 as it is a enumerator created from the records on result2. result1 get all its records buffered.
The problem is that result1 and result2 is sharing the same connection to stream the result back.
output channel:
run st1
run st2

input channel:
record1 for st1
record2 for st1
...
recordn for st1
summary for st1
record1 for st2
record2 for st2
...

As you could see, the result2 could not be proceed if result1 is not stream back. However consume the record on each result is separate

Ok, so according to that test, the order of which you consume all the records is not important. Did I understand this correct?
How would the test look like if you did nothing to result1? Example:
using (var driver = GraphDatabase.Driver("bolt://localhost"))
using (var session = driver.Session())
{
    var result1 = session.Run("unwind range(1,3) as n RETURN n");
    var result2 = session.Run("unwind range(4,6) as n RETURN n");

    var result2All = result2.ToList();

    result2All.Select(r => r.Values["n"].As<int>()).Should().ContainInOrder(4, 5, 6);
    // Should there be a result1.Consume or result2.Consume here?
}

It seems to me that the session should guard agains running a new statement before the first one is done? Because you will not get the result of the second before the first is done, right?

You are right. That's why we have a Consume method to guard a clean state if we did not visit all of the records and/or pull summary.
if we have
result2.ToList()
Then it is guarded that all records for result1 and result2 is back.
if we have
result2.summary
Then it is guarded that the state is clean for new statement.
We only need to call Consume if we did not visit all record and we want to make sure the state is clean for next statement.
However it is better to let the user to decide, rather than always clean the state for them.

My point is that the user should not even know about cleaning the state, this is an internal matter.
I like the idea that the unittest implies that, that it happens without the users knowledge and that it does not require the Dispose method. So Ill merge your PR :)
I think you should consider removing the Consume method from the public API because I see no reason for it. The consuming happens when it is needed (lazy or eager).

The consume is mainly there for uniformity of all drivers. We do not need Consume, Single, Peek in .Net probably as every .Net developer will just do a foreach loop directly on result (by Chris) :D
Thanks a lot for helping building this PR again!

Ah, I see, I properly misunderstod you comment in #47 that it was required by the users to call the Consume method. Sorry about that :)
No problem, I enjoy this and have a lot more that I think I can contribute with :)


Just use VM, not docker

This line would spend time a lot.
https://github.com/pullreminders/slack-action/blob/da2ae3e1a32c9e629f5f6fa59a95f846366e85ff/Dockerfile#L13
I tested this action in my repository, and just building an docker image consumed 40s.

Generally speaking, pulling pre-built image from docker hub is a better option compared to buliding it every time the action is called.
However, I suggest not to use docker just for using curl. According to https://help.github.com/en/articles/software-in-virtual-environments-for-github-actions#ubuntu-1804-lts, VMs already have curl preinstalled. So directly executing entrypoint.sh would be the best.

I suppose docker use here helps for cross platform compatibilty (windows-latest)
But yeah, I noticed too the Build pullreminders/slack-action@master step that lasts 31sec ends up being the longest step of my workflow :'(
I'll consider switching to a JS based one that may run faster like https://github.com/marketplace/actions/action-slack

@lf-novelt
Yeah, docker would be help on Windows. But as Mac doesn't have it (There's an request for it though: https://github.com/actions/virtual-environments/issues/17), docker can't be the ultimate solution.
IMHO, directly run entrypoint.sh on Linux, Mac, and entrypoint(?).cmd on Windows would be the way to go.
By the way, thanks for the JS actions suggestion, it seems it worths to be considered.

For info, I ended doing exactly what you said:

slack-send.sh
slack-send.ps1

$postParams = "{'channel': '$Env:CHANNEL', 'attachments': [{'color': '$Env:COLOR', 'pretext': '$Env:PRETEXT', 'text': '$Env:TEXT'}]}"

Invoke-WebRequest -Method POST -Headers @{'Content-Type' = "application/json; charset=utf-8"; 'Authorization' = "Bearer $Env:SLACK_BOT_TOKEN"} -Uri https://slack.com/api/chat.postMessage -Body $postParams

callable with this syntax
    - name: Slack notification test
      env:
        SLACK_BOT_TOKEN: ${{ secrets.SLACK_XMART_COLLAB_TOKEN }}
        CHANNEL: test-notif
        COLOR: good
        PRETEXT: Test notif windows from github
        TEXT: "<${{ github.event.commits[0].url }} |${{ github.repository }}: *${{ github.event.commits[0].message }} *> by ${{ github.event.commits[0].author.name }}\\n<${{ github.event.commits[0].url }}/checks|Workflow ${{ github.workflow }}>: `${{ job.status }}`"
      run: powershell -File ${env:GITHUB_WORKSPACE}\.github\workflows\slack-send.ps1
      shell: powershell

@lf-novelt Great! Thank you for the sharing the Powershell script as well. This would be helpful to others as well :)

I just added a PR that uses the official curl docker image which cut the build time for me to about 12 seconds https://github.com/pullreminders/slack-action/pull/17

@robpc Good to hear the improvement.
However, should the action really be built every time it's used?
I still think just pulling a pre-built image can be faster, though not tested by myself.
Like by this configuration in action.yml. (The repo currently does not have action.yml).
runs:
  using: 'docker'
  image: 'docker://pullreminders/slack-action'

Refer to container-action getting started docs or reference in case you're not familar with this yet.

That's definitely a good suggestion, but I would not be able to make that change without creating my own action (or at least taking ownership of the docker repo).

@robpc Yes, I know.
I hope the maintainer tests this suggestion and accept it if applicable, though this issue is not responded for several months.
If the maintainer accepts your PR, please remind him or her this issue.


Examples lacking

Brad and I were trying to figure this out to no avail. Please provide a jupyter notebook with some examples. And a free repo with some sample images for training

@smasis001 there is room for improvement, but I think this repo is much more usable now.

@gsganden I have updated my fork and I will take another look. Thanks for keeping me in the loop.

I refined the title to eliminate overlap with https://github.com/UptakeOpenSource/autofocus/issues/11.

https://github.com/UptakeOpenSource/autofocus/blob/master/autofocus/train_model/train_multilabel_model.ipynb can fulfill this role to some extent, but it's not optimized to help people get started.


Do not reload vscode when forking a project

Fixes #1289
Problem:
When forking the project, VSCode would reload. This would mean the user had to wait long seconds AND manually open the edited file again so they can continue editing. Urgh!
Fix:
The project ID and vscode's bridge ID were coming from the same editorState.id . The fix is to split id and vscodeBridgeId into two separate fields. For the sake of not changing too many things, vscodeBridgeId is initialized to editor.id, but subsequent changes to editor.id (such as when forking a project) do not update vscodeBridgeId, because there is no need. This means that the vscode instance can survive an ID change, and keep on working.
Commit Details:

Added vscodeBridgeId to editor-state, LOAD initializes it to editor.id
SET_PROJECT_ID does NOT change vscodeBridgeId, does NOT call initVSCodeBridge
triggerForkProject does not call LOAD anymore, I realized it can get by with only dispatching SET_PROJECT_ID and SET_FORKED_FROM_PROJECT_ID

I'm gonna merge this now!


[DRAFT] Refactor and generalize quant nonmutating generalization

My attempt to make the refactoring a little faster and more general. Note that trying to simplify runQuantify in a way that removes static knowledge of zero-or-more results in further 50%-ish regressions, which is pretty nuts.


[c4core/ryml] Fix gcc4.8 compilation errors and update misc

Fixes https://github.com/microsoft/vcpkg/issues/29876
/home/vsts/work/1/vcpkg/installed/x64-linux/include/c4/compiler.hpp:105:41: fatal error: c4/gcc-4.8.hpp: No such file or directory
 #               include "c4/gcc-4.8.hpp"

Update the content in the cmake folder and add the include path of the gcc-4.8.hpp header file.

[X] Changes comply with the maintainer guide
[X] SHA512s are updated for each updated download
[ ] The "supports" clause reflects platforms that may be fixed by this new version
[ ] Any fixed CI baseline entries are removed from that file.
[ ] Any patches that are no longer applied are deleted from the port's directory.
[X] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[X] Only one version is added to each modified port's versions file.

Usage test pass with following triplets:
x64-linux

/azp run

@BillyONeal Is there anything else I need to modify about this PR?

Dropping reviewed since it looks like Victor left comments

OK, I will fix this PR.

Is there any progress?

I will continue to follow up.


Fix as many skipped tests as possible.

Adds a commented out bit to the .mocharc so it's a little easier to figure out how to find skipped tests when we need to.
Stops skipping tests that no longer need to be skipped
Adds an additional test to simplify the assertion of one of the skipped tests
Adds a comment above a skipped section of tests explaining that we can probably remove them in v8 after we've moved completely to newer multicasting paradigms and removed deprecated operators.
Some of the skipped tests in repeatWhen-spec were clearly copied from retryWhen-spec but never updated appropriately.
One of the skipped tests showed a buggy behavior that is now reported in an issue and a comment with a link to that issue is now above it.
Adds comments about why some tests are skipped.

Resolves #5370
Resolves #5105

(See commit comments for more details, if you need them)


Duplicate Japanese text in header

Bug Description
Duplicate Japanese text in header.
To Reproduce
Steps to reproduce the behavior:

Open a note
Type Japanese characters in header.

Expected Behavior
Characters are entered without duplication.
Screenshots
Screencast from 2024-08-11 21-57-37.webm
Desktop (please complete the following information):

OS: Ubuntu 24.04 LTS
Application Version: 3.0.5

Additional Context
This issue did not occur in version 3.0.4.

Thanks for reporting this bug. I'm quite ignorant about how Japanese works but as much as I managed to understand when typing in Japanese you enter the sounds in Romaji, converting them to Kana, and then select the appropriate Kanji as needed which is the one that jets duplicated in this case. I've tried to replicate this issue in Mac OS and couldn't so it might be specific to ubuntu or the package manager you used to install Beaver.  Did you install the application through flatpak or using a .deb file?

Ok so I browsed the web and found out this from the obsidian forum which suggests this might be a software issue we can surely mitigate it but I don't know if it's completely solvable "If you range-select a string that includes the character immediately following symbols such as quotation (>), link ([[,]]), highlight(==), heading or tag (#), etc., and then type a new string and try to convert it to kanji, the string is duplicated." source

One workaround is using IME without pre-commit. I tested Weasel on Windows and Fcitx on Linux. They work fine after turning off pre-commit. Tiptap has not fixed this bug, and They seem not to plan to fix it. Using custom NodeView will cause this problem in some cases.

I think if you think the folding is not very necessary and the workaround is not very convenient, we can also provide an option to turn it off. What do you think?

I think you are right. Since folding seems to negatively impact the user experience when writing in Japanese, we should add a way to either disable it through a keyboard shortcut or include it in settings. If you could take care of this, it would be brilliant, as I'm still working on Beaver Pocket. Speaking of Pocket, I've had some issues porting folding there, but that's an issue for another time.

@Daniele-rolli @bigshans
Thank you for checking.
I also use fcitx, and I was able to enter the correct information after trying the workaround.
I also agree with the following, it would be helpful to have this option.

I think if you think the folding is not very necessary and the workaround is not very convenient, we can also provide an option to turn it off. What do you think?

OK, I've put it into my Todo list. It may take some time. after all, there are data integrity issues to consider after turning off the option.


error CS1674: 'void': type used in a using statement must be implicitly convertible to 'System.IDisposable'

the following code fails on .net core 1.1 (in a controller):
public async Task<string> testAsync([FromServices] IManagedTracer tracer)
{
            using (tracer.StartSpan(nameof(testAsync)))
            {
...
            }
}

compile error:
error CS1674: 'void': type used in a using statement must be implicitly convertible to 'System.IDisposable'
the documentation says we can use it: http://googlecloudplatform.github.io/google-cloud-dotnet/docs/Google.Cloud.Diagnostics.AspNetCore/
Am I missing something?
(sorry to spam issues)

I suspect this is a matter of the documentation being ahead of the released libraries.
I'm in the middle of preparing a release (the first for a few weeks). If you can hold off a little while, this may just fix itself...

@Jonathan34 jskeet is right I think our docs got a little ahead of the code release.
For now you can do (but we should have a new release soon!):
tracer.StartSpan(nameof(testAsync)); ... tracer.EndSpan();

Yes I was using that but I noticed I had several returns in the middle and wanted to use a scoped object to dispose automatically... now i have to understand why nothing appears in the google console with startSpan/EndSpan :)

@Jonathan34 sorry about this! We should hopefully have a new release out soon that will make this much easier.
RE: "(sorry to spam issues)" please spam us with issues :) if something is wrong we want to know and will do our best to fix it.

Good :)
Do you happen to have a slack channel in the google or .net slack teams?

We do have a slack channel for just this sort of thing:
https://googlecloud-community.slack.com/messages/C2ZV4FYV8

works with 1.0.0-alpha08!
thanks, amazingly quick fix !

@Jonathan34: I'd love to take credit for it being a really quick fix, but I spent many hours today sorting out the release - it was almost all ready by the time this was raised :)


Update to let us filter by creation and update time

Update to let us filter by creation and update time

Thanks for submitting a PR! As part of keeping up with other changes in the Notion API, these two filters have been added via #29. There'll be a new release of this library in the following days.


Support for preventing swipe left or swipe right

The primary use case for this is disabling swipe right when using react-navigation's swipe to go back feature.

I'd appreciate suggestions on how to provide a solid test plan for this...it's a pretty minor change.

cc @sahrens

There is already a way to prevent the "swipe to go back" functionality in React Navigation.
See gesturesEnabled.

@migueloller That isn't the intention. Swipe to go back should still work when used in conjunction with the experimental swipe-able cells. That's not currently the case. Hold on approval though please. I'd like to double check no further amends were made to this.

Too late - @sahrens can you please look at and approve #14900. Apologies for the mess up.


[v1.12] ci/ipsec: Fix downgrade version for release preparation commits

[ ] https://github.com/cilium/cilium/pull/30413
[ ] https://github.com/cilium/cilium/pull/30532

/test-backport-1.12

/test-backport-1.12

/mlh new-flake Cilium-PR-K8s-1.22-kernel-4.9

/test-1.22-4.9

test-1.16-4.9: hit https://github.com/cilium/cilium/issues/27118 and https://github.com/cilium/cilium/issues/24840

/test-1.16-4.9


Handle circular hierarchy segfault

verilogtree will segfault if a circular hierarchy is given -> eg mod0 instantiates itself or something...
Need to detect this case, if any module instantiates itself, or if any module instantiates one of its ancestors this will cause an infinite recursive loop that will swallow up lots of memory and ultimately crash...

Include a hardcoded hierarchy depth of say ~100. This will detect when a runaway recursion event is occurring and will just end the program. This seems like a simple and convenient fix for this issue without having to keep track of every module that's been added along a chain and then performing comparisons etc...
The value of this hardcoded depth should be settable in the verilogtreeconfig file #22


Support for payload in DSHttpAdapter.DEL

The DSHttpAdapters delete request should probably have optional payload support as there are APIs which use this functionality such as elasticsearch. Better to add it sooner rather than later when breaking changes are more difficult to handle, as seen here.

Thanks a lot it works out for me....:)


Update docs on how to properly architect a Marketplace module

Now that we have SPS working, look at that, and bring the details into docs.
See:  https://unity-sds.gitbook.io/docs/developer-docs/common-services/docs/users-guide/deployment/deployment-concepts-and-infrastructure/unity-marketplace

done


significant regressions introduced DW 3.0.9 with jackson 2.18.0

Jackon 2.18.0 has a serios regression the impacted our use in many unexpected ways https://github.com/FasterXML/jackson-databind/issues/4639 until jackson 2.18.1 is released might be good to warn people or maybe even release a version with a downgraded dependency chain i.e. 2.17.2. For now we have downgraded to dropwizard 3.0.8 but just wanted to make others aware.

thanks @joschi!


Improve Documentation

Since we are pushing for the release and putting more focus on feature completeness, I am listing all the current modules. All of these need to be documented before the next release can be tagged.

[ ] Loss Functions: New functions lack the equations. We also don't have a dedicated documentation for the functional forms of the losses.
[ ] Models: Models are fairly well documented. However, the train_ops need to have proper documentation as it is necessary for customizability.
[ ] Metrics: The metrics API is a bit difficult to use. If we can't find a cleaner way to deal with metrics the only way is to have well-documented examples.
[ ] Logger: Lacks Documentation
[ ] Layers: Lacks Documentation
[ ] Trainer: Documentation is fine. However, needs a few demonstrative examples.

Since we are pushing for the release and putting more focus on feature completeness, I am listing all the current modules. All of these need to be documented before the next release can be tagged.

[ ] Loss Functions: New functions lack the equations. We also don't have a dedicated documentation for the functional forms of the losses.
[ ] Models: Models are fairly well documented. However, the train_ops need to have proper documentation as it is necessary for customizability.
[ ] Metrics: The metrics API is a bit difficult to use. If we can't find a cleaner way to deal with metrics the only way is to have well coumented examples.
[ ] Logger: Lacks Documentation
[ ] Layers: Lacks Documentation
[ ] Trainer: Documentation is fine. However, needs a few demonstrative examples.

The documentation is being taken care of in ap/docs branch.


sample.py throws IndexError if value not returned

Looks like a few of our Application Tiers don't contain any/valid AVERAGE_RESPONSE_TIME / CALLS_PER_MINUTE etc values; which causes:
Traceback (most recent call last):
  File "sample.py", line 11, in <module>
    art = metric_data.by_leaf_name(c.AVERAGE_RESPONSE_TIME).first_value()
  File "build/bdist.macosx-10.10-x86_64/egg/appd/model.py", line 224, in first_value
  File "/usr/local/Cellar/python/2.7.10_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/UserList.py", line 31, in __getitem__
    def __getitem__(self, i): return self.data[i]

I'm sorry, I am no longer with AppDynamics, and this project is no longer being maintained. Please feel free to fork the project and work on it yourself! Thanks.


Unreviewed commit on master!

Unreviewed commit(s) COMPARE was merged to master by jeffsaremi.
Comment with appropriate number of :+1: to approve.

Reviewed requirements satisfied? No
Ancestors reviewed? Yes

Minimum Reviews
0/1

More info

👍

Review Error for d2army @ 2023-04-05 17:27:24 UTC
User failed mfa authentication, public email is not set on your github profile. see go/mfa-help

👍

Minimum Reviews
1/1

d2army
1

Pull request is reviewed and can be merged to master!
More info


obs: Add if-none-match support

I can have a try :D

I can have a try :D

Thanks! I have assigned this issue to you.  Take your time and have fun!


Add patterns to fold tensor.empty with tensor.collapse_expand/shape.

Without these patterns, we end up with sequences like
%0 = tensor.empty ...
%1 = tensor.collapse_shape %0 ...

which dont get pulled into dispatch regions since
tensor.collapse_shapes arent pulled into dispatch regions. With the
patterns the tensor.collapse_shape fold away, avoiding
tensor.empty() being left outside.
Fixes #11770

Aargh... this actially not what we want. Ill update the PR in a bit.

This fixes the issue. Updated description

It looks like the MobileSSD x86_64 benchmarks started failing from this PR.
https://buildkite.com/iree/iree-benchmark-linux/builds/2599
subprocess.CalledProcessError: Command '['taskset', '0xFF', PosixPath('/var/lib/buildkite-agent/builds/gcp-buildkite-bench-x86-1/iree/iree-benchmark-linux/build-linux/tools/iree-benchmark-module'), '--device=local-task', '--module_file=../../vmfb/mobile_ssd_v2_float_coco.tflite.mlir-50757ab91ec531c065ec75ced8186e41.vmfb', '--entry_function=main', '--function_input=1x320x320x3xf32', '--task_topology_group_count=8', '--time_unit=ns', '--benchmark_format=json', '--benchmark_out_format=json', '--benchmark_out=/tmp/iree-benchmarks/160349188b58b2704fd9f26ee6c1f7a8e2811cd2/benchmark-results/MobileSSD [fp32] (TFLite) 8-thread,full-inference,default-flags with IREE-LLVM-CPU @ GCP-c2-standard-16 (CPU-x86_64-CascadeLake).json', '--benchmark_repetitions=10']' died with <Signals.SIGSEGV: 11>.

I'll take a look in the morning

Sorry, I wasn't able to look into this. Let's revert it for now, if revert doesn't cause issues


duplicate material citation creation

we discovered here https://prod.ebiodiv.org/?institutionKey=9cfe8cbf-35ff-4d93-b932-cb05d91b7922&datasetKeys=dce8feb0-6c89-11de-8225-b8a03c50a862&format=specimen_matcit&occurrenceKey=1100095032

https://treatment.plazi.org/id/487187C2B217FF830F62FAAAB098F8BC
https://treatment.plazi.org/GgServer/xml/487187C2B217FF830F62FAAAB098F8BC
that there are two material citation created which seems to be duplicates

Seems to be due to material citation boundary miss annotation

Very much so ... unfortunately at a level QC rules don't catch right now ... maybe we should add a check for some minimal contents as well, even though that might give us a lot of false positives with enumerations, as well as with the likes of "same data as holotype" ...


Use erb templates for additional commodity code

I've introduced the ability to control whitespace trimming in our ERB templates, so that I could add ERB templates for this Smart Answer without having to update all the regression test HTML files.
This Smart Answer's outcome also has a title that is still in the YAML file. We don't currently support ERB templates for titles so I plan to address that separately.

LGTM


BackBufferCopy does not allow you to use anchor + margins properly

Operating system or device - Godot version:
x11 64bit, v2.2.alpha.custom
Issue description (what happened, and what was expected):
When you place an "BackBufferCopy" node in your scene, regardless of your parent anchor and sizes, it wont allow you to set size to match parent sizes.
Currently, you have to manually change the size of the children as anchor+margins are useless.
Steps to reproduce:

Does not use parent sizes.

I'm not sure you have to add children to the BackBufferCopy...
Also, this is not a bug, its a feature, that's how all Node2D>Control scenarios work.

One feature I could do without, and always could have. Same with Node2D; although I can just use Control instead. Unfortunately, I have no option but to use BackBufferCopy in order to run multiple shaders on top of eachother.
How would you suggest I attach a shader that covers the entire screen without having to manually set the sizes to fit screen?

BTW, to anyone who stumbles upon this, you can just put the BackBufferCopy as a sibling to the other nodes.
E.g., do this:

Control

Shader A
BackBufferCopy
Shader B // All is good

Instead of:

Control

Shader A
BackBufferCopy

Shader B // Can't resize automatically


2.8.1: disaster

extension page blocked, firefox blocked.
I have to close and reopen firefox.
I can't enter into the addon page.
How can downgrade to the previous version?

the add is blocked when I open it

I have an old version (2.1.1), for now I back to that and it works again

I'll try looking into it but I'm using it with similar (even bigger) backlog and nothing like that happens
I assume that wring is the usual "page is slowing browser down" stuff?

yes, "page is slowing browser down" and it remains indefinitely or almost.
impossible to use it like this.
I recovered 2.80 version and it works perfectly.

For me it works perfectly fine, from 2.8.0 to 2.8.1 there was only one change (forced sorting of articles) that indeed caused some minor slowdown on startup but it's far from that bad and I have even bigger backlog than you
Could you give it another try? And could you tell me what is your browser version?
In the meantime I'll seek another way of solving sorting issues

Okay, I cleaned up the comparator used to sort articles and added a new option to disable selection of All Feeds when you open the reader view, if the slowdown is as severe as in your case you should be able to get to options from Extensions panel, depending on your browser version the interface will vary, but the link is there for sure
New version is already available in Releases and should be accepted on AMO in a few hours, sorry for the trouble

yes, probably there is a problem with sorting articles, beacause when I open the 2.81, I see all empty for a long, long, long, time.
I use Firefox 73.0.1
I try the new version as soon as possible.
(and yes, I would like to don't have "All feeds" selected by default at start)

Installed 2.9.0
everything is back to normal
😃

is startup bearable even with All Feeds autoselection or you changed it first?

no, I ever had All Feeds automatically.
after update to 2.9, I unchecked it, but I didn't try with the 2.8.1 version.

okay, thanks for your help


Agree on how to use strings.xml

Particularly with regards to capitalization. Use the textAllCaps property for TextViews for relevant views?

I don't know if we need any convention for string.xml file?
Not sure if I understand this issue.
Do you wanna agree @ealmdahl  on one of those?

using textAllCaps and placing normal text in string.xml
not using textAllCaps and placing uppercase text in string.xml

I think textAllCaps is widely used and is available from API level 14, our app min is 16 so we could use that without any problem. I prefer 1st option.

I would definitely prefer using textAllCaps and writing the string as it would be written normally.

I prefer using textAllCaps too.
How about naming conventions in the strings, though? To me, that ties somewhat in with naming conventions for views and layouts as well.

Which, in turn, might tie into what @jeantuffier and I are talking about around https://github.com/hyperoslo/android-playbook/issues/18#issuecomment-172798466. :smile:


Add TabBar and TabBarView

Field
Description

About
Add Additional Widgets

Github
LeShaurya

Email
<EMAIL_ADDRESS>

Label
Update request

These widgets are used to create tab-based navigation, where the content changes based on the selected tab. TabBar defines the tabs, and TabBarView defines the content for each tab.

@ShubhKanodia can you please assign me this issue.


focus is visible even if keyboard is not being used

Discussed in https://github.com/floating-ui/floating-ui/discussions/2806

Originally posted by herzaso February 25, 2024
I have a menu (floating-ui) that is opened with a click of a button.
When I click on any option, the menu is closed and the focus is not visible.
However, when I click on ESC key, the menu is dismissed and the focus is visible on the button trigger.
Is that intentional? Why is that?
I'm sorry if opening an issue is not the right path - the discussion is 1 month old and I didn't know how to bump it

Can you provide a CodeSandbox or similar reproduction?

If you can provide one this issue can be re-opened. Thank you!


GrammaticalErrorsREADME.md

I updated the verbiage for descriptions of each script.
PR Title
GrammaticalErrorsREADME.md
Summary
These changes are a continuation of grammatical errors addressed in a previous pull request.
Description
I read through the entire README file to identify and fix any grammatical errors. I also updated all the script descriptions to be in the present tense.
The changes are as follows:

I capitalized all coding language names, such as Python and JSON, to comply with the style of writing accepted in the CS community.
I made minor grammatical edits to the file to help create complete statements.
I updated the tense of the action words in the descriptions.

Checks
in the repository

[x] Made no changes that degrade the functioning of the repository
[x] Gave each commit a better title (unlike updated README.md)

in the PR

[x] Followed the format of the pull_request_template
[x] Made the Pull Request at a small level (for the creator's welfare)
[x] Tested the changes you made

Thank You,
Stephanie Damas

This pull request addresses issue #77 .

Thank you!


Pre-Loader has been added in all pages

Pre-Loader has been added in all pages.

Issue Fixed :- #423
@Susmita-Dey @myhacktech Kindly Review it.

lgtm @Susmita-Dey

resolve conflicts @Anubhavgupta14

@myhacktech But there is no conflicts in this PR. As it is mentioned This Branch has no Conflicts with the base branch.

@Susmita-Dey Kindly Review it and if its ok then I request you to merge it.


Regression: Personal Access Tokens (via git-credentials secrets) do not work in v0.11.0

Description
Version v0.11.0 fails to start DevWorkspaces when git-credentials secrets as implemented by https://github.com/devfile/devworkspace-operator/pull/564 are used. When attempting to start a DevWorkspace in a namespace with such a secret, workspace start fails with error

attempting to sync unrecognized object: v1.Secret

This issue has already been fixed in the main branch. Affected commits are between cd7b1e49b741318dce10adf6296168dd2e4eb752 and 74fa148b3f2d907f2432e298ad028c28158fdf80
How To Reproduce

Create secret with label controller.devfile.io/git-credential according to https://github.com/devfile/devworkspace-operator/pull/564
Attempt to start a DevWorkspace

Additional context

Fixed in v0.12.0


Can versions be allowed to go backwards?

Our example docker images are being generated starting with 7 because the versions of our tags are incrementing from 7.0.x. But this is confusing as our pom says 1.0.0:
https://github.com/Activiti/example-runtime-bundle/commit/ae6ec8f0a7d525e39e41113d8e3f210746550a7f#diff-600376dffeb79835ede4a0b285078036
The reason seems to be that in the past our pom.xml did say 7.0.0 and we then moved our version number down. However we can't go back to 1.0.x as jx-release-version won't let us go backwards.
What can we do on this? Would a non-semantic version be possible? The trouble is we can't really move our versions forwards as they've already gone further forwards than we should've let them go.

Create spring boot QuickStart

develop branch -> Pom -> 1.1.0-SNAPSHOT
1.0.x branch -> Pom ->  1.0.0-SNAPSHOT

When building the two pipelines
we should get the right release number for both.


Fix safe get safety condition

Hi,
I believe that the safety condition for the safe_get,
if (isinstance(self.value, list) and isinstance(key, int) or key in self.value):
should be changed into
if (isinstance(self.value, list) and isinstance(key, int) and key in self.value):
Otherwise it creates an error when self.value is None.

I signed it!

/assign @roycaihw

Codecov Report

Merging #158 into master will decrease coverage by 0.12%.
The diff coverage is 60%.

@@            Coverage Diff             @@
##           master     #158      +/-   ##
==========================================
- Coverage   93.56%   93.44%   -0.13%
==========================================
  Files          13       13
  Lines        1384     1388       +4
==========================================
+ Hits         1295     1297       +2
- Misses         89       91       +2

Impacted Files
Coverage Δ

config/kube_config.py
87.76% <60%> (-0.4%)
:arrow_down:

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 4c1ab55...dff473d. Read the comment docs.

/lgtm
/approve


structure of results.xml

Just trying to get an idea of what should actually be in results.xml. Currently we turn out snippets like this:
Word Frequency
<?xml version="1.0" encoding="UTF-8"?>
<results title="frequencies">
 <result title="frequency" word="malaria" count="72"/>
</results>

Binomial Species
<?xml version="1.0" encoding="UTF-8"?>
<results title="binomial">
 <result pre=" species. In Madagascar, bimonthly treatment with the anthelmintic levamisole had no effect on " exact="Plasmodium falciparum" xpath="/html[1]/body[1]/div[2]/div[2]/div[3]/div[3]/p[1]" match="Plasmodium falciparum" post=" parasite density among children aged &amp;lt;5 years but, among children aged ≥15 years, resulted " name="binomial"/>
</results>

All files should contain audit/log metadata. This could be something like:
<metadata
rundate="2016-04-29"
query="species binomial"
program="ami_0.3.1"
os="macosx.10.2"
... etc
inputSteam="..."
stemming="true"
caseSensitive="no"

On Fri, Apr 29, 2016 at 8:00 AM, tarrow<EMAIL_ADDRESS>wrote:Just trying to get an idea of what should actually be in results.xml.
my edits

Word Frequency

<metadata .../>

Binomial Species

<metadata
...
plugin="species" //  maybe better word than species
option-"binomial"
parameters="expandAbbreviations"
dictionary="cmine.species"
dictionaryId="http://cmine...

<result pre=" species. In Madagascar, bimonthly treatment with the

anthelmintic levamisole had no effect on "

exact="Plasmodium falciparum" // the expanded string

xpath="/html[1]/body[1]/div[2]/div[2]/div[3]/div[3]/p[1]"
^^^ keep as this, not "local-name()"
maybe:

xpath="/html[1]/body[1]/div[2]/div[2]/div[3]/div[3]/p[1]/span[@class='sentence'][3]
when we have sentences working

match="P. falciparum" // the surface match
wikidataId="225.2345" or whatever
dictionaryId="1234598" links to CMine dictionary

post=" parasite density among children aged &lt;5 years but, among children aged ≥15 years, resulted "

name="binomial"/>

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/ContentMine/cmine/issues/13

--
Peter Murray-Rust
Reader in Molecular Informatics
Unilever Centre, Dep. Of Chemistry
University of Cambridge
CB2 1EW, UK
+44-1223-763069


Code optimization/consolidation

Consolidated some code in geostore.js and stream.js to be more DRY

lgtm! thanks for the contribution!


Dragging and dropping an item outside a group on the side menu results in duplicating the item

If a item is dragged and dropped outside a group, it duplicates the item
Steps to reproduce the behavior:

Go to 'https://function-adminportal-test.shesha.dev/'
Click on 'Live Mode' switch and set it to edit mode
Click on the side menu and click on a group configured
Drag and drop an item outside the group
Actual Results: The item dragged outside duplicates

Expected behavior
When an item is dragged outside the group, it should not duplicate the item
Video: https://boxfusionint-my.sharepoint.com/:v:/g/personal/hlayisani_mazuze_boxfusion_io/EYmsMN0jpQtIv8ZiJ_EeiNQB9eD_Kabb32-shu1fPjYAhA?e=iumGEX

Related item: #1166

Hi @hlayisanimazuze. It's fixed, please check

Hi @IvanIlyichev , I encountered this bug when I was checking this item: https://github.com/shesha-io/shesha-framework/issues/1618. I will be able to confirm whether it is resolved or not once the new bug has been fixed


Enhancements to the Quick Search

This PR has two enhancements:
It changes the order of the results in the quick search pop-over to show contacts first, and threads later.
It fixes the max height of the results pop-over and adds a scroll to allow users to scroll through the list.
Thanks @dweremeichik and @seesemichaelj  for your inputs.

happy hacktoberfest! great work!

Wow, ninja merge! (FYI @seesemichaelj there is a squash and merge option on the desktop interface).

Nylas Mail, enabling ninja merges since 2016
guess I thought squashing was default for some weird reason; will do that from now on! thanks


SSR Runtime Failure for SvelteKit

Getting the following error from a deployed SvelteKit based application:
Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/workspace/node_modules/firebase-frameworks/dist/sveltekit/firebase-aware.js' imported from /workspace/node_modules/firebase-frameworks/dist/index.js
    at new NodeError (node:internal/errors:399:5)
    at finalizeResolution (node:internal/modules/esm/resolve:326:11)
    at moduleResolve (node:internal/modules/esm/resolve:945:10)
    at defaultResolve (node:internal/modules/esm/resolve:1153:11)
    at nextResolve (node:internal/modules/esm/loader:163:28)
    at ESMLoader.resolve (node:internal/modules/esm/loader:838:30)
    at ESMLoader.getModuleJob (node:internal/modules/esm/loader:424:18)
    at ESMLoader.import (node:internal/modules/esm/loader:525:22)
    at importModuleDynamically (node:internal/modules/esm/translators:110:35)
    at importModuleDynamicallyCallback (node:internal/process/esm_loader:35:14)

It looks like this was already fixed in https://github.com/FirebaseExtended/firebase-framework-tools/commit/35a57cb83aa24cdfda659c71f4e9c0ee36b59b6d, and seems to be functioning correctly in firebase-tools when using firebase serve or firebase emulators:start.
It seems like a release and subsequent update of the functions runtime are required to fix this? I'm probably missing loads of context here so any advice would be great.

This can be worked around currently by adding the following dependency to the svelte app's package.json:
{
  ...
  "dependencies": {
    ...
    "firebase-frameworks": "0.6.1-canary.35a57cb"
  }
}

Fixed in the latest release, sorry about missing that

Thanks James!

Feel free to get in touch with any feedback on the SvelteKit integration, thanks for playing with the experiment.


EXP | how get cookies and set request proxy

What is the example you wish to see?
hello, dear author.
I need to implement the user login effect. However, I could not get the cookies returned by the interface after LOGGING in. I tried to set up the JSON file. sush as:

However, it will be overwritten after the restart.
In addition, I would like to know how to set up the interface request proxy to solve the cross-domain problem
Is there any context that might help us understand?
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate problems.

thx，I found this to be the same problem as setting cookies, I was confusing plug-in development with web development.
I'm not familiar with Google extension development, but with Plasmo's help, I don't have to learn Google documentation.  very nice nice nice


secure connection from client

hi,
is it possible to connect securely from client via https?
or can we connect via client with secure:true and proxy via caddy or nginx to non secure server?
thank you

Yes, it should be possible to connect from client via https.

hi what is the correct way to connect from client side?

FYI:https://github.com/rikulo/socket.io-client-dart/issues/30#issuecomment-517520008


TxCommit() blocks when connection fails

Hi,
I recently changed my AMQP code from confirm to transaction based processing.
It appears that if a connection fails now, the TxCommit function blocks forever
and I have no idea how to recover in that case.
Furthermore the connection error channel is still empty.
Any idea what might be the problem here and how to fix that?
Below you find a minimal working example and some output:
package main

import (
	"github.com/streadway/amqp"
	"time"
)

func main() {
	var (
		queueConn         *amqp.Connection
		connection_errors chan *amqp.Error
		channel           *amqp.Channel
		message_id        uint64
		err               error
		queue_chan               = make(chan *amqp.Publishing, 10240)
		queue_name        string = "queue"
		tx_size           uint64 = 1024
	)

	queueConn, err = amqp.Dial("amqp://<IP_ADDRESS>:5671")
	if err != nil {
		panic(err)
	}

	defer queueConn.Close()

	connection_errors = make(chan *amqp.Error)
	queueConn.NotifyClose(connection_errors)

	channel, err = queueConn.Channel()
	if err != nil {
		panic(err)
	}
	defer channel.Close()

	err = channel.ExchangeDeclare(queue_name, "direct", true, false, false, false, nil)
	if err != nil {
		panic(err)
	}
	_, err = channel.QueueDeclare(queue_name, true, false, false, false, nil)
	if err != nil {
		panic(err)
	}
	err = channel.QueueBind(queue_name, queue_name, queue_name, false, nil)
	if err != nil {
		panic(err)
	}

	err = channel.Tx()
	if err != nil {
		panic(err)
	}

	go func() {
		for {
			queue_chan <- &amqp.Publishing{
				Headers:         amqp.Table{},
				ContentType:     "text/plain",
				ContentEncoding: "UTF-8",
				Body:            []byte("foo"),
				DeliveryMode:    amqp.Persistent,
				Priority:        0,
			}
		}
	}()

	go func() {
		for {
			println("cerrors", len(connection_errors))
			time.Sleep(1 * time.Second)
		}
	}()

	message_id = 0
	for {
		select {
		case con_err := <-connection_errors:
			panic(con_err.Error())
			break
		case qmsg := <-queue_chan:
			err = channel.Publish(queue_name, queue_name, true, false, *qmsg)

			message_id++

			if err != nil {
				panic(err)
			}

			if message_id%tx_size == 0 {
				println("precommit")
				err = channel.TxCommit()
				println("comitted")
				if err != nil {
					panic(err)
				}
			}
		}
	}
}

Output:
cerrors 0
precommit
comitted
precommit
comitted
precommit
comitted
precommit
comitted
precommit
comitted
precommit
cerrors 0
cerrors 0
cerrors 0
cerrors 0
cerrors 0
cerrors 0
^Csignal: interrupt

Your AMQP source I used is at afe8eee, go is 1.7.5 linux/amd64, rabbit is 3.5.7.
Kind regards,
s-lau

This is a duplicate of #304: the lack of channel operation timeouts.


Create a GET API to retreive all the notifications from Candidate addressed to the Admin from the Notifications Table

User Story #137

Also Create a Test Case for the API being created


Support of custom events and event factories: fix #97

Coverage increased (+0.08%) to 81.038% when pulling 9f4c95c9a3cab95c4e9aafcaac443923dbfc43e2 on OrienteerBAP:support-custom-events into 1f7ae3de8330286bbd011df6b15d15ac6c415b28 on messenger4j:develop.

Thanks Ilia for your efforts implementing a generic mechanism for adding new event types. Could you please elaborate the uses cases in more detail? From my point of view there are no user specific event types at all. It is more like that we should focus on adding new event types faster to messenger4j, which are then available to all users. What do you think?

And thanks @alexander-tampier for your review!

Closed due to no response. Please feel free to reopen.


Other embeddings except for ComplEx?

Hi, thanks for providing your code!

Did you select 'ComplEx' because it achieves the best performance?

We did, and all multiplicative models performed similarly for us. We chose ComplEx because it was slightly better.

I also had a try on MetaQA. It seems weird to me because they perform different on the link prediction task, so I thought an embedding with better quality (performing much better on link prediction) would also dominate in MetaQA task. However, they performed similarly. Without relation matching, they all achieved ~0.95 on the 1hop QA.
Do you have any idea why this happens?

You might want to look into this paper: https://openreview.net/pdf?id=BkxSmlBFvr People have pointed out that rather than the scoring function, the training scheme (eg. negative sampling, loss) matters more.

Thanks so much for sharing this paper! I thinks it helps a lot to explain!
BTW, when training embeddings over the half-version MetaQA KG, I got poor results (~0.12) on link prediction, even after training 1500 epochs. Do you have any suggestions on hyper-parameter tuning?

@ShuangNYU What command did you use, and what was the exact output?

For example, I used
command = 'python3 main.py --dataset MetaQA_half --num_iterations 500 --batch_size 256 '
'--lr 0.0005 --dr 1.0 --edim 200 --rdim 200 --input_dropout 0.2 '
'--hidden_dropout1 0.3 --hidden_dropout2 0.3 --label_smoothing 0.1 '
'--valid_steps 10 --model ComplEx '
'--loss_type BCE --do_batch_norm 1 --l3_reg 0.001 '
'--outfile /scratch/embeddings'
I doubt whether it's related to hyper-parameters. What configurations you used to train the embeddings?

I also had a try on MetaQA. It seems weird to me because they perform different on the link prediction task, so I thought an embedding with better quality (performing much better on link prediction) would also dominate in MetaQA task. However, they performed similarly. Without relation matching, they all achieved ~0.95 on the 1hop QA. Do you have any idea why this happens?

@apoorvumang I met this problem, and have read this paper. But I can't exactly understand why. Could you please further explain why the better performance in knowledge embedding can not benefit the downstream KGQA task?

You might want to look into this paper: https://openreview.net/pdf?id=BkxSmlBFvr People have pointed out that rather than the scoring function, the training scheme (eg. negative sampling, loss) matters more.

The point they make in the paper is that all scoring functions perform roughly the same. The reason that earlier models reported lesser numbers than modern reproduction is mostly due to not doing enough hyperparameter search as well as optimisation techniques not available at that time (Adam, dropout, batch norm)

Could you please further explain why the better performance in knowledge embedding can not benefit the downstream KGQA task?
For this you need to convincingly show that 1 model is better than another for KGC on MetaQA (not on other datasets). The models we obtained performed similarly on KGC as well

@apoorvumang  Thanks very much for your quick reply.

The point they make in the paper is that all scoring functions perform roughly the same. The reason that earlier models reported lesser numbers than modern reproduction is mostly due to not doing enough hyperparameter search as well as optimisation techniques not available at that time (Adam, dropout, batch norm)

Could you please further explain why the better performance in knowledge embedding can not benefit the downstream KGQA task?

For this you need to convincingly show that 1 model is better than another for KGC on MetaQA (not on other datasets). The models we obtained performed similarly on KGC as well

Sorry, maybe I didn't make myself clear. I will explain additionally: I tried EmbedKGQA over my own dataset. By dealing with the dataset, I could get different performances (e.g., sometimes high hit@1, sometimes low hit@1) in the knowledge embedding stage using ComplEx. But I got similar results in QA task with different ComplEx performances. I don't know why.

Oh got. Did you do this in the full KG setting?
If so, I think the performance would be same for all models since to answer questions you need to reason over train triples mostly, not unseen triples. I would suggest you check MRR on train split for these models, if its close to 1 (or equal to 1) for both, it might explain the similar performance.
I hope this is clear? It would be interesting to see your results

Could you evaluate KGC (ie MRR) for train set on your data? If the train KG is too large, maybe take a few lines from that to make a test2.txt and evaluate on that? That would give better insight (and then I can make my argument)

@apoorvumang
Different results with different split strategies in knowledge embedding learning stage.

training set: validation set: test set = 3:1:1

training set: validation set: test set = 5:1:1. In this setting, data in validation set and test set are all included in the training set to hope for a better result in the QA task. But I got similar hit@1 result about 66% with these two distinct performances in ComplEx.

So in the 2nd setting the performance is pretty bad even though triples that you are running evaluation on are the ones you have trained on? This seems very weird.
When I trained for MetaQA, I got MRR 1.0 on train set (since it has already seen all the triples) but here it seems much worse.
What library are you using for training KG Embeddings? And what are your dataset stats (ie entities, relations, triples)? Also did you try any hyperparameter tuning?

Yes, it's very weird.
Specific information about my KG:
train:  965250
test:  193050
valid:  193050
Input Files Path : ./benchmarks/split_weight_nosame3/
The toolkit is importing datasets.
The total of relations is 250.
The total of entities is 113446.
The total of train triples is 950341.
Input Files Path : ./benchmarks/split_weight_nosame3/
The total of test triples is 193050.
The total of valid triples is 193050.

I use the OpenKE library (https://github.com/thunlp/OpenKE) for training embedding, but I can't recognize any incorrect operations.

Embedding size used?

Hmm can't really say why this is happening. I would expect filtered MRR to be much higher when evaluating on train set. The graph seems pretty dense but that would still not affect filtered rankings.
Also I wouldn't expect 2 ComplEx models having such different MRR (on train) to give similar hits@1 on QA.
Right now only thing I can suggest is to see if with public datasets you can get MRR close to 1.0 on train set. This should in theory rule out implementation bugs.
Second thing would be hyperparameter tuning. LibKGE has inbuilt hyperparam search so you could use that. But I would do that only after doing the above mentioned sanity check

@apoorvumang  Thank you very much! I will try your suggestions. if there are some findings, I will let you know. Thanks again.

May I know how did translational models perform instead of multiplicative models for EmbedKGQA? Thanks. @apoorvumang

@apoorvumang Different results with different split strategies in knowledge embedding learning stage.

training set: validation set: test set = 3:1:1

training set: validation set: test set = 5:1:1. In this setting, data in validation set and test set are all included in the training set to hope for a better result in the QA task. But I got similar hit@1 result about 66% with these two distinct performances in ComplEx.

Dear @mug2mag,
Good work! I was thinking to implement Hit@3, Hit@10. Could you please throw the light on the implementation details (may be pseudocode or a snippet) will do!
Thanks


fix(gha): use regctl for (multiarch) image copy

Summary
This PR pivots the docker hub re-tagging portions of the release github action to utilize regctl image copy instead of plain ole' docker pull.
The docker pull approach lacked support for multi-architecture builds, result in only amd64 image tags being added to unofficial/official repos.
Sister PR to: https://github.com/Kong/kong-ee/pull/4624
Checklist

[ ] The Pull Request has tests
[ ] There's an entry in the CHANGELOG
[ ] There is a user-facing docs PR against https://github.com/Kong/docs.konghq.com - PUT DOCS PR HERE

Full changelog
Issue reference

Fix #[issue number]

The backport to release/3.2.x failed:
The process '/usr/bin/git' failed with exit code 1

To backport manually, run these commands in your terminal:
# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add .worktrees/backport-release/3.2.x release/3.2.x
# Navigate to the new working tree
cd .worktrees/backport-release/3.2.x
# Create a new branch
git switch --create backport-10335-to-release/3.2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 b5d01ecbcfe6c990f49cee4d8279b4b4267c0373
# Push it to GitHub
git push --set-upstream origin backport-10335-to-release/3.2.x
# Go back to the original working tree
cd ../..
# Delete the working tree
git worktree remove .worktrees/backport-release/3.2.x

Then, create a pull request where the base branch is release/3.2.x and the compare/head branch is backport-10335-to-release/3.2.x.


Re-enable Azure.Core HTTPS tests on MacOs

Fixed in https://github.com/Azure/azure-sdk-for-net/pull/26477


dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: too many redirects

Expected behavior
Actual behavior
Information about the Issue
Steps to reproduce the behavior

...
...

No information provided or steps to replicate - Closing


v3 --version no longer works

after upgrading from v 2.2.2 to v 3.0.1, the command letsencrypt_webfaction --version no longer works.  The console says "Unsupported command --version. Must be one of init, run"

Good catch! I'll get that fixed.

The fix is in master and will be released with the next version.

Version 3.1.0 is released and includes this fix. Thanks!


Roll Engine from d6c05fe8847a to d83528c586e3 (2 revisions)

https://github.com/flutter/engine/compare/d6c05fe8847a...d83528c586e3
2021-07-22<EMAIL_ADDRESS>Roll Skia from 64e67c346c3f to ff322968e901 (1 revision) (flutter/engine#27643)
2021-07-22<EMAIL_ADDRESS>Roll Skia from bc6d93397f9c to 64e67c346c3f (1 revision) (flutter/engine#27641)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


wslpath fails to convert Windows wsl network path to WSL path

Microsoft Windows [Version 10.0.19041.329]
WSL2, Ubuntu, lsb_release -r:
Release:        20.04
Linux version 4.19.104-microsoft-standard (oe-user@oe-host) (gcc version 8.2.0 (GCC)) #1 SMP Wed Feb 19 06:37:35 UTC 2020

Intro
I made a script to open a file from explorer.exe in WSL with vim. It work works fine. However sometimes I am browser within a WSL folder in explorer.exe (i.e. within \\wsl$\Ubuntu-20.04\), and wish to open a file in WSL with vim, then wslpath does not render a wsl path.
Steps to reproduce
michael@DESKTOP-9BB5J32:~$ wslpath "\\wsl$\Ubuntu-20.04\home\michael\foo.txt"
wslpath: \wsl$\Ubuntu-20.04\home\michael\foo.txt

Expected behavior
/home/michael/foo.txt

Actual behavior
wslpath: \wsl$\Ubuntu-20.04\home\michael\foo.txt

You need single quotes ref #5250. I did find however that only one of my distros (focal2 below) is converting while the rest (for example Ubuntu-18.04) does not.

Its working for me:
michael@DESKTOP-9BB5J32:~$ wslpath '\\wsl$\Ubuntu-20.04\home\michael\foo bar.txt'
/home/michael/foo bar.txt

It doesnt escape the spaces, and having to manually change double quotes from the ones windows automatically creates to single quotes is  clunky, but at least its doable.

Thanks; glad it is working for you. Dropping the bug tag. If someone else hits wslpath difficulties like I did in the screencap it can be filed under a new cover.

@therealkenc - that behavior is expected if you are running wslpath from within the focal2 distro. That distro does not have access to the Ubuntu 18.04 filesystem, but agreed the error message could be more clear.


Introduce fill_default_values

Change-type: patch
Signed-off-by: Robert Vojta<EMAIL_ADDRESS>

@cyplo doesn't this & this do what you want?

I think it could be a part of it. I'm thinking of a case where we do not have an optional type type.
From rendition perspective, if the schema defines a non-optional property we could still accept empty {} as a default value for the whole data object, as the form will set it there. It just needs to be an object. It looks weird, because it does not conform to the schema, but would work.
If we'd like to have it conform to the schema, it would work as well, so e.g. { "stringProperty" : ""} should be perfectly fine, as long as it is returned for a schema where the stringProperty does not have a default keyword set as well.
So in other words:
properties:
  - stringProperty:
      type: string

could either result in default value be {} or { "stringProperty" : ""} - both are acceptable.
I kinda like the second a bit more because it is more specific and because it should pass the schema validation. What do you think ?

I did commit a change where I make sure that the root object / array is created.
But this ...
properties:
  - stringProperty:
      type: string

... leading to { "stringProperty" : ""} I do not like. I don't see a reason to do it. This is about default in the JellySchema. Empty object / array is one thing, but real value for string (even empty "") is something completely different.

Cool, let me test this out after lunch and I can try and see what happens when I try to use it in rendition :)

One important note - this isn't replacement of what you do in rendition. It should fill in default values and that's it. So, if you need more, should be done in rendition.


rubocops: add emoji audit

[X] Have you followed the guidelines in our Contributing document?
[X] Have you checked to ensure there aren't other open Pull Requests for the same change?
[X] Have you added an explanation of what your changes do and why you'd like us to include them?
[X] Have you written new tests for your changes? Here's an example.

Opening this for discussion regarding usage of emojis in desc stanza. This is in reference to https://github.com/Homebrew/homebrew-core/pull/134198.

Some changes still needed in homebrew-cask it seems: https://github.com/Homebrew/brew/actions/runs/5324584933/jobs/9669293023?pr=15572

Some changes still needed in homebrew-cask it seems: https://github.com/Homebrew/brew/actions/runs/5324584933/jobs/9669293023?pr=15572

https://github.com/Homebrew/homebrew-cask/pull/149604
https://github.com/Homebrew/homebrew-cask-fonts/pull/7784

All done!

Thanks @razvanazamfirei (and @p-linnane and others), great work!


How to use with local embedbase deployment?

https://docs.embedbase.xyz/tutorials/nextra-qa-docs is only setup for a cloudhosted embedbase - is there a way to get this to run with a local deployment?

@vadi2 yes :)
You can use a local postgres for example
First, run Docker, then:
docker run -d --name pgvector -p 8080:8080 -p 5432:5432 \
    -e POSTGRES_DB=embedbase -e POSTGRES_PASSWORD=localdb \
    -v data:/var/lib/postgresql/data ankane/pgvector

This will start a Docker container with an image that can handle vector data type and semantic search queries
You can then use either OpenAI to create embeddings like so:
# main.py
import os
from embedbase import get_app
from embedbase.database.postgres_db import Postgres
from embedbase.embedding.openai import OpenAI
import uvicorn

OPENAI_API_KEY = os.environ.get("OPENAI_API_KEY")

app = (
    get_app()
    .use_embedder(OpenAI(OPENAI_API_KEY))
    .use_db(Postgres())
    .run()
)

if __name__ == "__main__":
    uvicorn.run("main:app", reload=True)

Make sure to install the dependencies pip install embedbase uvicorn, then you can start Embedbase:
python3 main.py

Make sure to replace references to "https://embedbase-hosted-usx5gpslaq-uc.a.run.app/v1/documentation" to "http://localhost:8000/v1/documentation" in your javascript/ts code.
We recommend using the SDK, although this tutorial does not use the SDK yet, we will update it ASAP.
You can also run a local Embedbase with a custom "embedder" such as sentence transformer as explained here if you want to keep everything local.
Please let me know if that solve your issue

If you don't want to use Docker, you can also go with in memory database:
import uvicorn
from embedbase import get_app

from embedbase.database.memory_db import MemoryDatabase
from embedbase.embedding.openai import OpenAI

app = (
    get_app()
    .use_embedder(OpenAI("<your key>"))
    .use_db(MemoryDatabase())
).run()

if __name__ == "__main__":
    uvicorn.run("main:app")

@vadi2 feel free to reopen the issue with if you have any other problems 😃


Add a OneExpectation cop asserting no more than expect per test

Aim for one assertion per test.
Bad
it 'creates a new user' do
  user = create_user(attributes)

  expect(user.name).to eql('John')
  expect(user.age).to  eql(22)
  expect(user.role).to eql(:admin)
end

OK
subject { create_user }

its(:name) { should eql('John') }
its(:age)  { should eql(22)     }
its(:role) { should eql(:admin) }

OK
it 'creates a new user' do
  expect(create_user(attributes)).to have_attributes(
    name: 'John',
    age:  22,
    role: :admin
  )
end

Better
it 'creates a new user' do
  expect(create_user(attributes)).to eql(
    User.new(
      name: 'John',
      age:  22,
      role: :admin
    )
  )
end

Extracted from #40 (thanks @agrimm)

Does it also verify that there's no fewer than one expect per test?

It probably shouldn't in case you are using a custom matcher or something that contains an expect

Even if you're using a custom matcher, you still normally have an expect.
I would also like a way to verify there's not zero expectations, but I don't think it's a critical part, maybe it could even be a separate cop. (but perhaps this cop should be called something like MaximumOfOneExpectation?)

(Yes, people do unfortunately write tests that have no expectations – the failure case is often indicated by raising an exception).

@andyw8 basically my concern is that this would be very error prone. Consider my recent refactor adding expect_violation.

Now we could track the number of methods inside of a test that are exactly expect and we could have an option that also looks for methods that contain the word expect or assert (so expect_violation would match). Basically though I'm just noting that it is impossible to do the "exactly one test" check perfect but we can employ a set of hacks / heuristics like these. This is the reality of static analysis with ruby though

@agrimm this is implemented in master

I can see the value of this in unit testing, but can someone explain the rationale when applied to integration tests?
We have quite a few feature specs that test multi-step sequences of user interaction, with expectations at many points in the process.
Are we supposed to be creating a context() block for every click_button() and visit_page() in the sequence?

@edslocomb I don't see anything wrong with just disabling this cop for your integration test directory

@edslocomb I was also considering adding functionality for this cop to treat expectations under aggregate_failures as one expectation which could also be a solution to your integration question. Would that be interesting to you? I can expand what I mean if you would like


Query does not fetch all hostgroups

I'm submitting a ...

[ x] Bug report

For bug report please include this information:
Software Versions

Grafana
Zabbix
Grafana-Zabbix Plugin

grafana-4.1.2-1486989747
zabbix-2.2
3.7.0

What did you do?
Trying to  create a template. When selecting the Zabbix Datasource, and running the query: * I only get about half of the Hostgroups from Zabbix, the others are missing. If I reference them in the query: "API Servers.*", I got nothing.
What was the expected result?
I should get all the hostgroups
What happened instead?
Getting less than half

How many groups do you get? Grafana limits visible result to 20 values in template variable editor.

I have less than 20. But in the template editor I get less than 10.
If I try the following query: Amazon.* it bring's me the servers inside Amazon hostgroup.
If I try the same query for a hostgroup that is not showing up, I get None.

Hi,
zbx 3.4.8
Grafana 5.3.1
grafana-plugin 3.9.1
We have 466+ host groups and 4500+ hosts in Zabbix.
When i want to create a graph / singlestat for a host item i Zabbix, i start by locating the host group.
the host groups name starts with "RSD -" but Grafana can only list a specific number of host groups - so i cant find host-group "RSD - Something".
Grafana only returns host groups from "RSD -" from a-i... thats as far as it will go... like its a static number of host groups like 115.
If i search for "RSD -" in zabbix i get 263.
I had to add my server to a host group within the list of 115 host groups, to be able to use it in grafana.
Hope this makes sense to you and thank you for the good work you have done here.
Regards
/Martin

Hi Martin,
This might be related to a bug we've seen with some version permutations where permissions weren't being automatically updated on the Zabbix side.
On your Zabbix sever can you check the group permissions for the account you're using to share to Grafana?  You probably want 'all : read'  - and if you see various hostgroups as deny, then this may explain the discrepancy.


Solved Issue #30

Solved the problem in the case where there are only two slides and  the second one immediately shifts without waiting (Issue #30)

Possible solution to Issue #32. Overrode adapter method, so that views that are detached from viewpager are destroyed, hence not appearing unexpectedly.


Feature: beta commands

Work towards #30
Description
This PR adds a new flow beta command to hold experimental commands that either aren't compatible with existing commands or simply aren't ready for a full release.
The flow beta commands use a revised flow.json format inspired by the discussion in this issue.
The first new command is flow beta start-emulator, which provides the option to read emulator configuration from flow.json rather than command-line arguments.

For contributor use:

[x] Targeted PR against master branch
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work
[x] Code follows the standards mentioned here
[ ] Updated relevant documentation
[x] Re-reviewed Files changed in the Github PR explorer
[x] Added appropriate labels

If possible in the future maybe we can avoid beta command by detecting the config file format and switching to the correct parser. In case the format is old we don't have to even show the commands available with the new format.


Provide a CLI command to export an org to source code

Is your feature request related to a problem? Please describe.
It's hard to do real continuous integration in SalesForce especially with existing projects without having a package export feature in CLI.
What are you trying to do
Export an org to source code without having to jump through hoops and rely on third party untested plugins/solutions.
Describe the solution you'd like
I'd like SF to provide a CLI command "sfdx force:source:export" or something similar that will handle exporting all the org metadata.
Describe alternatives you've considered
I've tried the solution documented by Bob Buzzard (http://bobbuzzard.blogspot.com/2018/07/export-metadata-with-salesforce-cli.html) and after wasting a couple of hours researching the "ENOENT spawnsync" error in his node js script, I finally got it to work (by adding a .cmd to the call to sfdx since I'm on windows). But this was quite painful. I've read numerous articles online by dozens of people having the same issue. it would be nice if SF handles this so we can focus on feature development and not jumping through hoops to get work done.

@mlamrib You are correct in that it is often not a simple/straightforward task to transition an existing org to packages. Unfortunately I don't have any more pointers on that, as we have not made that leap yet.
I will note that It is by no means necessary to do package-based development in order to have a CI/CD setup. It is very possible to have a setup in which incremental changes are deployed to a sandbox.
As far as the installation error -- the plugin is not signed, so you should get a warning when installing it, but you should just be able to enter 'y' to continue with the install. I do not have access to a Windows machine at the moment, but I was able to install it without issue on a Mac just now.
One last thing (and this is very much a forward-looking statement) -- I did hear at Dreamforce that Salesforce is working on bringing the source-tracking features/functionality of Scratch Orgs to Sandboxes, which should be a huge help in the world of CI. But like I said before, it is still currently possible in the meantime to have a CI setup that does a lot of the same functionality.

@klouf-mp that's great news for a Monday! I hope they release the feature very soon.
Can you elaborate on your 2nd paragraph? How do you implement automated deployments using the org model, and how do you select the incremental changes? I believe the change-set feature might be using an api to do a comparison behind the scenes to allow delta deployments and that api might be exposed in the CLI. But I suspect that it would be hard to have the org metadata in SCM in that case.
Again, I really appreciate your thoughts. I wish that SalesForce put some more effort in documenting different scenarios of  migrating to the package dev model and using CI/CD. A lot of the examples they have given in the trailheads are more like "Hello World" examples and that works great for starters. But it doesn't address needs of large enterprises who have more complicated setups.

@mlamrib Currently we use the git diff command to determine which files have been modified in a branch and then pass those file paths as arguments to the sfdx force:source:deploy command. For local development with Developer sandboxes, we have a bash script to do the diff and deploy that can be used as needed in combination with our CLI plugin and the VS Code extensions/CLI. For QA and Staging sandboxes we use Bitbucket and have their Pipeline functionality configured with a similar script to do the diff and validate/deploy (Github has similar functionality I believe, but I am not familiar with it)
Just to be clear, I am not advocating that this is a recommended solution/best practice, but it is what works fairly well at the moment for our team. Definitely far from perfect or ideal, but as Salesforce continues to update the CLI and add/improve functionality we are likewise able to improve our processes in kind. (And on that note, huge shoutout to Salesforce for all of their work on and commitment to the CLI, VS Code extensions and other developer tools!).

@klouf-mp "git diff" is a good trick!

Export an org to source code without having to jump through hoops and rely on third party untested plugins/solutions.
This is possible in recent CLI versions by generating a metadata manifest from an org, then retrieving all source from that org using the generated manifest.
E.g.,
sf project generate manifest --from-org<EMAIL_ADDRESS>--name my-package.xml
sf project retrieve start --manifest my-package.xml --target-org<EMAIL_ADDRESS>--output-dir retrievedSource

Salesforce is working on bringing the source-tracking features/functionality of Scratch Orgs to Sandboxes
Yes, this is now also possible


Official website for micro

What about setting up a GitHub organization, and an official website for micro? This way, we could have something like http://micro-editor.github.io (does not exist yet) and would help for publicity of the project.
I could help work on the design and code of the website. (I've worked on many open source project sites, like Minetest's.)

I could help as well, furthermore an organization could have a repo with unofficial plugins, syntax files, colorschemes, etc.

I agree with @onodera-punpun as I think that having a central repo would be verry helpfull for users and/or modders/themers to use/promote there plugins/themes

I've been working on a website for micro at https://micro-editor.github.io and I think it's just about done.


Reexport NNlib

Codecov Report

Merging #12 (66bbb0b) into main (3dfd2e3) will not change coverage.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@           Coverage Diff           @@
##             main      #12   +/-   ##
=======================================
  Coverage   73.54%   73.54%
=======================================
  Files          14       14
  Lines         344      344
=======================================
  Hits          253      253
  Misses         91       91

Impacted Files
Coverage Δ

src/LuxLib.jl
100.00% <ø> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more