uiSelect should expose OPEN and other events

uiSelect should expose open and other events that select2 has: opening, change, close, highlight, selecting, removing, removed, loaded, focus, and blur. I understand several are already available but it would be nice to have them all accessible through a single format, e.g. broadcast/on or via attr/observe.

I think the workaround with decorators is too much for the simplicity of a few new attributes. Instead, why not add an on-close callback attribute. I've modified my select.js to accept this.
In the ui-select link function, parse the attribute:
$select.onCloseCallback = $parse(attrs.onClose);

then inside the controller's close method call
ctrl.onCloseCallback($scope, {
    $model: ctrl.parserResult.modelMapper($scope, {})
});

Works as expected and is the right fix for the app my team is working on.

Workaround https://github.com/angular-ui/ui-select/issues/432#issuecomment-65490071 doesn't work

Anyone have any luck getting the blur event (and all the others) to work on the active text field?  I'm thinking of using jQuery to bind it after it's live, and take control from there.
The snippet from Tony H worked for me, except that the events are called at points during selection that would not normally be interpreted as a .blur or .focus on a normal select.
What I'm after is using the text the user has entered as a newly created value which gets selected and blurs if the user clicks away from the active ui-select element.  The select/dropdown currently remains in an active state until a selection is made.  Also, I want that when the tab key gets pressed during selection, it tabs to the next element.  It currently selects the first item in the list, and leaves that item focused.
Are any of these things possible out-of-the-box?

So, I bound .blur to the ".ui-select-search" input box, and selected the first item in the list of options each time that this blurred.  The only problem came when I arrowed down to make a selection, then pressed the tab key, it still selected the first option.  Any ideas?

This is still an issue. One solution it's to use the decorators or add some additional attribute to the directive and then do some work in the link function, but really best would be to have these events in the open API layer.

What I've elected to do is handle validation of the ui-select on form submit, which is less than ideal.  Leveraging the jQuery Select2 plugin, and moving away from Angular in this specific case seems like a viable option as well.

@ttonyh 's workaround wasn't working for me on angular 1.3.15 and ui-select 0.12.0, so I had to tweak it a little bit:
  .config(function ($provide) {
    $provide.decorator('uiSelectDirective', function ($delegate) {

      var directive = $delegate[0];
      var directiveCompile = directive.compile;

      directive.compile = function (tElement, tAttrs) {
        var link = directiveCompile.apply(this, arguments);
        return function(scope, elem, attrs) {
          link.apply(this, arguments);
          scope.$watch('$select.open', function(val) {
            scope.$parent.$broadcast('uiSelect:open', val);
          });
        };
      };

      return $delegate;

    });
  });

If you want to know when blur occurs on your controller: (note this event will also fire if user selected something)
    $scope.$on('uiSelect:open', function(evt, opened) {
      if(!opened) {
        console.log('user selected something or blur ocurred');
      }
    });

Since my last update, there's been some changes to the way ui-select sets up the directive. They now use the compile function, which is why my above code won't work. Here's an update that I just tried, and it seems to work, if you guys want to give it a shot and let me know your results:
module.config( function( $provide ) {
    $provide.decorator( "uiSelectDirective", function( $delegate ) {
        var directive = $delegate[ 0 ],
            compile = directive.compile;

        directive.compile = function compile( tElement, tAttrs ) {
            var link = compile.apply( this, arguments );

            return function( scope, element, attrs, controller ) {
                link.apply( this, arguments );

                var $select = controller[ 0 ];

                scope.$watchGroup( [ "$select.open", "$select.focus" ], function( val ) {
                    scope.$parent.$broadcast( "uiSelect:events", val );
                });
            };
        };

        return $delegate;
    });
});

This basically extends their compile function instead of the code I posted above, which overrides it.

Well.. a lot of talk about workarounds w/ decorators.  Which is what we ended up doing to achieve onOpen and onClose API functionality.  If anyone's interested, here's what we did:
    $provide.decorator('uiSelectDirective', function( $delegate, $parse ) {
            var directive = $delegate[ 0],
                preCompile = directive.compile;

            directive.compile = function compile() {
                var link = preCompile.apply( this, arguments );

                return function( scope, element, attrs, controller ) {
                    link.apply( this, arguments );

                    var $select = controller[ 0 ];

                    if(attrs.uiSelectOnOpen || attrs.uiSelectOnClose) {
                        $select.onOpenCallback = $parse(attrs.uiSelectOnOpen);
                        $select.onCloseCallback = $parse(attrs.uiSelectOnClose);
                        scope.$watch('$select.open', function(newV){
                            if(newV) {
                                $select.onOpenCallback(scope, {
                                    $model: $select.parserResult.modelMapper(scope, {})
                                });
                            } else {
                                $select.onCloseCallback(scope, {
                                    $model: $select.parserResult.modelMapper(scope, {})
                                });
                            }
                        });
                    }
                };
            };

            return $delegate;
        });

Once we had that, I figured why not just make a PR to add it to UI-Select?  So here's my PR: https://github.com/angular-ui/ui-select/pull/1153
Hopefully if can make it into a 12.x release at some point @dimirc ?

I am trying to make this work for handling the focus event, however it does not work as expected. The $select.focus property is set and reset multiple times when making a selection. Hence, it triggers the focus event multiple times when making a selection in the list of items. I would expect focus property to be set and true until I either tab out of the control or click somewhere else in the document.
Note: I am using single select with bootstrap theme.

@RavenHursT Thank you so ****ing much for this. I've spent two days trying to get the damn blur event to be available from my calling controller and FINALLY your solution works for me. Gonna +1 your PR

For any hapless googler.  This feature is merged and works.  You  need 0.19 or greater.  The documentation is here: https://github.com/angular-ui/ui-select/wiki/uis-open-close


Only one usage of each socket address errors when restarting app host

Is there an existing issue for this?

[x] I have searched the existing issues

Describe the bug
Every time I restart my aspire project, I am getting a bunch of "Only one usage of each socket address" errors.  The only way I can avoid getting these errors is to explicitly kill the already running app host instance before starting a new one.  I haven't seen this on my work machine, but am consistently seeing it on my personal machine.
fail: Aspire.Hosting.Dcp.dcpctrl.ServiceReconciler[0]
      could not start the proxy {"ServiceName": {"name":"apiservice-https"}, "Reconciliation": 9, "error": "could not start the proxy for the service: listen tcp [::1]:7415: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted."}

Expected Behavior
No errors on startup.
Steps To Reproduce

Have an AppHost project in VS
Start without debugging
Start without debugging again to restart the app

https://github.com/user-attachments/assets/e819ce94-a4c2-4fc4-87be-7cac8e86090e
Don't think the contents of my project is relevant, but it's essentially the starter project
using AspireInitalisation.AppHost;
using Microsoft.Extensions.DependencyInjection;

var builder = DistributedApplication.CreateBuilder(args);

var cache = builder.AddRedis("cache");

var apiService = builder.AddProject<Projects.AspireInitalisation_ApiService>("apiservice");

builder.AddProject<Projects.AspireInitalisation_Web>("webfrontend")
    .WithExternalHttpEndpoints()
    .WithReference(cache)
    .WaitFor(cache)
    .WithReference(apiService)
    .WaitFor(apiService);

var sql = builder.AddSqlServer("sql").WithLifetime(ContainerLifetime.Persistent);

var db = sql.AddDatabase("mydb");

var init = builder.AddExecutable("init", "pwsh", ".", "-Command", """
        $wait = 10
        Write-Host Waiting $wait Seconds
        Start-Sleep -Seconds $wait
        Write-Host Done
        """);

//db.WithInitaliserAsHealthCheck(init);

builder.Build().Run();

Exceptions (if any)
fail: Aspire.Hosting.Dcp.dcpctrl.ServiceReconciler[0]
could not start the proxy {"ServiceName": {"name":"apiservice-http"}, "Reconciliation": 7, "error": "could not start the proxy for the service: listen tcp [::1]:5321: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted."}
fail: Aspire.Hosting.Dcp.dcpctrl.ServiceReconciler[0]
could not start the proxy {"ServiceName": {"name":"webfrontend-https"}, "Reconciliation": 8, "error": "could not start the proxy for the service: listen tcp [::1]:7249: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted."}
fail: Aspire.Hosting.Dcp.dcpctrl.ServiceReconciler[0]
could not start the proxy {"ServiceName": {"name":"webfrontend-http"}, "Reconciliation": 9, "error": "could not start the proxy for the service: listen tcp [::1]:5244: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted."}
fail: Aspire.Hosting.Dcp.dcpctrl.ServiceReconciler[0]
could not start the proxy {"ServiceName": {"name":"apiservice-https"}, "Reconciliation": 12, "error": "could not start the proxy for the service: listen tcp [::1]:7415: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted."}
fail: Aspire.Hosting.Dcp.dcpctrl.ServiceReconciler[0]
could not start the proxy {"ServiceName": {"name":"apiservice-https"}, "Reconciliation": 15, "error": "could not start the proxy for the service: listen tcp [::1]:7415: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted."}
fail: Aspire.Hosting.Dcp.dcpctrl.ServiceReconciler[0]
could not start the proxy {"ServiceName": {"name":"apiservice-http"}, "Reconciliation": 16, "error": "could not start the proxy for the service: listen tcp [::1]:5321: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted."}
.NET Version info
.NET SDK:
 Version:           9.0.100
 Commit:            59db016f11
 Workload version:  9.0.100-manifests.b7b342be
 MSBuild version:   17.12.7+5b8665660

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.22631
 OS Platform: Windows
 RID:         win-x64
 Base Path:   C:\Program Files\dotnet\sdk\9.0.100\

.NET workloads installed:
 [aspire]
   Installation Source: VS 17.12.35506.116
   Manifest Version:    9.0.0-preview.4.24454.4/8.0.100
   Manifest Path:       C:\Program Files\dotnet\sdk-manifests\8.0.100\microsoft.net.sdk.aspire\9.0.0-preview.4.24454.4\WorkloadManifest.json
   Install Type:              Msi

Configured to use loose manifests when installing new manifests.

Host:
  Version:      9.0.0
  Architecture: x64
  Commit:       9d5a6a9aa4

