Clean-up unused OsProvServers for OSBMS

If an OpenStackBaremetalSet is initially created without a designated provisionServerName, but is later updated to use a specific OpenStackProvisionServer, we should clean up the former auto-generated OpenStackProvisionServer to avoid leaving clutter in the cluster that could confuse users.  Unneeded OpenStackProvisionServers also would continue to occupy a port on the OCP node on which they were scheduled, since OpenStackProvisionServers use host networking.

@abays: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:
Test name 	Commit 	Details 	Required 	Rerun command
ci/prow/functional 	81ea7fc link 	true 	/test functional
Full PR test history. Your PR dashboard.

go<EMAIL_ADDRESS><EMAIL_ADDRESS>verifying module<EMAIL_ADDRESS>Get<EMAIL_ADDRESS>dial tcp <IP_ADDRESS>:443: i/o timeout
make: *** [Makefile:236: /go/src/github.com/openstack-k8s-operators/operator/bin/controller-gen] Error 1

/test functional

@abays: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:
Test name 	Commit 	Details 	Required 	Rerun command
ci/prow/functional 	81ea7fc link 	true 	/test functional
Full PR test history. Your PR dashboard.

••••••••W1009 16:37:55.696668   21448 reflector.go:462] pkg/mod/k8s.io/client-go@v0.29.9/tools/cache/reflector.go:229: watch of *v1.Secret ended with: an error on the server ("unable to decode an event from the watch stream: context canceled") has prevented the request from succeeding
W1009 16:37:55.696719   21448 reflector.go:462] pkg/mod/k8s.io/client-go@v0.29.9/tools/cache/reflector.go:229: watch of *v1.ServiceAccount ended with: an error on the server ("unable to decode an event from the watch stream: context canceled") has prevented the request from succeeding

/test functional

@abays: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:
Test name 	Commit 	Details 	Required 	Rerun command
ci/prow/functional 	81ea7fc link 	true 	/test functional
Full PR test history. Your PR dashboard.

W1009 17:02:45.844963   20373 reflector.go:462] pkg/mod/k8s.io/client-go@v0.29.9/tools/cache/reflector.go:229: watch of *v1.ConfigMap ended with: an error on the server ("unable to decode an event from the watch stream: context canceled") has prevented the request from succeeding

Fine.  You win for now, Prow.

/test functional

recheck

Maybe there's something genuinely wrong with the functional test I added, but it does work locally for me.
/test functional


chore: add setuptools to recipe and bump version

supercedes #30 and builds on it, adding in setuptools to fix build failure

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


[TASK] Report Macro

Overview
The report! procedural macro is designed for defining reporting functions within a Blueprint. These functions are responsible for cross-chain reporting tasks, such as slashing, rather than completing specific jobs or tasks. The macro supports multiple parameters, providing flexibility across different contexts.
General

[x] params - Specifies the input parameters for the report function
[x] result - Defines the expected output of the report function (use _ if no result is needed).
[x] report_type - Classifies the type of report being generated (e.g., job or qos).
[x] job_id - Associates the report with a specific job or task by ID, linking reports to a relevant jobs if applicable
[x] interval - Defines how often the report is generated (e.g., how many seconds between reports).
[x] metric_thresholds - Specifies any thresholds for the report
[x] verifier - Identifies the Smart Contract or on-chain verifier used to validate the report (currently for EVM).
[x] skip_codegen - Optional boolean parameter that skips code generation if the developer wants to customize the event handler.

Event Handler

[x] Options between Tangle or Evm, handling reports correctly based on the chain type

Testing

[ ] Integration test on Local Tangle Testnet
[ ] Integration test on Local Evm Testnet

Consider that jobs/reports are identical and duplicate job under the report name to deduplicate code if possible.


UTC vs device local time - testing / edge cases

Now that we've moved to UTC we need ensure we've tracked edge cases

Note: we should continue looking into UTC VS device timezone to find all race conditions that could mess up user experience.

https://github.com/cds-snc/covid-shield-mobile/issues/676#issuecomment-659095038

More details https://docs.google.com/document/d/1ip3hnQqLjUy0ayMzFrn8SNZjfYtRehnuzdMiV6V2Fpo/edit#

Close as no action needed, reopen later if necessary


[river] Convert the skmultiflow.trees module to the new API

This is an ongoing work.
So far, I ported the existing tree algorithms from skmultiflow and made them work with dictionaries natively.
I only ran local tests so far, as the data generators are not quite ready yet to enable proper testing.
Changes related to API differences apart, I also did modified some aspects of the trees, such as parameter and variable naming to make them more Pythonic. I also used creme's linear models and VectorDict (in the multi-target regression case) as much as possible.
This is a large PR, so I expect many (hopefully minor) changes to come.
I thought about some points that still deserve some discussion or need to be addressed:

[x] reset method (if it is going to be maintained and its behavior)
[x] parameters in the base Decision Tree class (whether or not they are going to be renamed)
[x] #TODO statements in the code
[x] update the Examples sections
[x] update the docstrings when needed
[ ] leverage creme's tree utilities, such as drawing the resulting structure
[ ] make some constants in the split criteria and attribute observers "visible" for the trees
[x] update random_state occurrences to seed

The previous list should be updated as new questions arise.
I would be glad to get your feedback, @jacobmontiel and @MaxHalford :D

Hi @MaxHalford. Thanks for the comments, I'll address the ones related to documentation.
Maybe I wasn't clear from the beginning: none of the short scripts in the Examples section are working right now. That's why I created a draft PR.
Once #356 is merged, I'll update all the examples using the ported data generators. You can safely ignore the current tests/examples :D
I did run some local tests just to ensure basic functionality, but they were hardcoded tests. Theoretically, the trees should have the properties required to all learners. But I'll only be 100% sure when I run pytest properly.

Thanks for the comments, @jacobmontiel!

As a general comment, there are multiple files that are being marked as new when they were just moved. Can you confirm this? Sometimes the Github interface misses this. The most important part is that if it recognizes them as moved, then it will highlight what "really" changed.

I used git mv during the whole process, so that sounds odd to me :/
Without the diff tracker the reviewing process will be difficult.
Besides that, I have the feeling the file history only goes until the first commit in the-merge, at least on the web interface. Does it sound right?

Hi @jacobmontiel and @MaxHalford. Finally, the trees are ready for proper testing. I might mark this PR as ready for review as well.
Now I'll pull the latest changes and fixes in the-merge and run all the tests with pytest and mypy.

@jacobmontiel and @MaxHalford,
I finished the last bit of housekeeping in the trees. I also removed the legacy trees from creme and moved a few pieces out of the tree module (to river.anomaly as they are used in HST).
In the near future I'll create two additional PRs:

To bring back the tree iterators and drawing functionalities (I am going to leverage the code in creme).
To refactor once more, the tree leaves. Instead of using multiple inheritances to deal with active/inactive nodes, we will deal with their behavior internally. In other words, trees are going to have leaves, period. Leaves might be at a given moment active or inactive.

Point (2) is not going to change anything for the user nor modify the trees' outcomes. It's just a matter of internal organization and a way to streamline our codebase.
As soon as this PR is merged, I'll start working on the two new ones.
Disclaimer: as the PR described in item (2) will change the low-level organization of the trees once more, I am not bothering much about typing annotation at this point. I intend to solve them once the "final" structure is ready.


⚠ Bofrost.es has degraded performance

In 03907d1, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1553 ms

Resolved: Bofrost.es performance has improved in f62b7f6 after 6 minutes.


[hotfix] Fix connector artifact shortcode for document.

Purpose of the change
Fix connector artifact shortcode for v3.0 branch document.
Brief change log

Using connector_artifact instead of artifact.

Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Significant changes

[ ] Dependencies have been added or upgraded
[ ] Public API has been changed (Public API is any class annotated with @Public(Evolving))
[ ] Serializers have been changed
[ ] New feature has been introduced

If yes, how is this documented? (not applicable / docs / JavaDocs / not documented)

Thanks @TanYuxin-tyx for the review, merged to v3.0.


Slow running summary_data_from_transaction_data

My data is not sorted by customer id, would it perform faster if my data comes pre-sorted?

I've also experienced the function being slow, and haven't come up with a good solution unfortunately.

Thanks, I'll let you know if I come up with anything! Closing this issue for now.

This shouldn't really have been closed... the problem still exists I think, though I would have to verify it again.


Not sorting in ruby erb for "class: 'hidden w-full'"

I have sorting work for most of my ruby eruby (.erb) files but the following class usage on the same page does not sort.
<%= link_to 'accounts', accounts_path, class: "pr-1 inline-block w-6 fill-indigo-600 hover:fill-indigo-900" %>

Should it sort and if I need to customise my nvim configs how do I go about doing this?
Thanks

Ah, more digging and I think I see what's up. Embedded ruby in tree-sitter has no decent query mechanism. That's unfortunate. (output_directive (code) @cd)) is as close as I can get without more understanding.
Is that enough to potentially look for strings to sort?


{Containerapp} Avoid to use same function name with extension containerapp

Related command

Description

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Containerapp


py==1.11.0 vulnerability

Hello
It would be great to remove the dependency on the py library which  is no longer maintained anymore and has security issue :
See https://github.com/pytest-dev/py/issues/287
Regards

Who said that it's not maintained? The description there literally says "maintenance mode".
Also, can you explain in what way it can realistically be harmful to this plugin?

You are right, I'm wrong, I must have confused with another repository.
I don't know if this security issue will be fixed in py but I don't know either if it's harmful for pytest-forked.
Sorry, you can close.

Thanks @thebaptiste,
That security vulnerability does not apply to pytest-fork, as it does not use py.svn.
However it is certainly in our interest to remove the dependency to py. :+1:


Exceptions and Errors ignored due to unchecked Futures

Describe the bug
@keith-turner reported an issue where he had the wrong accumulo-core jar file deployed to a cluster and the TabletServer continued to run. When he changed the code to catch Throwable instead of catch Exception, this stacktrace was captured:
java.lang.NoSuchFieldError: TSERV_WAL_BUFFER
        at org.apache.accumulo.tserver.log.DfsLogger.open(DfsLogger.java:425) ~[accumulo-tserver-2.1.0-SNAPSHOT.jar:2.1.0-SNAPSHOT]
        at org.apache.accumulo.tserver.log.TabletServerLogger$2.run(TabletServerLogger.java:277) ~[accumulo-tserver-2.1.0-SNAPSHOT.jar:2.1.0-SNAPSHOT]
        at org.apache.accumulo.core.trace.TraceWrappedRunnable.run(TraceWrappedRunnable.java:52) ~[accumulo-core-2.1.0-SNAPSHOT.jar:2.1.0-SNAPSHOT]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
        at org.apache.accumulo.core.trace.TraceWrappedRunnable.run(TraceWrappedRunnable.java:52) ~[accumulo-core-2.1.0-SNAPSHOT.jar:2.1.0-SNAPSHOT]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]
        at org.apache.accumulo.core.trace.TraceWrappedRunnable.run(TraceWrappedRunnable.java:52) ~[accumulo-core-2.1.0-SNAPSHOT.jar:2.1.0-SNAPSHOT]
        at java.lang.Thread.run(Thread.java:829) [?:?]

