About seq2seq tutorial 2

In the forward part of Class of Seq2Seq, why the encoder part does not have loop?
To my understanding, the encoder cell should take in an initial hidden state (usually all zeros), and the first input, and output the new hidden state to for the next word to be encoded. It should be like a loop with encoding length, if not included the End of Sequence token.
Thanks.

In PyTorch, if you feed a sequence to an RNN it will recurrently feed each item of the sequence in for you - there is no need for a loop. In the encoder, as we already have the entire input sequence (the source sentence) available we just need to feed it to the RNN and PyTorch handles the recurrent feeding of the subsequent items in the sequence.
In the decoder, we also have the full sequence available, the target sentence, but we don't want to just feed in the actual next tokens recurrently into the model - we also want to sometimes feed in the next token predicted by the model.  As we are sometimes using the predictions of the model, we have to do a loop and make a decision on each loop iteration what we are going to use as the next input to the decoder (the actual next token or the predicted next token).

In PyTorch, if you feed a sequence to an RNN it will recurrently feed each item of the sequence in for you - there is no need for a loop. In the encoder, as we already have the entire input sequence (the source sentence) available we just need to feed it to the RNN and PyTorch handles the recurrent feeding of the subsequent items in the sequence.
In the decoder, we also have the full sequence available, the target sentence, but we don't want to just feed in the actual next tokens recurrently into the model - we also want to sometimes feed in the next token predicted by the model. As we are sometimes using the predictions of the model, we have to do a loop and make a decision on each loop iteration what we are going to use as the next input to the decoder (the actual next token or the predicted next token).
Let me know if that clarifies things.

Yeah thanks! I tried it and yes if the input is a full sequence, the LSTM will iteratively do the auto feeding and broadcasting the hidden states.
Thanks buddy!


"Live Chat" tabs are no longer specific to an endpoint

Version
Latest: 4.8.1
Describe the bug
When I open a bot file with multiple endpoints, the bot conversation tab just says "Live Chat" and gives no indication of what endpoint the conversation is associated with. Also, clicking an endpoint will now always open a new tab instead of focusing on an existing tab if a tab for that endpoint is already open.
To Reproduce
Steps to reproduce the behavior:

Open a bot configuration
Click on an endpoint in the endpoints list multiple times
See multiple tabs open that don't say what their endpoint is

Expected behavior
Clicking on an endpoint should focus on an existing tab if a tab for that endpoint is already open, and the tab should say what its endpoint is.
Screenshots

Additional context
This bug may have come about as an attempt to fix this problem: https://github.com/microsoft/BotFramework-Emulator/issues/1611
[bug]

This is something on our radar and we are tracking it at #2084 .
Closing this issue in favor of the aforementioned one.

@tonyanziano - That issue looks like it's just about displaying the endpoint in the UI of the tab. That's good, but are you also tracking the problem of the endpoint opening duplicate tabs?

@v-kydela That issue is not tracking the behavior you are describing.
However, I'm not sure that's exactly a bug or incorrect behavior.
Most of the bots and samples I use are configured to run on the same url / port, localhost:3978. Let's say I was talking to an echo bot on  localhost:3978, and then stopped that bot and started running my To-Do bot at the same endpoint and connected to that. I wouldn't find it very useful for the Emulator to re-open the tab used for my echo bot, wiping the conversation history, and using it for my completely unrelated bot.
I think this would make sense in the context of having a .bot file open and clicking the same endpoint in the endpoint explorer, but less for connecting to a bot via URL.

@tonyanziano - I was under the impression that there is no endpoints list when you connect to a bot via URL.
Anyway, the reason I think this is a bug is because it's new behavior. The discussion in this issue made it seem like the old behavior of having one tab for one endpoint was desirable: https://github.com/microsoft/BotFramework-Emulator/issues/1611

That is correct. There is no endpoints list when you connect to a bot via URL. The list only shows when you have a .bot file open in the Emulator.
This however, is not new behavior in the scenario of opening a livechat via URL. The old code that used the focusExistingChatIfAvailable flag -- which is referred to in the discussion you linked -- was only ever called in the code path for opening endpoints via .bot file.
So we can reopen this and use it to track restoring the behavior to the .bot file scenario, but I don't think this should be the behavior in the standalone URL scenario.

@tonyanziano - I'm sorry, I'm still not understanding what you mean. How could this possibly be the behavior for the standalone URL scenario if the standalone URL scenario doesn't have an endpoints list? The behavior I'm describing is the behavior of the endpoints list.
Anyway I'll reopen this since I have your permission, thank you

Ah, that's my bad. I completely misread your issue.
Then ignoring what I said about the open via URL scenario, we are in agreement.

Note to implementer, reference https://github.com/microsoft/BotFramework-Emulator/issues/1611 and test scenario for regressions


Update Composer dependencies (2022-01-04-00-11)

Visual regression test passed!
View the visual regression test report


AutoConfiguredNSubstituteCustomization not working correctly in XUnit theories with parallel tasks

We've been facting strange issues when running tests that invokes multiple tasks (to simulate multithreaded environment). I found that the issue is related to AutoConfiguredNSubstituteCustomization. Here is the test:
using System;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using NSubstitute;
using Ploeh.AutoFixture;
using Ploeh.AutoFixture.AutoNSubstitute;
using Xunit;

namespace Bug
{
    public interface IServiceA
    {
        IServiceB GetService();
    }

    public interface IServiceB
    {
    }

    public class Tests
    {
        [Theory]
        [InlineData(32), InlineData(64), InlineData(128), InlineData(256)]
        public Task UsingAutoConfiguredNSubstituteCustomization(int dop)
        {
            // arrange
            var fixture = new Fixture();
            fixture.Customize(new AutoConfiguredNSubstituteCustomization());

            var service = fixture.Freeze<IServiceA>();

            // act, assert
            return TestAsync(dop, service);
        }

        [Theory]
        [InlineData(32), InlineData(64), InlineData(128), InlineData(256)]
        public Task AutoNSubstituteCustomization(int dop)
        {
            // arrange
            var fixture = new Fixture();
            fixture.Customize(new AutoNSubstituteCustomization());

            var service = fixture.Freeze<IServiceA>();

            // act, assert
            return TestAsync(dop, service);
        }

        [Theory]
        [InlineData(32), InlineData(64), InlineData(128), InlineData(256)]
        public Task UsingNSubstitute(int dop)
        {
            // arrange
            var service = Substitute.For<IServiceA>(); // no error

            // act, assert
            return TestAsync(dop, service);
        }

        private static async Task TestAsync(int dop, IServiceA service)
        {
            // arrange
            var start = new SemaphoreSlim(0, dop);
            var cts = new CancellationTokenSource(TimeSpan.FromSeconds(1));

            var tasks = Enumerable
                .Range(0, dop)
                .Select(_ => Task.Run
                                 (async () =>
                                        {
                                            await start.WaitAsync(cts.Token).ConfigureAwait(false);
                                            service.GetService();
                                        },
                                  cts.Token));

            // act
            start.Release(dop);
            await Task.WhenAll(tasks).ConfigureAwait(false);

            // assert
            service.Received(dop).GetService();
        }
    }
}

Only the first test UsingAutoConfiguredNSubstituteCustomization failing randomly like this:
Expected to receive exactly 32 calls matching:
    GetService()
Actually received 39 matching calls:
    GetService()
    GetService()
    ...

Thank you for writing. Before we start investigating this issue in the AutoFixture code base, do we know whether or not NSubstitute itself is thread-safe?

NSubstitute should be thread safe. One of the three tests I've posted shows
that using raw NSubstitute works correctly.
4 апр. 2016 г. 17:26 пользователь "Mark Seemann"<EMAIL_ADDRESS>написал:

Thank you for writing. Before we start investigating this issue in the
AutoFixture code base, do we know whether or not NSubstitute itself is
thread-safe?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/AutoFixture/AutoFixture/issues/592#issuecomment-205320363

Any progress on that? Do you need any additional info?

This is a tricky one.
NSubstitute is indeed thread-safe concerning the "replay" phase. That means that as long as you setup everything before spinning up the threads, you're safe - and that makes sense, your tests shouldn't setup in parallel.
However, AutoConfiguredNSubstituteCustomization sets up the substitute once the methods are first called. Thus, it hits the non thread-safe part of NSubstitute and things become unpredictable.
You can reproduce that introducing a new method to your interface and setting it up inside the threads:
public interface IServiceA
{
    IServiceB GetService();
    IServiceB GetServiceI();
}

private static async Task TestAsync(int dop, IServiceA service)
{
    // arrange
    var start = new SemaphoreSlim(0, dop);
    var cts = new CancellationTokenSource(TimeSpan.FromSeconds(1));

    var tasks = Enumerable
        .Range(0, dop)
        .Select(_ => Task.Run
                            (async () =>
                            {
                                await start.WaitAsync(cts.Token).ConfigureAwait(false);
                                service.GetService();
                                service.GetServiceI().Returns(x => Substitute.For<IServiceB>());
                            },
                            cts.Token));

    // act
    start.Release(dop);
    await Task.WhenAll(tasks).ConfigureAwait(false);

    // assert
    service.Received(dop).GetService();
}

There are two options here:
1 - Leave it as is and state that it's not supported to use AutoConfiguredNSubstituteCustomization in concurrency environments.
2 - Change the AutoConfiguredNSubstituteCustomization code to use some internal stuff of NSubstitute to achieve the thread-safety. I was able to do that, it's very brittle though. I had to update NSubstitute to 1.7.1 and since the internals of NSubstitute don't follow SemVer, we might have it broken on the next minor version released.
There's a third option, actually. I could send a PR to NSubstitute to make it more extensible and we work from there. The downside is that, first, @dtchepak must accept the PR. Second, everyone would have to update NSubstitute to its lastest version.
Any thoughts?

Hi @mrinaldi, I'm always open to PRs. :) What's the change you are proposing?