.NET SDKs installed:
  8.0.404 [C:\Program Files\dotnet\sdk]
  9.0.100-rc.2.24474.11 [C:\Program Files\dotnet\sdk]
  9.0.100 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 8.0.11 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 9.0.0-rc.2.24474.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 8.0.11 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 9.0.0-rc.2.24473.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 8.0.11 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 9.0.0-rc.2.24474.4 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
  x86   [C:\Program Files (x86)\dotnet]
    registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

Environment variables:
  Not set

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download

Anything else?

  <ItemGroup>
    <PackageReference Include="Aspire.Hosting.AppHost" Version="9.0.0" />
    <PackageReference Include="Aspire.Hosting.Redis" Version="9.0.0" />
    <PackageReference Include="Aspire.Hosting.SqlServer" Version="9.0.0" />
  </ItemGroup>

Thank you for the report, @afscrome . I have a strong suspicion this is a timing issue. The stopping on of the project Executable, and the stopping of associated Endpoint proxies happens asynchronously. If the Executable gets re-created quickly (which is the case during restart), and if it uses fixed ports (which .NET projects typically do), the proxies from the previous run might still occupy the ports.
We probably need to delay reporting the Executable until all its Endpoints are gone. At least if the Executable is using fixed ports.
Containers may have the same problem actually.
@JamesNK FYI

@dbreshears pointed out this is AppHost restart, not project restart. Still it is a timing issue associated with the port checks and the previous instance not freeing up the ports/stopping the proxies fast enough. The solution here is probably to re-try the project startup and port allocation (new instance)

hey @karolz-ms
I am facing the same issue. Tried different things already, nothing helped so far

David mentioned in #4257 that it might be something with IPv6 - I used environment variable and switched to v4 "DCP_IP_VERSION_PREFERENCE": "IPv4", - I can confirm proxy was setup with ipv4 but problem persists
I tried to disable firewall
I tried to change ports (I hope I got you right) but for me each new run result with the same issue - you can see error with ports that haven't been used before

Not sure if this will be helpful in any way but I uploaded my project here: aspire_issue_6693 - it's a fresh solution with api project + orchestrator
CC: @afscrome

Should be fixed with https://github.com/dotnet/aspire/pull/6802


Karate Framework Ignores the tests

Hi @ptrthomas, I am new to Karate Framework. I have been trying to run a sample scenario on my environment but it is ignoring the tests. Can you please correct If I am doing something wrong here.
Feature file:
Feature: account end-point

  Scenario: Authenticate User account
    Given url 'url'
    And headers {Authorization: 'Basic ZGFmdDowYzU0MTRkMDA4YWZiMWIwMjI3ZDQ0MTUyZWJhOGY0ZjRhMTY0NWU5MmFiMDc3M2NjYmQ1OWEyYzc0MjBkMzdh', X-Daft-API-Key: '0059f8fe424c7b573ce02b620f3151f2b2b8bfcb', Accept: 'application/json; versions=1'}
    And form field username: 'arunaousula'
    And form field password: 'dist1234'
    When method post
    Then status 200

Runner Class
package examples.sample;

/**
 * Created by arun on 08/11/2017.
 */
import com.intuit.karate.junit4.Karate;
import org.junit.runner.RunWith;

@RunWith(Karate.class)
public class SamplesRunner {

}

Karate-config.js
function() {
  var env = karate.env; // get system property 'karate.env'
  karate.log('karate.env system property was:', env);
  if (!env) {
    env = 'dev';
  }
  var config = {
    env: env,
	myVarName: 'someValue'
  }
  if (env == 'dev') {
    // customize
    // e.g. config.foo = 'bar';
  } else if (env == 'e2e') {
    // customize
  }
  return config;
}

Here are the logs
12:49:01.347 [main] INFO  com.intuit.karate - karate.env system property was: null
Test ignored.
Test ignored.
Test ignored.
Test ignored.
Test ignored.
Test ignored.
Test ignored.
Test ignored.
Test ignored.
Test ignored.1 Scenarios (1 undefined)
6 Steps (3 skipped, 1 undefined, 2 passed)
0m0.760s
html report:
file:/Users/arun/Karate/KarateFramework/target/surefire-reports/TEST-examples.sample.sample.html
Process finished with exit code 0

I have tried different examples given in your demo project but nothing helped.

there are so many things wrong. I suggest you use the quickstart command (refer to the doc) and create a project that way, then try to modify things.
Just in your feature, 'url' definitely looks wrong. Also it should be like this:
    And form field username = 'arunaousula'
    And form field password = 'dist1234'

and for these kind of basic questions, please use Stack Overflow, thanks: https://stackoverflow.com/questions/tagged/karate


Flash eMMC CM5 Apple

Describe the bug
Like This issue you should update the README.
Make doesn't copy file in /usr and if on the latest version of MacOS you try to install it you will get "Operation not permitted". (Yes MacOS security sometime is to much)
like mention on issue 262 you can use -d but you can also modify the makefile to install in /usr/local who is create for this.
Or you can do : sudo make INSTALL_PREFIX=/usr/local install this will do the same but in the correct folder for macOS people !
Steps to reproduce the behaviour

Clone the usbboot repository
Install libusb (brew install libusb)
Install pkg-config (brew install pkg-config)
(Optional) Export the PKG_CONFIG_PATH so that it includes the directory enclosing libusb-1.0.pc
Build using make
Run the binary

git clone --recurse-submodules --shallow-submodules --depth=1 https://github.com/raspberrypi/usbboot
cd usbboot
brew install libusb
brew install pkg-config
make
sudo ./rpiboot

Device(s)
Other
Compute Module IO board.
Compute module 5 IO Board
RPIBOOT logs
No response
Kernel logs
No response
Device UART logs
No response

I’m happy with readme updates or different makefile default on osx.
We don’t routinely build or test in macOS so normally just merge PRs if they look reasonable

Yes no problem!


Support overriding via args & kwargs

Currently, it is possible to override injected arguments by provider overriding.
This makes sense, especially when testing, however it would be convenient to be able to override injection by passing the arguments to the function explicitly:
async def my_resource():
    return "resource"

class MyContainer(BaseContainer):
    config = providers.AsyncFactory(my_resource)

@inject
async def my_function(provided: str  = Provide[MyContainer.config]):
    print(provided)

async def run():
    await my_function()  # resource

    # RuntimeError: Injected arguments must not be redefined, field_name='provided'
    await my_function(provided="overriden")  # expected: overriden

    # TypeError: my_function() got multiple values for argument 'provided'
    await my_function("overriden")  # expected: overriden

Specific use case:
Sometimes I want to call a function that has dependency injection, but I want to override 1 or more parameters depending on context. I could use Container.my_provider.override() or similar, but that leads to additional code & doesn't work as well in an async context.
Is there perhaps another reason that this is currently not supported?

@alexanderlazarev0 Hi) you are a second person who asked for this, so I'm working on solution)


Feature/project-id

Description
Based on the changes in back-end https://github.com/CSCfi/metadata-submitter/pull/346: Project Id is now a mandatory field in creating a new submission and template.
Related issues
Closes https://github.com/CSCfi/metadata-submitter-frontend/issues/625
Type of change