It turns out that the issue here is that ExecutorService.submit was being called and the Future result object was not being checked. When he changed the code to use ExecutorService.execute instead, then the AccumuloUncaughtExceptionHandler was invoked, the Error printed in the log, and the VM halted. When using submit, the TabletServer remained up, but in a Zombie non-functional state.
It appears that Futures are capturing Exceptions and Errors, so the UncaughtExceptionHandler is not being invoked. It would be nice if SpotBugs had a rule for this. The closest I found is https://github.com/spotbugs/spotbugs/issues/950, but it's still open.

I was running into this problem where I knew my exception was being mysteriously eaten and was not sure why.  I reached out to @dlmarion on slack and he tracked the problem down in short order.  The crazy situation that created this problem was :

I added a new property to Accumulo locally for an experiment I was running
I used this property in the tserver code
I had an existing cluster where I was running experiments and I only copied up the tserver jar (not the core jar w/ the new enum definition).
The tserver code threw the java.lang.NoSuchFieldError because I did not copy the core jar and that exception was silently dropped.

It looks like ErrorProne has something for this. https://errorprone.info/bugpattern/FutureReturnValueIgnored @jmark99 - didn't you just add something with ErrorProne?

I added the following to the errorprone profile in the parent pom
                   -Xep:FutureReturnValueIgnored:ERROR \

It found 16 errors in the tserver module when I ran mvn -pl server/tserver -Perrorprone clean package -DskipTests

I think we should remove -XepDisableAllWarnings from the errorprone profile configuration so that we can evaluate potential issues. We can use @SuppressWarnings to deal with the warnings that we are ok with.

Removing the DisableAllWarnings is fine, but ErrorProne is fairly aggressive so there will be a lot of SuppressWarning annotations to add. Of course once all warnings are parsed you can always update the pom to ignore warnings we do not care about.

We probably shouldn't be adding SuppressWarnings for errorprone-specific warnings. I've found it to be quite annoying in Eclipse (and perhaps in other IDEs) when warnings that it doesn't recognize are suppressed. In such cases, it actually generates new warnings. But, the only option to hide those warnings about "unnecessary suppressions" is to turn that off entirely... and then it doesn't catch legitimate typos for standard warnings suppressions. I hit this hard when I found that Eclipse doesn't recognize a standard warning "overloads": https://bugs.eclipse.org/bugs/show_bug.cgi?id=559000
I would prefer ignoring warnings categorically that we don't care about in the POM, and have it just fail the build (when that profile is active) when it catches something we do care about. I would prefer to avoid suppressions.
As for this bug with regard to Futures, does this only affect 2.1.0-SNAPSHOT? Or does it affect anything else?

As for this bug with regard to Futures, does this only affect 2.1.0-SNAPSHOT? Or does it affect anything else?

It's hard to tell how pervasive the issue is because setting -Xep:FutureReturnValueIgnored:ERROR fails the build after the first module where the issue is found. My guess is that there are a fair amount of occurrences and some of them need to be addressed. In the case where we are not checking the Future result, we could easily just call another method on the ExecutorService.  The ScheduledExecutorService is a little different because all of the schedule methods return ScheduledFuture objects. We would need to backport the errorprone profile to the 1.10 branch and run it there to know for sure.

As for this bug with regard to Futures, does this only affect 2.1.0-SNAPSHOT? Or does it affect anything else?

The place that started this investigation may not be a problem in 1.10.x because it uses the old LoggingRunnable class which catches and logs throwables.  However, there could be other places in 1.10 that submit/schedule a future and do not use LoggingRunnable.  It would be good to investigate this 1.10 errorprone to find where futures are ignored and see if those instances are problematic.
https://github.com/apache/accumulo/blob/e62816675c51b48ae438766663746b3ce5191251/server/tserver/src/main/java/org/apache/accumulo/tserver/log/TabletServerLogger.java#L273

I have "fixed" a couple of these issues. I'm thinking about pushing my branch to the accumulo repo vs my fork. That would allow others to check it out and see some of the errors. The approach I have been taking is:

If ThreadPoolExecutor.submit is being called and the resulting Future is not being captured, then change the method call to ThreadPoolExecutor.execute.
If ScheduledThreadPoolExecutor is being used, then:
a. Do nothing if the failure of the scheduled task would not cause some type of error. For example if the task is logging something or updating metrics
b. Check ScheduledFuture.isDone in some other location to see if the background task has completed (failed).

I used the following test to check that isDone will return true when the task throws an error. Note that isCancelled is false when an exception is thrown, get will not return, and get(int, TimeUnit) will throw a TimeoutException. isDone seemed the only way to check that an error is thrown.
  @Test
  public void test() throws Exception {

    final AtomicInteger counter = new AtomicInteger(0);
    ScheduledThreadPoolExecutor pool = ThreadPools.createScheduledExecutorService(1, "test", false);
    ScheduledFuture<?> f = pool.scheduleAtFixedRate(() -> {
      if (counter.incrementAndGet() == 3) {
        throw new RuntimeException();
      }
    }, 1, 1, TimeUnit.SECONDS);
    Assert.assertFalse(f.isCancelled());
    Assert.assertFalse(f.isDone());
    Assert.assertThrows(TimeoutException.class, () -> f.get(900, TimeUnit.MILLISECONDS));
    Assert.assertFalse(f.isCancelled());
    Assert.assertFalse(f.isDone());
    Assert.assertThrows(TimeoutException.class, () -> f.get(900, TimeUnit.MILLISECONDS));
    Assert.assertFalse(f.isCancelled());
    Assert.assertFalse(f.isDone());
    Assert.assertThrows(TimeoutException.class, () -> f.get(900, TimeUnit.MILLISECONDS));
    Assert.assertFalse(f.isCancelled());
    Assert.assertFalse(f.isDone());
    Assert.assertThrows(ExecutionException.class, () -> f.get(900, TimeUnit.MILLISECONDS));
    Assert.assertFalse(f.isCancelled());
    Assert.assertTrue(f.isDone());
  }

I'm thinking about pushing my branch to the accumulo repo vs my fork. That would allow others to check it out and see some of the errors. The approach I have been taking is:

A Draft PR to the repo from your fork would be better than pushing the working branch to the accumulo repo. Commits pushed to working branches in the repo still generate commits@ notifications, which some people follow, and it's frustrating because these are difficult to distinguish from commits to our actively maintained branches. A PR (Draft or otherwise) also provides a much better UI for seeing what files have changed and for doing code-reviews/comments on those changes.

I'm seeing an issue when dealing with the ScheduledFutures from the ScheduledThreadPoolExecutors. Specifically, if the future is never checked, then we won't know that an Exception or an Error occurred, and that the task is not running. It may be the case that the probability is low of an Exception or Error occurring, but if it did then we would never know. I'm wondering if instead of scheduling the task to run at periodic intervals we modify the Runnable into a loop with a sleep interval. By submitting the Runnable via execute instead of submit, a Future is not returned and the AccumuloUncaughtExceptionHandler will be invoked. Here are some references from server-base in addition to some that I have already fixed in this PR. I haven't progressed to the server processes yet, but it would be good to know if this approach is acceptable. Currently I'm assigning the resulting Future to a variable and checking it if possible, otherwise putting a @SuppressWarnings("unused") on it.
https://github.com/apache/accumulo/blob/main/server/base/src/main/java/org/apache/accumulo/server/manager/LiveTServerSet.java#L257
https://github.com/apache/accumulo/blob/main/server/base/src/main/java/org/apache/accumulo/server/zookeeper/DistributedWorkQueue.java#L231
https://github.com/apache/accumulo/blob/main/server/base/src/main/java/org/apache/accumulo/server/rpc/TServerUtils.java#L317
https://github.com/apache/accumulo/blob/main/server/base/src/main/java/org/apache/accumulo/server/fs/FileManager.java#L166

Using the loop/sleep approach described above may not be desirable as the total number of threads in the JVM will go up and threads will not be re-used. Another approach at resolving this would be to register the ScheduledFutures somewhere and have 1 thread periodically check them all to make sure they are still running. I think I'll go down this path for now.


[Runtime] First stab at Apollo runtime API

After #45 is merged, we can modify this to use GraphQLQuery as the Observable type in the service interface.
I'm still not 100% sure on what the right API for Apollo is, but this sounds like a sane starting point.
We can keep iterating on it until it feels right
Fixes #44

@sav007 so based on our discussion, just to confirm: I'll generate an extra interface from GraphQLCompiler.write() that will have one method for each of the operations used, so that can be consumed by Retrofit`

Actually this PR is getting too big, already, so let me do this in a separate PR.
@sav007 PTAL on this one, there's a few refactorings and renames. Most importantly, all the Data interfaces now extend Query.Data

So except GraphQLQuery and Apollo classes, that I assume are going to be refactored in next PR, looks great to me


fix-#77:Refactor Form Validation with react-hook-form & zod

Summary
This PR address
1.Validation schema modification
2.Form validation logic enhancement
3. Image selection Improvements
Description
Added react hook form and zod which helps in validating the input fields and to show the error as user fills the required input field rather than showing error after complete submission.
The validation schema has been updated to include checks for the author's name length and the maximum number of selected categories, image selection, blog title length and description of blog to be posted.
Users now have the option to select an image for their blog post either by providing a URL or uploading a file from their device. Additionally, feedback is provided to the user upon image selection.
Images
Helping user to fill the input as per requirement beforehand:

and once corrected, error gets removed-

Issue(s) Addressed
Closes #77
Prerequisites

[x]  Have you followed all the CONTRIBUTING GUIDELINES?

Thank you @ShristiSharan
https://github.com/krishnaacharyaa/wanderlust/pull/250 We need this to go in for us to get this in.
After this goes in,
Kindly rebase this branch and then we'll test it properly

We still have conflicts @ShristiSharan, can you kindly handle this

We still have conflicts @ShristiSharan, can you kindly handle this

I have rebased issue#77 branch from which i raised the PR to refactor-branch(the latest updated one) but no changes or conflicts seems to be resolved here. some help needed to look into it.

End goal is the latest things should come and sit in your issue#77 branch.
ig it is not directly possible, for that you have to first rebase your local forked main branch with the upstream main
And then from your updated main get it into your issue#77 branch...
Try it, we'll figure out later if you feel too challenging, because it is challenging @ShristiSharan xD
Happy learning :)

End goal is the latest things should come and sit in your issue#77 branch.
ig it is not directly possible, for that you have to first rebase your local forked main branch with the upstream main And then from your updated main get it into your issue#77 branch...
Try it, we'll figure out later if you feel too challenging, because it is challenging @ShristiSharan xD
Happy learning :)

Ohkay will try it out to resolve this git challenge(under guidance ) and if it feels too much then will follow the approach to meet the end goal eventually.

Figured out ? @ShristiSharan
Where you able to sync up with @0xmohitsen ?

@ShristiSharan please refer https://github.com/krishnaacharyaa/wanderlust/pull/83
And figure out everything about the error messages...
We want exact to almost similar to this ... You can be more innovative

