[SOS]  Intermittent Connection Issues with HttpClient in .NET 6

Hello,
I am experiencing intermittent connectivity issues when making requests to https://api.maersk.com/ using HttpClient in .NET 6. While I can occasionally establish a connection, most attempts fail. Interestingly, when I make the same requests using Python code, the connection is consistently successful.
Here are some troubleshooting steps I have already tried:
Modifying the HTTP protocol version.
Changing HTTP headers.
Confirmed that I can successfully ping and curl the URL from my location in Hong Kong.
Despite these efforts, the issue persists specifically with C# HttpClient. Below is the code snippet I am using:
Could you help me identify what might be causing this inconsistency?
Thank you for your assistance.

 using System.Net;
using System.Diagnostics;
using System.Net.Http;

Console.WriteLine("Hello, World!");

var httpclietHandel = new HttpClientHandler
{

        AutomaticDecompression = System.Net.DecompressionMethods.GZip,
        ServerCertificateCustomValidationCallback = (message, cert, chain, errors) => { return true; },
         SslProtocols = System.Security.Authentication.SslProtocols.Tls13
};
var client = new HttpClient(httpclietHandel)
{
        //DefaultRequestVersion = HttpVersion.Version11,
        //  DefaultVersionPolicy = HttpVersionPolicy.RequestVersionOrLower
};
var request = new HttpRequestMessage
{
        Method = HttpMethod.Get,
        RequestUri = new Uri("https://api.maersk.com/"),
        Headers =
                                {
                                                                { "Consumer-Key", "xxxxxxxxxx" },
                                                                {"Accept","text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"},
                                                                {"Accept-Encoding","gzip, deflate, br, zstd"},
                                                                {"User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36"},
                                                                {"Accept-Language","zh-CN,zh-TW;q=0.9,zh;q=0.8,en;q=0.7"},
                },
};

Stopwatch sw = Stopwatch.StartNew();

using (var response = await client.SendAsync(request))
{
        response.EnsureSuccessStatusCode();
        var body = await response.Content.ReadAsStringAsync();

        sw.Stop();
        Console.WriteLine($"{sw.ElapsedMilliseconds}-=--{body}");
}

Console.WriteLine("Done");

import requests
import time

payload = "{}"

headers = {
    'Consumer-Key': "xxxxxx",
    'content-type': "application/json"
    }

url = "https://api.maersk.com/"

start = time.time()
response = requests.get(url,timeout=3,headers=headers,data=payload,)

print(response.status_code)
print(response.content)
print("Finished...{}".format(time.time()-start))

I have encountered the same problem and haven't found a solution yet.

Hello @yuefengkai as this is in .NET 6 the right repo for this is https://github.com/dotnet/runtime .. could you please close here and open there?
(I can't transfer between microsoft/* and dotnet/* repos)


Shim throws TypeInitializationException in Unity Engine

When trying to shim a static method, the execution of PoseContext.Isolate fails with a TypeInitializationException.
The class whose method I'm trying to shim:
public static class SimpleStaticClass
{
    public static double SimpleStaticMethod()
    {
        return 5;
    }
}

My test-class:
public class SimplePoseTest
{
   [Test]
   public void SimpleTest()
   {
      Shim methodShim = Shim.Replace(() => SimpleStaticClass.SimpleStaticMethod()).With(
         () => (double)20);
      PoseContext.Isolate( () =>
      {
        //doing nothing yet
      }, methodShim);
   }
}

The stack-trace:
System.TypeInitializationException : The type initializer for 'Pose.Helpers.StubHelper' threw an exception.
  ----> System.Exception : Cannot get method GetMethodDescriptor from type DynamicMethod
---
at Pose.IL.MethodRewriter.Rewrite () [0x000b4] in <fdbdd2421b614a2cbd32b6336046a6a9>:0
  at Pose.PoseContext.Isolate (System.Action entryPoint, Pose.Shim[] shims) [0x00058] in <fdbdd2421b614a2cbd32b6336046a6a9>:0
  at SimplePoseTest.SimpleTest () [0x0004f] in E:\Unity Projects\Worlds\Misc\PoserUnitTesting\Assets\Tests\SimplePoseTest.cs:12
  at (wrapper managed-to-native) System.Reflection.RuntimeMethodInfo.InternalInvoke(System.Reflection.RuntimeMethodInfo,object,object[],System.Exception&)
  at System.Reflection.RuntimeMethodInfo.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x0006a] in <eef08f56e2e042f1b3027eca477293d9>:0
--Exception
  at Pose.Helpers.StubHelper..cctor () [0x0001a] in <fdbdd2421b614a2cbd32b6336046a6a9>:0

More details:
The project is using the net48 Pose dll.
It is run from within Unity Engine
Issue appears in both 2.0 and 2.1 alpha
BTW: @Miista Thanks a lot for reviving this project! 👍

I will test it out in the sandbox just to be sure 👍

@sam-ln: Let me know what you find out. Perhaps there is some way we can guard against this.

I was trying to use Poser to write Tests for a Unity Engine project. It appears that Unity doesn't support the use of System.Reflection.Emit due to Ahead-of-time compilation.
https://docs.unity3d.com/Manual/ScriptingRestrictions.html
That's a bummer.

So, the issue doesn't seem to be related to a missing dependency. I can use System.Reflection.Emit.Lightweight.DynamicMethod in the project just fine. The Expection System.Exception : Cannot get method GetMethodDescriptor from type DynamicMethod made me take a look at the DynamicMethod Reference and there is in fact no method GetMethodDescriptor in DynamicMethod. Any thoughts?
I also added the info that my project is running from within Unity Engine to this issue as it might be relevant.

It seems that GetMethodDescriptor in DynamicMethod does have the [SecurityCritical]-Attribute. And beginning with .NET Framework 4, methods with this attribute cannot be retrieved by reflection in a lot of environments (transparent or partially-trusted-code).

@sam-ln That's weird because we have a test for specifically this scenario. Please see StubHelperTests.Can_get_method_pointer.

I think this only applies for [SecurityCritical] methods. The article I linked says

Transparent code cannot use reflection to access security-critical members, even if the code is fully trusted.

I'm not entirely sure what "transparent" refers to in this context, but I think that this might be the issue.
The .NET environment in Unity (running on Mono) seems to be affected by this restriction, but I'd be surprised if this problem is only Unity-specific.

@Miista Sure, I could set up a unity project with your test suite in it if that would help. I guess the easiest way to check for that restriction would be to execute
c# var methods = typeof(DynamicMethod).GetMethods(BindingFlags.Instance | BindingFlags.NonPublic);

In my case (in Unity) it only returns the private/internal function which are not labelled as [SecurityCritical]

@sam-ln What should we do if the method does not exist (as is the case for Unity)? Do we throw?

@Miista Mono is not used for the AOT platforms (They use IL2CCP for that), so that shouldn't be the issue.
It is odd that the function doesn't exist in the Mono implementation, although I can see it in the Rider/ReShaper disassembly(?)
Yea, it would be wonderful if we found a workaround for those cases! Still would be great to figure out what exactly the problem is (missing mono implementation? insufficient trust level?, security policy violation?), so we can give a proper Exception as well.

@sam-ln Have you had a look at managed code stripping? Link: https://docs.unity3d.com/Manual/ManagedCodeStripping.html
It's referenced from the scripting restrictions as "if [the] compiler can’t infer that the code is used via reflection the code might not exist at runtime."
It looks like it can be disabled by declaring a Link.xml. Ref: https://docs.unity3d.com/Manual/ManagedCodeStripping.html#LinkXMLAnnotation

@sam-ln Have you had a chance to look more into this?

@Miista Good idea regarding the code stripping, this wasn't the issue though (it's disabled in my project).

@sam-ln Did you find a solution or a suitable workaround at least?

@Miista Unfortunately not, but I haven't tried since. I think where we left off is that we could write a GetMethodDescriptor replacement for it to work in Mono. Have you had a chance to open it up in Unity and review the problem yourself?


Bring Sidebar back in Admin

During the merge with PR #100 , the history of changes sidebar in the admin index view went missing. Re-add it.

This was fixed in commit ee037ed which needed a database migration.


xfeatures2d not found

detector = cv2.xfeatures2d.SURF_create(hessianThreshold, nOctaves, nOctaveLayers, extended, upright) in eyeDetect.py file
AttributeError: module 'cv2.cv2' has no attribute 'xfeatures2d'
I am using opencv version 4.1.0 and getting this error.
How do I solve this?

function 'xrange()' and 'range()' was merged into 'range()' in python 3.

I am getting same issue

I am getting same issue

I was not able to solve this and did not found any work around too, did you get anything that can solve this?

You didn't  export correctly use the commands on cmd and you should be fine
.
On Sun, 18 Apr, 2021, 1:26 pm Rahulkumar Das, @.***>
wrote:

I was not able to solve this and did not found any work around too, did
you get anything that can solve this?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/LukeAllen/optimeyes/issues/11#issuecomment-821950739,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKKEXS4WKMTLJC2ETYCZPQTTJKGEPANCNFSM4I5LIKYA
.

are you running it on windows or linux? and is the issue resolved for you?

I am using windows yeah  issue is fixed for me but the pycharm screen
doesn't work
On Sun, 18 Apr, 2021, 1:38 pm Rahulkumar Das, @.***>
wrote:

are you running it on windows or linux? and is the issue resolved for you?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/LukeAllen/optimeyes/issues/11#issuecomment-821952316,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKKEXS22ZDU7IWCYB5ZKNEDTJKHODANCNFSM4I5LIKYA
.


Don't generate invalid postgres statements

Fuzz test using the postgres query parser to make sure we always generate valid statements.
This should greatly increase the safety but doesn't guarantee that it can't generate a valid postgres expression that could still be used to generate unsafe queries.

This still doesn't fix everything, after fuzzing for a while it found 0:[0:* TO 0} which compiles to 0 BETWEEN 0 SIMILAR TO '%' AND 0 which is not valid. This one I'm not sure how to fix as the the code for Range actually uses () in it's logic.

Thanks for the PR! I'll review this over the next couple days though at a high level it looks good to me. One thing to note is that I have been trying really hard to introduce no dependencies in this library to make it simple to include in any project without fear of bloat. This PR would introduce a library that itself includes protobuf. Would it be possible to remove that dependency? It looks like the library is only used in a test to validate that the generated sql is in fact valid sql. Perhaps there is another way we could achieve this?

The dependency is only needed for testing and won't get compiled for users of the library.

Sure that is true. Can you add a comment to the go.mod for that dep specifying it is used only for testing?