However, AutoConfiguredNSubstituteCustomization sets up the substitute once the methods are first called.

Does this mean a hacky workaround for @MichaelLogutov is to call something on the service before calling TestAsync? Far from ideal I know, but might be a quick way to get things working while we sort out a fix.

Interesting. Since I wasn't able to reproduce this error on Moq and AutoMoq (with the same 3 tests) I think that indeed it would be beneficial for both libraries to come up with PR (maybe some kind of lock). Our project has 3k tests and the more we add the more false negatives we're get in TeamCity runner. The recursive autowiring returned values is the most important feature to us in AutoFixture since it allows us to greatly reduce setup boilerplate code.

@dtchepak I don't think this workaround will work. Since there's no way to know if a method has been setup, I use a ICallHandler (they have access to the ISubstituteState) to access the CallResults and, if not setup, I set it up.
This is done every time a method is called using the When..Do.
I didn't think through on the changes needed yet. We have a few options here.
In my point of view, the best extension point for AutoConfiguredNSubstituteCustomization would be to be able to inject a IAutoValueProvider. That would require a change in NSubstitute to use the IAutoValueProvider for ref and out parameters though or it'd be a breaking change for AutoConfiguredNSubstituteCustomization. The upside for AutoConfiguredNSubstituteCustomization is that it would work even for generic and void methods and it would become a real extension to the NSubstitute, instead of a hack.
The alternative is to create a Route overload in the ICallRouter that receives both the Route and the ICall, instead of the current two-step behavior of setting the route with SetRoute and then calling the Route.
In fact, this is where the race condition happens. After I call the SetRoute, the method in another thread calls a method in the substitute, effectively using my route, and when I call the Route, the route is set to the default route already.
There are a few point we could extend as alternative, but we can discuss that in the NSubstitute repository.
The downside to a PR, as I said, is that we'd have to update our dependency to NSubstitute to the new version. @ploeh, what do you think? Is that a problem?

Updating to a new version isn't a problem as long as it isn't a breaking change. As a general rule, I don't want to update dependencies if there's no reason to do it, but if it improves the feature set of the library, it's warranted.

Hello. Any progress on that? Can I help with something?

Should be fixed in v4. The test above no longer fails with a new integration approach introduced in #832.


Update GO version from 1.18 to at least 1.20

Before Go 1.20:
Slices (including []byte) were not considered comparable, even though you could compare them with bytes.Equal. This was a limitation of the language.
Go 1.20 and later:
The comparable constraint was expanded to include all types that can be compared using == and !=, including slices like []byte.
So with 1.20 version we should able to use:
freelru.NewSyncedWithSize[[]byte, []byte](capacity, capacity, hashFn)
Once we are using freelru as cache for underlying DB this small change brings for us ability to avoid convert string to bytes etc.

Thanks for the heads up.
But I am curious, what stops you from building your app with Go 1.20+?
The version 1.18 from go.mod is just a minimum requirement for building go-freelru (1.18 introduced generics). When you pull it in as a dependency, you can use any features of the Go version that you are building with.

Hello,
thank you for your response, yes you are right. We can close this issue.


JAEGER_REPORTER_FLUSH_INTERVAL environment variable is not working

Setting the flush interval using the environment variable JAEGER_REPORTER_FLUSH_INTERVAL is not working.
When configuring a tracer the FromEnv() function is used. A flush interval is set using environment variable JAEGER_REPORTER_FLUSH_INTERVAL but the setting is not used. The setting is still the default 1 sec. I have verified that using environment variables in general is working by for example setting JAEGER_DISABLED=true.
I then tried to set the flush interval directly by setting BufferFlushInterval directly in the ReporterConfig structure and this worked as expected.

Forgot to mention that I am using client library version2.25.0

Looking at the code here: https://github.com/jaegertracing/jaeger-client-go/blob/4ab51d8a2f6bacfcda3c4127a2401d2dbe6e2bed/config/config_env.go#L170-L176
it is hard to see a path which would go through the JAEGER_DISABLED setting and not JAEGER_REPORTER_FLUSH_INTERVAL.
Can you create an error by setting it to, say "xxx" which should fail to parse as a duration and show up as an error return?


Okokok

https://github.com/Azure/azure-rest-api-specs/blob/cadc7c375e1e8ea26f99eeaac6c6ab3370a8d94c/specification/network/resource-manager/Microsoft.Network/stable/2022-05-01/examples/HubVirtualNetworkConnectionPut.json

closing as spam


Replace 'makePathRelative' with 'basePath' - #109

The continuation of #109
@faergeek @stevelacy check out my tests, I'm not so sure about it.

Thanks, can you make sure to use 2space tabs?

I was confused about indentation, because some files uses spaces, some tabs, some mixes both. So I decided to use spaces because 'index.js' uses them. If you want tabs, I can amend spaces only in my commit or leave it as is and make another PR with tabs in all sources.

All files are supposed to use 2 spaces as a tab, not tabs. I noticed the very deep indentation here: https://github.com/stevelacy/gulp-stylus/pull/145/files#diff-e5b8495db5b34b144973178386ba5ceeR219 which is why I mentioned it.
I can fix it later

merged, thanks!

Oh, my inattention :confused:. Thx for the plugin.


PDF Render Issue in 2.3.200

Attach (recommended) or Link to PDF file here:
CLIENT_TEST.pdf
Configuration:

Web browser and its version:Chrome 79.0.3945.130, Firefox 72.0.2
Operating system and its version:Windows 10
PDF.js version: 2.3.200
Is a browser extension: no

Steps to reproduce the problem:

Open the attached PDF,
page 2 bottom left corner there is a callout with text "UV Blocking"
Issue relates to the width of the border and the gradient color.

What is the expected behavior? (add screenshot)
In Acrobat the border is thin and the gradient fades from the center to left and right
In Firefox built in pdfjs the border is a little bit thicker and the gradient fades left to right
In our own app using 2.2.228 the border render the same as with FireFox builtin.
In our own app using 2.3.200 the border is very thick and fades left to right
What went wrong? (add screenshot)
PDF rendered differently between 2.3.200 and 2.2.228, border is double thickness
Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):

Maybe a duplicate of #11018. A shading pattern is used as the "color" when a path is stroked.


feat: Use WayBack machine as fallback to missing cache

If we try to access a resource that doesn't exit currently, or for which we don't have cache for, we try to fetch from the Wayback machine as an alternative. Still needs more testing.

@qgolsteyn I already started this work in: https://github.com/lazd/coronadatascraper/tree/wayback
Can you review what I had done previously and make sure there isn't anything I did that you're missing?

This feature would provide a lot of value. Let me know if theres anything I can do to help out.

@qgolsteyn let me know if you found anything in my branch that's missing here, otherwise we should continue to hack on this branch!

@qgolsteyn why close?


⚠ Bofrost.at has degraded performance

In 8d1a84e, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1011 ms

Resolved: Bofrost.at performance has improved in 0c7fa0f after 7 minutes.


Design Backlog: UI Guard to inform the user of the impact of switching report type

If the user has already begun filling out the report, and then switches their report type, then it will erase the form fields that they have already entered. Given that a user's report is not empty, and the user switches their report type, then a modal will appear asking the user to confirm the change.
Wireframe
AC
If the user has entered any field after “report type”, and then they select a different report type, then this confirmation modal will appear. If the user clicks “change report type” then the report type dropdown selection will change to the new selection. If the user clicks cancel, then the report type dropdown selection will remain the same.

@patriciarussellCAS The design is completed here, should I close this ticket and create a new "developers" ticket, or should we repurpose this ticket and backlog it?

Thanks @zoeyli-46. I have created a tech debt ticket for this. It still needs refinement but it's here: #401
I will close this ticket. thanks!


Maybe add yarn deduplicate to CI?

https://github.com/atlassian/yarn-deduplicate

While this package definitely looks good, it's more of a curative approach.
I'd like to propose a preventive approach: each time we merge a dependabot PR, or we run a yarn install, we just quickly make sure that we don't have any duplicates in the resulting yarn.lock. Another pro: one less moving part in this project.

I looked at the package ages ago and again when mentioned here - I do believe it is more of a "run manually" check than anything else. (Docs also state that)
It could introduce breaking changes since it indiscriminately adjust things, so a manual check (as much as those are horrible) is the safer approach. When it breaks due to this, it will lose a lot of time since it will be non-trivial to figure out.


updating enum pantheon to besu

PR description
updating enum pantheon to besu
Fixed Issue(s)

updating enum pantheon to besu
Signed-off-by: Joshua Fernandes<EMAIL_ADDRESS>

Re-open PR once web3j has been updated to include type 'BESU'


Write an article on Reactive Controllers and Redux

Write an article on integrating third party libraries into lit with reactive controllers using redux as an example. Once we're close to an LGTM I will convert the code examples into either switchable samples or live playroung element examples.
Link to article preview -> https://pr1283-2ddb3b1---lit-dev-5ftespv5na-uc.a.run.app/articles/redux-reactive-controllers/

Thanks for leading this blind man through Redux! All suggestions should be addressed. Though I think it def needs another pass and a bit more discussion about structure. Personally I think it's okay to be a bit Lit specific since it's hosted on Lit.dev, but i agree it's a bit lazy to talk about the lit implementation for a specific part and the generalized use case in the rest of it

Two things will help make this more useful -

provide code in javascript
add how it could replace e.g. used with the pwa starter kit example which used lazyReducerEnhancer and thunk


run on cpu

Hello there!
I have a problem running yours scripts because I have Macbook with Intel Chip so I cannot install torch with CUDA )))) So scrips falls with following error:
AssertionError: Torch not compiled with CUDA enabled
is there any simple way to run scripts on cpu? maybe it's very simple, but i'm new to nn and python, so i can't find easy way to do it
Thanks)