Figured out ? @ShristiSharan Where you able to sync up with @0xmohitsen ?

yup!...working on it

@ShristiSharan please refer #83 And figure out everything about the error messages... We want exact to almost similar to this ... You can be more innovative

Ohk Sure, i'll look into #83 and discuss with you further as reference drawn

Once the above is done, kindly update with a small video demonstrating the working of it @ShristiSharan

Kindly take care of the comments in the new PR


Feat: use session backend on print user for session command

#1312
This PR adapts the command 'print_user_for_session' to use the session's backend model.

Coverage increased (+0.004%) to 71.343% when pulling f89973b2028b43092c3d44c911f25449718d9e43 on karranb:karran/feat/print_user_for_session-backend into e30b30c9a5c688b41e39b0e1e9dba1e5f0589adf on django-extensions:master.

Thanks ! I left few little notes how we can (hopefully) make it even better :-)

Hi @trbs, awesome improvements. I implemented your suggestions and added a simple test to it.

awesome ! Thanks for the PR @karranb !


Update changelog detail and format

Summary
Update changelog to match existing content and formatting requirements
Implementation details

Testing

New tests cover the changes:
Description for the changelog

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

i believe this is stale from a previous release, closing


Update graphql-tools README

The apollostack GitHub account is old and deprecated. I couldn't find the GitHunt-API project anywhere so I think it's safe to remove this. If anyone knows where to find the project is I can update the link instead.
TODO:

[ ] If this PR is a new feature, reference an issue where a consensus about the design was reached (not necessary for small changes)
[ ] Make sure all of the significant new logic is covered by tests
[ ] Rebase your changes on master so that they can be merged easily
[ ] Make sure all tests and linter rules pass
[ ] Update CHANGELOG.md with your change. Include a description of your change, link to PR (always) and issue (if applicable). Add your CHANGELOG entry under vNEXT. Do not create a new version number for your change yourself.

Fixed in #1308
Thank you for your contribution :)


Cannot forward remote ip address for http

When I send a ws request to the Blazor Server Side then I get the real remote IP address of the remote device, but when the request is a http request to the Rest API then the remote IP is ::1.
Since I cannot test the application on a server without considerable effort, I wonder if it could have to do with the debug environment.
Expected Behavior
Get the remote ip address on http and ws request
Actual Behavior
Remote ip address is ::1 on http and "real" on ws.
Specifications

Version: 20.0.0
Platform: Windows 10
Backend: Microsoft.NET.Sdk.Worker .NET 7.0, Microsoft.AspNetCore

Configs:
ocelot.json
"Routes": [
  {
    "__ServiceName": "Rest API",
    "DownstreamPathTemplate": "/api/{everything}",
    "DownstreamScheme": "http",
    "DownstreamHostAndPorts": [
      {
        "Host": "localhost",
        "Port": 5000
      }
    ],
    "UpstreamPathTemplate": "/api/{everything}",
    "UpstreamHttpMethod": [ "Get", "Delete", "Patch", "Put", "Post" ],
    "SwaggerKey": "crud"
  },
  {
    "__ServiceName": "Blazor Server Side",
    "DownstreamPathTemplate": "/{catchAll}",
    "DownstreamScheme": "ws",
    "DownstreamHostAndPorts": [
      {
        "Host": "localhost",
        "Port": 5001
      }
    ],
    "UpstreamPathTemplate": "/{catchAll}",
    "UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE", "OPTIONS" ]
  }

IpForwardHandler : DelegatingHandler
public sealed class IpForwardHandler : DelegatingHandler
{
    private readonly IHttpContextAccessor _contextAccessor;
    private readonly ILogger<IpForwardHandler> _logger;

    public IpForwardHandler(IHttpContextAccessor contextAccessor, ILogger<IpForwardHandler> logger)
    {
        _contextAccessor = contextAccessor;
        _logger = logger;
    }

    protected override HttpResponseMessage Send(HttpRequestMessage request, CancellationToken cancellationToken)
    {
        AddIpHeader(request, cancellationToken);
        return base.Send(request, cancellationToken);
    }

    protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
    {
        AddIpHeader(request, cancellationToken);
        return base.SendAsync(request, cancellationToken);
    }

    private void AddIpHeader(HttpRequestMessage request, CancellationToken cancellationToken)
    {
        const string key = "X-Forwarded-For";
        if (!request.Headers.Any(x => x.Key == key))
        {
            var ip = _contextAccessor.HttpContext.Connection.RemoteIpAddress.ToString();
            request.Headers.Add(key, ip);
            _logger.LogInformation("Added IP {ip}", ip);
        }
    }
}

Additional question
What would be a feasible way to forward the remote ip address?
as the:
"UpstreamHeaderTransform": {
  "X-Forwarded-For": "{RemoteIpAddress}"
}

Configuration does not seem to do anything. (at least not in the ASP.NET backend)

Well...

When I send a ws request to the Blazor Server Side
Get the remote ip address on http and ws request

Are you saying about Websockets requests? Websockets feature?

Remote ip address is ::1 on http and "real" on ws.

Yeah, you see such facts because of different protocols, and they behave differently. Don't you ask us, as Ocelot team, to fix that? 🤣

    "DownstreamHostAndPorts": [
      {
        "Host": "localhost", // come on!
        "Port": 5000
      }
    ],

You use localhost and local environment PC to host the solution, and you wonder why do you have localhost addresses?
Come on!
What is your upstream settings in global section? I mean this:
    "GlobalConfiguration": {
        "BaseUrl": "somehost:someport"
    }

I guess, BaseUrl is also localhost, right? 😉

IpForwardHandler : DelegatingHandler

Why do you write special delegating handler to get remote address IP? It seems you didn't read the documentation...

I don't see the issue! I'm going to convert to a discussion...


Added OmotenashiCoin (MTNS)

Please check the source code.
I Added OmotenashiCoin.
The information of our website and keys.
Website:http://www.omotenashicoin.site/
And then, Testing of our Ledger wallet client (Lightweight Omotenashicoin client) has already been completed on the mainnet.
So please consider merging to your firmware.
Lightweight Omotenashicoin client URL:
https://github.com/omotenashicoin-project/OmotenashiCoin-HDwalletbinaries/tree/master/stable
Linux - electrum-mtns-3.3.9-x86_64.AppImage
Windows - electrum-mtns-3.3.9.exe
COIN_P2PKH_VERSION=63
https://github.com/omotenashicoin-project/OmotenashiCoin/blob/master/src/chainparams.cpp#L184
COIN_P2SH_VERSION=18
https://github.com/omotenashicoin-project/OmotenashiCoin/blob/master/src/chainparams.cpp#L185

close


question about read-only store

I use build-push job load five records to read-only store, but i can search only two records use StoreClient API . I want to find why i cant find the other record.  What can i do for it?

Is this on the latest master? Do you think you could provide a sample dataset and unit test that reproduces the error? We'll be glad to fix it if there is indeed such a bug (:

Thanks FelixGV, i have used the latest master , and i will put my store.xml and dataset here, but i don't know how to give you my unit test, so i describe how i executed.

I get the avro file by useing my mapreduce job ,the result file contains key and value like this

Obj^A^B^Vavro.schemaÌ^B{"type":"record","name":"test","namespace":"test","doc":"test","fields":[{"name":"fieldkey","type":"string","doc":""},{"name":"fieldvalue","type":"string","doc":""}]}^@<8e>LÎÝ0+zö«Í56^Yìí^O^D>
test0^Ntest1
test1^Ttest2<8e>LÎÝ0+zö«Í56^Yìí^O

Then i execute my build push job create file local file .metadata   ,0_0_0.data,0_0_0.index,1_0_0.data,1_0_0.index
Finally i can get test1 by key equals test0, but i cant get test2 by test1
store.xml:

<store>
    <name>test</name>
    <persistence>read-only</persistence>
    <description>Test store</description>
<EMAIL_ADDRESS>    <routing-strategy>consistent-routing</routing-strategy>
    <routing>client</routing>
    <replication-factor>1</replication-factor>
    <required-reads>1</required-reads>
    <required-writes>1</required-writes>
    <hinted-handoff-strategy>consistent-handoff</hinted-handoff-strategy>
    <key-serializer>
                         <type>avro-generic</type>
                         <schema-info version="0">"string"</schema-info>
    </key-serializer>
    <value-serializer>
                         <type>avro-generic</type>
                         <schema-info version="0">"string"</schema-info>
    </value-serializer>
</store>

dataset
test1
test2

What was the conclusion ? Just curious to understand what caused this.
Thanks,
Arun.
On Wed, Feb 11, 2015 at 6:46 PM, ARES-Z<EMAIL_ADDRESS>wrote:

Closed #238 https://github.com/voldemort/voldemort/issues/238.
—
Reply to this email directly or view it on GitHub
https://github.com/voldemort/voldemort/issues/238#event-234410631.


CloudTask unable to trigger my cloud function

Environment details

OS: macOS 10.15.4
Node.js version: 8
npm version: 6.14.5
@google-cloud/tasks version: 2.0.0