Done.

Sorry just got back around to this. LGTM. Thanks for contributing!


Merging latest changes to uwp from main voodootikigod repo

Contains:

Latest changes from upstream branch.
Minor updates to UWP code based on nan getting upgraded.
Change to enable serialport on IoT that hasn't changed - https://github.com/ms-iot/node-serialport/commit/e4d548b026a6a1d353ba67a1ec3cd46900a5a1ad

@kunalspathak @ooeygui I need 2 sign-offs

+1

+1

@bfjelds please merge this since it has two +1's.


klayout: 0.26.10 -> 0.26.11

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/KLayout/klayout/releases.
meta.description for klayout is: "High performance layout viewer and editor with support for GDS and OASIS"
meta.homepage for klayout is: "https://www.klayout.de/"
meta.changelog for klayout is: ""
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 0.26.11 with grep in /nix/store/j4kmv6g79psv6275lsvp6x8zq5qhh9pv-klayout-0.26.11

directory tree listing: https://gist.github.com/c34c44dee2555e6829c5fc3dfb493392

du listing: https://gist.github.com/d834dd6b0801c7af56c86c973fd23be6

Rebuild report (if merged into master) (click to expand)

3 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
klayout

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/j4kmv6g79psv6275lsvp6x8zq5qhh9pv-klayout-0.26.11 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A klayout https://github.com/r-ryantm/nixpkgs/archive/a2993113ee2465967b94d2faa2525df5a761e836.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/j4kmv6g79psv6275lsvp6x8zq5qhh9pv-klayout-0.26.11
ls -la /nix/store/j4kmv6g79psv6275lsvp6x8zq5qhh9pv-klayout-0.26.11/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

klayout

Maintainer pings
cc @knedlsepp for testing.

[nix-shell:~/projects/nixpkgs]$ /nix/store/j4kmv6g79psv6275lsvp6x8zq5qhh9pv-klayout-0.26.11/bin/klayout
Info: Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
Aborted (core dumped)

Crashes on opening. Probably needs a wayland Qt wrapper?


KAFKA-4930: Added connector name validator …

…to check for empty connector name and illegal characters in connector name. This also fixes  KAFKA-4938 by removing the check for slashes in connector name from ConnectorsResource.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/5802/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/5816/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/5905/
Test FAILed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/5890/
Test PASSed (JDK 8 and Scala 2.12).

retest this please

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/5900/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/5915/
Test PASSed (JDK 7 and Scala 2.11).

bump
@gwenshap Did you have a chance to take a look at the changes?

Thanks for your comments @rhauch. I have been out of commission for a few weeks, but will review and address these tonight.

@rhauch Thanks for your comments, I have addressed most of them. Regarding the last comment on removing the test case (for some reason github won't let me reply to that directly, so I'll add my thoughts here) - in my commit I move the test for illegal characters from ConnectorsResource to ConnectorConfig,  which the tests in ConnectorsResourceTest mock, so the test case did not make much sense there anymore. The test should now be covered by validNames in ConnectorConfigTest.

SUCCESS
8070 tests run, 5 skipped, 0 failed.
--none--

retest this please

SUCCESS
8074 tests run, 5 skipped, 0 failed.
--none--

SUCCESS
8074 tests run, 5 skipped, 0 failed.
--none--

SUCCESS
8074 tests run, 5 skipped, 0 failed.
--none--


An exception is thrown during shutdown if the connection is broken during script execution (pdo_sqlsrv)