[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Changes Made

templates was no longer under user but has a separate API endpoint /templates
Updated GET requests for folders and templates to include projectId as a mandatory parameter
Included projectId in the request body in POST requests for folder and template
Updated PATCH request for template to include index in the request body
Removed CSC Project column in Submission table in Home page
Updated e2e tests
Updated Changelog file

Testing

[x] Integration Tests

Mentions

As for now the templates are temporarily hidden in our application due to the transition of UI, the e2e tests for templates will be updated later when the new template interface is implemented.

Tested manually, no code review from me (no expertise). Seems to be working nicely!
There was one visual bug with buttons in the publishing page (tested of firefox and chromium):

Thanks for reviewing.
The current transition of UI causes that visual bug and it should be fixed together when that part of new UI is implemented.


Setting ALWAYS_OFFLOAD_NODE_STATUS without setting nodeStatusOffLoad results in workflow errors

Pre-requisites

[X] I have double-checked my configuration
[X] I can confirm the issue exists when I tested with :latest
[X] I have searched existing issues and could not find a match for this bug
[ ] I'd like to contribute the fix myself (see contributing guide)

What happened/what did you expect to happen?
I was in the process of enabling node status offloading. As part of this I set the ALWAYS_OFFLOAD_NODE_STATUS environment variable and missed making the nodeStatusOffload property in the configmap to true.
This resulted in the workflows failing with the error: offload node status is not supported (cli) and Workflow operation error (ui).
While this is definitely a configuration issue, it would be nice to have the controller ignore the ALWAYS_OFFLOAD_NODE_STATUS flag if the nodeStatusOffload setting is set to false so that users don't have to disable both if they need to disable node status offloading.
Version
latest
Paste a small workflow that reproduces the issue. We must be able to run the workflow; don't enter a workflows that uses private images.
# This is an issue with any workflow, so pasting the default workflow here.
metadata:
  name: fantastic-python
  labels:
    example: 'true'
spec:
  arguments:
    parameters:
      - name: message
        value: hello argo
  entrypoint: argosay
  templates:
    - name: argosay
      inputs:
        parameters:
          - name: message
            value: '{{workflow.parameters.message}}'
      container:
        name: main
        image: 'argoproj/argosay:v2'
        command:
          - /argosay
        args:
          - echo
          - '{{inputs.parameters.message}}'
  ttlStrategy:
    secondsAfterCompletion: 300
  podGC:
    strategy: OnPodCompletion

Logs from the workflow controller
Type     Reason           Age   From                 Message
  ----     ------           ----  ----                 -------
  Normal   WorkflowRunning  65s   workflow-controller  Workflow Running
  Warning  WorkflowFailed   65s   workflow-controller  offload node status is not supported

Logs from in your workflow's wait container
This was not done :(

You have asked for something to happen and not configured it. The controller is invalidly configured.
I wouldn't support being functional in this case, but we could just refused to start the controller instead, but it feels less helpful. The cli error is being as useful as it can be. Blindly carrying on in the light of bad configuration might be sane for some kinds of applications, but I disagree with doing it for a controller like argo workflows.

but we could just refused to start the controller instead

Yea I think this would be the proper route, or at the very least have the Controller log out a critical error

Logs from the workflow controller

Notably, these logs are actually missing from the issue

and Workflow operation error (ui).

This is actually coming from the Controller, it's a message on the entry node

offload node status is not supported (cli)

this one is a bit more interesting as it's mentioned in the docs but this scenario is not mentioned as what could happen.
This error message comes from the DB code. I'm not sure exactly how the CLI chose this error to show specifically. Which command in the CLI did you use to get that? argo list?

I'm not aware of the command that was run to get the logs since it was given to me by a team member. From what I understood it was a kubectl describe on the controller itself.
I'll try reproducing this again with a local argo setup over the weekend and come up with a more concrete set of logs and commands to reproduce this issue.

I'm not sure exactly how the CLI chose this error to show specifically.

From my very limited understanding of the controller log and from memory at looking at the kubectl logs of the controller, it comes up when a node is "hydrated/dehydrated". This if condition succeeds since alwaysOffloadNodeStatus is true, while h.offLoadNodeStatusRepo has the default value to ExplosiveOffloadNodeStatusRepo since nodeStatusOffload is false.


[ISSUE #1336] Bug fix org.apache.rocketmq.store.DefaultMessageStore#getMessageIds …

…result is wrong
What is the purpose of the change
Fix the bug in org.apache.rocketmq.store.DefaultMessageStore#getMessageIds line 1044
Brief changelog
set right position after get physical offset
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[ ] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Coverage increased (+0.1%) to 50.655% when pulling c986d71add88f234639078ac2d486a4864e0d851 on ChaosYjh:master into 092a639528a99b4639438059a9c684281f428c32 on apache:master.

Could u please change the destination of this PR to develop branch first? And it would be nicer if you can provide a test case for this fix.

Could u please change the destination of this PR to develop branch first? And it would be nicer if you can provide a test case for this fix.
Since invoking getLong() make the position move, I'm not sure the if the logic of
bufferConsumeQueue.getByteBuffer().position(i + ConsumeQueue.CQ_STORE_UNIT_SIZE);
is correct. I think a test case is needed.

Ok,I will change the destination to develop branch and commit a test case later.

@xiangwangcheng
I recreated a PR for develop branch with test case,and run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle、mvn clean install -DskipITs、mvn clean test-compile failsafe:integration-test ok.
#1336
#1338


I/O timeout on upgrade

Following the ideas from the issue of docker/docker#16746, running
    docker-machine upgrade <machine>

fails with
$ docker-machine upgrade dev
Stopping machine to do the upgrade...
Upgrading machine dev...
Get https://api.github.com/repos/boot2docker/boot2docker/releases: dial tcp: i/o timeout

The platform is OS X El Capitan with
$ docker version
Client:
 Version:      1.8.2
 API version:  1.20
 Go version:   go1.4.2
 Git commit:   0a8c2e3
 Built:        Thu Sep 10 19:10:10 UTC 2015
 OS/Arch:      darwin/amd64

Server:
 Version:      1.8.1
 API version:  1.20
 Go version:   go1.4.2
 Git commit:   d12ea79
 Built:        Thu Aug 13 02:49:29 UTC 2015
 OS/Arch:      linux/amd64

I've got a fix for this in the pipe

Hm, actually, it seems I have mis-read this issue and I'm thinking of a different one.  Do subsequent docker-machine upgrade commands work, or do you get the same error?  How about restarting the VM, does it fix the issue?

No to all questions, unfortunately. Tried multiple times. On a different machine that still runs 1.8.1, the error is slightly different:
    $ docker-machine upgrade dev
    Stopping machine to do the upgrade...
    exit status 1

Problem resolved by swopping Google DNS so that <IP_ADDRESS> became primary and <IP_ADDRESS> secondary DNS server. May have been DNS cache issue.

Thanks for following up to close @ain


Prototype limit the number batched tasks

Hey everyone 👋
Since we don't have a nice solution yet to solve this issue, we’ll expose this new experimental flag that lets you limit the maximum number of tasks meilisearch can batch together.
Prototype is available under prototype-experimental-limit-batched-tasks-1
How to use the feature?

Launch meilisearch using the --experimental-limit-batched-tasks CLI flag or the MEILI_EXPERIMENTAL_LIMIT_BATCHED_TASKS environment variable by specifying how many tasks you want to batch together.
Finding a good value is very dependent on your use case, you should try to trigger this error multiple times and see how many tasks were processing at the same time. The experimental metrics feature could be of great use to determine this value since it shows you in real time how many tasks are processing.

@irevoire can we close this PR since we have released this experimental feature in v1.6.0?


Swift 3 and exception interface

Swift 2.3 and Swift 3 support
Created structure for being able to send up file, function, and line number: #10 (not fully implemented on API yet)

This change is

Can we get this merged and release a 0.3.4 pod?

@zachlucas Yes yes! Just got back from vacation so on it today 😊  🌴

@zachlucas A release has been made for Swift 2.3 and Swift 3.0 support under 0.4.0 for Carthage and CocoaPods


Set io_priority for couch_index pids

Overview
In production we noticed that io_priority is not set for view update and compaction. This PR adds appropriate io_priority to the processes involved.
Testing recommendations
make eunit apps=couch tests=couch_index_ioq_priority_test_

Related Issues or Pull Requests
N/A
Checklist

[x] Code is written and works correctly;
[x] Changes are covered by tests;
[ ] Documentation reflects the changes;

Hi @iilyak
I wonder whether this change may result in better performance of index I/O operations (like view index updates)?
If I understood correctly this io_priority flag is for ioq supervisor which prioritises I/O operations inside of CouchDB.
Or this change is pure informative/debugging one?

Hi @AlexanderKaraberov
As you noticed already io_priority is used by ioq (here) to select appropriate requests queue. The bug fixed in this PR makes sure that view_compact requests go to the right queue. Database admin can influence which requests would have greater priority see here.

@iilyak would love to get this into 2.3.0 but it looks like your tests are failing...

Unfortunately due to changes in tracing mechanism in OTP this PR has to wait for deprecation of old erlang versions.


channelOverwriteHasPermission Unit Testing

Is your feature request related to a problem? Please describe.
Add a unit test for channelOverwriteHasPermission function which can be found inside the src/handlers/channel.ts file.
Describe the solution you'd like

Create a new role
Create a channel with a set of permissions being granted and denied to this role
Check if this role has a permission in this channel overwrite
confirm that it denies permission for a permission the role does not have
Check if it also denies for a permission that was neither granted nor denied

Additional context
Please send PR to #109

#120


Support getting Windows SDK from the environment

Should fix #625
This uses the "WindowsSdkDir" and "WindowsSDKVersion" environment variables set by vcvars.
I only ran some simple tests, checked that it worked when running under a shell configured with vcvars and under one without (And that it correctly found the env var and paths), and I also manually tested by setting the two env vars by hand to use a different SDK version and that also worked fine.

Thanks!


pull request for e2e test at 11/19/2016 21:26:06

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

optest/docs/updated_at.md
:white_check_mark:Succeeded

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.


Deprecate case_when

PR Description
Please describe the changes proposed in the pull request:

Pandas now has a case_when method
Deprecate pyjanitor's case_when funcction and point users to the pandas' method.

This PR deprecates the case_when function.

PR Checklist

Please ensure that you have done the following:

[x] PR in from a fork off your branch. Do not PR from <your_username>:dev, but rather from <your_username>:<feature-branch_name>.

[x] If you're not on the contributors list, add yourself to AUTHORS.md.

[ ] Add a line to CHANGELOG.md under the latest version header (i.e. the one that is "on deck") describing the contribution.

Do use some discretion here; if there are multiple PRs that are related, keep them in a single line.

Automatic checks
There will be automatic checks run on the PR. These include:

Building a preview of the docs on Netlify
Automatically linting the code
Making sure the code is documented
Making sure that all tests are passed
Making sure that code coverage doesn't go down.

Relevant Reviewers

Please tag maintainers to review.

@ericmjl

🚀 Deployed on https://deploy-preview-1334--pyjanitor.netlify.app

This one is an easy merge. Thanks @samukweku!


scrollBehavior should allow configuring scrolling element

What problem does this feature solve?
A lot of times - the scrolling element in the document is not the window, making scrollBehavior not work (and the saved position too probably).
Should allow setting the scrolling element in the application (not sure if as a global, or per scrollBehavior function or both).
What does the proposed API look like?
Global Option:
When initiating Vue router - allow setting scrollingElement property that will replace window.
Per Scroll Behavior Option:
When returning the scroll object should allow to set scrollingElement that will override the window (or the global config).
savedPosition should always be related to the global config (or window).

Duplicate of https://github.com/vuejs/vue-router/issues/1187


test: Refactored codebase and updated route unittests to better reflect production cases

Hey there :wave:
First & foremost, my apologies for the massive PR :sweat_smile:
I'll go through a detailed explanation of what I did below and why:

Adding unittests for security module: all testable components of the app (especially those overridden during unittests) need to be tested. So I added pytest async to the requirements so that the hashing and password verification functions can be tested.

Mock CRUD in pytest fixtures: whatever the table, we need to do minimum patching during our testing to be able to closely test the API in real-case situations. I rewrote all CRUD functions to interact with mock tables (expressed as list of dicts).

Designing each route's unittests: using the previous fixtures, I carefully patch the CRUD functions that are used in the route, and replace the table by a deepcopy of my mock table. The deepcopy is necessary for each scenario to be run with exactly the same table.

Typing when possible: as rewriting require some heavy lifting, it became necessary to know the exact input/output format of each function. So I added/corrected typing when it was missing/wrong (among others, in crud, deps, security).

Table/Schemas changes: adding minimal length to password, removed HeartbeatOut schema since it wasn't used (the typing of the route was corrected)

Routing functions refactoring: the access creation and password update function needing only the access table, I moved it to the api/routes/accesses module for clearer interface. I deleted the routing module and moved general table operations to crud. Each table-specific operation is implemented in the route module whose table is used. I know we discussed keeping code out of the route module with @florianriche in previous PRs, but this allows keeping table access to its specific route, making things easier for understanding and testing.

This PR was created mostly to improved unittests as per #17. Please bear in mind that I would have split this up in multiple PRs but to design new unittests, I needed some clearer module separation and typing, hence the 4, 5, and 6.
Any feedback is welcome!

@jeanpasquier75 not sure to understand fully your suggestion
Are you suggesting to remove the accesses routes and only keep the crud operations since it's something that should only be exposed to admins? But happy to discuss this in another issue or a PR if it's already clear to you!
Regarding post_access & update_access_pwd, I moved them over there because they require operations on the access_table. And this way, the access_table is only imported by its route and no other module. Would you pass the access_table as argument if we were to move both of these elsewhere?

I agree with @jeanpasquier75 that access routes should not exist. I added it mainly for debugging purpose. As of now I think we should leave it. If we want to remove it,  we should do so in another review.

@jeanpasquier75 not sure to understand fully your suggestion
Are you suggesting to remove the accesses routes and only keep the crud operations since it's something that should only be exposed to admins? But happy to discuss this in another issue or a PR if it's already clear to you!
Regarding post_access & update_access_pwd, I moved them over there because they require operations on the access_table. And this way, the access_table is only imported by its route and no other module. Would you pass the access_table as argument if we were to move both of these elsewhere?

Yes I was suggesting to remove the route, but as Florian mentioned we can leave the read operations for debugging purpose but we definitely need to remove CUD operations to maintain a consistent database.
I understand your refactoring and I agree on your choice but I suggest to move the 2 functions in a dedicated module, e.g crud/accesses.py
I will open a PR soon to be more concrete, including db transaction

@jeanpasquier75 @florianriche Alright so we deal with the accesses routes in another PR, right?
Regarding moving the 2 access-related functions, do you want to do with along with the deletion of the routes mentioned above? or in this PR?

ping @jeanpasquier75 @florianriche :grin:

I would do it in another PR to clearly separate the PR topics :)


mystical fire, steely spirit missing

various abilities/moves/effects are probably missing, but these two were the ones i noticed. mystical fire in particular has seen a decent amt of use and should be added to the calculator

PR created with mystical fire, steely spirit and the various "hyper beam" moves for different types added.


Cannot start game when dllautoupdater fails

Sometimes when network is not good, dllautoupdater may fail, and the game will refuse to start, even if the DLL is newest.

thx,  I will review my code

Now, if communication cannot be established within 40 seconds, the game is shut down (exit), but I will try to give only an alert dialog without shutting down.
I'm also going to be able to enable or disable in the ini


Add pipeline app for fetching, processing, and importing data

@sebbacon, there's quite a lot here, so you might appreciate a guided tour before reviewing!

Some little things:

Just to note, we don't need to keep old data lying around post-run. At a later point we should consider adding a cleaner that gets rid of data older than the month-before-last.  (This is a feature request - not currently handled, so ignore for now!)
Could rename the pipeline commands to indicate they're fetchers/scrapers? Previously they were in a folder that indicated this
Do task objects need documentation field?  I guess the names of the tasks are enough, but it was easier to understand the purpose of various things when they were in one file. Perhaps a bit of tickling the django admin so that you can view a source plus its related tasks on one screen, or similar? Sometimes it is nice to be able to point end users (usually team members) at the manifest to explain where our data comes from.
We don't need smoke.sh, it was superseded by generate_smoketests

@sebbacon's approved, so am merging.


Style: Change Storage::SetReadOptions to DefaultScanOptions

Fixes https://github.com/apache/kvrocks/issues/1572
Now kvrocks has SetWriteOptions and SetReadOptions. However, there syntax doesn't same. SetWriteOptions would set the Storage internal rocksdb::WriteOptions during intialize, and the detail option can be get by DefaultWriteOptions().
However, SetReadOptions only does some fixup when called:
void Storage::SetReadOptions(rocksdb::ReadOptions &read_options) {
  read_options.fill_cache = false;
  read_options.async_io = config_->rocks_db.read_options.async_io;
}

Would we create a DefaultScanOptions, and remove SetReadOptions for that ?

@git-hulk By the way, when would kvrocks use fill_cache = true? Seems that only when point get, we would have that, and read_ahead / fill_cache is usally disabled for performance?

No, just make clear when would we we fill_cache, when I'm refactor, I found that some interfaces like ZSet::MGet uses iterator, but it disable metadata cache:
  rocksdb::ReadOptions read_options = storage_->DefaultScanOptions();
  LatestSnapShot ss(storage_);
  read_options.snapshot = ss.GetSnapShot();
  std::string score_bytes, member_key;
  InternalKey(ns_key, member, metadata.version, storage_->IsSlotIdEncoded()).Encode(&member_key);
  s = storage_->Get(read_options, member_key, &score_bytes); //  member key will not be cached.
  if (!s.ok()) return s.IsNotFound() ? rocksdb::Status::OK() : s;

Another case is that Hash::MGet, it uses rocksdb::MGet, but it disable fill_cache. I wonder what kind of get would disable the caching? @git-hulk

Got it, thanks for your information. The origin expectation is all point lookups(include mget) should use the fill_cache, so it should be a mistake if we didn't fill the cache in mget operation.

The origin expectation is all point lookups(include mget) should use the fill_cache, so it should be a mistake if we didn't fill the cache in mget operation.

So get meta and point get is likely to be a fill_cache, but iterator should always disable cache, because too many sst is included?
Maybe I can make a separate pr for HSet::MGet, this patch just ensure it never modify any syntax, would it be ok?

So get meta and point get is likely to be a fill_cache, but iterator should always disable cache, because too many sst is included?

Yes, that's right.

Maybe I can make a separate pr for HSet::MGet, this patch just ensure it never modify any syntax, would it be ok?

Yes, it'd be better to file another PR to make the context more clear.


README is out of date

does not mention apitest
"Build and installation" shows old package names

both issues have been addressed, closing


[SPARK-31570][R][DOCS] R combine gapply dapply

What changes were proposed in this pull request?

Combine gapply, gapplyCollect, dapply, and dapplyCollect in a single Rd. This will help simplify changes to the highly correlated documentation as well as make it easier for users to see related functions in a single location.
Why are the changes needed?

https://issues.apache.org/jira/browse/SPARK-31570
Does this PR introduce any user-facing change?

Nothing in code, only in documentation
How was this patch tested?

Ran roxygen2::roxygenise('.') and examined the Rd output

Can one of the admins verify this patch?

Can one of the admins verify this patch?

ok to test

Build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26559/
Test PASSed.

Test build #121889 has started for PR 28362 at commit e8c20cf.

@HyukjinKwon just merged vs master, ready to merge when you are 👍

Test build #121892 has started for PR 28362 at commit 6ad2085.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26563/
Test PASSed.

Test build #121892 has finished for PR 28362 at commit 6ad2085.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121892/
Test PASSed.

Test build #121889 has finished for PR 28362 at commit e8c20cf.

This patch passes all tests.
This patch does not merge cleanly.
This patch adds no public classes.

Build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121889/
Test PASSed.

retest this please

Test build #122829 has started for PR 28362 at commit 6ad2085.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/27475/
Test PASSed.

Test build #122829 has finished for PR 28362 at commit 6ad2085.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/122829/
Test PASSed.

Test build #122846 has started for PR 28362 at commit 77a0e95.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/27491/
Test PASSed.

Error seems related to SBT, not this PR

Test build #122846 has finished for PR 28362 at commit 77a0e95.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/122846/
Test PASSed.

Test build #126421 has started for PR 28362 at commit a557256.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/31035/
Test PASSed.

Test build #126421 has finished for PR 28362 at commit a557256.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/126421/
Test PASSed.

@HyukjinKwon could you help to revive this PR?


Remove version: Twinkstar.TwinkstarBrowser version 8.5.1000.2210

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

URL: https://d1.twinkstar.com/win/Twinkstar_v8.5.1000.2210_ReleaseB32.exe
Response status code does not indicate success: 404 (Not Found).
(Automated message - build 867)


feat: add base data types for msquic wrapper library

Pull Request Checklist
Please check if your pull request fulfills the following requirements:

[x] The commit message follows our guidelines: https://gitlab.playpod.ir/alpha/backend/server-services-next/-/blob/main/CONTRIBUTING.md#commit-message-format
[ ] Tests for the changes have been added / updated (for feat / fix / refactor)
[x] Docs for the changes have been added / updated (for feat / fix / refactor)

Pull Request Type
What kind of change does this pull request introduce?

[ ] Build: Changes that affect the build system or external dependencies
[ ] CD: Changes to our CD configuration files and scripts
[ ] CI: Changes to our CI configuration files and scripts
[ ] Docs: Documentation only changes
[x] Feat: A new feature
[ ] Fix: A bug fix
[ ] Perf: A code change that improves performance
[ ] Refactor: A code change that neither fixes a bug nor adds a feature
[ ] Test: Adding missing tests or correcting existing tests

What is the current behavior?

Issue #467
What is the new behavior?
Added:

w_overloaded utility in system module.
w_flags utility in system module.
quic internals:

w_raw_tag and w_raw_access
a singleton-style factory method to get quic api table in w_msquic_api.

quic base datatypes:

common enum flags.
QUIC_ADDRESS as w_address.
QUIC_STATUS as w_status and w_status_code.
QUIC_SETTINGS as w_settings.
QUIC_NEW_CONNECTION_INFO as w_new_connection_info.
QUIC_REGISTRATION_CONFIG as w_registration_config.
QUIC_CREDENTIAL_CONFIG as w_credential_config.

Does this Pull Request introduce a breaking change?

[ ] Yes
[x] No

Other information
Closes #467

NOTE: github doesn't have merge dependencies, but this merge must be done after #473 PR.

NOTE: github doesn't have merge dependencies, but this merge must be done after #473 PR.

it's now resolved.


Problem with contract calls after version update

Do you want to request a feature or report a bug?
Report a bug
What is the current behavior?
When some event triggers a contract call it spend very long time (2 to 5 minutes). The event doesn't appears in the logs of its respective block.
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem.
I deployed 2 graph nodes (to load-balance them) in July. Some days ago I had to restart one of the servers containing one node. As I restarted the server I had to restart the docker-compose container containing the graph node. After that when some event triggers a contract call it spends a long time until the info in the subgraph is updated (2 to five minutes). Maybe the problem is with versions...my subgraphs were written with "@graphprotocol/graph-cli": "0.17.1" and "@graphprotocol/graph-ts": "0.17.0". As I restarted the graph node it updated to v.0.19.2 so maybe this is producing some unexpected behaviour.
I tried launching everything in a new server and same behaviour is observed.
EDIT: it seems the reason is the docker image of graph-node. I searched for the sha256 digest of the graph-node I had working correctly, then I searched for the tag of this sha256 digest and modified the docker-compose.yml file of the graph-node working bad and now it is updating info of contract calls on time (few seconds). Although it's working fine I would like to know the reason so I don't depend on a certain image.
Any help is appreciated. Thanks in advance.

@gperezalba Contract calls were switched to be made by block hash, utilizing EIP-1898. It may be that EIP-1898 calls are slower to process, if you're using the services of an Ethereum node provider, please check with them if there is a reason why EIP-1898 calls by hash would be slower than calls by number.

@leoyvens I'm almost sure this is the reason...I'm working with my own node because I'm running graph for a custom chain. I use parity and the version I'm running seems doesn't accept blockHash as a param. When I try any "eth_get..." RPC method it shows an error with message: "Invalid params: invalid type: map, expected a block number or 'latest', 'earliest' or 'pending'.".
So taking into account that right now I cant update parity version...what can I do in Graph? I imagine that when graph-node cant call using blockHash it changes to use blockNumber/"latest" again...isn't it? Is there any way I can force the usage of blockNumber or "latest"?
Thanks :)

@gperezalba you can set the GRAPH_ETH_CALL_BY_NUMBER environment variable. This may lead to inconsistencies in the data, and it might not be supported forever. But it's there to go around existing limitations in the EIP-1898 implementation in Ethereum nodes.

@leoyvens I've tried using v.0.19.2 with GRAPH_ETH_CALL_BY_NUMBER setted to null or to 'latest' and it isn't working. I've checked the releases and I've found you included the calls by blockHash in v.0.19.0 so tried using v0.18.0 and doesn't work...I only can use graphprotocol/graph-node:8c54d02 dockerHub version to make it work (note it was relased 2 months after v0.18.0).
The best would be to make it work with last version, but there must be something else appart from set GRAPH_ETH_CALL_BY_NUMBER (or maybe I setted it to a wrong value).

I had the same issue, using graph-node docker instance and an OpenEthereum node, and setting GRAPH_ETH_CALL_BY_NUMBER did the trick, thanks.


Benchmarks fail for the gpt-3.5-turbo model family

Hi Josh,
thanks for this awesome project :tada:.
Some observations from running python main.py --sourcedir ../benchmarks/flask-nodejs/source --targetlang nodejs --model gpt-3.5-turbo-16k --temperature 0:

The Dockerfile is already not generated correctly. It just contains one line named CODE. This is probably due to the instructions in p4_output_formats/single_file.
Internal dependency resolve of benchmarks/flask-nodejs/source/db.py is stuck in an infinite loop cause the output of the LLM is [db.py] again.

Perhaps this can be fixed with a lot of prompt engineering but as of now I'd probably communicate gpt-3.5-turbo is not supported. Wdyt?
Also, you could easily check that file x isn't in the list of internal dependencies of file x to fix getting stuck in an infinite loop. Happy to add a PR for this.

I'll add this to the readme. Indeed, 3.5 is much weaker at programming so this behavior isn't unexpected.
Interesting that you're finding an infinite loop, feel free to submit a PR and I'll review. Thanks!


"suplemon.config - INFO - Failed to load config file" log on close

Anytime I edit some file with suplemon (best CLI text editor!), this message appears in logs:

2017-09-20 14:49:56,142 - suplemon.config - INFO - Failed to load config file '/Users/user/.config/suplemon/suplemon-config.json'.

It happens both on MacOSX and Debian - I tried to create an empty file and also put an empty JSON in it {} but the message is still here:
$ cat $HOME/.config/suplemon/suplemon-config.json
{}%
$ suplemon $HOME/.config/suplemon/suplemon-config.json
2017-09-20 14:49:56,142 - suplemon.config - INFO - Failed to load config file '/Users/user/.config/suplemon/suplemon-config.json'.

On MacOSX I'm running suplemon 0.1.61 installed via pip3.

Thanks for reporting. Your config seems to be correct. I'll look into this hopefully today.

I'd overlooked that an empty dict is Falsy in Python. It's now fixed in the dev branch and I'll release a new version in the near future.


Synchronize actor start up in lib.rs

Currently main Iroha actors start asynchronously - meaning when the method start is called it spawns a new task. Therefore several actor's start up code runs in parallel. This leads to the following problems:

Actors can sometimes subscribe to messages later then they are sent. (Example Kura Init message to Sumeragi)
Some things like Torii should only be started when Sumeragi is listening to messages and is fully initialized. So that health endpoint is only available when Sumeragi is ready to receive messages.

First noticed in #1348


Windows containers in Kubernetes

I am trying to run my docker windows IIS image which is running perfectly with docker but I want to use kubernetes for the orchestration part. Is there anything that I can do to attain it straight away?
I tried the to do so with the help kubernetes documentation(https://kubernetes.io/docs/concepts/windows/user-guide/) & below template
I am trying to run my docker windows IIS image which is running perfectly with docker but I want to use kubernetes for the orchestration part. Is there anything that I can do to attain it straight away?
I tried the to do so with the help kubernetes documentation(https://kubernetes.io/docs/concepts/windows/user-guide/) & below template : -

apiVersion: v1
kind: Service
metadata:
name: win-webserver
labels:
app: win-webserver
spec:
ports:
# the port that this service should serve on
- port: 80
targetPort: 80
selector:
app: win-webserver
type: NodePort
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: win-webserver
name: win-webserver
spec:
replicas: 2
selector:
matchLabels:
app: win-webserver
template:
metadata:
labels:
app: win-webserver
name: win-webserver
spec:
containers:
- name: windowswebserver
image: mcr.microsoft.com/windows/servercore:ltsc2019
command:
- powershell.exe
- -command
- "<#code used from https://gist.github.com/19WAS85/5424431#> ; $$listener = New-Object System.Net.HttpListener ; $$listener.Prefixes.Add('http://:80/') ; $$listener.Start() ; $$callerCounts = @{} ; Write-Host('Listening at http://:80/') ; while ($$listener.IsListening) { ;$$context = $$listener.GetContext() ;$$requestUrl = $$context.Request.Url ;$$clientIP = $$context.Request.RemoteEndPoint.Address ;$$response = $$context.Response ;Write-Host '' ;Write-Host('> {0}' -f $$requestUrl) ;  ;$$count = 1 ;$$k=$$callerCounts.Get_Item($$clientIP) ;if ($$k -ne $$null) { $$count += $$k } ;$$callerCounts.Set_Item($$clientIP, $$count) ;$$ip=(Get-NetAdapter | Get-NetIpAddress); $$header='Windows Container Web Server' ;$$callerCountsString='' ;$$callerCounts.Keys | % { $$callerCountsString+='IP {0} callerCount {1} ' -f $$ip[1].IPAddress,$$callerCounts.Item($$_) } ;$$footer='' ;$$content='{0}{1}{2}' -f $$header,$$callerCountsString,$$footer ;Write-Output $$content ;$$buffer = [System.Text.Encoding]::UTF8.GetBytes($$content) ;$$response.ContentLength64 = $$buffer.Length ;$$response.OutputStream.Write($$buffer, 0, $$buffer.Length) ;$$response.Close() ;$$responseStatus = $$response.StatusCode ;Write-Host('< {0}' -f $$responseStatus)  } ; "
nodeSelector:
kubernetes.io/os: windows
but error: above template has error 0/1 nodes are available: 1 node(s) didn't match Pod's node affinity/selector. preemption: 0/1 nodes are available: 1 Preemption is not helpful for scheduling

/kind support

/retitle Advice on using Windows containers in Kubernetes

@Vipul2052
I hope that you are using a windows worker node for running that container. You can either add the kubernetes.io/os: windows label to your windows worker node. Or remove the following part from the yaml if you are using only windows worker node/nodes.
     nodeSelector:
      kubernetes.io/os: windows

Per https://github.com/kubernetes/website/issues/43304#issuecomment-1745225699 GitHub is not the right place for support queries (however, suggestions on improving the documentation are most welcome - you could open a new feature request if you have an idea about making the docs better).
/close not-planned


Suggest treat math mode as text block not code block

Description
Suggest treat math mode as text block not code block, i.e. require prefix functions and variables with hashtags. This has the following advantages:

Write $ax_1$ to get ax₁, no longer report unknown variable ax, for complex formulas it is inconvinient to put space between each symbols.
Support unicode symbols such as ·×÷±≠𝘈𝗔𝘼𝔸𝓐㎝² like KaTex with the following benefits: ➀The source code is very readable; ➁No need to remember a long list of identifies of operators and symbols.
Make the whole typst language more consistent.

Use Case
Treat math mode as text block, then the following code will directly get expected result.

$ax_1+bx_2+cx_3=0$
$a·b$

what does (2) mean? i think they are already supported

for this case, add a space around the dot can make the compiler happy

It is less common to access variables in math formulas, for mat, sqrt, frac et cetera prefex with # looks better.

maybe! it depends. also the #-prefix sounds very like the \ in LaTeX 😂

It was a conscious design decision to not require hashes everywhere and it is one of the main differentiators from LaTeX math. The tradeoff is that it needs a few extra spaces, but note that TeX also needs a space between a backslash command and a letter.
Moreover hashes would come with the extra problem that they usually go into full-on code mode, so $#frac(x^2)$ would be a syntax error and $#frac[x^2]$ would have x^2 as plain text. While this could of course be changed, this would introduce inconsistency.
Unicode is already supported but in my experience so far most people prefer writing their math in ASCII.

how to remove the space between $\pi$ and $\eta$? $pi\eta$ will cause an error.

I dont see such space e^(pi eta). Also, how is this related to this issue?


executing the wrong block on template import

I'm getting this traceback:
Traceback (most recent call last):
  File "/home/watt/src/dawkins/web.py", line 70, in process
    content = env.get_template(rsp[0]).render(**rsp[1])
  File "/usr/lib64/python2.7/site-packages/jinja2/environment.py", line 894, in render
    return self.environment.handle_exception(exc_info, True)
  File "/home/watt/src/asimov/templates/reports/symbol.html", line 2, in top-level template code
    {% from "reports/contracts.html" import condfmt with context %}
  File "/usr/lib64/python2.7/site-packages/jinja2/environment.py", line 938, in make_module
    return TemplateModule(self, self.new_context(vars, shared, locals))
  File "/usr/lib64/python2.7/site-packages/jinja2/environment.py", line 994, in __init__
    self._body_stream = list(template.root_render_func(context))
  File "/home/watt/src/asimov/templates/reports/contracts.html", line 4, in top-level template code
    {% if val is none %}{% else %}{{ fmt|format(val) }}{% endif %}
  File "/home/watt/src/asimov/templates/chrome.html", line 89, in top-level template code
    {% block sections %}{% endblock %}
  File "/home/watt/src/asimov/templates/reports/contracts.html", line 45, in block "sections"
    {% elif info.delta > 0 %}
UndefinedError: 'dict object' has no attribute 'delta'

contracts.html and symbol.html are independent templates, both extending the same root template (chrome.html). symbol.html has this:
{% from "reports/contracts.html" import condfmt with context %}

Both also override the same general block, called "sections". However, the code referenced in the traceback is in the sections block in contracts.html, which shouldn't be called at all! Only the sections block in symbol.html should be executed, with the macro from contracts.html.

For me that behavior looks quite expected. Look at following statement:
{% from "macro" import y %}

Here you are loading the template "macro" and add the Macro called "y" to the current context. Therefore the code of the Template "macro" is executed. However that template does not only contain macros, but also a block called "x", that is executed as the template is loaded. And the code in that block tries to access the variable "z" which is not defined.
If you wonder why "z" is not defined, even though you have passed it to the context, when rendering the template called "test", that is because of the context used to render the template "test" is not passed to the templates you import Macros from, unless you specifiy with context, like below:
{% from "macro" import y with context %}

I've always seen "block" expressions as a kind of function that gets called after the template has been loaded, not something that gets executed as part of loading the template.

Yes, that is correct. Actually the block is not rendered when the template module is loaded, but when the root render function is called. But when using the import tag, the module is loaded just before the root render function is called. Then the root render function defines the macros in its local scope and adds them to the context. However the root render function also renders the block "x" as defined in the parent template "base" and overridden in the template "macros".

It seems to me like the root render function in an imported template shouldn't be rendering blocks, particularly if the import came with a specific list of macros to import.

I don't agree on that. Jinja2 works much like Python itself does. When you import a module in Python all code that is not wrapped into a function/method, is executed (doesn't matter whether you use the import keyword, the from ... import ... syntax or the execfile() built-in function). So importing macros from a template in jinja2, works the same way as importing functions from a module in Python. That means that all code from the template that is not wrapped into a macro is executed.
If you want to use macros defined in template "A" also in template "B", just move all macros from template "A" into a new  template, that is not rendered, but only used to import macros from. Using the same template as macro library and for directly rendering a certain page, sounds like a bad idea anyway.

I am closing this issue. For reusable macros you really should move them into separate templates.


Following Advanced Installation

Description
A clear and concise description of what is missing, incorrect, or needs clarification.
Proposed location for change
A link or description of where, in your opinion, this change would best fit in our current documentation.
Additional context
Any relevant links or other information to justify this change.

Following Advanced Installation, cos I've got laravel 5.7 already installed
I get as far as:
php artisan vendor:publish --provider=VoyagerServiceProvider
php artisan vendor:publish --provider=ImageServiceProviderLaravel5
From my root dir
Then ran composer update
Documentation stops there!
What do I do next?.

Implemented in #3909 commit https://github.com/the-control-group/voyager/pull/3909/commits/5e23e1c46d21d3b07ad8a5ee8f3fcc5e45b9d0d6.


Remove extra line before formatting group

PR Summary
Fix #11846.
Add newline only before each formatting group except first.
PR Context

PR Checklist

[x] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[x] Summarized changes
[x] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[x] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: or [ WIP ] to the beginning of the title (the WIP bot will keep its status check at Pending while the prefix is present) and remove the prefix when the PR is ready.

Breaking changes

[x] None
OR
[ ] Experimental feature(s) needed

[ ] Experimental feature name(s):

User-facing changes

[x] Not Applicable
OR
[ ] Documentation needed

[ ] Issue filed:

Testing - New and feature

[ ] N/A or can only be tested interactively
OR
[x] Make sure you've added a new test if existing tests do not effectively test the code changed

Tooling

[ ] I have considered the user experience from a tooling perspective and don't believe tooling will be impacted.
OR
[ ] I have considered the user experience from a tooling perspective and enumerated concerns in the summary. This may include:

Impact on PowerShell Editor Services which is used in the PowerShell extension for VSCode (which runs in a different PS Host).
Impact on Completions (both in the console and in editors) - one of PowerShell's most powerful features.
Impact on PSScriptAnalyzer (which provides linting & formatting in the editor extensions).
Impact on EditorSyntax (which provides syntax highlighting with in VSCode, GitHub, and many other editors).

The PR removes first extra empty line - you can see screenshots in related issue.

@SteveL-MSFT @JamesWTruher  Can you update your review?

It would be good to audit the rest of the system. IMO gci still outputs several unnecessary new lines, which makes it too verbose. Clearly this PR is the correct fix, but future exploring this has utility.

@musm If you don't see already opened issues for broken formatting please open new ones.

WIll do, Thanks for this fix!


AzureStack 1.7.2 module installation issue

While customer was installing version 1.7.2, the below error was appearing
The version '0.2.3' of the module 'Azs.Storage.Admin' being installed is not catalog signed. Ensure that the version '0.2.3' of the module 'Azs.Storage.Admin' has the catalog file 'Azs.Storage.Admin.cat' and signed with the same publisher 'CN=Microsoft
Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US' as the previously-installed module 'Azs.Storage.Admin' with version '0.3.1' under the directory 'C:\Program Files\WindowsPowerShell\Modules\Azs.Storage.Admin\0.3.1'. If you still want to install or
update, use -SkipPublisherCheck parameter., update aborted.
Version 1.8.2 was installed, and there is automated script that was installing version 1.7.2, which is not acceptable to be modified by customer to add switch -SkipPublisherCheck, could you help advising why the catalog file is missing , or what is wrong here?

Thanks for the question! We will review and get back to you shortly.

Thank you for your feedback! Since this channel is for driving improvements towards MS Docs, could you provide the URL of the specific documentation that your feedback is applicable to? That way, we are able to make sure your feedback is addressed by the right team.
The best place for specific answers about implementations are going to be the Microsoft Q&A and Stack Overflow forums. We actively look through posts in the forums, and will do our best to get you going in the right direction!

Just checking in. Could you please provide the relevant documentation so we can route this question appropriately?

customer was installing AzureStack module 1.7.2 on VM , which has already 1.8.2 installed. This was required from OEM  to be installed. Customer got above error message which is related to Azs.Storage.Admin module
https://docs.microsoft.com/en-us/powershell/module/azs.storage.admin/?view=azurestackps-2.0.1&viewFallbackFrom=azurestackps-2.5.0

I've opened an issue on the product repo for that module: https://github.com/Azure/azurestack-powershell/issues/51. I've also reached out to the product team directly.
Since it doesn't require changes to the documentation, I do need to close the issue here. However, I do encourage you to subscribe to the issue on the product repo.

@HassanAlmanasrah I wanted to check in and see if the solution posted on the product repo worked for you. If you are able to run commands before the automated script then uninstalling 1.8.2 and deleting the folder in the Powershell directories should resolve the error.
The issue happens only when trying to install 1.7.2 side by side with 1.8.2

With some testing I was able to get it to work this way:
Install-Module -Name AzureStack -RequiredVersion 1.8.2 # Preinstalled version
Get-Module -Name Azs.* -ListAvailable | Uninstall-Module -Force -Verbose -ErrorAction Continue
Remove-Item "C:\Program Files\WindowsPowerShell\Modules\AzureStack" -Recurse -Force
Install-Module -Name AzureStack -RequiredVersion 1.7.2


is a  piknik server running on that host?

hello! I come from china ,and have a local MAC and a remote Linux server.
1 on my MAC,
run:   brew install piknik,
run : piknik-genkeys,
copy client part to ~ /.piknik.toml  such as
Configuration for a client
Connect   = "<IP_ADDRESS>:8075"	# Edit appropriately
Psk       = "7fd5aff6e7b473d3b0d8699923b7133261afff2b635cd20e9624b79eb0a93479"
SignPk    = "f2076dc18a1c24e50d85b95c558d5800079e2c56ac4099bd84c5d26a6933129a"
SignSk    = "a1eee78ef0c77abbcc255376f275afbbc680138d57936122323842e0a6e62073"
EncryptSk = "556ad73c49bc73cd06a3faf18be65ac85f902ed34522438cb7be0c9d73b97c76"

Configuration for a server
Listen = "<IP_ADDRESS>:8075"	# Edit appropriately
Psk    = "7fd5aff6e7b473d3b0d8699923b7133261afff2b635cd20e9624b79eb0a93479"
SignPk = "f2076dc18a1c24e50d85b95c558d5800079e2c56ac4099bd84c5d26a6933129a"
2 on a Linux server,
run :
wget https://github.com/jedisct1/piknik/releases/download/0.9.1/piknik-linux_x86_64-0.9.1.tar.gz,
put the server configuration  part   on  linuxserver: ~ /. piknil. toml,
run : piknik  -server
3 but i get an error:
"is a  piknik server running on that host?"!
4   My English is not very good and I don't quite understand the confitgure of READ.md between mac and linux or windows.
5   May you  release piknik for Android  ?i hope that .

Connect = "<IP_ADDRESS>:8075" # Edit appropriately
You need to replace <IP_ADDRESS> with the server IP address.


[3.2] C#: Fix endless reload loop if project has unicode chars

Backport of #41886 to the 3.2 branch.

Thanks!


Metaschema: error reporting is difficult to understand

Background
With the changes in https://github.com/ocsf/ocsf-schema/commit/3c7ca9216ac5afdf79ac6d27e4b8f88e7c74c32d, the metaschema was updated to refactor it and make it a bit easier to read.  However, this had the side effect of making the error messages more difficult to understand.
To Reproduce
Take the existing schema.  Find an event with any attribute that is marked group: primary and update it so that it also has requirement: optional, which is not allowed.  Run the validator over the schema, and you will see a message like the following:
TESTING: JSON files match their metaschema definitions
   FATAL: File at events/network/tunnel_activity.json does not pass metaschema validation. Error: Unevaluated properties are not allowed ('attributes', 'caption', 'description', 'extends', 'name', 'profiles' were unexpected) at JSON path: '$'

This error message does not point to the issue with the schema.
Notes
I believe this is occurring because the anyOf constraint in the event metaschema is not matching the common event schema"$ref": "common-event-object.schema.json".  Since it does not match, that entire component of the schema is thrown out, and then all attributes from it are treated as unevaluated.

Also cc: @rmouritzen-splunk

The change mentioned was done to make the metaschema more accurate, not more readable. Prior to the change, it was allowing extra properties in certain cases. Changing the metaschema back would be a regression.
About the error message, this is the error messages coming from the jsonschema Python library (https://pypi.org/project/jsonschema/). The library is correctly flagging an error, though. So that's good, at least. From a quick web search, it seems like this is because unevaluatedProperties is a more recent addition to JSON Schema, (though it's from 2019... so about 5 years ago).
This solution comes from this Stack Overflow answer: https://stackoverflow.com/questions/73843324/how-to-merge-two-json-schema-without-additional-properties.
Paths forwards:

Use a different library.
Submit a bug to the jsonschema library.
Change the metaschema JSON Schema so it both flags unexpected properties and gives good error messages. This probably means getting rid of common-event-object.schema.json and explicitly copying these definitions in to the event and object schema definitions. While possible, the duplication creates a maintenance problem.

Suggestions are welcome.
I changed this from a bug to an enhancement since the incorrect JSON is properly being flagged as an error, even though the error message isn't pointing to the root problem.

Also, the rule for Primary and Required can only go in one direction without it being a breaking change:
i.e. A Required attribute must be Primary, but a Primary attribute may be Required or Recommended.  This is because any existing Primary attributes that were not Required cannot be promoted to Required without being a breaking change.
Also, Recommended attributes that are part of a just_one or at_least_one constraint can sometimes be substituted for a single attribute being Required.
For any previous attributes that were Primary and Optional, they should be promoted to Recommended (with, or without a constraint, since technically imposing a constraint, in some cases, may also be breaking).

The change mentioned was done to make the metaschema more accurate, not more readable. Prior to the change, it was allowing extra properties in certain cases. Changing the metaschema back would be a regression.

Thanks for clarifying the intent!  I don't think we should change it back.

I changed this from a bug to an enhancement since the incorrect JSON is properly being flagged as an error, even though the error message isn't pointing to the root problem.

I categorized it as a bug because I consider the ability of the validator to guide folks to the root of the problem an important part of what it does.  In the previous version, using the same reproduction steps it would flag the problem as being with the requirement of the attribute in question.  So even though the validation is better (which is great, and I'm not trying to say otherwise!), I considered it a regression in its reporting.
All that said, the label probably doesn't matter all that much.

Change the metaschema JSON Schema so it both flags unexpected properties and gives good error messages. This probably means getting rid of common-event-object.schema.json and explicitly copying these definitions in to the event and object schema definitions. While possible, the duplication creates a maintenance problem.

As I recall that was the reason I tried this "redefinition" strategy with event https://github.com/ocsf/ocsf-schema/blob/270749264c4c0e2c0b04d2db63fbc684348a9b50/metaschema/event.schema.json#L12-L19, though you are correct that it left object unconstrained.
But maybe there's a better way?  If worst comes to worst, I would trade the duplication for the error messages, personally.  With any luck, the validator should be helpful in flagging issues for schema developers far more often than we modify the metaschema.

If this is problematic for your use-case, we can add an explicit check Python code. There are plenty of those already.
These checks happen in addition to the metaschema JSON Schema validation (as you may know), so there's no reason we can't do both.
If you can highlight the case(s) that you think would really help on top of the metaschema check, we'll get those added.

@alanisaac: Your PR does the trick. I say we use it.


Define Database Schema for user information

Setup a detailed schema to store and get user data including those on user profile, points progress, available quizzes or tasks. Translate the database schema on user information onto a SQLAlchemy database similar to what was done in the registration and login page

Interested

Interested


Supported in Feathers 2?

Since this is the only info I can find regarding Feathers 2 support for this package, I'm guessing it hasn't been updated for F2.
Any additional information available regarding future plans for continuing this, or some specifics on what would need to get updated? I have to start generating Swagger docs more or less immediately, and deciding what path of least resistance is.

Did you get a chance to try if it works? Feathers 2 didn't change dramatically and from what I can tell everything this plugin is using still works the same. That comment was mostly talking about upgrading to the new plugin development infrastructure (including ES6 syntax) and possibly the latest Swagger format (not sure if it changed or if that's even necessary).

I have not tried it. I ran the example which was using something like feathers 1.0.2 (?). Though we've used Swagger for other projects, I was never the one creating the docs, so I'm gonna spend some time looking at the technology separately for now so I can better determine if I want, or see an advantage to mingling the extra info inside the api service handlers.
thanks for the response. And it will be helpful for anyone else wondering the same.

When I used feathers-swagger with feather 2, I follow the documentation to use, but when I visited the petstore.swagger.io and explore local docs, petstore.swagger.io console errors, and swagger is 2.x version.
Do you have any plans to update feathers-swagger? In addition, the feather 3 when released? Thank you, Have a nice day!

:+1:


font(bitter): missing font binaries in v4.5.4

Might be related to #456 and #465.
The font Bitter (https://fonts.google.com/specimen/Bitter) is missing the files/ directory (and font files) in node_modules when installing version 4.5.4

For comparison, the font Nunito (https://fonts.google.com/specimen/Nunito) is not missing this folder in the same version.

End result is my app (gatsby) does not build.

This issue is not present in 4.5.3, which contains the binaries.

Ah yes, I'm aware of the issue. It's an upstream issue of our custom publisher mass-publish. Hopefully I can get a fix for that out tonight when I'm back home.

+1

@napei. @shensven can you please update to the latest update and confirm this is resolved?

the font<EMAIL_ADDRESS>is works for me, the files/ folder is back.

Great. I only pushed out a temporary fix for now (it can happen again) but I'll work on a long term solution now that there's less pressure.
I'll close this issue upon resolution of that.


Have Go Struct functions available in Lua

Hi!
This is very nifty little project! I took a look at this and it sure does have some nifty pieces to glue Go and Lua together.
However, I would like to be able to register a struct and it's functions to be available in Lua as well. Maybe even be able to create a separate table/package for it and so it can be included using require if wanted?
Now, the ctx.LoadFile looked promising, but it doesn't seem to go through the struct's functions to register them under the global name provided in the environment. Or maybe I missed something?
Like so:
var v Vector2
ctx.LoadFile("test.lua", map[string]any{
 "vector2"; &v,
})

Doing this I was hoping the New() and Add(v2 Vector2) that I have added to the Vector2 struct would be available in Lua as well, but they weren't.
So, this didn't work:
local v = vector2.New()
Any chance you can add this functionality or give me some hints on how to add it myself?
Thanks!

After some more digging, it actually seems one can do:
	var v2 Vector2
	var v3 Vector3

	if err := ctx.LoadFile("vector-test.lua", map[string]any{
		"vector2": map[string]any{"New": New2, "object": &v2},
		"vector3": map[string]any{"New": New3, "object": &v3},
	}); err != nil {
		fmt.Printf("%v\n", err)
	}

Which is pretty cool.

The only "ugly" part is the "object" part where that does some magic to make the methods work. The global "object" shouldn't really be used...

Sorry to response your issues. Because I don't know what the implementation detail of New2() and New3(), so I just give the following codes to try to remove the ugly object part:
func New2() *Vector2 {
     return &Vector2{}
}

func New3() *Vector3 {
     return &Vector3{}
}

// --- the lua script loader ---
if err := ctx.LoadFile("vector-test.lua", map[string]any{
		"newVector2": New2,
		"newVector3": New3,
	}); err != nil {
		fmt.Printf("%v\n", err)
}

Now the lua code:
local v1 = newVector2()
...
local v2 = newVector2()
...

Ah, yes. It just works that way too. Pretty cool. Thanks!


Slash/backslash inconsistency

In this particularly confusing context, slash orientation looks much more important and less obvious than it usually is, so I guess this should be a quick, high value improvement.
The reason I didn't open a pull request myself is that as with dozens of other devs out there, I also can't seem to make startingDirectory work, so I don't actually know what the intended syntax is.

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

ID: d972021a-b3db-574c-f5fc-4315b2d7a280
Version Independent ID: e76f9f11-cb0d-95be-7e04-8a9137252e2d
Content: Windows Terminal Troubleshooting
Content Source: TerminalDocs/troubleshooting.md
Product: dev-environment
Technology: windows-terminal
GitHub Login: @cinnamon-msft
Microsoft Alias: cinnamon

"startingDirectory" : "//wsl$/Ubuntu-18.04/home/<my profile>" works for normal wsl paths
"startingDirectory" : "C:\\Windows\\system32" works for /mnt/c/... paths

Thanks for filing this issue @fcfl -- I'm not quite clear what sort of update you're looking for to the docs here. Could you please clarify?

I'm sorry for not following up, Matt, this was a long time ago, when after
5 years with a mac I'd come back to see the state of things in the Windows
world. I gave it an honest shot but turns out it doesn't fit my
professional needs as well, so after 6 months I gave up, don't own a
Windows PC anymore and became a Mac hostage once again :(
I wish success to every contributor here!
On Fri, Aug 27, 2021 at 5:44 PM Matt Wojciakowski @.***>
wrote:

Just tested this syntax again and it looks like what we have in the docs
works fine. However, there is a change coming in the next Windows Terminal
preview release that will affect the WSL starting directory, we will be
adding a note once the preview release drops next week. For the current
stable release, this syntax does seem to be accurate, so closing this
issue. (Please feel welcome to reopen if this does not seem to be the case
or you have more context to add).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/terminal/issues/192#issuecomment-907466118,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEKUZ5BTQUS7WO5OE25LAT3T672MDANCNFSM4T3NEIUA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

--
Francisco Carvalho
+55 81 999747393


[analyzer] a minimal implementation of static graph analyzer

📌 Checklist before creating the PR

[x] I have created an issue for this PR for traceability
[x] The title follows the standard format: [doc/gemini/tensor/...]: A concise description
[x] I have added relevant tags if possible for us to better distinguish different PRs

🚨 Issue number
Fixed #2850
📝 What does this PR do?
I reimplemented the static graph analysis for Colossal-AI. Hope to receive more discussion before the merge. Y'all can refer to
https://github.com/super-dainiu/siu/tree/master/playground and https://github.com/super-dainiu/siu/tree/master/tests for more information. I would push these folders to the main branch later.
💥 Checklist before requesting a review

[x] I have linked my PR to an issue (instruction)
[x] My issue clearly describes the problem/feature/proposal, with diagrams/charts/table/code if possible
[x] I have performed a self-review of my code
[x] I have added thorough tests.
[x] I have added docstrings for all the functions/methods I implemented

⭐ Do you enjoy contributing to Colossal-AI?

[x] 🌝 Yes, I do.
[ ] 🌚 No, I don't.

Tell us more if you don't enjoy contributing to Colossal-AI.

Code factor has prompted several issues, please fix.
https://www.codefactor.io/repository/github/hpcaitech/colossalai/pull/2852

hihi, I add some test for analyzer @YuliangLiu0306

hihi, I add some test for analyzer @YuliangLiu0306

You need to rebase your code to fix the CI issue.

The problem is CI cannot install Colossal-AI

now is good @YuliangLiu0306


json export

Hi Phil,
Many thanks for this.  I've never used Python before but have just got it up and running using PythonAnywhere.
Would it be possible to get an option to export as a .json file?
Also a way to specify multiple types in one command. So I can run a single command daily which will update the .ics, .kml and json files.
Many thanks,
Neil

That should be do-able, although I can't promise when I'll get round to it!

Thanks!  Not a problem and absolutely no rush! :-)


regex 0.2

0.2.0
This is a new major release of the regex crate, and is an implementation of the
regex 1.0 RFC.
We are releasing a 0.2 first, and if there are no major problems, we will
release a 1.0 shortly. For 0.2, the minimum supported Rust version is
1.12.
There are a number of breaking changes in 0.2. They are split into two
types. The first type correspond to breaking changes in regular expression
syntax. The second type correspond to breaking changes in the API.
Breaking changes for regex syntax:

POSIX character classes now require double bracketing. Previously, the regex
[:upper:] would parse as the upper POSIX character class. Now it parses
as the character class containing the characters :upper:. The fix to this
change is to use [[:upper:]] instead. Note that variants like
[[:upper:][:blank:]] continue to work.
The character [ must always be escaped inside a character class.
The characters &, - and ~ must be escaped if any one of them are
repeated consecutively. For example, [&], [\&], [\&\&], [&-&] are all
equivalent while [&&] is illegal. (The motivation for this and the prior
change is to provide a backwards compatible path for adding character class
set notation.)
A bytes::Regex now has Unicode mode enabled by default (like the main
Regex type). This means regexes compiled with bytes::Regex::new that
don't have the Unicode flag set should add (?-u) to recover the original
behavior.

Breaking changes for the regex API:

find and find_iter now return Match values instead of
(usize, usize). Match values have start and end methods, which
return the match offsets. Match values also have an as_str method,
which returns the text of the match itself.
The Captures type now only provides a single iterator over all capturing
matches, which should replace uses of iter and iter_pos. Uses of
iter_named should use the capture_names method on Regex.
The replace methods now return Cow values. The Cow::Borrowed variant
is returned when no replacements are made.
The Replacer trait has been completely overhauled. This should only
impact clients that implement this trait explicitly. Standard uses of
the replace methods should continue to work unchanged.
The quote free function has been renamed to escape.
The Regex::with_size_limit method has been removed. It is replaced by
RegexBuilder::size_limit.
The RegexBuilder type has switched from owned self method receivers to
&mut self method receivers. Most uses will continue to work unchanged, but
some code may require naming an intermediate variable to hold the builder.
The free is_match function has been removed. It is replaced by compiling
a Regex and calling its is_match method.
The PartialEq and Eq impls on Regex have been dropped. If you relied
on these impls, the fix is to define a wrapper type around Regex, impl
Deref on it and provide the necessary impls.
The is_empty method on Captures has been removed. This always returns
false, so its use is superfluous.
The Syntax variant of the Error type now contains a string instead of
a regex_syntax::Error. If you were examining syntax errors more closely,
you'll need to explicitly use the regex_syntax crate to re-parse the regex.
The InvalidSet variant of the Error type has been removed since it is
no longer used.
Most of the iterator types have been renamed to match conventions. If you
were using these iterator types explicitly, please consult the documentation
for its new name. For example, RegexSplits has been renamed to Split.

A number of bugs have been fixed:

BUG #151:
The Replacer trait has been changed to permit the caller to control
allocation.
BUG #165:
Remove the free is_match function.
BUG #166:
Expose more knobs (available in 0.1) and remove with_size_limit.
BUG #168:
Iterators produced by Captures now have the correct lifetime parameters.
BUG #175:
Fix a corner case in the parsing of POSIX character classes.
BUG #178:
Drop the PartialEq and Eq impls on Regex.
BUG #179:
Remove is_empty from Captures since it always returns false.
BUG #276:
Position of named capture can now be retrieved from a Captures.
BUG #296:
Remove winapi/kernel32-sys dependency on UNIX.
BUG #307:
Fix error on emscripten.

:pushpin: Commit ac3ab6d has been approved by BurntSushi

:hourglass: Testing commit ac3ab6d with merge 52fdae7...

:sunny: Test successful - status-appveyor, status-travis
Approved by: BurntSushi
Pushing 52fdae7169ec619530985a019184319ac4bbee5a to master...


Simplify & standardize how to add custom blocks to the theme scaffold

Is your enhancement related to a problem? Please describe.

Currently, the way to add a new block is rather cumbersome. You have to first create a new JS entry point in the package.json file like so:
{
  "10up-toolkit": {
    "entry": {
      "example-block": "./includes/blocks/example-block/index.js"
    }
  }
}

Next you have to require the PHP file like so:
require_once TENUP_THEME_BLOCK_DIR . '/example-block/register.php';

// Call block register functions for each block.
Example\register();

Describe the solution you'd like

I think both of these steps could be skipped if we are able to automatically create an entry point for every folder inside the blocks directory and also use autoloader to load all the PHP register.php files inside the individual block folders.

I think this is relevant: https://github.com/10up/10up-toolkit/issues/28 - not sure where would be the best place to have it, by I think here in the wp-scaffold would make sense.
There is also a PR already open for this: https://github.com/10up/10up-toolkit/pull/29 which highlights an important issue: "The templates are managed in this repo and we'll need to keep them up to date as GB moves forward."

I want to add some more thoughts to this as I think the flow for blocks can be greatly improved and streamlined. I have also opened up an accompanying issue on the 10up-tookit repository (10up/10up-toolkit#130) that would allow us to skip adding the scripts to the entrypoint of webpack and needing to register the files.
The next step then would be to streamline the PHP side of things to make that more straightforward.
Essentially I'd like to abstract the PHP registration of blocks completely from the developer so that all they have to do is create a folder containing a block.json file and if they want to use dynamic rendering they need to include a template.php file. The rest should be handled by the theme automatically. That means there needs to be some step happening that is looking for all folders containing block.json files and automatically registers these blocks using the register_block_type function. If the folder containing the block.json file also contains a template.php file the render_callback should be automatically added and load the template.php file.
Additionally, the render_callback should ensure that if a script or viewScript with the name of the block is registered that should be enqueued on the page when this block is loaded. This step already happens automatically for static blocks but PHP rendered blocks need to manually enqueue the already automatically registered script.
The end goal for the developer experience really is that in order to add a new block all you need to do is add a folder containing a block.json file that intern manages all the script dependencies of that block and a template.php file is the block should be rendered dynamically.
Once we are at that point it will also become much easier to follow through on the suggestion from @xavortm here of including a scaffolding command because that scaffolding command wouldn't even need to manipulate existing files but just add a new folder.

I've added an initial implementation of how this could work in #78. I am not certain that it is the most performant & efficient way of achieving the goal but it serves as a proof of concept for how this could be done.

Once this task and its parter on the 10up-toolkit repo (https://github.com/10up/10up-toolkit/pull/132) are done this here: https://github.com/WordPress/gutenberg/pull/39049 is a really cool exploration into making it possible to use @wordpress/create-block to add a new block to an existing project. And since blocks will be completely self-contained by that point this can be a great efficiency helper.


Add delete to rejected expense action menu

It would be nice to access the delete action on this menu

I actually started working on this a few weeks ago in https://github.com/opencollective/opencollective-frontend/pull/6813. I paused it because there were some refactors needed, but the feature mostly works so it shouldn't be too complex to finish it.


Foundry Forge Create Contract Fix

Description:
For compatibility with foundry forge command, we are modifying the block response to have withdrawalsRoot as a long 32Bytes hex 0 and signed transactions to have both yparity and v values.
Changes to the unit tests that were affected
Related issue(s): #1797
Fixes #1824, #1800
Notes for reviewer:

After the Fix:

Checklist

[ ] Documented (Code comments, README, etc.)
[x] Tested (unit, integration, etc.)

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

Comparison is base (b4d80db) 77.72% compared to head (402cc82) 77.71%.
 Consider uploading reports for the commit 7f5d58e to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1834      +/-   ##
==========================================
- Coverage   77.72%   77.71%   -0.01%
==========================================
  Files          40       40
  Lines        3039     3038       -1
  Branches      608      608
==========================================
- Hits         2362     2361       -1
  Misses        491      491
  Partials      186      186

Files
Coverage Δ

packages/relay/src/lib/model.ts
83.50% <100.00%> (-0.17%)
:arrow_down:

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


Create a #contributing or #documentation channel

Discussion thread: https://discordapp.com/channels/673071773700587521/673076360888975363/690910221928759326
Discussion content attached.
SuperMemo.wiki - sma-ideas [673076360888975363] (after 2020-03-21).zip

@supermemo/documentation

Possibly related https://github.com/supermemo/Chat/issues/4