Hello mbarakovskiy,
you are right, there is no straightforward way to run the scripts without CUDA at the moment, I will try to add this in the future. But you can use the following workaround (I assume you try to run evaluate_detector.py):
For each detector, add cuda=False to the dictionary, e.g., after this line: https://github.com/jonasricker/diffusion-model-deepfake-detection/blob/9916aa38d813d5ee5724ab92791042f8cbdda128/evaluate_detectors.py#L49
You will also have to manually specify a batch size when calling the script, e.g., --batch-size 8.
Let me know if that solves your issue!

It worked out! Thank you for help and quick answer, Jonas!


Return the modified key on WatchTree call for etcd v3

We were returning the directory key for the WatchTree call,
thus every event triggered by the watch would have the directory
as a key, making it impossible to triage and identify which key
was modified.
Signed-off-by: Alexandre Beslic<EMAIL_ADDRESS>

Coverage remained the same at 84.082% when pulling 8813e9cb04e1cccc6408bf8f1215e910ccaaf372 on watchtree_key_event into 12ace4b0c6652688446d21b193c8c520350dc5ae on master.


Octave doesn't work

Reproduce

Any instrument
Keyboard mode : separated
Decrease octave until it shows -2
Increase octave with "Up" button

Issue

Octave up button doesn't get increased when it's 0 (e.g C0, D#0, E0...)
Look at the console log for note on/off

Caused by

When octave is 0. It doesn't get increased with button
The button still works for Octave 1 and above (e.g C1, C2, C3...)

temporary limiting octave to -1 will fix the issue


Retail React App Testing - Move msw mocks to global

This PR extracts the changes related to testing from PR https://github.com/SalesforceCommerceCloud/pwa-kit/pull/875 (cuz that PR is toooooo big)
This PR moves the msw mocks from individual unit test files to a global level in jest-setup.js.

The purpose of this PR is to make the mega menu PR easier to merge https://github.com/SalesforceCommerceCloud/pwa-kit/pull/875. However, it seems the mega menu PR is ready to merge and defeat the purpose of this PR, and merging this PR would mean a lot more work for us to resolve merge conflicts, so i'm closing this PR.


change PhoneNumber and use it in ContactInformation

only format phonenumber when getInternationalFormatOfPhoneNumber() is called.
do only format if the rawPhoneNumber of the PhoneNumber is not null and no
PhoneNumberFormattingException is thrown.
PhoneNumber is used in ContactInformation instead of Strings of a phone number.

Looks good so far. Please adjust the Spring framework dependency. After that somebody can merge. :)


Suggested changes to apply wallet fees from 'fundrawtransaction'

[Wallet] Re-introduced bitcoin 0.13 code to apply fees in wallet.cpp
Please use as a basis to fix:
Issue https://github.com/zcoinofficial/zcoin/issues/172 Fees requested in fundrawtransaction are not applied

Coin control feature is from QT wallet. QT wallet is not running. Zcoind is running.
The atomicswap code calls fundrawtransaction as RPC and then FundTransaction in wallet.cpp which always fills in CoinControl structure. and pass to CreateTransaction in wallet.cpp.


Folder folding is not working in Firefox

Describe the bug
Folder folding is not working in Firefox
To Reproduce

Using Firefix, go to https://gchq.github.io/CyberChef/#recipe=JSON_Beautify('    ',false,true)&input=eyJTdWIxMSI6eyJTdWIxMiI6eyJLZXkxMSI6IlZhbHVlMTEifX0sIlN1YjIxIjp7IlN1YjIyIjp7IktleTIxIjoiVmFsdTIxIn19fQ
Click on the arrows to fold a sub tree
Notice it doesn't fold

Expected behaviour
The folders should fold (hide) the same way as they do in Chrome.
Desktop (if relevant, please complete the following information):

OS: Linux Mint 21.3
Browser: Firefox 122.0, Chomium 121.0.6167.139
CyberChef version: 10.6.0

This issue seems easily reproducible, thanks for the clear bug report! :)

Changing
.json-summary {
    display: contents;
}

into
.json-summary {
    display: inline;
    list-style: none;
}

works on my side in Firefox and Edge.
If this works, I will be happy to create a pull request.


Added a fix for endpoint /cheeps

Before hand it was retrieving more information than was actually used.
So methods was added inside CheepService and CheepRepository to be able to retrieve all cheeps, but only with the information we actually use. Integration tests have been slightly altered to adapt to the changes

Looks a lot better than before, great that we no longer have to use .ToListAsync in program.cs


Proposal: Auto-Detect API Version via ServerInfo

We could perform an auto-detect step under sign_in to set the highest API version supported (with an override) now that SeverInfo is in 10.1

We discussed this previously, but what do we do with versions of the API that are less than 2.4?

I was just adding in some psuedo code, but a simple try/except block seems fine.
try:
        version = self._find_highest_supported()
except ServerVersionNotSupported:
        version = '2.3'