.+Please check the FAQ (frequently-asked questions) first. If you have other questions or something to report, please address the following:
PHP Driver version or file name
5.8.0 (from https://pecl.php.net/package/pdo_sqlsrv/5.8.0/windows)
SQL Server version
Microsoft SQL Server 2017 (RTM-CU8) (KB4338363) - 14.0.3029.16 (X64)   Jun 13 2018 13:35:56   Copyright (C) 2017 Microsoft Corporation  Developer Edition (64-bit) on Linux (Ubuntu 16.04.4 LTS)
Client operating system
Windows 10 Enterprise
PHP version
PHP 7.4.2 (cli) (built: Jan 21 2020 17:52:43) ( ZTS Visual C++ 2017 x64 )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Xdebug v2.9.2, Copyright (c) 2002-2020, by Derick Rethans
Microsoft ODBC Driver version
Table schema
CREATE DATABASE test
GO

Tables do not matter
Problem description
If the session is killed, an exception is thrown both during query execution using that connection AND during php shutdown
Expected behavior and actual behavior
An exception is thrown only during query execution.
Repro code or steps to reproduce
<?php
$pdo = new \PDO('sqlsrv:Server=localhost,1434;Database=test;MultipleActiveResultSets=false', 'sa', '...');
$pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
$stmt = $pdo->prepare('SELECT @@SPID');
$stmt->execute();
$spid = $stmt->fetchColumn();

// if this transaction is removed, the issue disappears
$pdo->beginTransaction();

$pdo2 = new \PDO('sqlsrv:Server=localhost,1434;Database=test', 'sa', '...');
$r = $pdo2->prepare('KILL ' . $spid)->execute();
var_dump($r);

try {
	$r = $pdo->prepare('SELECT 1')->execute();
	var_dump($r);
} catch(\PDOException $e) {
}

echo 'After try/catch'.PHP_EOL;

exit(2);

@Agares thank you for this report. We will investigate and get back to you.

After some investigation, the uncaught exception happens when there is an unfreed statement that PHP must clean up on script termination. This causes an exception because the connection was broken, and the exception can't be caught because it occurs on termination. Note that if there is an open transaction, the connection will not re-establish itself, so an exception would be expected. But this exception would occur because PHP is trying to free a broken connection, and this exception is catchable. The exception here is instead because the very first statement, $stmt is never freed, and an exception is thrown trying to free the statement at termination. It is not possible to catch this exception, even if trying to free the connection with (say) unset($pdo);.
Therefore as a workaround, free the statement before the script terminates with unset($stmt);. This error also happens on sqlsrv, but it does not throw an exception - it rather just gets copied to the sqlsrv_errors() array. We will look more closely at how to alter pdo_sqlsrv's behaviour in the near future.

After further investigation, we believe this is by design. Explanation: This behaviour is almost identical to pdo_odbc, except that pdo_odbc does not throw the uncaught exception at the end. However, like pdo_sqlsrv, it only attempts to free the statement at script termination, even after calling unset($pdo) (which apparently does nothing when the connection is broken and a statement is not explicitly unset). It then calls SQLEndTran, which returns -1 and the error Communication link failure. It does not throw an exception unless dbh->methods is undefined (see line 106 of pdo_odbc/odbc_driver.c), though why this condition is relevant is a mystery - it probably should throw on this particular error.
It appears that PDO does not free the connection when unset is called - instead it waits until the script terminates to start freeing resources. The exception is because, with an active transaction on a broken connection, SQLEndTran returns an error, which is thrown by zend_throw_exception. This exception would be catchable if $stmt is unset explicitly, but as PDO is waiting until termination to free $stmt, the error is not catchable, resulting in a fatal exception.
So the error is expected because there is an active transaction on a broken connection. Connection resiliency does not apply when a transaction is active - see this page and this technical article. PHP's behaviour when freeing resources causes the uncatchable exception, but this can be fixed by explicitly freeing any active statement with unset($stmt). So we will mark this behaviour as being by design.
We will leave this issue open for a little while longer in case there are any questions.

This problem fundamentally appears to be because PDO does not have a dedicated method for closing connections. The PDO documentation on connection management mentions the need to free the statement first, but multiple users on that page and this bug report also point out that a dedicated close() method would be better than setting a connection to null or unsetting it.
Since there is a documented workaround and there are known issues with disconnects in PDO, we will close this issue. Please feel free to reopen if needed.


Detected access of super global var $_POST, probably needs manual inspection

I am getting PHPCS error

Detected access of super global var $_POST, probably needs manual inspection

with the following code:
if( isset( $_POST['user_role'] ) && '' !== $_POST['user_role'] ) { ... }
Screenshot: https://tinyurl.com/ycvt3e73
Editor: PHP Storm
Coding standard used: WordPress

I'm getting the same.

Please see https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/wiki/Fixing-errors-for-input-data

I'm going to close this issue as this sniff was deprecated in WPCS 1.0.0 and has been removed in WPCS 2.0.0.


Installing on OSX and deprecated packages

This is not of big deal but anyway:
some packages are really outdated.... and it does not give a good impression on "first time user" (me)
$ npm install -g anvil-connect
npm WARN deprecated<EMAIL_ADDRESS>Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated<EMAIL_ADDRESS>All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated<EMAIL_ADDRESS>Deprecated, use jstransformer
npm WARN deprecated<EMAIL_ADDRESS>Use uuid module instead

Hello, @ainthek.   I'm writing to let you know that we've just published 0.2.0 of Anvil Connect.  This release addresses deprecated packages and updated others.  Please give it a try and let us know if you encounter any issues.


Storybook integration

Storybook ran migrations for missing-babelrc, React preset, and eslintPlugin

Let's finish this task and then update this PR to point to the new branch:
https://github.com/PatrickDev14/portfolio-v3/issues/8

I know that was a simple statement but I'll have to break it down. We're expanding my GitHub syntax with every step.
"finish this task" - does that mean merge the PR to the main branch?
"update this PR to point to the new branch" - I can search for an example, but do you mean the development branch?

development is now the base branch for this PR

I know that was a simple statement but I'll have to break it down. We're expanding my GitHub syntax with every step.
"finish this task" - does that mean merge the PR to the main branch?
"update this PR to point to the new branch" - I can search for an example, but do you mean the development branch?

Sorry, I meant "let's finish the task linked below (issue #8)". And yeah! I meant the development branch 👍

@PatrickDev14 I had a bunch of errors caused by this page: src/pages/mdx-page.mdx
I had to delete it in order for Storybook to work correctly. Are you able to keep that page and also run Storybook successfully?

I tried a couple other approaches from the web, but ultimately src/pages/mdx-page.mdx  was also an issue for me locally. It was my mistake not to test it before you comment 5 days ago.
I'm merging this with the development branch.


Failed to load probe (prope)

I get an error in the console:
patternplate.web.probe.js:1
Failed to load resource: the server responded with a status of 404 ()

The file in the static build is called patternplate.web.prope.js:1
probe prope

09:16 $ yarn patternplate --version
yarn run v1.12.3
$ /<....>/node_modules/.bin/patternplate --version
3.2.3

Aside from the errors I don't know what this does. Everything seems to work fine.

This a a leftover from an earlier version. Will remove together with solving #294


Refactor node creation from entities

TL;DR
Allows for passing of values of interruptible into the NodeMetadata from TaskMetadata and WorkflowMetadataDefaults respectively.
Type

[x] Bug Fix
[ ] Feature
[ ] Plugin

Are all requirements met?

[x] Code completed
[x] Smoke tested
[ ] Unit tests added
[ ] Code documentation added
[ ] Any pending items have an associated Issue

Complete description
Created a SupportsNodeCreation protocol that if implemented, will allow creation of a node from a given entity. This protocol requires a construct_node_metadata method, that will allow tasks, workflows, launch plans, and reference entities to define the appropriate NodeMetadata object.
Tracking Issue
https://github.com/flyteorg/flyte/issues/1179
Follow-up issue
NA
OR
https://github.com/lyft/flyte/issues/

Smoke tested with:

No values set for interruptible at the task or workflow level - task is not interruptible
Task has interruptible=True, but workflow has no value set - task is interruptible
Workflow has interruptible=True, but task has no value set - task is interruptible
Workflow has interruptible=False, but task has interruptible=True - task is interruptible
Workflow has interruptible=True, but task has interruptible=False - task is not interruptible

Note that the defaults for interruptible were only updated to None for new-style classes.

All comments addressed I think, with the exception of the SupportsNodeCreation naming.


update and clean up migration docs

DOC-8216
DOC-8221
DOC-9187
DOC-9192

Update Migration Overview with LMS, shadowing caveats, terminology tweaks
Clarify MOLT Verify docs
Update & rebrand SCT doc
Rebrand Migration tools -> MOLT tools in nav
reinstate (still oudated) MIgrate from Oracle page with updated callout

TFTRs! There is plenty of iteration left to do on these docs. In the interest of getting some important updates published, though, I'm moving this on to docs review. I can continue working on these topics in future PRs.


Improved UI of login and signup page

Login Page

Signup Page

Subarashi @hardy07 !!! Looks awesome. Just remove the .vscode directory and add that commit to this pr then I will merge it. Thanks for your contribution.

Also, compress the image below 1 MB.

By the way, @hardy07 it looks too good. Great work🙌

All done. Thanks

thank you for you contribution @hardy07.


Enable warnings-as-error for CI

Closes #4664
A warning of "unused-function" is exempted from warnings-as-error; only on macOS.
The following function was causing the warning and it make sense to keep it as it.
static inline SlangReflectionFunction* convert(FunctionDeclBase* func)

Currently CI test for aarch64 is not working.
I am going to hold off this PR until it is tested on aarch64.

We can just remove warnings-as-errors now if they're all going to be true

We may need to occasionally turn it off in the future.
If the variable is references only one time, I will be fine to hard-code it.
But since it is referred more than once at the moment, I think it is better to keep it for now.

I was able to reproduce the used-function warning with LLVM on windows.
[[maybe_unused]] appears to be working.

With the ToT, SLANG_MAYBE_UNUSED is no longer needed but I am going to keep the definition.
Because it is a relevant macro for this commit and we may need it in future.


[RFE] Custom release name of templated clusters

Is your feature request related to a problem? Please describe.
When creating new clusters based on an RKE2 Cluster Template, the resulting Helm releases gets names like these:
$ helm -n fleet-default list
NAME                    NAMESPACE       REVISION        UPDATED                                 STATUS          CHART                APP VERSION
foo-0-1694869484        fleet-default   1               2023-09-16 13:04:44.165455169 +0000 UTC deployed        foo-0.38.0
foo-0-1695029170        fleet-default   1               2023-09-18 09:26:10.413701502 +0000 UTC failed          foo-0.43.0
foo-0-1695029354        fleet-default   1               2023-09-18 09:29:14.610111403 +0000 UTC deployed        foo-0.43.0
foo-0-1695029848        fleet-default   1               2023-09-18 09:37:28.427077325 +0000 UTC deployed        foo-0.44.0

This makes it very hard to distinguish between clusters.
Describe the solution you'd like
I would like to be able to set the release name when creating the cluster from the GUI. Ideally, there would be an option to either provide a string as a name or to use a generated name (like now). This should be safe to do, since both cluster names and release names are unique.
Describe alternatives you've considered
The only alternative would be to sidestep Rancher and install the chart manually, and set a good release name. But then we don't make use of Rancher's nice GUI, which would be shame.

Look at this nonsense! I have no idea which release belongs to which cluster. 😞

Ping

I'd be happy to try and look into this, if someone could point me in the right direction. I've not been able to identify which component does the helm install.

Not stale until I've had some feedback.

Not stale until I've had some feedback.

Not stale until I've had some feedback.

Not stale until I've had some feedback.

Not stale until I've had some feedback.

Not stale until I've had some feedback.


Class names in checkpoint's meta data

How to save the class names of my custom dataset in the checkpoint's metadata?
I don't see any option in train.py or from skimming the tutorial on config here.

You can pass in the dictionary of class name information in checkpoint-config, refer to MMCV CheckpointHook.
The CheckpointHook is constructed in this file by this line.
for example.
checkpoint_config = dict(interval=1, CLASSES=['cat', 'dog'])

By the way, we are going to add some documentation about Hook in #499, which includes CheckPointHook, and it is under review.
Maybe you can read that and give us some suggestions.

Just tried this and it didn't work out like that in mmcv-full==1.3.16. Maybe that mmcv version that you refer to hasn't been released yet?
I added them instead in the data config. Like so:
data = dict(
samples_per_gpu=32,
workers_per_gpu=2,
classes=[
'cat',
'dog'],
)
also, your test files are referring to it like that.

It does not work when you add CLASSES in the field  data, you must add CLASSES to the field checkpoint_config, if you want to save CLASSES in your checkpoint.

Well, in the tools/train.py, we will automatically add the CLASSES attribute of the dataset to the checkpoint's meta argument.
Usually, you only need to add the classes in the dataset configuration.


[SEO][Rollout Monikered Canonical]Add URL moniker

Enable build config to generate canonical URL with moniker

Docs Build status updates of commit 5a180c5:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

SkiaSharpAPI/docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Missing information on machine dashboard

On the machine-specific dashboard page, there is a table that should list all the backup events for that machine. This table has space for fields like transfer size, transfer time, exit code, and rsync exit reason. However, none of those fields are currently displaying at all (see attached screenshot).

As a beginner issue, each field can be fixed individually (as a separate feature branch). Once all the fixes are merged, this issue can be closed.

I can do this


Blog featured

Description
Made preview card for featured blog post.
Screen shots or GIFs of UI changes
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[X ] Part of a feature.
[ ] Refactor (non-breaking change which does not add functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update
[ ] Testing-

Checklist

[X ] I have performed a self-review of my own code
[X ] I have commented my code, particularly in hard-to-understand areas
[X ] My changes generate no new warnings
[X ] added new dependencies
[ ] added tests
[ ] updated documentation
[X] Looks good on large screens
[X] Looks good on mobile

Organization

[ ] Have you linked this pull request to a project ticket?

Review

[ ] Is this a work in progress?
[X ] Is this ready to be reviewed?
[X ] Have you added two reviewers to this pull request?

 Create Most Recent Post Preview

 Create View blog entry page with dummy blog info for now and image placeholders or dummy images

Please add screenshots of the work done

The linter check is failing, please look into this issue


Contain and big image seems to break something

Here's an example with an image 5200x3800. The goal was to pan-zoom but always ensure edges of the image are not outside the container area. As an example, imagine it contains a "game-board" and players can zoom in-out and pan but they should not be able to pan away (example, top-left of the image can be below zero but never above zero)

When using all the listed options, nothing works.
When using only the contain zoom buttons work, panning appears to be broken and contain is not honoured.

Code Here
https://jsbin.com/cerekok/edit?js,output
Am I doing something wrong or is there an issue with large images?

Can confirm this happens in my case too

2bdc5591cca0f29eaa530c92279e9ea9e3fa336c

Thanks for this issue. I think I have this fixed now. brgrz is right that invert is not a valid value for contain, even though it was in a very old version. The only values now are inside and outside.
I also think you may have been running into some timing issues, brgrz. Having to set height through the whole DOM tree should not be necessary, but that could affect height values during some race conditions. It probably has something to do with the async nature of Panzoom.
All that said, please try the latest version if you get the chance and let me know how it goes.


Fixing the Testimonial Section

What happened?
When we hover over the card in testemonial section it overlaps with the 4 dots below the cards. I would like to fix the issue by changing the styling of testemonial section.
Do assign me the role under GSSoC'23. I will fix this bug.
How can we reproduce this bug?

Desktop Information (Optional)
No response
Urgency (Optional)
High priority

I want to contribute please assign me this task

Already issue raised and assigned  before


Error unknown flag: --progress when run make

Describe the bug
When I run make I get the following error.
docker build --progress plain --platform linux/arm64 -t localhost:5001/educates-session-manager:latest session-manager
DEPRECATED: The legacy builder is deprecated and will be removed in a future release.
            Install the buildx component to build images with BuildKit:
            https://docs.docker.com/go/buildx/

unknown flag: --progress
See 'docker build --help'.
make: *** [build-session-manager] Error 125

The reason is I'm using Docker latest and there is not --progress option for docker build.
Additional information
No response

What do you get when running:
docker version

It fails in each of the Mac and Linux environments at hand.
 I believe it will use that if installed and that may eliminate the issue, plus it is needed anyway to do cross compilation I think.
Note that although you say you are using latest docker, you are actually on an old version for Linux at least. On macOS for me it reports version 26.0.0.

Hi, @imurata wanted to circle back on this. The version I see in the output for your Mac, it seems it's really from a fedora box using podman. With Mac, using Docker Desktop there's no issues.  I have installed Docker from docker.com and not the ones that comes with my Ubuntu distribution:
Client: Docker Engine - Community
 Version:           24.0.7
 API version:       1.43
 Go version:        go1.20.10
 Git commit:        afdd53b
 Built:             Thu Oct 26 09:07:41 2023
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          24.0.7
  API version:      1.43 (minimum version 1.12)
  Go version:       go1.20.10
  Git commit:       311b9ff
  Built:            Thu Oct 26 09:07:41 2023
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.26
  GitCommit:        3dd1e886e55dd695541fdcd67420c2888645a495
 runc:
  Version:          1.1.10
  GitCommit:        v1.1.10-0-g18a0cb0
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

And both of them seem to be working fine and not complaining about --progress flag.
Both of them comes with buildx command though.
Ubuntu reporting:
$ docker buildx version
github.com/docker/buildx v0.11.2 9872040

And macos, reporting:
docker buildx version
github.com/docker/buildx v0.14.1-desktop.1 5a0555e6c99a65811f4409bce8460a8fb89474f1

Since we do builds for multiple architectures we need buildx to be there, so if it doesn't come in your distro when you install docker, you might need to install it additionally. Something like sudo apt install docker-buildx but depends on your specific distro.


learning_rate – it can be a function of the current progress (from 1 to 0)

Is there an example code how to make the the learning rate as a function adaptive to the current progress?
Can gamma be an adaptive function also?

Is there an example code how to make the the learning rate as a function adaptive to the current progress?

In the rl zoo, yes.
Duplicate of https://github.com/hill-a/stable-baselines/issues/509

Can gamma be an adaptive function also?

For now, no.


dotLotti

Will dotLotti format be supported in the future？https://developers.lottiefiles.com/docs/dotlottie-player/getting-started/

There are no plans at the moment but I promise to look into it at a later time. You can refer to #386 for more information.


pull request for e2e test at 12/31/2016 05:26:18

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Need more clarification on why the instances cannot be scaled down

Hi,
The documentation states the scaling down limits i.e. basically one cannot change the SKU back i.e. from Premium to Standard or from Standard to Basic. Could you please describe why that is the case? And if someone needs to scale down, then is creating a new instance with the desired SKU the only option?
Also, there is a typo - https://docs.microsoft.com/en-us/azure/redis-cache/cache-how-to-scale#scaling-limitations-with-geo-relication
It should be Geo-Replication.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 918ce73c-1485-e22d-a317-b539dcf96c60
Version Independent ID: a1aba74a-398f-abae-7af9-85556149d12e
Content: How to Scale Azure Redis Cache
Content Source: articles/redis-cache/cache-how-to-scale.md
Service: cache
GitHub Login: @wesmc7777
Microsoft Alias: wesmc

@blueelvis Thanks for the feedback! I have assigned the issue to the content author to evaluate and update as appropriate.

Reference of items to be addressed in this documentation:

The section in this documentation: Scaling limitations with Geo-relication should read Geo-Replication.

The section When to scale describes a use case that is not supported as per the section: Operations that are not supported.

Example:

If you determine that your cache is no longer meeting your application's requirements, you can scale to a larger or smaller cache pricing tier that is right for your application. For more information on determining which cache pricing tier to use, see What Redis Cache offering and size should I use.

You can't scale from a higher pricing tier to a lower pricing tier.
You can't scale from a Premium cache down to a Standard or a Basic cache.
You can't scale from a Standard cache down to a Basic cache.

You can scale up, to a higher pricing tier but you cannot scale down, to a lower pricing tier.
I have assigned the issue to the content author to evaluate and update as appropriate.

#in-progress

@blueelvis Thanks for catching the typo.  Regarding support for scaling down, it is simply not yet implemented. It is part of our backlog but not yet completed.


I found the zig tokenizer and parser source which I like quite a lot. Fairly similar to what I have so far but some things I didn't do like the tokenizer matching keywords. Probably will change my lexer to be a lot more like the tokenizer before moving on to the parser.


Can't post JSON array to view

Hi,
I'm trying to create a view that returns a selection of rows as an array and take a simlar array as a POST body and updates the associated table. It's kind of a lead up to a more complicated view that returns rows with a few fields that are arrays from various tables. Anyways for now I'm just trying to get a single array from a single table working.
I have a table with two columns (id, name) called job_titles.
CREATE TABLE job_titles
(
  id integer NOT NULL DEFAULT nextval('job_titles_id_seq'::regclass),
  name text NOT NULL,
  CONSTRAINT job_title_id PRIMARY KEY (id),
  CONSTRAINT unique_job_title_name UNIQUE (name)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE job_titles
  OWNER TO postgres;

I have a view that does a select and return all name columns as a single object whose field "a" is an array of those names.

CREATE OR REPLACE VIEW arr_test AS
 SELECT ARRAY( SELECT job_titles.name
           FROM job_titles) AS a;

ALTER TABLE arr_test
  OWNER TO postgres;

I have a trigger and trigger function that handles the insert and update operations on this view. For now I've just commented out the update and delete and I'm focusing on insert

CREATE TRIGGER person_detail_job_vw_dm_trig
  INSTEAD OF INSERT OR UPDATE OR DELETE
  ON arr_test
  FOR EACH ROW
  EXECUTE PROCEDURE person_detail_job_vw_dm();

CREATE OR REPLACE FUNCTION person_detail_job_vw_dm()
  RETURNS trigger AS
$BODY$
   BEGIN
      IF TG_OP = 'INSERT' THEN
        --INSERT INTO   VALUES(NEW.pid,NEW.pname);
        --INSERT INTO  person_job VALUES(NEW.pid,NEW.job);
        do $$
        PERFORM insert_job_titles(NEW.a);
        $$;
        RETURN NEW;
      ELSIF TG_OP = 'UPDATE' THEN
       --UPDATE person_detail SET pid=NEW.pid, pname=NEW.pname WHERE pid=OLD.pid;
       --UPDATE person_job SET pid=NEW.pid, job=NEW.job WHERE pid=OLD.pid;
       RETURN NEW;
      ELSIF TG_OP = 'DELETE' THEN
       --DELETE FROM person_job WHERE pid=OLD.pid;
       --DELETE FROM person_detail WHERE pid=OLD.pid;
       RETURN NULL;
      END IF;
      RETURN NEW;
    END;
$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;
ALTER FUNCTION person_detail_job_vw_dm()
  OWNER TO postgres;

And the referenced function
CREATE OR REPLACE FUNCTION insert_job_titles(text[])
  RETURNS void AS
$BODY$
DECLARE
   arr ALIAS FOR $1;

BEGIN
   FOR I IN array_lower(arr, 1)..array_upper(arr, 1) LOOP
    INSERT INTO job_titles (name) VALUES(arr[I]);
   END LOOP;
END;
$BODY$
  LANGUAGE plpgsql STABLE STRICT
  COST 100;
ALTER FUNCTION insert_job_titles(text[])
  OWNER TO postgres;

If I do the following curl command

curl -X GET "http://localhost:3000/arr_test"

I get the following which is great

[{"a":["CEO","CFO","COO","dude","Derek"]}]

But when I try and do a post

curl -X POST  -d '{"a":["42","n1","n2,"43"]}' "http://localhost:3000/arr_test"

I get the following error

{"message":"Failed to parse JSON payload. Failed reading: satisfy"}

or if I supply one or two elements:

{"hint":null,"details":null,"code":"22P02","message":"missing dimension value"}%

I'm at a loss. It seems like it should work, and I've been able to get it to work with non-array fields

First thanks for the awesome bug report! This really helps me debug.
I'm experimenting with the post payload and watching my postgresql logs for clues. When I post
{"a":["42"]}
I see a problem with the sql it is generating:
ERROR:  malformed array literal: "["42"]" at character 41
DETAIL:  "[" must introduce explicitly-specified array dimensions.
STATEMENT:  insert into public.arr_test (a) values ('["42"]'::unknown) returning row_to_json(public.arr_test.*)

PostgREST is treating the value of a as if it was a plain string, so that looks like a legitimate bug. Looking for a workaround I try posting a string which uses postgres array literal notation
{"a":"{'42','n1','n2','43'}"}
Seems like we're making progress because this gives me
ERROR:  syntax error at or near "PERFORM" at character 10
QUERY:
	        PERFORM insert_job_titles(NEW.a);

CONTEXT:  SQL statement "do $$
	        PERFORM insert_job_titles(NEW.a);
	        $$"
	PL/pgSQL function person_detail_job_vw_dm() line 6 at SQL statement
STATEMENT:  insert into public.arr_test (a) values ('{''42'',''n1'',''n2'',''43''}'::unknown) returning row_to_json(public.arr_test.*)

Could this mean that postgres now understands the array but there is a problem with the trigger itself?

Hi, Thanks for responding so quick. I'd seen this array literal notation in a previous issue, but hadn't figured out how to make it work. I've only been playing with this project for a week now, but I love how easy it's been to get up and running. Starting to recommend to people.
So you'r right, it's definitely a bug on my end from array literal. I'm still a bit new to SQL and calling a function is more complicated than I expected. I stripped out the function call and pasted the code inline as follows
CREATE OR REPLACE FUNCTION person_detail_job_vw_dm()
RETURNS TRIGGER
LANGUAGE plpgsql
AS $function$
   BEGIN
      IF TG_OP = 'INSERT' THEN
        --INSERT INTO   VALUES(NEW.pid,NEW.pname);
        --INSERT INTO  person_job VALUES(NEW.pid,NEW.job);

	--insert_job_titles(NEW);

	BEGIN
	   FOR I IN array_lower(NEW.a, 1)..array_upper(NEW.a, 1) LOOP
	    INSERT INTO job_titles (name) VALUES(NEW.a[I]);
	   END LOOP;
	END;

        RETURN NEW;
      ELSIF TG_OP = 'UPDATE' THEN
       --UPDATE person_detail SET pid=NEW.pid, pname=NEW.pname WHERE pid=OLD.pid;
       --UPDATE person_job SET pid=NEW.pid, job=NEW.job WHERE pid=OLD.pid;
       RETURN NEW;
      ELSIF TG_OP = 'DELETE' THEN
       --DELETE FROM person_job WHERE pid=OLD.pid;
       --DELETE FROM person_detail WHERE pid=OLD.pid;
       RETURN NULL;
      END IF;
      RETURN NEW;
    END;
$function$;

CREATE TRIGGER person_detail_job_vw_dm_trig
    INSTEAD OF INSERT OR UPDATE OR DELETE ON
      arr_test FOR EACH ROW EXECUTE PROCEDURE person_detail_job_vw_dm();

After this I was able to successfully POST on the view

# curl -X POST  -d "{"a":"{'42','n1','n2','43'}"}" "http://localhost:3000/arr_test"

and my get on the view returned the updated list:

# curl -X GET "http://localhost:3000/arr_test"
[{"a":["CEO","CFO","COO","dude","Derek","'42'","'n1'","'n2'","'43'"]}]

And doing a GET on the actual job_titles, returned all the values I had just POSTed and shows that I screwed up hte starting index on my auto-incrementing id column

[{"id":1,"name":"CEO"},{"id":2,"name":"CFO"},{"id":3,"name":"COO"},{"id":1763,"name":"dude"},{"id":1764,"name":"Derek"},{"id":1765,"name":"'42'"},{"id":1766,"name":"'n1'"},{"id":1767,"name":"'n2'"},{"id":1768,"name":"'43'"}]

Thank you once again. I can definitely work around this using array literals. So excited that I can make my single unified POST endpoint now

@derekhawker if you use a JSON value instead of an array when creating the view in the first example everything should work as expected. I think it is a good approach to always use json for composite types while working with PostgREST.

I think with the latest version this works (if i am understanding the problem correctly) by sending the header -H "Accept: application/vnd.pgrst.object+json"
a full request to insert one object looks like this
curl -s -X POST \
-H "Authorization: Bearer $JWT_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/vnd.pgrst.object+json" \
-H 'Prefer: return=representation' \
-d '{"name":"Google","address":"Mountain View, California, United States"}'  \
http://localhost:8080/rest/clients?select=id,created_on | \
python -mjson.tool


Warn when introducing suspicious Implies

We should emit a warning when a new node in the execution graph has an \implies predicate that does not occur as a subterm of the parent configuration. These predicates are intermediate states which should be simplified away; in every case we have seen, the persistence of such a predicate indicates a simplification error.
Suggestion from @yzhang90

BTW, do we have a way of telling whether our tests generate warnings? If yes, do we fail the test on warnings?

This is no longer a concern because the backend can correctly discharge these constraints.


Adds cluster name in kruize object

This PR introduces the cluster_name attribute to Kruize Object.
signed-off: bharathappali<EMAIL_ADDRESS>

@bharathappali The API.md changes are missing, please update the documentation

@dinogun I have raised a PR #569 to add doc and test changes for the cluster name. Will be covering the API.md changes in that PR if you are comfortable.


Add imperative handle

https://github.com/davidjbradshaw/iframe-resizer-react/pull/53

@monsterkrampe
Yes, I wanted to test your solution on something I'm working on, and considering the PR hasn't been merged in ages I forked it and attempted to use it locally.
Thank you

I saw that you also published a npm package with this fix so I just mentioned this on the original PR because I think that this may also come in handy for others :)
Keep it up!

It's all you 😅
But thank you


field-symbols with [] not handled properly

Seems the new version does not handle [] for field-symbols properly
<baz>[] = foo[]. transpiles to fs_baz_[].set(foo);, which JavaScript does not approve of
data foo type standard table of string.
data bar like foo.
data baz like foo.
field-symbols <baz> like baz.

assign baz to <baz>.

append 'arf' to foo.
append 'meh' to foo.
append 'woo' to foo.

"These should be equal:
bar = foo.
bar[] = foo[].
<baz> = foo.
<baz>[] = foo[].

@joltdx try again, new version published

Works properly, thank you 🎉


fetchMock.done returns false with '*' matcher mock even after some calls

If you specify mock with matcher '*', make some calls to fetch, then check called('*') or done() it returns false.
Example: https://codesandbox.io/s/fetch-mock-bug-79qj2
Version: 7.3.9

Okay, now I see that I can just look at the length of fetchMock.calls() to check if fetch was called expected number of times. So I misunderstood the documentation because it says that it's fetchMock.done() that will tell it.


feat: x:helper

This pull request introduces x:helper.
This XSpec
<x:description stylesheet="sut.xsl"
               query="sut"
               query-at="sut.xqm">
  <x:helper stylesheet="helper.xsl" />
  <x:helper package-name="http://example.org/helper"
            package-version="1.0" />
  <x:helper query="helper"
            query-at="helper.xqm" />
  ...

will be compiled into
XSLT:
<xsl:stylesheet>
  <!-- the tested stylesheet -->
  <xsl:import href=".../sut.xsl"/>

  <!-- User-provided library module(s) -->
  <xsl:import href=".../helper.xsl"/>
  <xsl:use-package name="http://example.org/helper" package-version="1.0"/>
  ...

XQuery:
...
(: the tested library module :)
import module "sut" at ".../sut.xqm";

(: User-provided library module(s) :)
import module "helper" at ".../helper.xqm";
...

and you can use functions or global variables in helper.xsl (or helper.xqm or the http://example.org/helper package) in XPath expressions in XSpec. For example,
helper.xsl:
<xsl:function name="my:verifier" as="xs:boolean">
  <xsl:param name="actual-result" />
  ...perform complex verification on $actual-result and return success/failure...
</xsl:function>

XSpec:
<x:expect label="Defer verification to a helper function"
          test="my:verifier($x:result)" />

See the schema annotation for some more details:
https://github.com/xspec/xspec/blob/978f081328482df3efb80b627dd0aff5d35dd955/src/schemas/xspec.rnc#L43-L49
@galtm (https://github.com/xspec/xspec/issues/1090#issuecomment-662447413)

Do you think x:include-helper should support the import/include distinction, or would that be out of scope?

In this implementation, the helper is not included but imported in order to protect the compiled stylesheet from the helper.
Since the helper is imported after the SUT, the helper has higher precedence than the SUT. It is tested in test/helper_stylesheet.xspec by override.xsl.
@jcronk
@mricaud
This is an attempt to implement what I provisionally called x:include-helper.

This sounds like it could be useful in many situations where the output of the XSLT/XQuery/Schematron needs to be normalized in some way to work in an XSpec test scenario.
Here is an example of an XSpec scenario from a recent project where the proposed x:helper might simplify things. The sanitize-expected.xsl is actually run on the "clean" files that are being compared against, not on the result of the SUT, and it does several normalization steps such as removing default attributes added by parsing against a DTD, and replacing generated id values and timestamps with .... Normalizing the expected XML via an XSLT as part of running the XSpec test allows the "clean" expected examples to be pristine examples of the expected result.
           <x:scenario label="ICNV_A_1695816_J.xml">
                <x:context href="../test/input/ICNV_I_38_01_J/ICNV_A_1695816/ICNV_A_1695816_J.xml"/>
                <x:expect label="complete" select="transform(map{
                    'source-node': doc('../../test/expected/ICNV_I_38_1_J/ICNV_A_1695816/ICNV_A_1695816_J.xml'),
                    'stylesheet-location': '../sanitize-expected.xsl'})?output/*"/>
            </x:scenario>

The sanitize-expected.xsl normalization is used on some, not all, of the scenarios in the XSpec test file.
I think the proposed x:helper could be improved to work for all of these use cases:

use the helper to normalize the result of the SUT
use the helper to normalize the expected result
use the helper in specific scenarios

Could something like the following be added to the implementation to support these use cases?

Add a name attribute to x:helper to give a name to each helper.
Add a use-helper attribute to x:context to declare that a helper should be used to normalize the result of the SUT
Add a use-helper attribute to x:expect (and related elements) to declare that a helper should be used to normalize the expected result

Perhaps the x:helper might already work in the three use cases that I mentioned. If the XSLT or module imported via x:helper contains a normalization function that uses xsl:transform, then the the normalization function could be used in the select attribute of x:context or x:expect.

Thanks @vincentml for sharing your ideas. Yes, I think that if the user writes a normalizer function in a helper, the normalizer could be applied in many places.
We could possibly have x:helper/@name + (x:context|x:expect)/@use-helper, but satisfying a variety of use cases in that way would require more additional parameters, I'm afraid.

A side benefit of this feature for people who use the XSLT Code Coverage functionality is that the helper file doesn't get included in the coverage report. Without this feature, including or importing a helper file in your SUT causes the coverage report to include the helper (XSpec can't distinguish between "helper" and "SUT"), yet it's not the code whose coverage you really want to measure.

Thanks for the reivew, @galtm
My initial test set was a bit too rough. I revised them:

run-as=external: 706f61e43f2fdb6a2dbca3f080f273b7e41f9ba1
XSLT package: 267d15daae4d780a79cd1f6e94ee52ef7964dc23
Override: ddfc29d5f526cffef4b7a2fb9eab59327cf44807
Schematron: 63432a214d7761b64ba7e669a838c78dd1a28f56

A bit late, but yes I like this <x:helper> strategy. It will be really usefull in many case I think.
In issue #1090 I used to propose a "schematron allowForeign like solution" with xsl statement directly written within xspec, but <x:helper> sounds better: it works with xquery and it's implementation independant (it doesn't require le XSpec compiler to be in XSLT).
About the implementation, it looks fine, althought I couldn't understand erevrything. What is "SUT" by the way ?
A few related comments:

in #1090 we have also consider being able to interact with the comparison algorithm (@AirQuick suggest a x:delete-patterns() utility function). This is another way of dealing with your sanitize-expected.xsl @vincentml
Looks like I'm not the only one to use real case expected result ("pristine examples") in my XSpec, just like @vincentml here or @tofi86 in #227. Other might prefer writing the expected result by hand (writing ... where generate-id() is used for example). But I guess we have to consider both way of doing and  <x:helper> helps in this direction !
I didn't know xsl:use-package could be used by importing the file in an xsl:import previous statement. I thought the pakage has to be in the classpath. Would a function with visibility="private" be accessible? yes with xsl:import but no with xsl:use-package, what about both?
By reading this issue I couldn't help thinking about xsl:import-schema (SaxonEE only). Would it make sens to validate some chunk of xml generated by an XSLT in XSpec? One could actually import a schema within an imported xsl with <x:helper> and then call validation function in x:expect. But this is maybe not be the goal of XSpec, in my case I use a maven plugin to validate external XSpec files samples. But I could not valide the result of a function that way. Just a thought...

What is "SUT" by the way ?

"System Under Test" or a stylesheet/query specified in /x:description/(@stylesheet|@query), as described in Under the Hood.

I didn't know xsl:use-package could be used by importing the file in an xsl:import previous statement. I thought the pakage has to be in the classpath. Would a function with visibility="private" be accessible? yes with xsl:import but no with xsl:use-package, what about both?

A x:helper
  <x:helper package-name="http://example.org/helper"
            package-version="1.0" />

is simply compiled into
  <xsl:use-package name="http://example.org/helper" package-version="1.0"/>

so the usual restriction of the XSLT package is still applied:

The package information needs to be provided (usually by a Saxon configuration file like this), otherwise the compiled stylesheet cannot find the specified package.
Private functions are not accessible.

In 30e8def07e9e4223b226f74a8f5c0df7bc66080b, I added a set of tutorial files to demonstrate a helper stylesheet. It also demonstrates a possible way to remove whitespace-only text nodes from @href. If that is fine, I'll

merge this pr
add a section to Wiki and explain x:helper (copy and paste from the schema annotation and a comment)
update Wiki "Whitespace-only Text Nodes" section and direct the reader to the added tutorial files

merge this pr

Done

add a section to Wiki and explain x:helper (copy and paste from the schema annotation and a comment)

Done

update Wiki "Whitespace-only Text Nodes" section and direct the reader to the added tutorial files

Done
I had to restructure Wiki:

Getting Started section in the Sidebar was too much crowded.
I created Advanced Topics section and moved some topics to there from Getting Started.

Writing Scenarios topic was bloated too much.
I extracted two sections (Whitespace-only Text Nodes and Testing Dynamic Errors) and put them into their own topics.

publish a new version of the Oxygen add-on containing this feature

#1138


bash: !css: event not found

Execute webpack ./entry.js bundle.js --module-bind "css=style!css" in bash (I'm using git bash on windows 10) will prompt this error bash: !css: event not found
So-called Solution:
webpack ./entry.js bundle.js --module-bind 'css=style!css' use single quote instead!

Thank you. I also got the problem using git bash on windows 7 and I solved it with your solution.

Explanation: Bash actually does something when a ! is encountered within a string, or outside.
http://unix.stackexchange.com/a/3748

LOL
I met up with them same question.

3q,very much!

I'm having the same problem in mac

Problem solved using single quotes

Encountered this problem on a mac too. As suggested, using single quotes fixes it.

3Q. I am having the same problem in mac.

Why?I am having the same problem in ubuntu1404?

@MapleGu: Like @IngwiePhoenix already said: the !-sign is a special character in a bash terminal. Mac and pretty much any linux distro use bash for their terminal. Similar to php the single quotes make sure that the special characters or variables inside the string won't be executed.

@marvinhagemeister :3Q.I see.

3q


Scope does not accept array properly

The scope supposes to be an array like below.
const {routes, withShop} = shopifyExpress({
  host: SHOPIFY_APP_HOST,
  apiKey: SHOPIFY_APP_KEY,
  secret: SHOPIFY_APP_SECRET,
  scope: ['write_orders, write_products'],
  accessMode: 'offline',
  afterAuth(request, response) {
    const { session: { accessToken, shop } } = request;
    // install webhooks or hook into your own app here
    return response.redirect('/');
  },
});

However, passing an array does not work properly as it only use last item in the array due to issue from ShopifyAuth.js https://github.com/Shopify/shopify-express/blob/master/routes/shopifyAuth.js#L37. I believe it should be
      const redirectParams = {
        baseUrl,
        scope: scope.join(','),
        client_id: apiKey,
        redirect_uri: `${host}${baseUrl}/callback`,
      };

cc @TheMallen

Close as this repo is deprecated


meta + typedef unexpected

repro:
@:dox(hide) typedef MyInt2 = Int;

https://github.com/eliasku/horror/blob/master/tests/intellijhaxe/MetaTypedefIssue.hx
TIR: STB-7314

In haxe.bnf, typedefDeclaration doesn't include macroClassList.  Might be as simple as that.

The thing is that macro can be used almost anywhere.

I can't generate haxe.bnf without errors, I even reverted changes made in my commit, https://github.com/EBatTiVo/intellij-haxe/commit/93abe6263300944fef69ec70f5c06c603eb0d749, @EBatTiVo please take a look, does it work for you, without errors?

Just generated fine for me at HEAD: https://github.com/TiVo/intellij-haxe/commit/e82349e7a70173a869e09d97057be668cd0ff2d2
I'm still on IDEA13: IU-135.1286

Just generated fine for me...

Except that the copyright notice just updated the year on every file.  :(
If you update the BNF, then update the copyrights as a separate change, please.

@as3boyan: "The thing is that meta tags can be used almost anywhere."
This is not accurate. Metadata may appear in the following places:

before a type declaration (class, enum, typedef, abstract)
before class fields (in classes and abstracts as well as in structures if they use class field notation)
before enum fields
before any expression

Any number of metadata is allowed in these places. In general: when in doubt, check the official Haxe parser.

I can't generate haxe.bnf without errors,

Srikanth was having the same problem.  It turned out that the problem was two-fold:  the last time the BNF was updated, the parser files weren't regenerated, and a new function was not overridden in the non-generated files; second, he was using a newer version of the Grammar-Kit plugin than I was.
The first problem, I fixed and have already pushed to the ClassHierarchy branch.  Srikanth has fixed the issues with generating via the new Grammar-Kit plugin and those should get to ClassHierarchy today.

@simn Thanks for info.
@EBatTiVo I made some changes in some commit and didn't regenerated it, sorry, recently(maybe week ago) I tried to revert changes I made but still was unable to generate it

@eliasku Please pull changes in your fork, thanks

I pushed some fixes to haxe.bnf, and made related changes in parser utils to make it work, should work I think...
762a637caee7b84a4082a51c7116e8c5960550d1

meta tags for typedef support: https://github.com/EBatTiVo/intellij-haxe/commit/9e6c363a786a69316951a793789543572d058628
I had to change typedef pin from 2 to 5, not sure, I need better understanding of pins

Fixed for 0.9.9


Unintuitive broadcasting behavior

Using python 2.7.10, xarray 0.7.2
arr = xarray.DataArray(numpy.empty((3,3)),
                       coords={'a':['a1', 'a2', 'a3'],
                               'b':['b1', 'b2', 'b3']},
                       dims=['a', 'b'])
arr.loc['a2':'a3'] = arr.loc['a1':'a2']*arr.loc['a1']
arr.loc['a2':'a3'] = arr.loc['a1']*arr.loc['a1':'a2']

First assignment statements succeeds, while the second one generates
ValueError: could not broadcast input array from shape (3,2) into shape (2,3)
I'd expect the multiplication not to swap the order of dimensions. But if it does, the assignment should be able to swap it back.

In the second multiplication, you are multiplying an array with dimensions (b,) by one with dimensions (a,b). This results in something with dimensions (b,a), because we broadcast dimensions in order of appearance.
I agree that it would be nice to swap dimensions back in assignment, at least in this context. But I'll just note that we currently don't do any alignment of RHS arguments in assignment operations, so we would need to think about the full implications of doing such alignment.


control.iosys.NonlinearIOSystem generates "Algebraic loop" Error

Hi,
Issue Definition:

Define a nonlinear system with an output function and NO update function
In the output function, define the output as a random number (or any random output)
After running the simulation You get "RuntimeError: Algebraic loop detected.".

I think it should be possible to define any "input-output" system as long as you can define it properly
as a black box which maps an input to an output, during the simulation
How to generate the issue:

Take the example code at https://python-control.readthedocs.io/en/0.8.3/steering-gainsched.html
At line 113, modify the statement "return np.array([vref * t, yref, 0, vref, 0])" to "return np.array([vref * t, yref, 0, vref*np.random.rand(), 0])"
Run the code

I get the same error whenever I define my custom black box function. If this is an expected behavior for control.iosys.NonlinearIOSystem, is there a way to define and insert a black box system to the control.iosys.InterconnectedSystem so that it can cooperate with other NonlinearIOSystem type systems?
Thanks

The I/O system functionality only works for deterministic systems and the behavior you are illustrating is non-deterministic.
The specific problem with the example that you provide is that every call to the trajgen block (which is the one that you modified) generates a different random number.  So when the simulator runs and tries to make sure that any feedthrough terms have been properly processed, the algorithm can't conference.
Here's the comment in the code describing what the algorithm does (from iosys.py, line 1062):
# To allow for feedthrough terms, iterate multiple times to allow
# feedthrough elements to propagate.  For n systems, we could need to
# cycle through n+1 times before reaching steady state
# TODO (later): see if there is a more efficient way to compute

I don't think this is an issue that can be addressed in the current way that the I/O simulation runs.  I'm closing this issue, but re-open if I have not interpreted what you are trying to do correctly.

@murrayrm
Hi, I am currently encountering this problem and still trying to understand exactly what it is doing, I'm gathering it is a convergence check of some kind.
Additionaly i see the note for a more efficient solution and think you might be interested in this dynamics / control library built around openMDAO which is a tool for converging large complex systems. Many of the underlying solvers are still scipy so I think it would fit with the python controls library, but provide better convergence.
https://openmdao.github.io/dymos/index.html


How to narrow type checking for list items?

Hello, I'm trying to narrow down the type of items in a list from list[A | B] to list[A], but I think I'm missing something. My code is like this:
import typing

class Parent:
    def __init__(self):
        self.common_to_both = True

class Sister1(Parent):
    def __init__(self):
        super().__init__()
        self.only_sister1 = True

class Sister2(Parent):
    def __init__(self):
        super().__init__()
        self.only_sister2 = True

class AggregatorClass:
    def __init__(self, sisters: list[typing.Union[Sister1, Sister2]]):
        # I know that sisters is either list[Sister1] or list[Sister2],
        # but this class uses only common methods to both
        self.sisters = sisters

class ApplicatorClass:
    def __init__(self, agg: AggregatorClass):
        # I've tried the following methods:
        if not agg.sisters:
            raise ValueError
        assert all(isinstance(sister, Sister1) for sister in agg.sisters)

        for sister in agg.sisters:
            if not isinstance(sister, Sister1):
                raise ValueError

        typing.cast(list[Sister1], agg.sisters)

        self.agg_sisters: list[Sister1] = agg.sisters

        self.agg_sisters[0].only_sister2  # is suggested, but shouldn't

sisters = [Sister1(), Sister1()]
agg = AggregatorClass(sisters)

# how can I make agg_sisters be recognized as list[Sister1]?
ApplicatorClass(agg).agg_sisters

System data:

Language Server version: 2021.11.2
OS and version: linux x64
Python version: 3.9.7
python.analysis.indexing: undefined
python.analysis.typeCheckingMode: off

Here are a couple of techniques that would work here.
You can create a new list that is a filtered version of the original list:
        self.agg_sisters = [v for v in agg.sisters if isinstance(v, Sister1)]

You could use a user-defined type guard. See PEP 647 for details.
_T = TypeVar("_T")

def is_list_of(val: list[Any], type: Type[_T]) -> TypeGuard[list[_T]]:
    return all(isinstance(element, type) for element in val)

class ApplicatorClass:
    def __init__(self, agg: AggregatorClass):
        assert is_list_of(agg.sisters, Sister1)

Thank you very much for the fast reply and link to documentation, it worked wonders!


Correction for raw affiliation King's University College at Western University

Correction needed for raw affiliation King's University College at Western University
raw_affiliation_name: King's University College at Western University
new_rors: 02grkyz14
previous_rors: 048f5b183;05cgtjz78
works_examples: W4366819300;W4386458302;W4367296517;W4379014927;W4387362260;W4384561123;W4389352341;W4385884103
contact: 6767f4556116cd9fa6d5006ca144b4d1:85371623a882d907 @ uwo.ca

This issue was accepted and ingested by the OpenAlex team on 2024-12-21. The new affiliations should be visible within the next 7 days.


how rps works and how to increase it

we were doing some load tests to an API we put the wait time between 1 and 3 and we put Number of total users to simulate in 200 the Hatch rate from three different machines at the same time, the rps in the three machines remains between 7 and 10 which was the one with the highest value as can be seen in the attached image one of the samples, but we do not understand for sure why it happens or we would like to have more information about it thanks.

Hi! I’ve been thinking about writing something about this, as ”why is my rps so low” is a common question. Does any of this help?

Increase the number of users. In order to fully utilize your target system you may need a lot of simultaneous users.

If response times are unexpectedly high and/or increasing as the number of users go up, then you have probably saturated the system you are testing and need to dig into why. This is not really a Locust problem, but here are some things you may want to check:

resource utilization (e.g. CPU, memory)
configuration (e.g. max threads for your web server)
back end response times (e.g. DB)

If Locust is complaining about high CPU usage on its side

Run Locust distributed to utilize multiple cores & multiple machines
Try switching to FastHttpUser

thanks for your help, so then the rps is not exactly proportional to the number of users per second, but to the different variables that are presented in the test such as the system being tested or the handling of the processor, etc.
questions to which we must consider when carrying out the tests or during these parameters that must be adjusted as progress is made in them.
right?

Yes. In theory, RPS will be: number of users/(response time + sleep time)
So if your system under test starts to slow down your RPS will fall.

ooo thank you very much @cyberw, for your help.


SqlServer database reverse engineering is inconsistent with script generator for unique indexes on nullable columns

Steps to reproduce
The failing unit test can be fetched from https://github.com/azabluda/EntityFramework/commit/1acdcdf648e61cdcb77f56fc9de850c9ff2b26cd.
The issue
Nullable columns become non-nullable after translation of the result of RevEng back to DDL if there is a unique index defined on such columns.
Thus
CREATE TABLE [dbo].[Place] (
    [Id] int NOT NULL IDENTITY,
    [Name] int,
    CONSTRAINT [PK_Place] PRIMARY KEY ([Id])
);
CREATE UNIQUE INDEX [IX_Place_Name] ON [dbo].[Place] ([Name]) WHERE [Name] IS NOT NULL;

becomes
CREATE TABLE [dbo].[Place] (
    [Id] int NOT NULL IDENTITY,
    [Name] int NOT NULL,                         <<< FAIL
    CONSTRAINT [PK_Place] PRIMARY KEY ([Id]),
    CONSTRAINT [IX_Place_Name] UNIQUE ([Name])   <<< STRANGE
);
CREATE UNIQUE INDEX [IX_Place_Name] ON [dbo].[Place] ([Name]) WHERE [Name] IS NOT NULL;

One could speculate on whether the original DDL is itself ill-formed, but this is exactly what CodeFirst generates from my entity model.
This issue is possibly related to #3599.
Further technical details
EF Core version: 1.0.0
Operating system:
Visual Studio version: VS 2015

Confirmed bug, reverse engineer marks the column as required when it is nullable in the database.
modelBuilder.Entity<Place>(entity =>
{
    entity.HasIndex(e => e.Name)
        .HasName("IX_Place_Name")
        .IsUnique();

    entity.Property(e => e.Name).IsRequired();
});

As of the fix for #7956 we no longer do that.


Enable Enocean or ZWave Modules attached to the GPIO Pins

Is it possible to add the required settings for serial Modules (accessing /dev/ttyAMA0 is not possible, because the console or Bluetooth module is attached to it)
Then the abnorm serial port needs to be defined in the setenv file. (ttyUSB* could be automatically detected, but once using ttyAMA0, you need to specify all used ports.)
This might be difficult, because there is a different approach on the RPi3 because it has the Bluetooth module.
When using zwave and enocean (one of them connected to USB, one connected to the GPIO Pins)
-Dgnu.io.rxtx.SerialPorts=/dev/ttyAMA0:/dev/ttyUSB*

Did you see this, we are already talking about this topic https://github.com/ThomDietrich/openhabian/issues/33
I'm looking for some information! Please help wherever you can.


Do Have a Plan To Up This Project To .Net Core 2.0+?

Current Project Only Surport  .Net Core 1.0
MyCat version:  1.6.5
MySQL version:
Operating system:
Other details about my project setup:

dotnet core 3.0 now!update update,update!@@

We don't have any plan to upgrade this in this phase.

hum~Ok. what a pity.
------------------ 原始邮件 ------------------
发件人: "Yuko<EMAIL_ADDRESS>发送时间: 2019年11月21日(星期四) 下午2:00
收件人<EMAIL_ADDRESS>抄送<EMAIL_ADDRESS><EMAIL_ADDRESS>主题: Re: [PomeloFoundation/Pomelo.EntityFrameworkCore.MyCat] Do Have a Plan To Up This Project To .Net Core 2.0+? (#4)
We don't have any plan to upgrade this in this phase.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.


Add a handler for converting view frame to other coordinate systems

Hello. Just tried to use furex for my project and it seems great, but since I can zoom the camera closer, I need to adjust the position of the root view and the sizes of all child views to be able to scale according to this number with the layout rearranged during zoom. Is it possible to add some FrameHandler / UIScale *float64 / WorldToScreenConverter to do this automatically?
Right now I'm updating them manually via Left/Top/Width/Height + Layout().

Hello @sedyh 👋, thanks for the great suggestion! Yeah, I like the idea and it seems really awesome. Would you happen to have the implementation idea already? If that's the case, I really appreciate if you would kindly spare a moment to create a PR for it.

Is it possible to add some FrameHandler / UIScale *float64 / WorldToScreenConverter to do this automatically?

Well, I have some sort of FrameHandler but it's not finished yet, maybeI'll make a PR a bit later.
Btw, is it possible to not specify the size of the root element? I would like it to be calculated depending on the sizes of the internal elements or with a minimum size, as in css.

Oh that's really great, thanks a lot!

Btw, is it possible to not specify the size of the root element? I would like it to be calculated depending on the sizes of the internal elements or with a minimum size, as in css.

Yeah, I think that's possible. Right now, it only calculates the size of the children's view during layout.
But we could probably introduce a functional option parameter or maybe even a new constructor that lets you create an instance without needing the size(width, height) parameter.
https://github.com/yohamta/furex/blob/78826a5db4a80d1ac0a2a7c259855fff6c0d35c9/view.go#L81-L97


Vercel KV not reachable

What am I doing wrong, can anyone help me?

was it related to https://www.vercel-status.com/incidents/cnywbl7zfyq5?


fix: remove instanceof checks in favour of typeName checks

Continuing the fix started in #787 by removing instanceof checks now that typeName checks is in.

Thanks!


Make stickiness work in overflown elements

This pull request makes it possible to use stickyfill from within overflown blocks. I tried to keep my changes as minimal as possible.

Hey, I'll be able to review this in a week or so, sorry for the delay!
And you can of course remind me about this PR in case I forget.
Thanks!

I tried your test page. I had to set .overflown height to 700px, cause 90% doesn't work.
Your implementation seem to only work when the scroll of the page is at the very top. Otherwise there're all sorts of glithes:

Can't merge this in it's current state.

Ooh, you're right. I didn't notice that.
Will fix in the next couple of days.

Hi,
Any news for this feature ? :)

Hey,
I know the problem - when calculating offsets, have to account for real
offset of area from edge accounting for scroll.
Actually fixed that in the copy I was using on the project where I needed
this (https://github.com/google/ggrc-core).
Then got distracted before I submitted changes upstream. Sorry about that.
Will fix this ASAP!
Cheers
On 14 June 2015 at 04:24, Michaël Gallego<EMAIL_ADDRESS>wrote:

Hi,
Any news for this feature ? :)
—
Reply to this email directly or view it on GitHub
https://github.com/wilddeer/stickyfill/pull/14#issuecomment-111814837.

Yeeah, this ASAP, man :)

@Swizec Any chance on updating the PR soon? I need the exact same feature you proposed, so if you can update to your last state it would be great (if there's stuff missing, I may have the time to fill in).

_<


I just tried out 0.4.6 and got the follow message in console log.

main.bundle.js:3396 Warning: FirstChild(...): No render method found on the returned component instance: you may have forgotten to define render, returned null/false from a stateless component, or tried to render an element whose type is a function that isn't a React component.
I had a quick look it almost seems to me that FirstChild if its a component is missing render().

Oh maybe the failure here is because I am in react 0.14.8 and Portal.js is using 'react-addons-transition-group' which has a peer depdency on react ^15.0.1.

Ref #47

Have you solved this? I'm getting same issue.

I ended up updating to React 15, turned out 3 other libraries I was waiting on had updated so I was able to update to it.

See #47


Code compilation failed for c++ using mingw.

Did you add the path of MinGW bin directory to PATH environment variable? Otherwise mingw32-g++.exe can't find as.exe and ld.exe, which is used to produce execute file.
Maybe we can set the working directory of mingw32-g++.exe process to MinGW bin directory in code, so user doesn't need to set environment variable anymore.

I have not tested it for CodeBlocks v16 yet. I will look into it the first chance I get. Thanks for informing me.

I am also facing the same issue.Any updates?


Feature Request: Resolve Modules

In addition to paths, it would be nice to resolve module names:
"browser": "foo"

Before npm used to dedupe packages, it was possible to reliably do something like:
"browser": "./node_modules/foo/index.js"

Happy to open a PR - I just wanted to check if this is desirable or not first.

hm, not sure what I think of this. What is the thinking here? You would have the browser specific code of the module in a separate module and want to reference it?

I think in general most people would expect this to resolve similar to how require resolves.
The specific use case is that I have a bunch of modules that I want to resolve to the identity function (or other times, noop) in the browser, such that when you require this universal module the server-side modules are skipped over in the browser. This is similar to browser: false, but that's restricted to converting to an empty object, which is not always the desired behaviour (i.e. I don't want to throw lots of "object is not a function" errors, or have to add an empty function to each module (ending with multiple in the bundle), or add lots of if statements to work around only being able to dedupe to an empty object).

@defunctzombie - any more thoughts on this?

I think this is a good idea. We first need to add it here (https://github.com/defunctzombie/package-browser-field-spec) to document the desired behavior (and probably start a changelog on that page to notify people of spec updates).
Separately, seeing a PR on this here would help folks in testing the feature.
@substack @sokra @Rich-Harris since you all I believe are involved with the more popular package managers. Do you support the browser field spec (I believe browserify and webpack do but could be mistaken)

I'm on board :+1:

Thanks for the direction @defunctzombie 👍
Opened PRs https://github.com/defunctzombie/node-browser-resolve/pull/84 and https://github.com/defunctzombie/package-browser-field-spec/pull/6

bumping.. is there anything else required before we can land this?
@sokra, @rich-harris: do you make use of node-browser-resolve too or do we need to patch something else?

Related issue https://github.com/browserify/browserify/issues/1539.
Any plans to merge https://github.com/defunctzombie/node-browser-resolve/pull/84 @defunctzombie @sokra?


pdf-lib automatically add a layer without any operation

What were you trying to do?
i start a simple demo, just load a pdf file, then save it as a new file, without any other operation
Why were you trying to do this?
i want test the pdf-lib's usability
How did you attempt to do it?
i just load and then save the file, without any other operation. demo project is below
pdflib-demo.zip
What actually happened?
when load a pdf file, without doing anything, just save as a new file, pdf-lib has add a layer automatically
What did you expect to happen?
when load a pdf file, without doing anything, just save as a new file, it should be the same as the origin file
How can we reproduce the issue?
run the example node project, then get the new.pdf, you can find that it's different from the origin.pdf
the new.pdf has automatically add a layer show in right-top corner
Version
1.17.0
What environment are you running pdf-lib in?
Node
Required Reading

[X] I have read www.sscce.org.
[X] My report includes a Short, Self Contained, Correct (Compilable) Example.
[X] I have read Smart Questions.
[X] I have read 45 GitHub Issues Dos and Don'ts.

Additional Notes
No response

Hello @shukaka!
Thank you for submitting this bug report and providing a SSCCE. I was able to reproduce the issue.
The "new" text is present in the origin.pdf but isn't visible for some reason. When it's saved with pdf-lib, the mechanism that was hiding the text isn't preserved. This is why it looks like new text is coming out of nowhere. That being said, I'm not sure what mechanism is being used to hide the text in the original document. Will need to figure that out in order to fix the issue.
Can you share any details about how the origin.pdf was created?

@Hopding Thank you for reply!
i don't know how the file is created, it was uploaded by my user, i can't find the creater.
i have compared the origin.pdf and new.pdf in adobe pdf reader，i found that the new.pdf has duplicate a layer called "watermark", I don't know if this will help for you


Feature/schema refactoring

Q
A

Is bugfix?
❌

New feature?
✔

Breaks BC?
✔

Tests pass?
✔

Fixed issues
#37 #28

[x] Better Schema getter
[x] New config format
[x] Clear Schema after migrate/up and migrate/down
Update docs

[x] Ru
[x] En

@thenotsoft we want your opinion on this pull request.


[D2Game] Error PLRTRADE_HandleCubeInteraction

if (pCubeMainTxtRecord->bOp = 0)-> the variable (bOpConditionsFulfilled) is always = false.
while the function below has the condition variable (bOpConditionsFulfilled >= 1)
repair
....
switch (pCubeMainTxtRecord->nOp)
{
     ...
     default:
       break;
}

to
....
switch (pCubeMainTxtRecord->nOp)
{
     ...
    default:
    {
          bOpConditionsFulfilled = true;
          break;
    }
}

Thanks for the report!


Feature: Add ability to use the uuid type for some of the id types (rather than text)

Context
Per this discussion, this extension uses   text   rather than   uuid   for ulid and other identifiers with the same size of uuid. It appears this would introduce some size overhead.
Proposal
I think that ulid, uuidv6, uuidv7, etc. should use the   uuid   postgres type.
Alternatives
Keep it as is? It appears one can generate as text and then convert to uuid later.

Hey @dlight agreed -- adding _uuid functions (and maybe shifting the naming scheme somewhat or adding one that is easier to guess/predict that produces textvs uuid is something that should be done.


updating entities for run while using data option

Updating status to "NOT STARTED" when the data path does not exist.
Updating the workspace, command, command_list and interactive attributes when the run hasn't started https://github.com/datmo/datmo/issues/247

Pull Request Test Coverage Report for Build 961

17 of 26 (65.38%)  changed or added relevant lines in 2 files are covered.
48 unchanged lines in 14 files lost coverage.
Overall coverage decreased (-0.1%) to 87.015%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

datmo/core/controller/task.py
15
18
83.33%

datmo/cli/command/base.py
2
8
25.0%

Files with Coverage Reduction
New Missed Lines
%

datmo/cli/command/base.py
1
83.13%

datmo/snapshot.py
1
83.49%

datmo/core/controller/file/driver/local.py
2
91.95%

datmo/cli/command/datmo_command.py
2
100.0%

datmo/core/util/i18n.py
2
100.0%

datmo/cli/command/run.py
2
81.57%

datmo/core/controller/code/driver/file.py
2
93.99%

datmo/cli/command/snapshot.py
2
100.0%

datmo/cli/command/session.py
2
95.7%

datmo/core/util/json_store.py
6
84.62%

Totals

Change from base Build 958:
-0.1%

Covered Lines:
4014

Relevant Lines:
4613

💛  - Coveralls


Version 2.24.0

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (43229a7) 87.38% compared to head (8d4fe54) 89.50%.

Additional details and impacted files
@@             Coverage Diff              @@
##               main     #920      +/-   ##
============================================
+ Coverage     87.38%   89.50%   +2.11%
============================================
  Files           167       86      -81
  Lines         19063    15371    -3692
  Branches       1044        0    -1044
============================================
- Hits          16659    13758    -2901
+ Misses         2097     1613     -484
+ Partials        307        0     -307

Flag
Coverage Δ

uitests
?

uitests-android
?

uitests-ios
?

unittests
89.50% <ø> (+3.94%)
:arrow_up:

unittests-android
?

unittests-ios
?

unittests-rust
89.50% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Add the scripts tab to the UI

Is your feature request related to a problem? Please describe.
I'm generating images with the script Vector Studio but when I want to extend the generated image in Open Out Paint can see that all new images generate are not similar artistic style.
Describe the solution you'd like
Add the script dropdown menu in the UI of Open Out Paint, and make that work the script choosen in my case Vector Studio.
Proposed workflow

Go to the UI of Open Out Paint
Press the dropdown menu of scripts
choose your script

Describe alternatives you've considered
Automaticly recognize the script choosen in the UI or automatic1111 without no need to add the dropdown menu
Additional context
No response

terribly sorry for the extended delay; this project isn't abandoned but i've had to step away from it due to Reasons for a while, and i admit additional responses may (aka will probably) be delayed but hopefully not nearly as long
actually, what you seek kinda already exists; check the manual ;) it takes some manual elbow grease to get working, ergo it's experimental and hidden away


Add no_comma_params option in "cloud_parameters"

Submission Checklist

[x] Have you installed and run this change against pre-commit? (pre-commit install)
[x] Are all tests passing? (make tests)
[x] Have you written unit tests to cover this change?
[x] Is unit test coverage still above 80%?
[x] Have you updated all applicable documentation?
[x] Have you followed the guidelines in our Contributing document?

For the record:

this exposes an existing option in slurm-gcp module that defaults to false (in slurm-gcp)
the default value for the new object sets this to false (no behavioral change)
users who set var.cloud_parameters must add this new field to their objects. it will be discovered at time of terraform plan/apply

SGTM, but noting "half" breaking change.


Handle properties

The syntax highlighter is not currently fully compliant with properties.
It only matches (<duration>!), where as it should match the regex (<property>(, <property>)+), where <property> is a defined property.

Because should-total is the only defined property, it is technically compliant. Unfortunately, this will bite back when more properties are added.

I suggest some sort of regex which matches CSV options, like /((^|, )(<should-total>|<other-property>))/. Just need to figure out how to write one which works well with tmLanguage.

Also, I have no idea of how in a regex ensure a property only appears once, yet allow different properties to appear in any order.

Actually, the multi properties is something I’m not sure should be included at all in the spec at this point, because there just are not more than one property at the moment. I guess in the end I had put that there as some sort of reminder for myself, because should something similar to the should-property pop up in the future (a per-record property) then it could potentially also live inside the parentheses. But who knows whether this will ever happen, plus whether it works out that way. So what that really is is premature optimisation at this point… 🤔

Ah, that is good to know then.
I'll just keep it as it is now 👍

What do you think though, whether the properties should be expressed that way in the spec at all at this point?

To be fair, I have no real preference at all. I think that it is a bit odd that there is a whole segment to properties when there is only one property as of now. However, you decide if any new properties are added.
I have not spent quite as much time reflecting over the language, only the structure of the language. I think you know which is better for the language in the long run. I like it a lot because it is simple to jot down in a text file, with no complex stuff to remember.
(My own attempt at a time tracking text file at my previous job was a mix of Markdown and YAML. klog is a million times better, due to its simplicity.)

It’s useful feedback anyway, and I actually wondered that no one seemed to stumble across this. I also didn’t bother to implement multi props in the CLI parser, by the way.


fix: UID range too low for AML 2023

The default UID range on AML 2023 is 1000-60000. We set the pool size to 100 right now. This means that we were creating pools with UIDs of 300-3099, meaning the first 10 jails would fail to prepare and cause poolnoodle to thrash when it hit those ranges. This will put us in the 3000-30099 range, which should be more reliable.
I would really love to spend some cycles reintroducing the poolnoodle changes I attempted to make before and to rethink some of these bits. The flakiness here is always bothersome.

bors r+


Fluentd v0.3.0 release fix

Removed test pod from chart package

thanks, i was going nuts on how to disable the sample pod scheduling on windows nodes :D


Don't work with UTF-8

File aka
{
"name": "Блок стен 4x4"
}
don't parse with command line
json_reformat.exe -u < filename.json
"parse error: client cancelled parse via callback ..."

Works for me, using yajl 2.0.3. Is there a byte order mark in a file that's throwing off yajl?

Mark in a first '{'.
I found problem. The json-file created by Notepad++ in Windows Explorer. By default N++ use BOM in the text file. Solution: convert the file in UTF-8 without BOM (see menu).
Test files for yajl > http://www.mediafire.com/?9eahbxz9kx7mkk4
Thanks for your work!


provide natives directory to java when launching process

The launcher knows where the game is installed and what operating system it's running on.
It can add a -Djava.library.path= argument to java, set to the natives directory for this platform.
See https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/System.html#getProperties()
This will let the main Terasology process avoid trying to change paths at runtime, which is known to interact poorly with some security policies — especially in more recent versions of Java.
See https://github.com/MovingBlocks/Terasology/pull/3937

(pssst, merge #571 before messing any further with java parameters.)