Steps to reproduce
```
const { CloudTasksClient } = require('@google-cloud/tasks');
const { secret } = require('../config');
// Instantiates a client.
const client = new CloudTasksClient();
const project = secret.project_id;
const serviceAccountEmail = secret.client_email;
const queue = 'infiqueue';
const location = 'us-central1';
const url = 'URL-TO-ENDPOINT';
const parent = client.queuePath(project, location, queue);
const payload = {
    entity_id: "123",
    location_id: "abc"
};
const parent = client.queuePath(project, location, queue);

const task = {
    appEngineHttpRequest: {
        httpMethod: 'POST',
        url,
        body: Buffer.from(JSON.stringify(payload)).toString('base64'),
        headers: {
            "Content-Type": "application/json"
        },
        oidcToken: {
            serviceAccountEmail,
        }
    }
};
const request = {
    parent: parent,
    task: task,
};

console.log('Sending task:');
console.log(task);
// Send create task request.
const [response] = await client.createTask(request);
const name = response.name;
console.log(`Created task ${name}`);
return name;

  1. Successfully created the task on CloudTask by running above code.
  2. The task keep retry but never trigger my target cloud function,
  retry reason is "Instance Unavailable", status code is "404".
  However, postman easily triggered the target endpoint.
  3. The endpoint is public access.
  4. Task id is :<PHONE_NUMBER>582571541

If your GCF does not need an authenticated invocation, then you can remove:
oidcToken: {
            serviceAccountEmail,
        }


Not able to remove flag from country

Not able to remove flag from country

Flag will be removed in the future.. hopefully next week
On Thu, 17 Jun 2021, 12:03 PM Primocys, @.***> wrote:

Not able to remove flag from country
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/prof22/country_state_city_picker/issues/15, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ADSLDABDRA5DJ5KVYITLTN3TTHJB3ANCNFSM463NTQ3Q
.

ok

Still unable to remove flag

Its problem for me too plz make it happen I am not able to send data to the server... thanks in advance

Is the flag an issue?

Can I see the log?

flag is concatenated with the country name and I am not able to get the name of country without flag concatenation
there should have to be something like
""country.name
""country.flag
this will be more benefitated

the reason I am not able to send data to the server is.
country name is concatenated with country flag
this behavior never shoes error....


Replace httpRoot with httpAdminRoot and httpNodeRoot for Node-RED

Proposed changes
This PR replaces httpRoot with httpAdminRoot and httpNodeRoot for Node-RED.
Types of changes
What types of changes does your code introduce to the project: Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Update only documentation, not any source code.

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of
them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before
merging your code.

[X] I have read the CONTRIBUTING doc
[ ] I have signed the CLA
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)
[ ] Any dependent changes have been merged and published in downstream modules

Further comments
N/A

Codecov Report

Merging #71 (6a034ab) into main (d4f6aca) will increase coverage by 0.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #71      +/-   ##
==========================================
+ Coverage   94.90%   94.93%   +0.02%
==========================================
  Files           2        2
  Lines         864      869       +5
==========================================
+ Hits          820      825       +5
  Misses         44       44

Impacted Files
Coverage Δ

config.sh
100.00% <100.00%> (ø)

lets-fiware.sh
94.57% <100.00%> (+0.02%)
:arrow_up:

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 d4f6aca...6a034ab. Read the comment docs.


Bibtex in Hugo

Create Bibliographies in Hugo with a shortcode
https://github.com/pprevos/hugo-thirdhemisphere/blob/master/layouts/shortcodes/bibliography.html

Use "bibtex_js". Check https://aben20807.github.io/about/


Handle "disabled" attribute on page load

If the angucomplete-alt tag has the "disabled" HTML attribute set on it when the page loads, then also the inner input field will receive this attribute and the disableInput scope variable is set to true.
Furthermore, the example no. 13 has been fixed since the checkbox was not working after the first time.

Any chance for this PR to be integrated? It's pending since last year.


Slash at the end of generated image urls

The urls for the generated images have a trailing slash. See https://www.getgutenberg.io/documentation/content/image-processing/ for examples.
As far as I understand
https://www.getgutenberg.io/documentation/content/image-processing/gutenberg.jpg/ -> refers to a folder called gutenberg.jpg and the browser/server will look for a index.html in that folder
and
https://www.getgutenberg.io/documentation/content/image-processing/gutenberg.jpg -> refers to the actual file
It seems that that the server you use (I think it's netlify) strips the trailing slashes by itself, we sadly ran into a case where we could not change the configuration of the server and were forced to fix the urls with js.
What do you think about this? Would you consider this a bug?

The shortcode used in the gallery doesn't use the trailing_slash argument
You can use the , trailing_slash=false. You can specify whether you want one or not: https://www.getgutenberg.io/documentation/templates/overview/#get-url
I'm wondering whether it should be the default for get_url to not have trailing slash though, it causes more issues having them than not,

I would prefer if the shortcode would return an string without a slash at the end as the default. Maybe there is a way to detect if a slash is needed or not?
I can look into this and send you a pull request in the following days

Maybe there is a way to detect if a slash is needed or not?

The issue only arises in get_url global function I believe which is mostly used for assets so inverting the default should be fine

Maybe the default should be "smart," rather than true, so it adds a slash only if there's no file extension?

Maybe the default should be "smart," rather than true, so it adds a slash only if there's no file extension?

get_url is called pretty much only for assets so I think it's safe to default to not having a trailing slash


New version: Amazon.Corretto.8 version <IP_ADDRESS>2

Pull request has been created with Komac v1.11.0 :rocket:
Microsoft Reviewers: Open in CodeFlow

@microsoft-github-policy-service agree

Hi @ccorrion,
This manifest adds Apps and Features entries that aren't present in previous PR versions. Should these entries be added to the previous versions also?
(Automated response - build 518.)


Breaking Pagination?

The v1.3.1 update to the pagination plugin fixed the problems with it for the antimatter theme. But if the theme is switched to bootstrap, more odd problems occur.
To a fresh blog skeleton, I gpm installed bootstrap and switched the theme to it. I set the blog page to show 3 articles. The gives me three pages shown in the pagination block at the bottom of the page.
From page one, the urls to page 2 and 3 in that pagination blog are fine.
But it if click on 3 for page three, I get to page 3, but some of the remaining links in the pagination are wrong. Page 2's link is fine. But page 1's link is http://www.grav.dev/page:3.
The left arrow is correct as http://www.grav.dev/page:2 but using it to go to page 2 leaves the left arrow url at http://www.grav.dev/page:2. The 1 in the pagination block points to http://www.grav.dev/page:2, when on page 2, also.

Probably more a problem with the boostrap theme than the blog skeleton.  Can you put this issue there please?

I can move it, but maybe I need to move it to the Paginate plug-in? The same weirdness happens with the Grav Team theme Striped (on a clean blog skeleton install) and my own theme on my site.

Bootstrap with latest Grav, Bootstrap theme, + Pagination works fine for me:
http://demo.getgrav.org/bootstrap-skeleton/
also striped:
http://demo.getgrav.org/bootstrap-skeleton/
How is it breaking for you? It might be related to running at root only. I don't have a test install with these as root currently.

Hmm. Your demo sites work fine for me, too.
My install is a standard blog skeleton install with bootstrap and strip added via gpm install. It's at http://www.grav.dev/ served locally via MAMP PRO on PHP 5.4.42.
When I'm on page 2, my pagination looks like this:

You can see that the back arrow links to page:2 as does the 1 item.
How can I dig into this more to describe the problem better?

what does the source look like for the pagination?

Ask that a different way? What part of the source?

Your browser interprets the link when it provides you the preview, but it doesn't actually display the generated link, which is the important part when trying to determine what is going on.
If the browser doesn't understand the link, it merely shows as the current page (what you pasted)

When on page 2:

Oh I think I know what the problem is.. I put a fix into the pagination.html.twig to remove double '//' and that is probably overridden in both bootstrap and striped, so those themes will probably need an update to reflect the fix.
Also, probably need to actually "View source" when having a problem, and find the section of code.  Rather than the inspector, which has already 'interpreted' the code.

View source is messy! :)

«

1

2

»

Maybe that's the problem as I have it with my site, too and I override pagintation.html.twig. I'll experiment a bit more by using the default pagintation.html.twig instead...

Wait! Bootstrap does not appear to override pagination.html.twig.

yah doesn't might be something else with your theme then.

But I get the problem on a clean skeleton install using bootstrap.

i'll have to look at it later.. got chores to do today and wife is calling :)

OK. No worries...

Fixed by the latest Grav updates and corrections to my theme templates to match newest antimatter templates.


can't able to parse the html with &#

result with jsoup:

when I parse the html like above, I get the wrong span text。
when I use HtmlCleaner,it's ok。
what's the problem with me?

You are trying to encode characters that are not on any valid UTF-8 range so this is the expected behavior.

Also, apart from being out of range... it works?
https://gist.github.com/jhy/0d7de86c49f47ee19c06ae086c520638
I get this char back undefined u+1875d which is 𘝝
Please don't post pictures of code. Please provide a full code sample with what you want and what you're getting (in a java test case) so we can repro.


Preparing for Package System

[ ] Plugin Manager for Package
[ ] New way of Referencing
[ ] Test with Packages & Package Manager

dup


Portfolio of Rishita Shaw added

all hail Miss Rishita !

Thank You so much... U r really the best


Fixed shifted header by changing padding

Summary of changes
The problem appeared when the table contained a vertical scrollbar, which shifted the table to the right, but not the header.
Now the first empty cell of the header has padding from all sides.
Context and reason for change
Fix #1220
How can the changes be tested

Noted that the issue still exists:


Website overflows on smaller screens

The website overflows beyond the max width of the screen in small screen scenarios (such as phones) due to no width being defined for the containing element.
Since body and #sb-root already have the correct width: 100%; set, you should just need to set the same rule on #sb-editor and .cm-content to propagate that change down.
Adding the following css rule resolves the issue for me:
#sb-editor,
.cm-content {
  width: 100%;
}

Yep, seems to work 👎


etcd failing to start

appcelerator/etcd:3.1 (based on etcd v3.1.0-rc.0) fails to start. Rolling back to 3.0 fixes. The swarm script should specify 3.0 until 3.1 is verified to work.

this is (another) Docker for Mac issue, working fine on Linux.


Create package error: Guards.canExecute (package:fvm/src/utils/guards.dart:15:7)

I am trying to create package by fvm like this:
fvm flutter create --template=package my_project
I got this error :
$ fvm flutter create --template=package my_project

Cannot execute

#0      Guards.canExecute (package:fvm/src/utils/guards.dart:15:7)
<asynchronous suspension>
#1      _runCmd (package:fvm/src/utils/commands.dart:88:3)
<asynchronous suspension>
#2      flutterGlobalCmd (package:fvm/src/utils/commands.dart:76:10)
<asynchronous suspension>
#3      FlutterCommand.run (package:fvm/src/commands/flutter_command.dart:39:14)
<asynchronous suspension>
#4      CommandRunner.runCommand (package:args/command_runner.dart:196:13)
<asynchronous suspension>
#5      FvmCommandRunner.run (package:fvm/src/runner.dart:73:24)
<asynchronous suspension>
#6      main (file:///home/Alt/.pub-cache/hosted/pub.dartlang.org/fvm-2.0.4/bin/main.dart:6:8)
<asynchronous suspension>

This is my FVM version:
$ fvm --version
2.0.4

SDK list:
$ fvm list
Cache Directory:  /home/Alt/fvm/versions

stable
1.27.0-4.0.pre
1.22.6

and doctor
$ fvm doctor

No FVM config found:
/mnt/SSDP/Project/AltProjects/plugins
Fvm will run the version in your PATH env: null

Configured env paths:
___________________________________________________

Flutter:

Dart:
/usr/lib/dart/bin/dart

@tazik561 it seems there is no version configured for global or for the path, so there is no fallback.
Go ahead and do “fvm global stable” and try the command again.

@tazik561 it seems there is no version configured for global or for the path, so there is no fallback.
Go ahead and do “fvm global stable” and try the command again.

Closing this, please  reopen if this does not solve your provlem

Closing this, please reopen if this does not solve your provlem

Sorry for late, I run fvm global stable
Alt@MxAlt:~
$ fvm global stable
Flutter "stable" has been set as global
However your "flutter" path current points to:

.
to use global Flutter SDK through FVM you should change it to:

/home/Alt/fvm/default/bin
Alt@MxAlt:~

So after that I again run doctor:
$ fvm doctor

No FVM config found:
/home/Alt
Fvm will run the version in your PATH env: null

Configured env paths:
___________________________________________________

Flutter:

Dart:
/usr/lib/dart/bin/dart

Alt@MxAlt:~

I still got No FVM config found: .

That means there is no config in the path. You are probably not running the command within a flutter project.
Also you haven't set the flutter app as described in the instructions.


Release v7.136.0 as latest-rc

Building latest-rc [skip-validate-pr]

closed to wait for fixes in plugin-org and pdt/templates


Question About Paper

Hi thanks for your good work!
I have a question about the paper.

I can't understand how Z_t's dimension is t by n not l by n
Should t be considered the number of video snippets equal to l?
Thank you

Hi thanks for your good work!
I have a question about the paper.

I can't understand how Z_t's dimension is t by n not l by n
Should t be considered the number of video snippets equal to l?
Thank you

Sorry, it's a typo, which should be l by n actually. If you have any further questions, pls feel free to contact me.

Thank you now it is clear.
Once again, thank you for your good research.


Add PHP 8 support

Tests are green for both PHP 7 and 8 but please, review the PR carefully. ;)
It left to fix some warning with php_error_docref %ld vs %lld.

@kea what are your thoughts on removing PHP7 support? It's only going to be actively supported for 5 more months[1]. Personally I would remove all the PHP7 support and focus on a great PHP8 experience, but I am curious to know your thoughts.
[1] https://www.php.net/supported-versions.php

I don't have a strong opinion about removing PHP7 support. I've only seen other extensions maintain both, and I followed that path. But if you want to stay with the 2.3.x for PHP 7 and release the 2.4.x for PHP 8 with stub and other improvements, I think it should be easy to maintain.

That's shipped 🚀  http://pecl.php.net/package-info.php?package=sdl&version=2.5.0


Second level imports

This PR imports most of the classes and functions defined in submodules at third level to the module level at second level and minimizes the verbosity of the import statements.
For example import simsopt.geo.curve.Curve can now be imported as import simsopt.geo.Curve. Some of the classes and functions especially those that are infrequently used may still need to be imported from their submodules.
Please let me know if any important class or function is missed.

When I build the docs for this branch, there are a ton of warnings like this:
/Users/matt/simsopt/simsopt/src/simsopt/mhd/__init__.py:docstring of simsopt.mhd:1: WARNING: duplicate object description of simsopt.mhd, other instance in simsopt.mhd, use :noindex: for one of them
/Users/matt/simsopt/simsopt/src/simsopt/mhd/boozer.py:docstring of simsopt.mhd.boozer.Boozer:1: WARNING: duplicate object description of simsopt.mhd.Boozer, other instance in simsopt.mhd, use :noindex: for one of them
...

Is there a way to suppress these?

If you delete the build folder inside the docs, these warnings go away.
Bharat Medasani
Engineer
Princeton Plasma Physics Lab (PPPL)
On Thu, Jun 23, 2022 at 4:36 AM Matt Landreman @.***>
wrote:

When I build the docs for this branch, there are a ton of warnings like
this:
/Users/matt/simsopt/simsopt/src/simsopt/mhd/init.py:docstring of simsopt.mhd:1: WARNING: duplicate object description of simsopt.mhd, other instance in simsopt.mhd, use :noindex: for one of them
/Users/matt/simsopt/simsopt/src/simsopt/mhd/boozer.py:docstring of simsopt.mhd.boozer.Boozer:1: WARNING: duplicate object description of simsopt.mhd.Boozer, other instance in simsopt.mhd, use :noindex: for one of them
...
Is there a way to suppress these?
—
Reply to this email directly, view it on GitHub
https://github.com/hiddenSymmetries/simsopt/pull/239#issuecomment-1164119449,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA62VEAKHPBW73XWTMVL3TDVQQOZHANCNFSM5YZG263Q
.
You are receiving this because you authored the thread.Message ID:
@.***>

If you delete the build folder inside the docs, these warnings go away. Bharat Medasani Engineer Princeton Plasma Physics Lab (PPPL)

Even after deleting the docs/build folder, when I then run make html I get all those warnings.

simsopt.mhd.rst had duplicate module level API doc generation. I removed
it. Now those warnings should go away.
Thanks for catching this.
Bharat Medasani
Engineer
Princeton Plasma Physics Lab (PPPL)
On Fri, Jun 24, 2022 at 2:49 AM Matt Landreman @.***>
wrote:

If you delete the build folder inside the docs, these warnings go away.

—
Reply to this email directly, view it on GitHub
https://github.com/hiddenSymmetries/simsopt/pull/239#issuecomment-1165258831,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA62VECIMQZDOUXACAJVN7DVQVK6PANCNFSM5YZG263Q
.
You are receiving this because you authored the thread.Message ID:
@.***>


Add ability to add associations to update on save instead of only omitting them

Describe the feature
Please excuse me if this has been discussed before...
Currently it seems like you can only omit Associations from getting saved. You can omit saving all associations (Omit(clause.Associations)), or you can omit saving specific ones (Omit("AssociationName")).
I would like the ability to add specific associations, and unless an association is specified it is not saved.
I think a simple way of doing this would be to evaluate the Select options after the Omit options here. This would allow you to omit all associations then add back the specific ones you want.
Motivation
Let's say I have model Object and this model has associations Association1, Association2, and Association3, and when I save Object I only want Association2 to be saved. To do this the query would look as follows:
gormDBCli.Omit("Association1", "Association3").Save(objects)

The issue I have with this method is that if somebody comes and adds a new association to Object they then need to remember to omit that association from every Save (or create or update).
Related Issues

I think a simple way of doing this would be to evaluate the Select options after the Omit options here. This would allow you to omit all associations then add back the specific ones you want.

This is a breaking change, in the chained api we have no way of knowing the actual purpose of user Select and Omit.
We specify an order, there is no right or wrong, it just happens to check the Select first.
tx.Select("Association1", "Association2")
tx.Omit("Association3")
tx.Omit("Association2")
tx.Select("Association2")
tx.Save(...) // we don't know their purpose

The issue I have with this method is that if somebody comes and adds a new association to Object they then need to remember to omit that association from every Save (or create or update).

I think Session or Scope can be used here to distinguish them
https://gorm.io/docs/session.html#content-inner
https://gorm.io/docs/scopes.html#content-inner

I think Session or Scope can be used here to distinguish them

Can you explain this a little more, or give an example of what you mean, i.e. how exactly can I use Session or Scope to not update any association in my project on save by default.

Not stale


Fix: handle monitor names with slashes

⚠⚠⚠ Since we do not accept all types of pull requests and do not want to waste your time. Please be sure that you have read pull request rules:
https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma
Tick the checkbox if you understand [x]:

[x] I have read and understand the pull request rules.

Description
On the details view, the group text above the monitor name is generated by checking for slashes in monitor.pathName. This causes issues when the monitor name contains a slash. E.g. for the name GitHub (/louislam) the group GitHub ( is detected.
What changed:

a new property path on Monitor that stores the path as an array
pathName is derived from path to not double the db requests

Type of change
Please delete any options that are not relevant.

Bug fix (non-breaking change which fixes an issue)
User interface (UI)

Checklist

[x] My code follows the style guidelines of this project
[x] I ran ESLint and other linters for modified files
[x] I have performed a self-review of my own code and tested it
[x] I have commented my code, particularly in hard-to-understand areas (including JSDoc for methods)
[x] My changes generates no new warnings
[ ] My code needed automated testing. I have added them (this is optional task)

Screenshots (if any)

Description
Before
After

No group, no slash

No group, one slash

No group, two slashes

Group, no slash

Group, one slash

Group, two slashes

I updated the jsdoc and would not apply the other change as explained in the thread.

I am not quite thrilled about adding another field to the MonitorJSON, but after looking at the usage of pathName, I agree that this is the better choice ^^

We could remove pathName from the monitor model and use monitor.path.join(' / ') instead - but that would only spread complexity around the code-base.

but that would only spread complexity around the code-base

MonitorJSON is exported to notifications and may thus be used in templates
⇒ inlining would be a breaking change
I don't really see a benefit from doing so
⇒ I'd vote for keeping it as is


Add notice on breaking change in v0.12.40 release notes?

Bicep version
Bicep CLI version 0.12.40 (41892bd0fb)
https://github.com/Azure/bicep/pull/8876 introduced a breaking change for cases where you have a parameter named the same as a type (e.g. param array array).
This caused some existing templates to break. Not a big deal, and I know that there is not a strict breaking change policy (yet), but it would be good if this was more clearly highlighted in the release notes.
To Reproduce
Steps to reproduce the behavior:
This fails:
main.bicep:
param string string = 'hello'
output message string = string

bicep build main.bicep
main.bicep(1,14) : Error BCP287: 'string' refers to a value but is being used as a type here.
main.bicep(3,12) : Error BCP287: 'string' refers to a value but is being used as a type here.
main.bicep(3,21) : Error BCP079: This expression is referencing its own declaration, which is not allowed.

This needs to be changed to:
param myString string = 'hello'
output message string = myString

to transpile.
FYI: I can't get this to work (as I would assume from the PR that introduced it)
param string sys.string = 'hello'
output message sys.string = string

bicep build main.bicep
main.bicep(1,7) : Warning no-unused-params: Parameter "string" is declared but never used. [https://aka.ms/bicep/linter/no-unused-params]
main.bicep(3,16) : Error BCP306: The name "sys" refers to a namespace, not to a type.
main.bicep(3,19) : Error BCP018: Expected the "=" character at this location.
main.bicep(3,35) : Error BCP009: Expected a literal value, an array, an object, a parenthesized expression, or a function call at this location.

Additional context
Could you update the release notes to include issue description from https://github.com/Azure/bicep/pull/8876 to highlight that there is a breaking change?
https://github.com/Azure/bicep/releases/tag/v0.12.40

Yes, we should have done a better job informing of this breaking change. We made an (incorrect!) assumption that nobody would have parameters named this way and treated this breaking change too casually. I will update the release notes and we will do a better job of this in the future!
I'm going to move this to a discussion for now.


Maintain Lunar consistency in field naming

I think it is good to stay as close to Lunar as possible when naming fields. For example, the field lines on the cart causes confusion for me because I expected cart-lines. This also applies to addresses and cart-addresses. What do you think @dominik-wbz and @theimerj?

Hey @tdwesten, you are right. I will rename the relations to make it more consistent.


Transform color image to depth camera / Awareness for unknown color

I have the problem that when transforming a color image to the depth camera, there are large patches of re-used texture in the fringe areas where there should be no color information available.
Here is a picture of the result of this operation, in this case with a hole puncher:

Note the left edge area, where large portions of the texture are re-used. I would expect these patches to be of undefined color, i.e.:

It's even visible in the official documentation (right lower picture).
Is it possible to transform the color image to the depth camera and just assign for example an alpha of 0 to those pixels which are occluded, similar to how it is handled when transforming a depth image to the color camera?
My problem is that I do not need a point cloud with such a high resolution, and I don't want to waste so much computation effort to transform the depth image to the color camera, just to downsample it afterwards. Using a lower RGB resolution is not an option, because I need the RGB image for other purposes.
System:

OS with Version: Ubuntu bionic
SDK Version: v1.2.0

(Might be a duplicate of #761, not sure)

Thank you for your response.
The problem is that I also have to do processing with the pointcloud. I do not need a huge pointcloud, so I'd have to downscale it again. This means, to get a pointcloud which suits my needs I need to:

Transform the depth image to the color camera, resulting in a giant pointcloud (takes more time than necessary, because I don't need it at that resolution)
Process the whole giant pointcloud to downsample it (is superfluous because I don't need that pointcloud resultion in first place)
Process the pointcloud I actually need

This means that a lot of processing power is wasted. It would help a lot if we could downscale the RGB image to map the depth image to that downscaled RGB image.

@christiandreher Thanks for the feedback. Yes, your idea make sense to me. In fact, you can do that already, you can downsample the RGB image to some resolution that you like. And you can update the k4a_calibration_t color camera intrinisics with the corresponding scale with your downsampled image (focal length/principle point and also the resolution), then you can use the updated calibration object to pass into the transformation create function and use the transform depth to color as it is.

Thank you very much for your help and support.
This suggestion was really helpful. I was indeed able to achieve what I want by following the steps exactly as you described.

@christiandreher
I would be interested in using this too because I don't need a point cloud with a higher resolution than the depth image.
Could you elaborate about it more in detail what I exactly need to set in the SDK to get a color image with the same resolution as for example the NFOV_UNBINNED depth image?
Then I can switch to this method instead of using the color_to_depth function.

@RoseFlunder , I provided some simple sample code that you can mimic to help reduce the depth_to_color transform compute with downscale the color image before transform (and how do you fake such a calibration object for transformation initialization). This process assume the downscaling having the color image aspect ratio unchanged.

@rabbitdaxi Thank you very much. That is very helpful.


send_message() got an unexpected keyword argument 'delete_after'

Summary
Delete after unexpected keyword argument however according to the docs it should be allowed
Reproduction Steps
await interaction.response.send_message(embed=message_embed, ephemeral=True,delete_after = 2)
TypeError: send_message() got an unexpected keyword argument 'delete_after'
Minimal Reproducible Code
No response
Expected Results
Custom time on how long interaction response is on channel
Actual Results
Error
Intents
All
System Information

Python v3.9.6-final
nextcord v2.0.0-alpha

nextcord pkg_resources: v2.0.0a6

aiohttp v3.7.4.post0
system info: Windows 10 10.0.19042

Checklist

[X] I have searched the open issues for duplicates.
[X] I have shown the entire traceback, if possible.
[X] I have removed my token from display, if visible.

Additional Context
No response

Sorry, the docs are using the development version. Please install from master if you wish to use this param


Parameters in User Secrets containing & are converted to contain \u0026 instead

Sometime Parameters in the User Secrets secret are being modified to contain \u0026 instead of &.
So this
{
    "Parameters:token": "some=thing&looking=url&like=true"
}

is turned into this
{
    "Parameters:token": "some=thing\u0026looking=url\u0026like=true"
}

Being used like this:
var builder = DistributedApplication.CreateBuilder(args);
var token = builder.AddParameter("token", secret: true);
var sqlServer = builder.AddSqlServer("sql")
    .WithEnvironment("TOKEN", token);
builder.Build().Run();

I haven't found the exact cause when this happens.
I just noticed, that I also have a password that suddenly did not work anymore: P\u002BqMWNzkn*xm1rhXNF5st0.
So also happening for \u002B or + character.
VS: Version 17.12.0 Preview 1.0
Aspire 8.2.0 (Could also have been the previous version, as it is hard to determine when it happend)

This is an artifact of the default settings for System.Text.Json when it serializes data: https://learn.microsoft.com/dotnet/standard/serialization/system-text-json/character-encoding

@martincostello
I see, so the fix would be to disable this encoding?
I would argue that it feels unexpected to not see the same raw values in this file.
I can try myself on that, if not picked up by the team.

Can you please send us a repro when you get a chance? And let us know if disabling encoding works!

VS latest
Aspire 8.2.0

Create new AppHost project
Reference System.Text.Json 8.0.4 (ti fix vulnerability / seems related)
Open User Secrets
Add

{
  "SomeValue": "+"
}

Edit Program.cs like so:

var p = ParameterResourceBuilderExtensions.CreateDefaultPasswordParameter(builder, "mySecret",
    minLower: 1, minUpper: 1, minNumeric: 1);

builder.AddContainer("busybox", "busybox")
    .WithEnvironment("Y", p.Value);

Start AppHost
Observe user secrets being changed to:

{
  "SomeValue": "\u002B",
  "Parameters:mySecret": "<RANDOM>"
}


Update generate prompt to remove duplication

There was a repeated sentence near the top of the prompt. I removed the duplicate.

Great catch!
Identity has been moved to gpt_engineer/preprompts, @btfranklin could you fix the merge conflict and I'll merge this?

Simplest way will be to just create a new PR. It's on the way :)


Added 2.0 section to changelog & moved item from 1.0 list

Hi Greg, was there any discussion about how version numbering will work? I was going to do a release for Django 1.10 compatibility, but wasn't sure if 2.0 is the appropriate version number at this ponit. I thought it might be interesting to match versions with Django (e.g. django-formtools 1.10 would be 1.10 compatible) but I don't have a strong opinion about that.

@timgraham Chiming in, I'd caution to use the same version numbers as Django as it implies that the package won't be able to have own minor and bugfix releases, or at least it quickly can become messy and less intuitive to parse the version. Instead it should follow the same pattern as Django uses for Python compatibility -- support a certain range of Django versions (the supported one basically), and document which versions of django-formtools work with which.

As to whether 2.0 is the next logical step, I'd look at the features/bug fixes since the last release and if there is a backward-incompatible change, just use 2.0.

Support for Django 1.7 is dropped, so I guess 2.0 it is.


Add HPA for web server to manage Load

Issue Endorsed by Maintainers
Description of the Change:

Add HPA for web server.
Remove Namespace , since Helm3 use namespace outside the templates.

Alternate Designs
Possible Drawbacks
Verification Process
Release Notes

Thanks for your contribution @ranjith-ka.
Could you please run the following script and commit those changes to have CI pass.
.github/helm-docs.sh


[Bug] cert-manager TLS cannot be disabled?

When I set it to false, the container is crashlooping -
❯ k logs cryostat-main-556654f588-gr5q6 -c cryostat-main-auth-proxy
[2024/12/16 16:00:54] [main.go:71] WARNING: You are using alpha configuration. The structure in this configuration file may change without notice. You MUST remove conflicting options from your existing configuration.
[2024/12/16 16:00:54] [proxy.go:89] mapping path "^/storage/(.*)$" => upstream "http://localhost:8333"
[2024/12/16 16:00:54] [proxy.go:89] mapping path "/grafana/" => upstream "http://localhost:3000"
[2024/12/16 16:00:54] [proxy.go:89] mapping path "/" => upstream "http://localhost:8181"
[2024/12/16 16:00:54] [oauthproxy.go:171] OAuthProxy configured for Google Client ID: CLIENT_ID
[2024/12/16 16:00:54] [oauthproxy.go:177] Cookie settings: name:_oauth2_proxy secure(https):true httponly:true expiry:168h0m0s domains: path:/ samesite: refresh:disabled
[2024/12/16 16:00:54] [oauthproxy.go:498] Skipping auth - Method:  | Path: .*
[2024/12/16 16:00:54] [main.go:58] ERROR: Failed to initialise OAuth2 Proxy: error setting up server: could not build app server: error setting up TLS listener: could not load certificate: could not load key data: open /var/run/secrets/operator.cryostat.io/cryostat-main-tls/tls.key: no such file or directory
❯ k logs cryostat-main-556654f588-gr5q6 -c cryostat-main-auth-proxy --previous
[2024/12/16 16:00:54] [main.go:71] WARNING: You are using alpha configuration. The structure in this configuration file may change without notice. You MUST remove conflicting options from your existing configuration.
[2024/12/16 16:00:54] [proxy.go:89] mapping path "^/storage/(.*)$" => upstream "http://localhost:8333"
[2024/12/16 16:00:54] [proxy.go:89] mapping path "/grafana/" => upstream "http://localhost:3000"
[2024/12/16 16:00:54] [proxy.go:89] mapping path "/" => upstream "http://localhost:8181"
[2024/12/16 16:00:54] [oauthproxy.go:171] OAuthProxy configured for Google Client ID: CLIENT_ID
[2024/12/16 16:00:54] [oauthproxy.go:177] Cookie settings: name:_oauth2_proxy secure(https):true httponly:true expiry:168h0m0s domains: path:/ samesite: refresh:disabled
[2024/12/16 16:00:54] [oauthproxy.go:498] Skipping auth - Method:  | Path: .*
[2024/12/16 16:00:54] [main.go:58] ERROR: Failed to initialise OAuth2 Proxy: error setting up server: could not build app server: error setting up TLS listener: could not load certificate: could not load key data: open /var/run/secrets/operator.cryostat.io/cryostat-main-tls/tls.key: no such file or directory
  │  ~ 

for record
apiVersion: operator.cryostat.io/v1beta2
kind: Cryostat
metadata:
  name: cryostat-main
  namespace: compute-platform-observability
spec:
  resources:
    coreResources:
      requests:
        memory: 1Gi
    dataSourceResources:
      requests:
        memory: 700Mi
  serviceOptions:
    coreConfig:
      httpPort: 8181
      serviceType: ClusterIP
  targetNamespaces:
...
  targetDiscoveryOptions:
    discoveryPortNames:
      - tcp-jfr-jmx
    discoveryPortNumbers:
      - 9091
  enableCertManager: false
  trustedCertSecrets: []
  eventTemplates: []
  schedulingOptions:
...
  operandMetadata:
    podMetadata:
      annotations:
        sidecar.istio.io/inject: "false"
...

  reportOptions:
    replicas: 0

Originally posted by @grzesuav in https://github.com/cryostatio/cryostat/discussions/745#discussioncomment-11582963

@andrewazores does the fix would be in https://github.com/cryostatio/cryostat-operator/blob/main/internal/controllers/configmaps.go#L116 checking if certmanager integration is enabled as additional condition ?

I think tls != nil is supposed to already reflect that same condition. I guess that the real bug is that somewhere along the line, those two things are no longer equivalent.

https://github.com/cryostatio/cryostat-operator/blob/85d6445d2c1110e1b98c41a438d0cddac34e03a0/internal/controllers/reconciler.go#L224

@grzesuav ah, hang on. You have enableCertManager: false, but how did you install the Operator? Was it from bundle via ex. OperatorHub, or did you install it manually using the Makefile?

Via Argo, using kustomize and bundles. I use tag 3.0.1. Do you suspect some issue here ?

Do you have the DISABLE_SERVICE_TLS environment variable set on the cryostat-operator-controller Deployment?

Will check tomorrow, AFK for today

Hey @grzesuav, in your case, did you patch the Cryostat CR to set enableCertManager: false or recreate it? If you just patched the CR, then that's similar what I did to reproduce this issue.
I think the root cause is that the operator's reconciler logic didn't update the Configmap data contents properly (see below snippet from v3.0.1): when calling controllerutil.CreateOrUpdate, it didn't set the data field in the mutateFn. Thus, the Configmap is left unchanged (i.e. containing the previous TLS configurations).
https://github.com/cryostatio/cryostat-operator/blob/67a03d814545f01cf3033210768c2e420bb83ecf/internal/controllers/configmaps.go#L148-L161
Though, the Configmap is immutable, thus updating is forbidden. I think a solution here is to recreate the it when the content changes. What do you think @andrewazores?
As for you case @grzesuav, would you be able to successfully deploy Cryostat by recreating the CR?

hi @tthvo , yes, I just patched cryostat cr with new setting, let me check quickly the content, and if renaming will help
@andrewazores I do not have DISABLE_SERVICE_TLS set on cryostat-operator pod

yes, it seems in content of the cm the setting are still reffering tls, will rename the resource CR an check
❯ k get cm cryostat-main-oauth2-proxy-cfg -o yaml
apiVersion: v1
data:
  alpha_config.json: '{"server":{"SecureBindAddress":"https://<IP_ADDRESS>:4180","TLS":{"Key":{"fromFile":"/var/run/secrets/operator.cryostat.io/cryostat-main-tls/tls.key"},"Cert":{"fromFile":"/var/run/secrets/operator.cryostat.io/cryostat-main-tls/tls.crt"}}},"upstreamConfig":{"proxyRawPath":true,"upstreams":[{"id":"cryostat","path":"/","uri":"http://localhost:8181"},{"id":"grafana","path":"/grafana/","uri":"http://localhost:3000"},{"id":"storage","path":"^/storage/(.*)$","rewriteTarget":"/$1","uri":"http://localhost:8333"}]},"providers":[{"id":"dummy","name":"Unused
    - Sign In Below","clientId":"CLIENT_ID","clientSecret":"CLIENT_SECRET","provider":"google"}]}'
immutable: true

also, confirme newly generated cryostat does not have this issue. @andrewazores in that case I would say some fields on cryostat CR should be made immutable to be in sync with undelrying logic, WDYT ? Or recreate, as @tthvo suggested.
Btw @tthvo thanks for the pointer !

in that case I would say some fields on cryostat CR should be made immutable to be in sync with undelrying logic, WDYT ? Or recreate,

Makes sense to me. I would prefer to allow the user to edit the CR and have the Operator do whatever is needed to get the installation into that state, whenever that is possible. It sounds like in this case it should still be possible for the Operator to do that, it might just take some slightly more complicated internal logic.


Templates created under project are not visible

ISSUE TYPE

Bug Report

COMPONENT NAME

Management server

CLOUDSTACK VERSION

<IP_ADDRESS>

CONFIGURATION

CEPH storage, Advanced networking
OS / ENVIRONMENT

Centos 7.4.1708
SUMMARY

Trying to create a template from VM.
VM was  created, prepared and stopped under the project.
Template creation task was completed successfully in terms that I can see notification about successful template creation. I can see job status in logs that everything is ok.
At the same time created template are shown nowhere in UI, also I can't get it through cloudmonkey
list templates templatefilter=all listall=true isrecursive=true

but if I specify template uuid directly
list templates listall=true templatefilter=all id=c350641c-26e6-484d-b0df-058b96ac3911

template is shown
At the same time I can see it in cs db in vm_template table for example.
I tried to investigate a little, what went wrong.. I don't now internals of cs and there are no docs, but what looks strange for me:
account_id is set to value, that belongs to account which was never created by me (manually or automatically).
This account is not showing in UI, but is presented in cs db table account
id: 7
account_name: PrjAcct-spg-infra_srv-3
uuid: 4e3ad0e6-919e-4066-b81a-9ea555f84e4e
type: 5
role_id: NULL
domain_id: 3
state: enabled
removed: NULL
cleanup_needed: 0
network_domain: NULL
default_zone_id: NULL
default: 0

Why role_id is null?
After some testing, I found that for every project account of type 5 is created.
Type 5 is defined, but can't find its role in cs (Account).
So may be the reason, that created template is owned by this special account
STEPS TO REPRODUCE

Create vm under project
Stop vm
Create template from ROOT disk

EXPECTED RESULTS

Template is shown in "Templates" area
ACTUAL RESULTS
Template is not shown anywhere in UI and partly visible through API

Closing as this is similar to https://github.com/apache/cloudstack/issues/2871, we'll address issues against https://github.com/apache/cloudstack/issues/2871


Add E2E test framework

This PR adds an E2E test framework. It's used by adding a new schema file that's intended to be linted by celvet, and then also adding an output file containing the expected output from celvet.

Should cli.go together with other go files better moved to a separate dir instead of sitting on main? Maybe move test related go file under /test as well?

Something like:
/
| - go.mod
| - go.sum
| - /cmd
| - /celvet
    |
    |
    | - cost.go
    | - cost_test.go
    | - limits.go
    | - limits_test.go
    | - ...

There's starting to be a decent number of files now with this PR, so I think that'd make a lot of sense. I'm not quite sure what you mean about moving test files to /test though - I thought the unit tests should be next to the files they're testing (cost_test.go in the same directory as cost.go, etc.), and the E2E tests are already all located under testdata/.

LGTM

The current outline looks something like this:

/
| - go.mod
| - go.sum
| - /cmd/celvet
| - cost.go
| - cost_test.go
| - limits.go
| - limits_test.go
| - e2e_test.go
| - /testdata/e2e
| - ...

I am thinking something like:
/
| - go.mod
| - go.sum
| - /cmd
| - /celvet or /pkg
    | - cost.go
    | - cost_test.go
    | - limits.go
    | - limits_test.go
    | - ...
| - /e2e
    | - e2e_test.go
    | - /testdata

Does that make sense?

The current outline looks something like this:

/
| - go.mod
| - go.sum
| - /cmd/celvet
| - cost.go
| - cost_test.go
| - limits.go
| - limits_test.go
| - e2e_test.go
| - /testdata/e2e
| - ...

I am thinking something like:
/
| - go.mod
| - go.sum
| - /cmd
| - /celvet or /pkg
    | - cost.go
    | - cost_test.go
    | - limits.go
    | - limits_test.go
    | - ...
| - /e2e
    | - e2e_test.go
    | - /testdata

Does that make sense?

Right, mirroring the way k8s is laid out makes sense. I'll merge after reworking the layout accordingly.

Apologies for the quick change of mind on my part, but I think enough changed post-layout-shuffle that I think one last review might be warranted if you don't mind @cici37.

Thanks! I don't have strong preference as long as the files are not all under /.  :)
/lgtm


Implement foundational validation logic

This would be something like:
installer.validators.validate_all_files_match_record(source: WheelSource) -> None
installer.validators.validate_record(source: WheelSource) -> None

These raise installer.validators.ValidationError if the source is not a valid wheel.

Closing this since #147 did the basic and #156 covers the rest needed around this.


Geoparquet support

What feature are you requesting?
Hi, I'm testing pg_analytics for mostly geospatial use cases. Does pg_analytics supports geoparquet format as Crunchy bridge does ?
I saw only GeoJSON examples in the docs and failed to do geographic subset filters when trying to mimic this example : https://www.crunchydata.com/blog/vehicle-routing-with-postgis-and-overture-data
Why are you requesting this feature?
For a massive datawarehouse postgres with mostly geospatial data, we go toward analytics and explore all the available options to outsource storage of data to S3 geoparquet, and benefit from column storage features for analytics.
After having screened most available extensions, pg_analytics seems really advanced and easy to set up.
GeoParquet is now an Open Geospatial Consortium standard (OGC) and along with GeoPackage should be the first class citizens when dealing with spatial data.
What is your proposed implementation for this feature?
GDAL and duckDB both support GeoParquet reading and could provide the necessary bits.
Full Name:
Régis Haubourg
Affiliation:
CSTB

Hey @haubourg! Welcome :)
I don't believe we have Geoparquet support, but it should be easy to add by following our Parquet and GeoJSON supports if duckdb-rs supports it. Would you like to try your hand at it?

Thanks for your feedback!
I unfortunately don't have the coding skills and my benevolent time goes to QGIS.org 😅.
Regards

duckdb's spatial extension >=1.1.0 supports limited geoparquet, at least writing and reading geometry type is ok

duckdb's spatial extension >=1.1.0 supports limited geoparquet, at least writing and reading geometry type is ok

Thanks for letting us know! Would you be willing to submit a patch for it? It should be really small

from python to rust requires some learning curve, just try cargo to bump it and ... learning why there are multiple versions in cargo.lock and ... the tests seems still installing v1.0.0 :(

We are using duckdb-rs which is on duckdb 1.0.0. You' need to bump duckdb-rs to 1.1.0 before


fish shell support - installer / keybindings

Regardless of on whatever shell it may be, fzf is installable simply by placing fzf in a directory included in $PATH. However, the install script generates an optimal function wrapper for fzf and defines some useful key bindings. It would be nice if it supports fish as well.

In case other Fish users read this, here is an alternative:
fzf | read  MYRESULT; and vim $MYRESULT

That's good when the result is one line. For multiple selections, fzf -m, the best solution so far is the one you posted using a temp file.


Group Maintainer

Whoever stays online most of the time, can be our group maintainer or if anyone is interested.

i have the github app in my phone which allows me approve merge request without my laptop, so i can be the maintainer if you guys don't want to

Okay. So be it.


Warn user if colourspace has to be assumed

If any of the colourspace options (matrix/transfer/primaries) are set to 2, vspreview should warn the user that it has to assume the colourspace. This should imo display an error messages as such:
For example, 720x480 video:
WARN: The colorspace is unknown (2/2/2)! Assuming 6/6/6!

There are probably better ways to phrase this, but I want to get the following ideas across:

The colourspace as it's currently tagged (in case i.e. matrix is tagged, but nothing else is)
What it's assuming them to be right now.

As an extension, this should maybe also be included in vstools.initialize_clip, if only for transparency's sake. Maybe even make it a part of the function that tries to guess a colourspace based on heuristics (behind a strict param)?

I don't like the idea of logging that.
What about integrating it in the props tab.

+1 for warning


Add Default impl for SafetyContext (or document why it's not available)

Looking at SafetyContext, is clippy::new_without_default being suppressed because SafetyContext::default won't be #[must_use]?
Since impl Default is common enough to merit a clippy lint when it's omitted, I think it would be helpful to document why this struct chooses to eschew it.

I simply don't want there to be a "SafetyContext::default" because it could be misleading - what would the "default context" be, would it include some rulesets by default? I'm not sure how you would document it (just a comment above the clippy lint?) but if you'd like to I'd be glad to accept a PR for it.

It would be the same as calling SafetyContext::new()

Sure, I understand that, but then why do you want it?

Tons of the Rust ecosystem has code that is generic over T: Default. It’s the same reason why structs impl Debug instead of exposing an inherent method that writes the contents to stderr.

I'm not trying to be a jerk here but I really don't see a case where you would want this behavior specifically in the context of extrasafe. Can you please provide a specific use-case?

I'm going to close this for now but if someone comes up with a use-case feel free to comment!


Error in process_data.py

Hi,
I set up your code and process the sample data and ran into the following error

Can you please clarify about the environmental error.
Thank you

the same error. how can it be solved


updated callbacks for rails 5

Wondering when will this be merged and released...

Can you merge this?

thanks everyone for bugging me about this! I just merged the various efforts from @prosanelli @shanna @PikachuEXE @Fuffi @spastorino @Flarra on #43 #42  and done some cleanup to get a green ci. It is merged on master but I haven't released a gem yet.
Problem is I don't run mandrill with any rails 5 apps yet, so my confidence this actually works is only as good as the unit-like testing. can someone does us all a favour and test this out for real and give a thumbs up/down?


Panic in pretty formatter when using scenario outline and background together

Given this feature file
Feature: Prove that there is an error with the pretty formatter
  Blabla
  Blabla
  Blabla

  Background:
    Given the following customers exist
      | ID | flag           | number        |
      | 1  | true           | 0             |
      | 2  | true           | 1             |

  Scenario Outline: Add two numbers
    Given I have number
    And I have another number
    When I add them together
    Then I should receive <c>

    Examples:
    | a | b | c |
    | 1 | 2 | 3 |
    | 1 | 2 | 3 |
    | 1 | 2 | 3 |
    | 1 | 2 | 3 |
    | 1 | 2 | 3 |
    | 1 | 2 | 3 |
    | 1 | 2 | 3 |

When I run godog with pretty format it panics. Other formats like progress generates the missing code needed to implement this feature file.
 godog -f pretty scenario_outline_and_background_error.feature
Feature: Prove that there is an error with the pretty formatter
  Blabla
  Blabla
  Blabla

  Background:
    Given the following customers exist
      | ID | flag | number |
      | 1  | true | 0      |
      | 2  | true | 1      |

  Scenario Outline: Add two numbers # scenario_outline_and_background_error.feature:13
    Given I have number
    And I have another number
    When I add them together
    Then I should receive <c>

    Examples:
      | a | b | c |
      | 1 | 2 | 3 |
      | 1 | 2 | 3 |
      | 1 | 2 | 3 |
      | 1 | 2 | 3 |
      | 1 | 2 | 3 |
      | 1 | 2 | 3 |
      | 1 | 2 | 3 |
panic: runtime error: index out of range

goroutine 17 [running]:
panic(0x1ed520, 0xc4200100a0)
	/usr/local/opt/go/libexec/src/runtime/panic.go:500 +0x1a1
github.com/DATA-DOG/godog.(*pretty).printOutlineExample(0xc42011c000, 0xc420132000)
	/Users/andras.laczi/golang/src/github.com/DATA-DOG/godog/fmt_pretty.go:186 +0x1093
github.com/DATA-DOG/godog.(*pretty).printStepKind(0xc42011c000, 0xc4200ff700)
	/Users/andras.laczi/golang/src/github.com/DATA-DOG/godog/fmt_pretty.go:286 +0x768
github.com/DATA-DOG/godog.(*pretty).Undefined(0xc42011c000, 0xc4200f4c80)
	/Users/andras.laczi/golang/src/github.com/DATA-DOG/godog/fmt_pretty.go:326 +0x15b
github.com/DATA-DOG/godog.(*Suite).runStep(0xc42011e0e0, 0xc4200f4c80, 0x303520, 0xc4200fa0f0, 0x0, 0x0)
	/Users/andras.laczi/golang/src/github.com/DATA-DOG/godog/suite.go:201 +0x344
github.com/DATA-DOG/godog.(*Suite).runSteps(0xc42011e0e0, 0xc420136960, 0x4, 0x4, 0x303520, 0xc4200fa0f0, 0x303520, 0xc4200fa0f0)
	/Users/andras.laczi/golang/src/github.com/DATA-DOG/godog/suite.go:245 +0x7d
github.com/DATA-DOG/godog.(*Suite).runOutline(0xc42011e0e0, 0xc420132000, 0xc4201101e0, 0x2d, 0x8)
	/Users/andras.laczi/golang/src/github.com/DATA-DOG/godog/suite.go:309 +0x747
github.com/DATA-DOG/godog.(*Suite).runFeature(0xc42011e0e0, 0xc4200f9e60)
	/Users/andras.laczi/golang/src/github.com/DATA-DOG/godog/suite.go:335 +0x260
github.com/DATA-DOG/godog.(*Suite).run(0xc42011e0e0)
	/Users/andras.laczi/golang/src/github.com/DATA-DOG/godog/suite.go:169 +0xa9
github.com/DATA-DOG/godog.(*runner).run.func1(0xc4200f43c0, 0xc4200fb09e, 0xc4200f9e60)
	/Users/andras.laczi/golang/src/github.com/DATA-DOG/godog/run.go:30 +0x12e
created by github.com/DATA-DOG/godog.(*runner).run
	/Users/andras.laczi/golang/src/github.com/DATA-DOG/godog/run.go:36 +0xa7
exit status 2

If you remove the background section the pretty formatter works as expected.
Using go 1.7
go version go1.7 darwin/amd64

also fixed in master, please update godog

go get -u github.com/DATA-DOG/godog
go install github.com/DATA-DOG/godog/cmd/godog

@l3pp4rd
After the update I got this:
    Given the following customers exist # main_test.go:9 -> github.com/SainsburysNDA/godog-scenario/features.theFollowingCustomersExist
      | ID | flag | number |
      | 1  | true | 0      |
      | 2  | true | 1      |
    reflect: Call using *gherkin.DataTable as type *gherkin.DataTable

Nevermind, I see, the package has changed.

yes, use gherkin package from godog library:
package main

import (
    "github.com/DATA-DOG/godog"
    "github.com/DATA-DOG/godog/gherkin"
)

this change prevents from gherkin version incompatibility. godog is always shipping compatible gherkin. should payoff in the future

@l3pp4rd Cheers, that was really helpful! Keep it up! 👍


Switch to webview api

Ref #172

[x] Status panel
[x] Install flow
[x] Fixing Install flow styles (@dhung09 maybe there's a pass to do here to make it consistent with atom)

I've just made a pass on the status view, the install flow will come after

Should Kite Search go to the web docs (where it goes currently) or the copilot? All the other links go to the copilot. If we decide to keep it pointing to the webdocs, perhaps we should label it differently (e.g. Kite Web Docs)

I do agree this is definitely weird. Whatever solution is fine with me though. And even if we continue to point to the webdocs, do we still need the desktopLogin thing? (this is also true for Atom btw)

We should not show Permissions in Kite Local, if possible

I guess this is a change we'll be able to address with kite-api 2.2 and your isLocal function.

When I hover on the links in the Status Panel, I get popups with what, from a user perspective, appears to be gobbledegook. I'm guessing we should probably get rid of that

Oh yeah I didn't noticed that mostly because I was clicking on them rather that hovering. Apparently it happens because we don't provide any title on the link. The solution here is to define that attribute for all the links, I'll make the change and we can change the wording later if needed.

There was no apparent action taken when I clicked Invite Friends
That was indeed broken, I missed these links when updating to postMessage. Now, these links were pointing to http://localhost:46624/redirect/invite and I get an error on https://kite.com/invite after the redirection. Is that still a thing?

@dbratz1177 For the install flow, when you talk about no action being done, are you talking about visual feedback? That was some of the things I was considering as improvements.
As for the install not doing anything after providing the credentials I'm not sure what could happen, any error should move the flow to the error step (unless it's explicitly handled by the step, maybe that's what is broken) and in case we successfully authenticate on kite.com we start the download+install on a new view (the same install wait view that Daniel added for atom). I'll look into this.

That was indeed broken, I missed these links when updating to postMessage. Now, these links were pointing to http://localhost:46624/redirect/invite and I get an error on https://kite.com/invite after the redirection. Is that still a thing?
It's working for me (both the https://kite.com/invite and the redirection)

For the install flow, when you talk about no action being done, are you talking about visual feedback?
After a second look, this is probably the essential issue that I was having... if we're requiring users to take action outside of VSCode to complete the installation process, I think we have to provide them some sort of feedback as to what to do next, and what to expect from the rest of the process.

@abe33 I'm not aware of any issue with the backend that's generating the slowness.
the solution of having an explanatory intermediary screen seems good to me too

@abe33 another option to an intermediary screen would be to just add a spinner like the installation page


new simple package (jest-node) to run jest from existing node process

Summary
Simple way to run jest from existing node script without worrying about jest killing host process.
Test plan (<-- i think i dont understand, what u wanna from me here ...)
3 tests in file packages/jest-node/src/__tests__/jest-node.test.js

how to call it:

const config: GlobalConfig = resolveOptionsSomehow();
const projects: Array<Path> = resolveProjectsSomehow();

import jestNode from 'jest-node'; // or const jestNode = require('jest-node').default;
jestNode(config, projects)
  .then(result => {
     // do something with result here
  });

with is equivalent to:

helper.js
// runCLI will kill host process on error - cannot be called on main process
const runCLI = require('jest-cli/build/cli').runCLI;

const arg = JSON.parse(process.argv[2]);
// ensure json mode is active
arg.config.json = true;
runCLI(arg.config, arg.projects);

main.js
const config: GlobalConfig = resolveOptionsSomehow();
const projects: Array<Path> = resolveProjectsSomehow();

jestNode(config, projects)
  .then(result => {
     // do something with result here
  });

// helper method for spawning child process and calling jest in it
function jestNode(config, projects){
  return new Promise((resolve, reject) => {
    const stdout = [];
    const stderr = [];
    const arg = JSON.stringify({config, projects});

    const spawn = require('child_process').spawn;
    const child = spawn(getPathToNode(), [getPathToHelperFileFromAbove(), arg]);
    child.stdout.on('data', data => {
      if (typeof data !== 'string') {
        data = data.toString('utf8');
      }
      stdout.push(data);
    });

    childProcess.stderr.on('data', data => {
      if (typeof data !== 'string') {
        data = data.toString('utf8');
      }
      // there may be more messages in stderr, with are warnings or logs ...
      if (data.startsWith('Warning:') ||
          data.startsWith('Debugger listening on')) {
        stdout.push(data);
        return;
      }

      stderr.push(data);

      if (!stderrTimeout) {
        stderrTimeout = setTimeout(() => {
          childProcess.kill('SIGTERM');
        }, 500);
      }
    });

    childProcess.on('exit', code => {
      if (code !== 0) {
        reject(stderr.join(''));
      } else {
        const results = JSON.parse(stdout.join(''));
        resolve({
          results,
        });
      }
    });
  });
}

PS: This is my first attempt to contribute to big project, so forgive me roockie bugs if any ...

Tryied hard to fix las failing check, but do not know how - it looks like test runner is running tests, that should not be runned - they are runned by my package

Hey! Thanks for sending a PR to Jest, this is pretty nice. However, I think we already have this functionality somewhat in jest-editor-support.
Generally we are currently only including packages in this repo if they are directly useful to Jest itself. I think I would feel a lot better keeping this project separate from Jest for now, and if it gains significant usage, I'd be happy to consider bringing it to Jest :)


adding contentType for JSONLD

please double check the IANA reference

@apdavison is this ready to be merged?


web: open wallet popup instead of a new tab

Acceptance criteria:

The wallet popup extension is opened when a user has to interact with Superhero wallet

LGTM for wallet bot.
Haven't tested with Community bot, because it's not working today.

LGTM for Community bot.