We can have the `_find_highest_supported() call try against 2.4 and throw a very specific exception if the call to serverinfo fails with a 404 or whatever the exact code it. We could even peek into the error detail code

Sorry ... what are you trying to solve? You are trying to provide insight into what is the version of the REST api which is supported? If the server_info doesn't work, 2.4, right?

Once @RussTheAerialist has the decorators that enable/disable endpoints based on version, the library should auto-detect the versions supported by the Server, right now we default to 2.3.
Which actually means that by default, someone will try to call ServerInfo, and it'll fail because 2.3 doesn't support that call.

Alright, here's a diff that implements what I'm thinking but it has problems:

Not sure where to put the exception so that it's plumbed to the right places
It breaks all the tests because every Server instantiation now tries to call the server_info endpoint (But that can be fixed a few ways)
Crude, but effective, and I think clean :P

patch.txt

I don't want to do this. The only thing I want to add is that by adding a version# decorator to methods:
a) They are a self documenting
b) If the user sets the server.version to a number earlier than that we can chose to short circuit and give an error instead of actually hitting the server.
I don't like the idea of making these server_info calls all the time. Russell didn't seem to be excited to do this either. Please explain what gain we get over what I listed above.
Thanks. See you tomorrow. :)

Let me turn it around.
Without something like this, how do we expect our users to set the version of the API on Server?

This would imply that as new versions of our server are released and subsequently deployed by our customers ... there scripts would potentially start acting differently without them changing anything including installing a new version of the library. We should possibly even be recommending that our customers set the value themselves since we may chose to change the default one day which would affect an upgrade. If we wanted to provide a utility to wrap server_info.get and subsequently set the server version, we can and tell people to call it before using the server if this is what they want but doing it automatically ... I am not yet sold.

Applications may need to deal with different Servers, not just hard-coded to one.
This was a frequent request of partners like Interworks, who need to know the version of Server they're speaking to because they're wrapping the SCL in some sort of larger toolchain.
I'm not trying to sell you now, I'm just asking what your plan is.
If you, today, install the SCL, set up a TSC.Server and try to call server_info.get() you will get an exception, even against a 2.4 Server, because we hard code the version to 2.3, and that's not compatible. You have to know you're on a 2.4 Server to make to call to find out if you're on a 2.4 Server... That feels pretty user-unfriendly

Someone who writes a big tool will almost certainly call server_info.get on their own to enable or disable features of their tool. I am not sure what doing it automatically for them adds.
Handling the exception from server_info. get which indicates that the version is "older", we can discuss whether we want to return something other than an exception since we technically got some information, just not exactly.
The question really is do we:

Hardcode the server version to the latest version that is released and say to customers .... if you are using an earlier version, you should set it explicitly
Default to auto-detect and have the user override.

Lets talk later. Like I said, I think there are cases where 2 will cause peoples scripts to potentially break when they were not expecting. However, I can also understand your points for how should the user pick and can see how 2 would be potentially quite helpful. I need to go to sleep.

dang it, y'all, I was hoping I could put this off until Austin and talk in person, but I guess not.
Okay, here's my opinion on this.  Most of the functionality of this library favors explicit over implicit calling of the server (Pager is an exception).  To make it explicit-enough while still user friendly, could we have a server method called something like "use_server_version" which fetches the server info (or the other place to get it if server info doesn't exist).  In this method, we could automatically set the version to 2.4, and only if the version is less than 2.4 would we get an exception.  And it's explicit about setting the version of the server to whatever the server returns.
I agree that the default version should probably be in lock-step with the product version as much as possible.  We are in a limbo state currently because 10.1 didn't come out before we cut 0.2 even through 0.2 has features to support 10.1.  I could make a 0.2.1 to correct it (though, hrm, is it a bug fix?)

I should also mention that this feels like a few separate issues to me:

We have not updating the default version number to be the latest released version of the rest api.
We need some user-friendly way to set the version number to whatever the server supports.
#55 - Decorate the calls so you know which version you need.

I can respect the design decision to "Prefer explicit over implicit" but we should make sure to consider the amount of boilerplate that could be required for the 'average use case' and weigh that against other design considerations.
Adding another function that I predict will get called most of the time could be too much -- but I could be wrong and it's totally fine. Alright, my objection filed :)
@RussTheAerialist in direct response: something like that seems reasonable overall... but we can't default to the latest version, can we?
Since all API calls get constructed off the Server version, it'll try 'Sign In' on that API version -- that means anyone who pip installs the latest TSC but hasn't upgraded their Server will start their API journey with an error -- that feels very aggressive.

Input as an end user from the hackathon:
There is a catch 22. To get the API version or server version - you need to use the server_info API. However this API is only available from 2.4. If I am writing a REST call to an unknown Tableau server - I can't figure out the API version in advance (i.e. hardcoded). So it would be great for the API to self configure.

@t8y8 this is done, right?  If so, please close this?

Pretty close, we don't do it automatically quite yet, you still have to call use_highest_version and I still vote one last time for making it work automagically :)


Custom Rollup option for manual JS chunk output passed to the Vite config file isn't working

Reproduction
When doing the production build, I wanted to manually control the JS chunks generated by default on the client side. I added the rollup output config options in my project's vite.config file and expected that the client build will output JS chunks manually as I wanted them to. But these config were completely ignored by the remix plugin during the build time.
I inspected further inside the remix repo and found that the plugin.ts file isn't including the custom config I wrote when calling the vite runtime. I want to reduce the number of JS files in production build for performance reason, how can I do it? Is there any plan to support this?
My vite config
import { defineConfig } from "vite";
import tsconfigPaths from "vite-tsconfig-paths";

export default defineConfig({
  server: {
    port: Number(process.env.PORT || 3000),
    hmr: hmrConfig,
    fs: {
      // See https://vitejs.dev/config/server-options.html#server-fs-allow for more information
      allow: ["app", "node_modules"],
    },
  },
  plugins: [
    remix({
      ignoredRouteFiles: ["**/.*"],
    }),
    tsconfigPaths(),
  ],
  build: {
    sourcemap: true, // Source map generation must be turned on
    emptyOutDir: true,
    assetsInlineLimit: "7168",
    rollupOptions: {
      output: {
        entryFileNames: "[name]-[hash].js",
        chunkFileNames: "chunks/[name]-[hash].js",
        assetFileNames: "assets/[name]-[hash][extname]",
        sanitizeFileName: true,
        manualChunks: (id, { getModuleIds, getModuleInfo }) => {
          // my custom chunk logic here
          },
    },
  },
  }
})

System Info
System:
    OS: macOS 15.1.1
    CPU: (8) arm64 Apple M3
    Memory: 164.66 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.12.2 - /usr/local/bin/node
    Yarn: 1.22.19 - /opt/homebrew/bin/yarn
    npm: 10.5.0 - /usr/local/bin/npm
  Browsers:
    Chrome: 131.0.6778.86
    Safari: 18.1.1

Used Package Manager
npm
Expected Behavior
Should output custom JS chunks on the client build as I've put custom rollup options in the vite config file.
Actual Behavior
Remix build is outputting chunks as usual and ignoring the custom config options.

Can someone kindly give me an answer? 🙏


Docs/demo building

集成abp 模块化框架

Thanks for your contribution.
Integrating other frameworks adds unnecessary complexity to the component library and makes it difficult for contributors to get started.
So I still think I will do this integration in another project, and then I will refer to this PR.


Unable to update gradle dependency for the library

hi,i am trying to use the library and config the gradle as fellow:
project gradle:
buildscript {
    repositories {
        jcenter()
    }
    dependencies{
        classpath 'com.android.tools.build:gradle:1.3.0'
    }
}

allprojects {
    repositories {
        jcenter()
        mavenCentral()
        maven { url "https://jitpack.io" }  //and try move it to app grade but problem as the same
    }
}

app gradle:
apply plugin: 'com.android.library'

android {
    compileSdkVersion 22
    buildToolsVersion '22.0.1'
    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    sourceSets {
        main {
            jniLibs.srcDirs = ['libs']
        }
    }
    repositories {
        //maven { url "https://jitpack.io" }
        flatDir{ dirs 'libs'}
    }
}

dependencies {
    compile('com.github.afollestad.material-dialogs:core:<IP_ADDRESS>@aar') {
        transitive = true
    }
    //compile('com.github.afollestad.material-dialogs:commons:<IP_ADDRESS>@aar') {
    //    transitive = true
    //}
}

where is the problem?
error: could not resolve com.github.afollestad.material-dialogs:core:<IP_ADDRESS>

This is a duplicate of many issues.

It should always go in your module build.gradle file though.

would you give me a aar file download url? thank you!

Anyone still having issues, see this response from JitPack: https://github.com/jitpack/jitpack.io/issues/318
I will be updating the project REAMDE also.

https://github.com/afollestad/material-dialogs/releases/tag/<IP_ADDRESS>

The library is now on jCenter, as an alternative to JitPack.io. jCenter is Android Studio's default Maven repository.
See the README for updated dependency info: https://github.com/afollestad/material-dialogs#gradle-dependency


Jetson nano has problem with start up from mmc

Hello,
we want to use Jetson nano on branch dunfell-l4t-r32.4.3 and have got followed message at u-boot start, kernel is not loaded because my rootfs is on partition 1 and u-boot need it on 0 regarding followed message:
`
U-Boot 2020.04 (Jan 05 2022 - 19:59:34 +0000)
SoC: tegra210
Model: NVIDIA Jetson Nano Developer Kit
Board: NVIDIA P3450-0002
DRAM:  4 GiB
MMC:   sdhci@700b0000: 1, sdhci@700b0600: 0
Loading Environment from MMC... *** Warning - bad CRC, using default environment
In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:1...
starting USB...
Bus usb@7d000000: tegrausb: Invalid dr_mode 2 for host mode
probe failed, error -1
No working controllers found
No ethernet found.
<...>
No ethernet found.
Config file not found
starting USB...
Bus usb@7d000000: tegrausb: Invalid dr_mode 2 for host mode
probe failed, error -1
No working controllers found
No ethernet found.
No ethernet found.
Tegra210 (P3450-0002) # ls mmc 0:1
       4096 .
       4096 ..
      16384 lost+found
       4096 bin
       4096 boot
       4096 dev
       4096 etc
       4096 home
       4096 lib
       4096 media
       4096 mnt
       4096 proc
       4096 run
       4096 sbin
       4096 sys
       4096 tmp
       4096 usr
       4096 var
Tegra210 (P3450-0002) # ls mmc 0:0
** Unrecognized filesystem type **
`

`Tegra210 (P3450-0002) # mmc part
Partition Map for MMC device 0  --   Partition Type: EFI
Part    Start LBA       End LBA         Name
Attributes
Type GUID
Partition GUID
1     0x00000022      0x01c00021      "APP"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   6f849c61-d5e9-4850-a6dd-d36e195edd17
2     0x01c00022      0x01c00821      "DTB"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   1a5503f3-ba87-46df-9b0e-e40916e53139
3     0x01c00822      0x01c03821      "TOS"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   558dd825-2920-42b4-ba3e-0261b1e59915
4     0x01c03822      0x01c038c1      "EKS"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   1d1a72d9-608a-4bc4-be7a-2a04f51d4d65
5     0x01c038c2      0x01c238a1      "LNX"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   1b235e12-921c-4b19-bc93-c3725265517e
6     0x01c238a2      0x01c240a1      "DTB-1"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   710fc174-7479-4f03-8ff4-e20d66525d6a
7     0x01c240a2      0x01c270a1      "TOS-1"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   37689b2d-8e70-41d2-a4df-bf4060c47821
8     0x01c270a2      0x01c27141      "EKS-1"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   31722c39-fda1-42b0-b2dc-f43e9ac8f620
9     0x01c27142      0x01c47121      "LNX-1"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   1b01d38a-ba98-4dc8-b326-d4387dd75635
10     0x01c47122      0x01c472a1      "BMP"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   44a8751f-34ce-42b8-94bc-886e454d361a
11     0x01c472a2      0x01c474a1      "RP4"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   656c5dee-fb8e-4f8a-b632-d02fc7d08602
12     0x01c474a2      0x01c66ca1      "recovery"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   5b4f5c18-ad34-43fa-bcee-d3672bba7276
13     0x01c66ca2      0x01c670a1      "recovery-dtb"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   0f143f51-81f9-4a97-bd1f-c474c5002400
14     0x01c670a2      0x01c672a1      "kernel-bootctrl"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   099af672-140d-42a7-ac53-816a9f910341
15     0x01c672a2      0x01c674a1      "kernel-bootctrl_b"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   6479a27d-3250-4b41-bf55-7c62b6ceeb15
16     0x01c674a2      0x01cfd4a1      "RECROOTFS"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   5df22ff1-32b2-4171-9097-e2367c03f478
17     0x01cfd4a2      0x01d59fde      "UDA"
attrs:  0x0000000000000000
type:   ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid:   4f39ed4a-be03-4fb6-b9da-4a2e6a62e213`

Hello,
can someone say me what should be done for eliminating the error with boot from mmc in u-boot?
I really appreciate the help on this topic.

I just tried a build myself and loaded it up, and I'm not having any problems booting:
U-Boot 2020.04 (Jan 05 2022 - 19:59:34 +0000)

SoC: tegra210
Model: NVIDIA Jetson Nano Developer Kit
Board: NVIDIA P3450-0002
DRAM:  4 GiB
MMC:   sdhci@700b0000: 1, sdhci@700b0600: 0
Loading Environment from MMC... *** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:1...
Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
224 bytes read in 17 ms (12.7 KiB/s)
1:	OE4Tegra Demonstration Distro
Retrieving file: /boot/extlinux/../initrd
2096405 bytes read in 67 ms (29.8 MiB/s)
Retrieving file: /boot/extlinux/../Image
37335048 bytes read in 876 ms (40.6 MiB/s)

This is with the latest on the dunfell-l4t-r32.4.3 branch here, built on a Ubuntu 20.04 host.
It looks like with your setup, U-Boot isn't finding the /boot/extlinux/extlinux.conf file on partition mmc 0:1.  Did you make changes that might have affected the content of the rootfs partition?  From U-Boot, can you manually run the boot yourself?
Tegra210 (P3450-0002) # devnum=0; distro_bootpart=1; sysboot mmc ${devnum}:${distro_bootpart} any ${scriptaddr} /boot/extlinux/extlinux.conf

@madisongh thanks for fast response,
I'm using ubuntu18.04LTS as host. But I can remember that I have tested it already on ubuntu22.04 with same result like ubuntu18.04LTS. In both builds I have nothing that effects u-boot and kernel in wrong method. I have tested in early yocto version with DSI  functions for kernel, what was in that version okay.
I will test the build on ubuntu20.04 until middle next week.

And it is working. Thanks again and sorry for inconvenience.


Re-release Hystrix 1.5.11

The current Netflix internal usage of Hystrix is pinned to version 1.5.11. There are issues and instabilities to Hystrix 1.5.13 that make it problematic to use. For Netflix, the primary goal at this point is maintaining Hystrix stability, even if that means accepting known issues that need to be worked around. To this end, Hystrix 1.5.11 should be re-released to Maven Central as Hystrix 1.5.14 so that the latest version of Hystrix in Maven Central is at a known-stable state.

For Netflix, the primary goal at this point is maintaining Hystrix stability, even if that means accepting known issues that need to be worked around.

@elandau thanks, this helps shed a bit of light on Netflix's internal approach to Hystrix. Can you confirm if the project is going to be maintained in the future e.g. as asked #1876?


IE9/IE10 - Observable's static methods are not defined on Subject

It happens because IE9 and IE10 do not support Object.setPrototypeOf which is used by Babel for class inheritance. It seems to be a known limitation: https://github.com/babel/babel/issues/2450
Issue spotted thanks to https://github.com/angular/angular/issues/5072

@mlaval ... thanks for pointing this out.

cc/ @robwormald @jeffbcross

If I'm correct, the only way is to manually copy the properties from Observable to Subject.
It could be done with some kind of util function. WDYT ?

Does Typescript handle it properly? Maybe we could convince @blesh to let us add a dist/ts-cjs distro if it handles it properly :sob: - that would at least remove the need to manually copy the typings from es6 => cjs like we do now.

I'm starting to lean toward not using export default in any of our files, build everything solely with TSC. I think most CJS users on Node will import everything via var Rx = require('@reactivex/rxjs'), with little care about modularity, and we can come up with better distribution patterns to account for the operators.

Let me know if you decide to do this, i have 14 hours on an airplane on saturday and this is the perfect kind of brain numbing repetitive task that will keep me sane. :+1: from me for that.

Does this actually make sense, now that I think about it? The Angular2 API check is complaining about statics like fromEvent etc not showing up on Subject - the question is, should they?
Now that TS is doing the compilation, I only see "create" added as a static to Subject, which is (in hindsight) what I would expect. Once Rx releases a bump with TS build I can investigate further.

the question is, should they?

No, Subject.fromEvent doesn't make any sense. I filed an issue with TypeScript (https://github.com/Microsoft/TypeScript/issues/4628) a while back about inheritance and statics complaining. I'm not sure what they're going to do about it. I totally understand the issue they're faced with, but it is crappy because it's a JavaScript idiom to have a static create methods on a class that are specific to that class and not it's super.

Subject.create is specific to the Subject constructor, not Observable.

I don't think the original issue is an issue any longer. Closing for now. @mlaval please feel free to reopen if you're still having these issues with 5.0.0-beta.1.


Could not Find Image

Hi Rishi,
I was using the relative resizer script for our project and ran into a problem.
I downloaded all of the necessary modules and stuff and when I try to find the picture it is giving me the following error:

I tried to use the images that you left in the folder and it was giving the same error then as well. Do you have any ideas as to why I am getting this error?

Oh what OS are you running this script?

MacOS
On Nov 29, 2016 2:56 PM, "Rishi Thakkar"<EMAIL_ADDRESS>wrote:

Oh what OS are you running this script?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Atrifex/ECE385-HelperTools/issues/6#issuecomment-263696018,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AO_tCfNgQKERS5XVm2Uoc2akIFif0978ks5rDJFkgaJpZM4K_Xyk
.

The problem seems to just bee that you are either typing your file name incorrectly or that it does not exist in that directory. Can you add a picture of your directory structure?

Why are you not using the dispatcher script?

What is the dispatcher script?

The png_to_txt.py dispatcher script is part of the new update and should be used instead of the script directly.
You will need to make a couple of changes though. Every where you see:
       os.system("python <DIRECTORY>")
Change it to:
       os.system("python3 <DIRECTORY>")

This I believe will fix your issue.
I am going to close the issue. If you have any more problems, then you can reopen the issue or you can create a new one.

I am still getting the same issue even after I am using the png_to_txt.py and made the change from python to python3


[BUG] Azure OpenAI Assistants (C#) do not work as expected (mixing up roles etc)

Library name and version
Azure.AI.OpenAI.Assistants 1.0.0-beta.4
Describe the bug
Assistants created with the SDK do not handle responses as expected. For example, when instructed to act as a customer and user to be the salesperson, it acts as a salesperson and expects the user to be a customer. It other times it returns a paragraph from the instruction prompt (paragraph that contains the examples of interactions).
I have tested the same prompt on the same model deployment with Assistants playground and it works as expected.
Expected behavior
Assistants created with the SDK should respond in the same way assistants created in the playground do.
Actual behavior
Mixing up roles, replaying back with big parts of the system prompt.
Reproduction Steps
Can give you the exact prompt but would like to keep it private. So, DM me please.
Environment
.NET 8.0

any idea when the Assistants SDK would be fixed? Not sure if I should wait or maybe use OpenAI SDK for time now.

@k2tomasz We recommend that customers migrate to the Azure.AI.OpenAI package. Azure.AI.OpenAI supports the latest features, including the Assistants v2 API. See the note at https://github.com/Azure/azure-sdk-for-net/tree/main/sdk/openai/Azure.AI.OpenAI.Assistants#important-note-assistants-is-converging.


Trying to install with HACS

I am trying to install using HACS. I am running Home assistant in as a docker on Ubuntu. I installed via hacs, add  /hacsfiles/custom-header/custom-header.js under configuration->Lovelace Dashboards->resources and reboot, but I do not see the option for the menu when click on the three dots. I tried edited the dashboard by selecting raw configuration editor and add
custom_header:
  compact_mode: true
title: Test
views:

Any help would be appriciated

it was the browser cache. Cleared that and it loaded


use match over table_exists function

no issue to close
Description
refactoring *Commands to use CatalogManager second iteration
Client output
no changes to output

Pull Request Test Coverage Report for Build 239864116

225 of 272 (82.72%)  changed or added relevant lines in 4 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-0.2%) to 87.451%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/sql_engine/src/dml/delete.rs
13
19
68.42%

src/sql_engine/src/dml/insert.rs
65
72
90.28%

src/sql_engine/src/dml/update.rs
57
64
89.06%

src/sql_engine/src/dml/select.rs
90
117
76.92%

Files with Coverage Reduction
New Missed Lines
%

src/sql_engine/src/dml/select.rs
1
74.19%

Totals

Change from base Build 239660141:
-0.2%

Covered Lines:
5540

Relevant Lines:
6335

💛  - Coveralls


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/47845

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/65994

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/105127


POST with ResponseEntity not shown correctly in swagger-ui

I have a spring-boot app with springfox 2.5.0 running.
The @RequestMapping is responsible for generating an image/PNG out of a rather complex parameter-set. Thats why the parameters are POST-ed to the resource. as result, the image is transmitted in the ResponseBody
This approach works, when I use postman, or use the resource in my actual webapplication frontend. However, swagger does something strange:
a) the result image is the default "browser-didnt-find-an-image-at-this-url" image
b) in the console, swagger POSTs the correct request, but then triggers a subsequent GET on the same address which is not bound:

Here is the concrete RequestMapping:
  @RequestMapping(path = "getImage", method = RequestMethod.POST, produces = MediaType.IMAGE_PNG_VALUE)
  public ResponseEntity<InputStreamResource> getImage(@RequestBody ImageParameters parameters) throws IOException {

    final BufferedImage image = rendererService.getImage(parameters);
    final File tempFile = File.createTempFile("image-", ".png");
    final FileOutputStream oos = new FileOutputStream(tempFile);
    final ImageOutputStream imageOutputStream = new MemoryCacheImageOutputStream(oos);
    ImageIO.write(image, "PNG", imageOutputStream);
    imageOutputStream.close();
    oos.close();

    // construct baseUri for image and add to headers

    return ResponseEntity.ok().contentLength(tempFile.length())
        .contentType(MediaType.IMAGE_PNG)
        .header("filename", tempFile.getAbsolutePath())
        .body(new InputStreamResource(new FileInputStream(tempFile)));
  }

Any thoughts on that one? I dont know whether its springfox or swagger-ui or me who is doing things wrong (apart from "you should respond with 201 and add the location header for the actual image")

Okay. It appears like swagger-ui simply inserts a <img> tag into the response body area which obviously doesnt know anything about the fact that it should POST to the address.
Would make sense to insert the POST response body into the <img>-tag as base64-encoded image, right?

Is this perhaps a swagger-ui issue?

I created an issue in the swagger-ui project: https://github.com/swagger-api/swagger-ui/issues/2226


The new URL inserter is broken

New "feature", new problems.
The new URL inserter adds "hpp:// before the URL and a double quote afterthe URL link.
Example.
This is the correct URL:
http://forum.arduino.cc/index.php?topic=278746.msg1960038#msg1960038
This is what I get:
http://"http://forum.arduino.cc/index.php?topic=278746.msg1960038#msg1960038"

Is this still broken? I can't reproduce it, but maybe I'm looking in the wrong place

I can't reproduce that problem right now. I think it was something to do with Rich Text editing mode. Perhaps if leomil72 can describe the steps to reproduce.

No way to reproduce it. Closing, we can open it again if we will have more info.


Add libuv-static pkg-config file

Create a different pkg-config file for static linking. Ref. #2988

@hmel I see that you changed the target branch to v1.x, but then changed it back to master. Was that intentional?

I tried to take into account @bnoordhuis comment but that created other problems so I reverted it. Simple cherry-picking should do the job just fine.

CI run against v1.x: https://ci.nodejs.org/job/libuv-test-commit/2054/
I tested it locally with cmake -DCMAKE_INSTALL_PREFIX=<path> and it worked fine for me.

I kicked off a resume CI build and got a green run: https://ci.nodejs.org/job/libuv-test-commit/2057/

Landed in https://github.com/libuv/libuv/commit/3ee60fa72a3a562a50436a5384494e4b429ac7f0. Thanks!


feat(parse): attachment option

💯
looks like this:

discuss:

required option? still support old way?

If you can guarantee that the image link is valid for the next 30 seconds (because I sent the link to the image to the API), then make this required

If it's convenient to use (for example, can you copy and paste an image in?) and the link to the image is valid for at least 20 seconds after the command is sent (so the API can download the image), then this is good and we don't need to keep the old option


Enumerate all possible payment failure states

For design we want to be sure we know all the payment failure states the wallet can tell us about, and what actions are available to the user (and any "why" we can tell the user)

I think we might have done this a while ago, here's what I have so far on the designs:
Link to the designs

Payment route not found (Solution: Retry later, request smaller invoices, or ask for a Bitcoin address.)
Payment timed out (Solution: Things to try to make your payment go through: Make sure your connection is good, Make sure the receiver’s connection is good , Make sure the receiver has their phone open, Maybe the LSP doesn’t have enough liquidity as the moment.)
The Lightning invoice has expired. (Solution: Ask the receiver for a new one.)
Low balance - whether both, onchain, or LN (Solution: load up balance, ask for smaller amount, or enter a smaller amount in case the user is the one setting the amount or use the other balance if it's just one that is low and you entered an unified invoice or swap some funds from one balance to the other). The solution for this one depends where you are on the flow when sending.
Format not recognized (Solution: Make sure you entered a valid Bitcoin address or invoice.)
Wrong network (Solution: make sure you enter an invoice, address for mainnet)


Another refactor before making Kotlin DSL models IP compatible

This is only clean up and polishing, no changes to public models
Preparation for:

https://github.com/gradle/gradle/pull/27434

Main changes:

StandardKotlinDslScriptsModel no longer carries a list of scripts, as it is implied by the keys in the dehydrated map
ClassPathModeExceptionCollector is made thread-safe

@bot-gradle merge

I've triggered a build for you. Click here to see all failures if there's any.


[Bug]: maxContextTokens in Agents is not correctly set when the model != deploymentName

What happened?
in our case the model configuration in the librechat.yaml file is using the the deploymentName parameter. The model name (e.g. gpt-4o) is not equal the deploymentName. With this when commuicating with an Agent the maxContextTokens is not defined and results in an error.
Steps to Reproduce

name a deployment of a model different than the model name
set the deploymentName in the librechat.yaml
use it in an Agent

What browsers are you seeing the problem on?
No response
Relevant log output
No response
Screenshots
I'm new to js - but this change e.g. fixes the issue - but I'm actually not sure if it is the right thing to do...

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Closed by https://github.com/danny-avila/LibreChat/pull/5035


[Infrastructure] Parser

The commons-cli library does not have native support for positional parameters, so I added some classes that might help
for this purpose.
For optional flags support (e.g --user), I have also added a wrapper around the commons-cli API in an attempt to
decrease coupling.
Positional Parameter
PositionalParameter<T> represents a positional parameter that is expected to be at a certain index relative to the
arguments list (i.e without the command name). This class also takes a function to parse the read String into
an Optional<T>, returning an empty Optional if the provided argument is invalid or doesn't exist. Then, we can call
getArgValue to get the argument value which raises a ParseException if function returned an empty Optional.
This class is used to implement ListModuleCodeParameter and UserModuleCodeParameter classes that represent
module codes to validate against the full list (e.g for add) or against the user's module list (e.g rm). Accordingly,
they each have skeleton validation functions in ParserUtil which could be implemented to facilitate re-use of
validation logic across commands (was not sure about interfacing with storage for this yet).
An example of use can be seen in ModuleCodeParameterTest.java which tests the parent class for the above two classes.

OptionalArgument, OptionalArgumentsParser
OptionalArgumentsParser and OptionalArgument serve as wrappers around the commons.cli parsing logic. The purpose
is to reduce coupling with commons.cli and make it easier to use the library by providing an interface.
The reason I could not make OptionalArgument classes that each handle validation individually, like for
PositionalParameter, is because commons.cli requires that we populate an Options object with each Option to
check for before parsing.
When I tried doing it separately, there was an issue where if a command has two options e.g
--lab --tut, none of them would be recognised, but they could only be recognised individually e.g --lab only.
Issue with commons-cli and unrecognised options
An important issue highlighted in OptionalArgumentsParserTest and UserFlagParserTest classes is that if an
unrecognised option is provided e.g --lab --nonsense, even if there is a recognised option the parser will
immediately throw an exception. Then, we cannot check for presence of recognised options.
This complies with normal CLI behaviour e.g try running ls -a -ergirjeg, but testers may see it as a bug.

Codecov Report
Base: 44.95% // Head: 46.78% // Increases project coverage by +1.83% :tada:

Coverage data is based on head (38654e7) compared to base (56cd4ce).
Patch coverage: 77.02% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff              @@
##             master      #55      +/-   ##
============================================
+ Coverage     44.95%   46.78%   +1.83%
- Complexity      511      536      +25
============================================
  Files           107      116       +9
  Lines          2914     2988      +74
  Branches        332      337       +5
============================================
+ Hits           1310     1398      +88
+ Misses         1517     1495      -22
- Partials         87       95       +8

Impacted Files
Coverage Δ

...gic/parser/parameters/ListModuleCodeParameter.java
0.00% <0.00%> (ø)

...gic/parser/parameters/UserModuleCodeParameter.java
0.00% <0.00%> (ø)

...va/nus/climods/commons/core/module/ModuleCode.java
36.36% <36.36%> (ø)

...main/java/nus/climods/logic/parser/ParserUtil.java
93.18% <75.00%> (-4.05%)
:arrow_down:

...s/logic/parser/parameters/PositionalParameter.java
88.88% <88.88%> (ø)

...s/logic/parser/parameters/ModuleCodeParameter.java
100.00% <100.00%> (ø)

...c/parser/parameters/optional/OptionalArgument.java
100.00% <100.00%> (ø)

...r/parameters/optional/OptionalArgumentsParser.java
100.00% <100.00%> (ø)

...ods/logic/parser/parameters/optional/UserFlag.java
100.00% <100.00%> (ø)

...gic/parser/parameters/optional/UserFlagParser.java
100.00% <100.00%> (ø)

... and 1 more

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

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

Although idk if this is the intended behaviour? Should we only allow for 100% correct commands?

I think both are fine. git throws an error when an unknown flag is parsed, some other cli like ls tries its best to parse commands and ignore unknown flags.
We can just make a decision and ensure our error message reflects that.

https://commons.apache.org/proper/commons-cli/javadocs/api-1.3.1/org/apache/commons/cli/DefaultParser.html#stopAtNonOption
^ This flag stops parsing at the nonsense flag. But it may not be our intended behaviour since it might be helpful to let the user know what flags were rejected + there might be other useful flags after the nonsense flag

Ah right, forgot to mention I tried that and it works if the gibberish option is at the very end. But if it comes in the middle or start it will ignore all remaining options e.g --gibberish -lab and we won't know if it was because the option was really missing or due to gibberish.
However I just managed to find a fix through this SO link which seems to cover those edge cases. We can use the RelaxedParser class if we want to ignore unrecognised options completely and still see the recognised ones.

Changes after feedback:

Remove unnecessary classes: subclasses of ModuleCodeParameter, and wrappers around commons.cli
Add RelaxedParser which can be used to ignore unrecognised options
Delete ModuleCode class
Refactor ModuleCodeParameter to yield a String instead of a ModuleCode using validation regex suggested by Yi Hong
Add support for custom invalid input exception message in PositionalParameter (when the expected index is invalid for the no.of arguments provided)

Would also like to apologise to the team for making this PR late. Hope the changes are useful.

Think checkstyle should be fixed now!

Think checkstyle should be fixed now!

Does @SeekSaveServe have anything else? If not let's merge it!


How to exclude weekends

Hi, I need some help...
Is there a way to exclude weekends from the finalDate?
I am currently using the "Advanced Coupon Site" example and would like to exclude weekends from the countdown.

You don't wanna show it or you want to remove from the final date?

I don't want to show those days in the countdown.
I am building a holiday countdown to show people how many business days are left until a holiday.

http://hilios.github.io/jQuery.countdown/documentation.html#formatter

I think it's not what he wants.
What I understand he wants is to not count the weekends.
I'm also developing a script with countdown too but I need not to count holidays, weekends and to countdown only beetween 9AM and 7PM hours.
In resume, to countdownd only on business days and hours beetween 9AM and 7PM hours.
It's important for SLA system to not countdown weekends and not businees days.
For example my team works beetween 9AM and 7PM and SLA with 48 hours of assistence must only countdown business open hours.


Change test session file format

We had used a UNIX process id as a hash key to saving a test session. But we sometimes couldn't get the same UNIX process id through a CI job in some environments. IOW, a UNIX process id was changed each step in a certain environment.
Also, the cli has been created a new test session file when the UNIX process id changes, missing introduce the cli, don't need to create a new one but create and etc.

So I changed to stop using a UNIX process id and to use <SESSION DIR>/.launchable file to avoid miss integration.
If the user tries to create a new build after didn't run record tests due to an error or misconfiguration, the user will get an error.
It may not have been a problem in the previous version, but since this version, it is an error to make it easier to detect misconfigurations.

And tests of the cli has deleted test session files that was created in CI pipeline, so I changed to avoid deleting test session file.

Sorry, I discussed with @kohsuke before and I realized need to fix some codes.
So, this pr back to draft this PR and I'll ask for review again later

I realized that I miss understanding from you and Al's feedbacks.
While I was implementing this change, I overlooked something important in order to simplify the changes.
I'll get a chill out and implement it again

I made a new PR
https://github.com/launchableinc/cli/pull/342


mirrors

Hi
Pls add support for multiple urls for a single file
So first successful download should stop subsequent requests

You can easily implement such a functionality yourself. I just uploaded an example demonstrating how to use mirror servers:
https://github.com/michel-kraemer/gradle-download-task/blob/e15413897e3e57dc29d598fb4b107355cb405034/examples/mirrors.gradle
I hope this solves your problem. Pull requests are always more than welcome :-)
Cheers,
Michel


nanoflann v1.5.0 was released

Release notes: https://github.com/jlblancoc/nanoflann/releases/tag/v1.5.0
Most notably, they now implement concurrent tree building which would be a HUGE improvement for us, but it is unclear whether we get it integrated with our current parallelization concepts.
Not currently planning on working on this, but leaving it as a note.

Duplicate of #92


UI code refactoring

Better modularisation of UI code
Already done :

Create a containers folder with reusable containers such as a BaseLayout (containing the footer and the mains divs)
Create a simple component folder with pre-stylised components such as the custom footer and buttons
Started to rewrite the Home, TaskList, Information pages.

Next steps :

Identity new modularisation opportunities in building_frames,  main_frames and Trophee
After the merge with task-creation-form, update its code as well

Should I rename the custom components with a shorted name such as CFooter instead of CustomFootter ?

What  remains to do

Bugs in rendering strings as HTML in CSVTrainngFrame.vue and others.
Solve display bugs in TrainingFrame (and forward the changes to TestingFrame)
I tried to modularize further the SingleUploadFile but I couldn't manage to get a working implementation
The App file is not yet done
Use vue-i18n  internationalisation package to define two versions of the texts one for DeAI and one for  FeAI.

Further ideas :

Put all data into data attribute and use v-for  structure to reduce code size (may not be possible with svg tags since they cannot be stored in data properties and I couldn't make it work with strings and an inline svg tag)
Try again the modularisation of SingleUploadFile

Questions :

Naming conventions of Vue components : eg. TaskForm or  task-form ?
Should the names of svg icons files contain the word Icon ?

@s314cy I agree with you, if we use different communication protocols then it does not make sense to use i18n for this. I will update the code anyway after the merge.

Really nice work, the code is much more readable with all the components 1st_place_medal
As @s314cy said, the i18n is really nice, and we'll figure out next week a robust way to deal with using different code based on FeAI vs DeAI.

Exactly. For now I'll put all FeAI-specific backend files in a subfolder, so that DeAI still runs perfectly. For instance, the resulting code base would contain both communication_manager/feai/{communication_manager, helpers}.js and the usual communication_manager/{communication_manager, helpers}.js.


manpage

Write a manpage!

cf https://github.com/mgree/ffs/tree/main/man for how to convert markdown to man's format

@mgree I could work on that!

Closed by #8


Code modification

Hi Mike
I am trying to implement the continuous ADC.
First,  I run the MAKE to generate the firmware.bin file.
Then，I run python setup.py install to load the firmware.bin
However, all ADCs become  0000000
Could you give any tips for compilation and code loader?
Thanks in advance
Fei

Hi alanxuefei
I am also currently working on continuous ADC and was trying to make it work with your code. The problem is I am using new beaglebone black wireless running debian. Is this code compatible with beaglebone black wireless?

A separate project implements streaming ADC capture, see:
https://github.com/pgmmpk/bbb_pru_adc


chore(deps): update common-dev-assets digest to 0b25aa7

This PR contains the following updates:

Package
Update
Change

common-dev-assets
digest
59db235 -> 0b25aa7

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

:tada: This PR is included in version 2.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Make 0.20.0 release notes

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 89.953%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
9096

Relevant Lines:
10112

💛  - Coveralls


Mac/Mc not formatted properly (Old 218)

In gitlab by @A-Lawrence on Aug 31, 2015, 01:09
Mc/Mac names are dropping the first letter following the Mc/Mac.

In gitlab by @A-Lawrence on Aug 31, 2015, 01:15
Fixed issue with Mc/Mac names.  Resolves issue #488521 (218).
ÔåÆ <<cset 605ed1da4322>>
ALawrence66 - 2015-01-07T18:37:03.253105+00:00


Optimistically remove selected category value

Need
Remove small delay between clicking the remove selected category value button ("x") and the visual removal of the selected category value.
Approach

Update selected flag of category value button locally (local to the view component) to false rather than waiting for re-render.

Definition of Done
Selected category value is removed immediately on click of "x".

Not prioritized for Q1 2022. Review once additional filters and data are added.

Not currently required.


Wrong PDF page labels when disabling numbering

Description
When the page numbering is set to none after a different value, the previous value logic stick to the next one.
Example:
#set page(numbering: "1")
A

#pagebreak()

#set page(numbering: none)

B

The B page is labeled as "2", when should be empty.
Reproduction URL
https://typst.app/project/rHQz12gQeHgUXr4yCYca4m
Operating system
Linux
Typst version

[X] I am using the latest version of Typst

Hi, I didn't see a "2" in the cloud doc link above.. and I was not able to repro it locally:

Any advice?

The problem is not in rendered numbers in pages, but in Page Labels, only for PDF exports. The labels appears PDF reader interface.

Fixed by https://github.com/typst/typst/pull/3837


Redo ESP32 partitions.csv parsing

Support comments ('#'), -K and -M modifiers, don't skip 1st line,
and match on the "type" and note "name" fields.   Match "LittleFS"
type, too.
Fixes #61

test.zip
@stef-ladefense, please exit the IDE, manually remove your current VSIX, and try the one attached in the ZIP file here.  It parses the CSV you attached to the bug, or at least appears to do so for me.
If you could report back that would be appreciated as I'm not a ESP32 user...

(edit) - Updated version in "test2.zip" to ensure IDE doesn't cache old rev) test2.zip
@stef-ladefense, please exit the IDE, manually remove your current VSIX, and try the one attached in the ZIP file here. It parses the CSV you attached to the bug, or at least appears to do so for me.
If you could report back that would be appreciated as I'm not a ESP32 user...

hi @earlephilhower you are fast ! 👍🏻
the 1.3.0 version work with my worse example csv ;)
LittleFS Filesystem Uploader v1.3.0 -- https://github.com/earlephilhower/arduino-littlefs-upload
Sketch Path: D:\Arduino\ESP32_RadioWeb\ESP32S3_RadioWeb_0_66
Data Path: D:\Arduino\ESP32_RadioWeb\ESP32S3_RadioWeb_0_66\data
Device: ESP32 series, model esp32s3
Using partition: partitions.csv in sketch folder
Partitions: D:\Arduino\ESP32_RadioWeb\ESP32S3_RadioWeb_0_66\partitions.csv
Start: 0x610000
End: 0x9f0000
Building LittleFS filesystem
Command Line: C:\Users\Stephane\AppData\Local\Arduino15\packages\esp32\tools\mklittlefs\3.0.0-gnu12-dc7f933\mklittlefs.exe -c D:\Arduino\ESP32_RadioWeb\ESP32S3_RadioWeb_0_66\data -p 256 -b 4096 -s 4063232 C:\Users\Stephane\AppData\Local\Temp\tmp-6364-53B1Z1RPXuOM-.littlefs.bin
Uploading LittleFS filesystem
Command Line: C:\Users\Stephane\AppData\Local\Arduino15\packages\esp32\tools\esptool_py\4.6\esptool.exe --chip esp32s3 --port COM8 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 6356992 C:\Users\Stephane\AppData\Local\Temp\tmp-6364-53B1Z1RPXuOM-.littlefs.bin
Wrote 4063232 bytes (886280 compressed) at 0x00610000 in 28.2 seconds (effective 1152.6 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
Completed upload.
👍🏻 👍🏻 👍🏻 👍🏻
you are the best!

just a detail
Partitions: D:\Arduino\ESP32_RadioWeb\ESP32S3_RadioWeb_0_66\partitions.csv
Start: 0x610000
End: 0x9f0000
0x9f0000 is not end but length
end is 0x610000+0x9f0000=0x1000000
last adress is 0xffffff (start 0 -> 0x1000000-1 for 16Mb)

Argh, thought your message was that it was working and this just missed the release.
Is the generated FS proper or busted?  I think it's broken and not the right size because the old code actually added fsStart to fsEnd before doing it's magic.

#63 to fix


Pinning integration: Make Files screen functional

Note: This issue is part of a larger pinning service integration epic undertaken spring/summer 2020.
In brief
Make the UI elements for the Files screen that were stubbed out in #1500 functional by integrating with the to-be-built IPFS Pinning API.
⚠ IMPORTANT: Work on this issue is blocked by issues #1500 and #1504 in addition to completion of the API itself.

Closed as part of https://github.com/ipfs/ipfs-gui/issues/91


fix typo

There is typo in pbmc3k.ipynb. I made quick fix.

the diff changes the data of all images. Can you do this without re-rendering all images?

In section " Embedding the neighborhood graph
"
sc.tl.leiden(adata) # This should be added
sc.tl.paga(adata)
sc.pl.paga(adata, plot=False)  # remove `plot=False` if you want to see the coarse-grained graph
sc.tl.umap(adata, init_pos='paga')


ISO8601 Validator

The Regex for date validation (from here) is very long and ugly:
/^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/

It would be awesome to have a specific date validator like this:
isISODate(date:string)
isISODate('1896-02-24T01:56:53.498Z')

If you're interested, I could fork and build it for you guys to consider?

The worst part of a regex date validator, is that it cannot be completely correct anyway.
What I mean by that is: a regex cannot take into account the edge cases such as February having 29 days in 2016 but not in 1900 but then again it does in 2000.
1900-02-29 is not a valid date but a regex will not tell you that. Heck, unless it's a really complicated regex I don't think it will even say that 2015-04-31 is not a valid date.
The cleanest code for dates is sometimes to simply parse and check if it's valid.

Thanks for submitting this / commenting on this.  At this time we are closing this because we have completely re-written and are deprecating the previous feature set.  If you feel this should be re-opened please feel free to review this blog post and submit either again on this repository, or on the new validatejs bridge repository
Thanks again!


Update to resolve semver and word-wrap, also updated to @vscode/dts

GitHub is showing some lint warning in this PR. I suggest to review those just in case @DonJayamanne


Feature sql fragments

Hey @Newbie012—noticed that your recent roadmap post didn't mention fragments support.
Did you run into a blocker when implementing this? Being able to compose SQL from multiple fragments would be incredibly useful in DRYing up code.
Curious if you had any thoughts on the feature in general. Would you be opposed to an outside contribution adding support for fragments?
Thanks!

Hi @sds,
When I first drafted this PR, I realized it would be too difficult to support sql fragments while still keeping SafeQL library-agnostic (since each library has its own implementation, and I didn't want to force any convention).
Although I haven’t explicitly mentioned SQL fragments in the roadmap, I plan to address them using [custom presets](https://safeql.dev/blog/safeql-v4-roadmap.html#example-3-custom-library-presets).
These presets will provide the low-level control needed to support SQL fragments while still allowing SafeQL’s core to remain library-agnostic and pluggable.

Thanks for the response! Looking forward to v4 when it's ready—thanks for all your work on SafeQL.


Updating Kuttl tests to reduce flakiness

What type of PR is this?

Uncomment only one  /kind line, and delete the rest.
For example, > /kind bug would simply become: /kind bug

/kind bug
/kind cleanup
/kind failing-test
/kind enhancement
/kind documentation
/kind code-refactoring

What does this PR do / why we need it:
Have you updated the necessary documentation?

[ ] Documentation update is required by this PR.
[ ] Documentation has been updated.

Which issue(s) this PR fixes:
Fixes #?
Test acceptance criteria:

[ ] Unit Test
[ ] E2E Test

How to test changes / Special notes to the reviewer:

/test all

/test v4.10-e2e

/test v4.10-kuttl-parallel
Platform issue

/test  v4.10-e2e v4.10-kuttl-parallel

/retest

/test all

/test all

/test v4.9-e2e

/test all

/pony

/test all

/test all

/test all

/test v4.10-kuttl-sequential v4.9-kuttl-sequential

/test v4.9-kuttl-parallel

/retest

/test v4.10-e2e

/test v4.10-e2e


Remove Newtonsoft.Json dependency

Since the dependency on Newtonsoft.Json can cause problems, there is an option to replace it with DataContractJsonSerializer
It is about 3-4 times slower, but our configs are quite simple, it is unlikely that this will spoil everything much.
the code looks like
public void LoadFromDisk()
{
    if (File.Exists(FileName))
    {
        /*
        var jsonString = File.ReadAllText(FileName);
        var keys = JsonConvert.DeserializeObject<ConfigFileStruct>(jsonString).Keys;
        HostKeys = new ConcurrentDictionary<string, KnownHostValue>(keys);
        */
        using (var stream = File.OpenRead(FileName))
        {
            var serializer = new DataContractJsonSerializer(typeof(ConfigFileStruct), serializationSettings);
            var keys = (ConfigFileStruct)serializer.ReadObject(stream);
            if (Equals(keys, null)) throw new Exception();
            HostKeys = new ConcurrentDictionary<string, KnownHostValue>(keys.Keys);
        }
    }
}

private void WriteToDisk()
{
    /*
    var jsonString = JsonConvert.SerializeObject(new ConfigFileStruct()
        {
            Keys = HostKeys.ToDictionary(x => x.Key, x => x.Value)
        },
        Formatting.Indented
    );
    var d = Directory.CreateDirectory(Path.GetDirectoryName(FileName));
    if (d.Exists)
    {
        File.WriteAllText(FileName, jsonString);
    }
    */
    var d = Directory.CreateDirectory(Path.GetDirectoryName(FileName));
    if (d.Exists)
    {
        using (var stream = File.Open(FileName, FileMode.Create, FileAccess.Write, FileShare.Read))
        {
            using (var writer = JsonReaderWriterFactory.CreateJsonWriter(
                stream, System.Text.Encoding.UTF8, true, true, "  "))
            {
                var serializer = new DataContractJsonSerializer(typeof(ConfigFileStruct), serializationSettings);
                serializer.WriteObject(writer,
                    new ConfigFileStruct()
                    {
                        Keys = HostKeys.ToDictionary(x => x.Key, x => x.Value)
                    }
                );
                writer.Flush();
            }
        }
    }
}

@darkoperator  what you think ?

Sounds great to me, it reduces dependencies

@darkoperator , btw, my commit doesn't remove Newtonsoft depencency itself
  <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net472" />

Thanks for the heads up, will remove it when I test this up comming weekendSent from my iPhoneOn Feb 6, 2023, at 4:42 PM, Max Kozlov @.***> wrote:
@darkoperator , btw, my commit doesn't remove Newtonsoft depencency itself

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>


Quote command if it contains parentheses

Close #3169. I adopted the solution, but only apply it to the first argument (the command). @frostming can you verify if this fixes your problem?

LGTM. Thanks.-------- 原始邮件 --------主题：[pypa/pipenv] Quote command if it contains parentheses (#3186)发件人：Tzu-ping Chung 收件人：pypa/pipenv 抄送：Frost Ming ,Mention Close #3169. I adopted the solution, but only apply it to the first argument (the command). @frostming can you verify if this fixes your problem?
You can view, comment on, or merge this pull request online at:
  https://github.com/pypa/pipenv/pull/3186
Commit Summary
Quote command if it contains parentheses
File Changes
A
news/3158.bugfix.rst
(1)

M
pipenv/cmdparse.py
(23)

M
tests/unit/test_cmdparse.py
(17)

Patch Links:
https://github.com/pypa/pipenv/pull/3186.patch
https://github.com/pypa/pipenv/pull/3186.diff
—You are receiving this because you were mentioned.Reply to this email directly, view it on GitHub, or mute the thread.
{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/pypa/pipenv","title":"pypa/pipenv","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/pypa/pipenv"}},"updates":{"snippets":[{"icon":"DESCRIPTION","message":"Quote command if it contains parentheses (#3186)"}],"action":{"name":"View Pull Request","url":"https://github.com/pypa/pipenv/pull/3186"}}}
[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/pypa/pipenv/pull/3186",
"url": "https://github.com/pypa/pipenv/pull/3186",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
},
{
"@type": "MessageCard",
"@context": "http://schema.org/extensions",
"hideOriginalBody": "false",
"originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB",
"title": "Quote command if it contains parentheses (#3186)",
"sections": [
{
"text": "",
"activityTitle": "Tzu-ping Chung",
"activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png",
"activitySubtitle": "@uranusjr",
"facts": [
]
},
{
"title": "Commit Summary",
"facts": [
{
"name": "86a2786",
"value": "Quote command if it contains parentheses"
}
]
},
{
"title": "File Changes",
"facts": [
{
"name": "Added",
"value": "news/3158.bugfix.rst (1 changes)"
},
{
"name": "Modified",
"value": "pipenv/cmdparse.py (23 changes)"
},
{
"name": "Modified",
"value": "tests/unit/test_cmdparse.py (17 changes)"
}
]
}
],
"potentialAction": [
{
"name": "Add a comment",
"@type": "ActionCard",
"inputs": [
{
"isMultiLine": true,
"@type": "TextInput",
"id": "IssueComment",
"isRequired": false
}
],
"actions": [
{
"name": "Comment",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "IssueComment",\n"repositoryFullName": "pypa/pipenv",\n"issueId": 3186,\n"IssueComment": "{{IssueComment.value}}"\n}"
}
]
},
{
"name": "Close pull request",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "PullRequestClose",\n"repositoryFullName": "pypa/pipenv",\n"pullRequestId": 3186\n}"
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/pypa/pipenv/pull/3186"
}
],
"@type": "OpenUri",
"name": "View on GitHub"
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/pypa/pipenv/pull/3186.patch"
}
],
"@type": "OpenUri",
"name": "View patch"
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/pypa/pipenv/pull/3186.diff"
}
],
"@type": "OpenUri",
"name": "View diff"
},
{
"name": "Unsubscribe",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "MuteNotification",\n"threadId": 407446538\n}"
}
],
"themeColor": "26292E"
}
]


Adding dependencies

I'm trying to write a custom feature that installs Terraspace (see my repository here).
Terraspace runs on/with ruby and the installation process is pretty straightforward with gem. So to install it I would like to have my feature depend on ruby, meaning the ruby feature gets installed as well even if it is not mentioned in the original .devcontainer file. Is that possible?
If I define the feature dependency manually in a test everything works fine.

Hey!
I see that you're already using the installsAfter property in your custom Feature to indicate a soft dependency.  Today, you still need to add the ruby Feature to your dev container.  This was a design decision while we continued to discuss how we wanted a dependency model to look.
Good news is i'm actively working on a more robust dependency model for Feature.
We'd value your input on the spec issue: https://github.com/devcontainers/spec/issues/109


Errors occured: 404 Not Found using command line tool

Describe the bug
While downloading from a hashtag with over one million posts, I receive the error 404 Not Found after approximately 35K posts downloaded and the program stopped.  This behavior has repeated 3 times at a similar spot.
To Reproduce
Steps to reproduce the behavior:
instaloader --no-videos --geotags --comments --no-captions --no-compress-json --max-connection-attempts 0 "#<myhashtag>"
Expected behavior
missing post would be skipped and rest of posts would be retreived
Error messages and tracebacks
`#hash-tag-name: 404 Not Found
Errors occured:
#hash-tag-name: 404 Not Found`
Instaloader version
4.2.3
Additional context
Is there a way to get more verbose error information to see what is making it fail?  Also, if it is a missing post, is there a way to skip it and move on?
This is a great tool!  I would be interested in contributing a fix if I were given pointers on where to look.

Duplicate of #146.