Better error handling in profile creation save page

Just tested this and the save loader never finished because it could not connect to the Mutiny relay (might be a victim of ReplyGuy). There needs to be some time-out, re-try, fallback relays, etc.
Still would be great to have a Nosta relay at some point for that fallback.

Confirmed that the blastr relay was quietly shut down by Mutiny. Need to remove that from the application ASAP.

I updated the list of default relays in this PR. Also using the Damus relay instead of the now-dead Blastr one. Really need to consider setting up my own Nosta relays for some type of trusted infrastructure.


bugfix: fix SQLServer-related SQL error when using database of SQLServer

[x] I have registered the PR changes.

Ⅰ. Describe what this PR did
1.Fix the failure of seata server's starting because of SQL error in org.apache.seata.core.store.db.sql.lock.SqlServerLockStoreSql#INSERT_LOCK_SQL_SQLSERVER when using database SQLServer;
2.Fix the failure of querying TransactionInfo and GlobalLockInfo at seata server console when using database SQLServer;
Ⅱ. Does this pull request fix one issue?

Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

@funky-eyes As your wish, I have merged the first two issues and then created a separate PR for them. Please help me review and merge it. Thanks a bunch!

From #6477

@funky-eyes As your wish, I have fixed all issures mentioned above. Please help me review and merge it again! Thanks a million!

Please format the code blocks related to your changes to ensure that CI checks pass the code style validation

Done! Please review again! Thank you so much!


Can we add the option to copy the moves from the right side pane?

That's a good suggestion. On the right hand side pane, i feel there are lots of improvements we can have.

Currently we are not following the widely used chess notation for movements which also has details on which piece was used. Ideally we should record the moves over that.

Also we can show maybe in the pane the images of the pieces that are capture for white and black.

Also we can add a copy moves button inside the info panel. Moves is already present in a list , we just need to move it to clipboard (https://github.com/asweigart/pyperclip) . I am guessing that should work.


Document differences between dev and dev-test

resolution_fixed   |    by<EMAIL_ADDRESS>

Issue migrated from trac:73 at 2024-01-31 17:59:20 +1100

ibc599 changed status from new to assigned

ibc599 changed reviews which not transferred by tractive

ibc599 changed owner from `` to Admin

<EMAIL_ADDRESS>changed status from accepted to assigned

<EMAIL_ADDRESS>changed owner from Admin to pfu599

<EMAIL_ADDRESS>changed owner from pfu599 to ibc599

<EMAIL_ADDRESS>changed status from assigned to accepted

<EMAIL_ADDRESS>commented

Differences documented here:
https://trac.nci.org.au/trac/access/wiki/AccessdevTestDiff
Ian, can you add to point 3, is there a way to view the production rosie database from accessdev-test

<EMAIL_ADDRESS>commented

Milestone Future deleted

<EMAIL_ADDRESS>commented

Without a floating IP you also can't access your os-home NFS exports nor gdata (the later is restricted to accessdev(-test)?.nci.org.au only anyway).
I don't see any reason for not using SSL in non-production mode; why not use a self-signed certificate in that case?

<EMAIL_ADDRESS>removed milestone (was Future)

<EMAIL_ADDRESS>commented

Thanks Chris, I've updated the page with the note about the floating IP addresses.
I'm not sure about the SSL stuff, maybe Scott can comment.

<EMAIL_ADDRESS>commented

It's been a while since I looked at the SSL module. No problem with it being enabled for non-production VMs, it would just need to be pointed to a self-signed certificate (or generate one).
Otherwise it would be worthwhile to mention how to switch between production & test mode

<EMAIL_ADDRESS>changed resolution from `` to fixed

<EMAIL_ADDRESS>changed status from assigned to closed


Connection timeout

Hi Kikovalle,
First of all, thanks heap for sharing your API. It's a big help for us.
I created a Java executable with your API, which basically copies binary files from a Linux server and uploads to the designated SharePoint directory. A shell batch script calls the Java executable a daily base.
It worked as expected when I ran the shell script from my work laptop (windows 10) for testing.
It uploaded the files in my laptop to the SharePoint directory.
However, I got the connection timeout error as below when I ran the shell script from a linux server.
I used the same files in the directory in the Linux server.
[main] ERROR xxx.xxx.xx.ict.sharepointupload.UploadFile - I/O error on POST request for https://login.microsoftonline.com/extSTS.srf: Connect to login.microsoftonline.com:443 [login.microsoftonline.com/xx.xxx.14.163, login.microsoftonline.com/xx.xxx.142.166, login.microsoftonline.com/xx.xxx.142.165, login.microsoftonline.com/xx.xxx.142.164, login.microsoftonline.com/xx.xxx.14.162, login.microsoftonline.com/xx.xxx.142.167, login.microsoftonline.com/xx.xxx.14.160, login.microsoftonline.com/xx.xxx.14.164] failed: Connection timed out (Connection timed out); nested exception is org.apache.http.conn.HttpHostConnectException: Connect to login.microsoftonline.com:443 [login.microsoftonline.com/xx.xxx.14.163, login.microsoftonline.com/xx.xxx.142.166, login.microsoftonline.com/xx.xxx.142.165, login.microsoftonline.com/xx.xxx.142.164, login.microsoftonline.com/xx.xxx.14.162, login.microsoftonline.com/xx.xxx.142.167, login.microsoftonline.com/xx.xxx.14.160, login.microsoftonline.com/xx.xxx.14.164] failed: Connection timed out (Connection timed out)
can you please shed some light on this error?

Hello
The connect timeout exception doesn't seem to be related to the API itself. Looks like the linux machine where you are having the issue doesn't have access to internet to do the login process against login.microsoftonline.com SSO.
The code works fine in linux as i use linux as my base operating system.
Have you tested that you have access to the domain from the linux machine?
It can be a firewall policy that is not allowing the server to open external URLs for security, try making a ping to the domain and if not you may have to speak with the systems department of your company to review the firewall rules and allow connectios to login.microsoftonline.com from the linux server

Hi Kilovalle,
Thanks for your quick response. As you mentioned, the issue was related to our proxy setup that wasn't ready for the testing. All looks good now. Many thanks again.


How to extend the catalog to include by example Spring Boot component

It is not possible to create a spring-boot component as the list returned by the catalog doesn't include it
/Users/dabou/Code/go-workspace/bin/odo catalog list
The following components can be deployed:
- dotnet
- httpd
- nginx
- nodejs
- perl
- php
- python
- ruby
- wildfly

What should we do to include it and extend the catalog ?

On minishift = ocp 3.9 the Red Hat OpenJDK1.8 S2I image is not added by default
If I create the following s2i imagestream, them odo can list within the catalog
apiVersion: image.openshift.io/v1
kind: ImageStream
metadata:
  name: openjdk18
  namespace: openshift
spec:
  lookupPolicy:
    local: false
  tags:
    - annotations:
        description: >-
          Build and run Java Microservices such as Spring Noot
        iconClass: icon-spring
        openshift.io/display-name: OpenJDK 1.8 (Latest)
        openshift.io/provider-display-name: 'Red Hat, Inc.'
        tags: 'builder,java,spring-boot'
      from:
        kind: DockerImage
        name: registry.access.redhat.com/redhat-openjdk-18/openjdk18-openshift
      generation: 1
      importPolicy: {}
      name: latest
      referencePolicy:
        type: Source

Currently odo just lists s2i builder images from openshift namespace.
We are currently looking into what would be the best way to extend this to include more images and support more stuff like for example service from Service Catalog.

It is then important that the output of the command -h details that for the moment, we recuperate the imageStreams installed under the openshift namespace where annotation builder exists.
Do we have to open a ticket under origin project to request to add the missing openjdk-1.8 imageStream as defined under this ticket as it includes the builder annotation ? @kadel
Remark : iconClass should be changed for the is definition and description improved, ....

FYI: The imageStream that we can download and install from the red hat registry doesn't include the required annotations !!
oc import-image my-redhat-openjdk-18/openjdk18-openshift --from=registry.access.redhat.com/redhat-openjdk-18/openjdk18-openshift --confirm
The import completed successfully.

Name:                   openjdk18-openshift
Namespace:              ocp-odo-build-install
Created:                Less than a second ago
Labels:                 <none>
Annotations:            openshift.io/image.dockerRepositoryCheck=2018-06-05T12:48:28Z
Docker Pull Spec:       <IP_ADDRESS>:5000/ocp-odo-build-install/openjdk18-openshift
Image Lookup:           local=false
Unique Images:          1
Tags:                   1

latest
  tagged from registry.access.redhat.com/redhat-openjdk-18/openjdk18-openshift

  * registry.access.redhat.com/redhat-openjdk-18/openjdk18-openshift@sha256:aa51a265d9a1650c7371879b3f58b40987675aa80a589cafcadec360a71e63a6
      Less than a second ago

Image Name:     openjdk18-openshift:latest
Docker Image:   registry.access.redhat.com/redhat-openjdk-18/openjdk18-openshift@sha256:aa51a265d9a1650c7371879b3f58b40987675aa80a589cafcadec360a71e63a6
Name:           sha256:aa51a265d9a1650c7371879b3f58b40987675aa80a589cafcadec360a71e63a6
Created:        Less than a second ago
Annotations:    image.openshift.io/dockerLayersOrder=ascending
Image Size:     175.1MB (first layer 74.92MB, last binary layer 26.04MB)
Image Created:  2 weeks ago
Author:         <none>
Arch:           amd64
Command:        /usr/local/s2i/run
Working Dir:    /home/jboss
User:           185
Exposes Ports:  8080/tcp, 8443/tcp, 8778/tcp
Docker Labels:  architecture=x86_64
                authoritative-source-url=registry.access.redhat.com
                build-date=2018-05-21T20:28:31.352689
                com.redhat.build-host=osbs-cpt-011.ocp.osbs.upshift.eng.rdu2.redhat.com
                com.redhat.component=redhat-openjdk-18-openjdk18-openshift-container
                description=Source To Image (S2I) image for Red Hat OpenShift providing OpenJDK 1.8
                distribution-scope=public
                io.fabric8.s2i.version.jolokia=1.5.0-redhat-1
                io.fabric8.s2i.version.maven=3.5
                io.k8s.description=Platform for building and running plain Java applications (fat-jar and flat classpath)
                io.k8s.display-name=Java Applications
                io.openshift.s2i.destination=/tmp
                io.openshift.s2i.scripts-url=image:///usr/local/s2i
                io.openshift.tags=builder,java
                maintainer=Cloud Enablement Feedback<EMAIL_ADDRESS>                name=redhat-openjdk-18/openjdk18-openshift
                org.concrt.version=1.4.1
                org.jboss.deployments-dir=/deployments
                org.jboss.product=openjdk
                org.jboss.product.openjdk.version=1.8.0
                org.jboss.product.version=1.8.0
                release=8
                summary=Source To Image (S2I) image for Red Hat OpenShift providing OpenJDK 1.8
                url=https://access.redhat.com/containers/#/registry.access.redhat.com/redhat-openjdk-18/openjdk18-openshift/images/1.3-8
                vcs-ref=18a28d792d65dd935b3ed586ae429a7b2f3b1c3f
                vcs-type=git
                vendor=Red Hat, Inc.
                version=1.3
Environment:    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/s2i
                container=oci
                JBOSS_IMAGE_NAME=redhat-openjdk-18/openjdk18-openshift
                JBOSS_IMAGE_VERSION=1.3
                HOME=/home/jboss
                JAVA_HOME=/usr/lib/jvm/java-1.8.0
                JAVA_VENDOR=openjdk
                JAVA_VERSION=1.8.0
                JAVA_DATA_DIR=/deployments/data
                JOLOKIA_VERSION=1.5.0
                AB_JOLOKIA_PASSWORD_RANDOM=true
                AB_JOLOKIA_AUTH_OPENSHIFT=true
                AB_JOLOKIA_HTTPS=true
                MAVEN_VERSION=3.5

openjdk18-openshift   <IP_ADDRESS>:5000/ocp-odo-build-install/openjdk18-openshift   latest    Less than a second ago
 dabou@dabou  ~/Code/go-workspace/src/istio.io/istio/install/ansible  ➦ 6f9f420f0  oc get is/openjdk18-openshift -o yaml
apiVersion: image.openshift.io/v1
kind: ImageStream
metadata:
  annotations:
    openshift.io/image.dockerRepositoryCheck: 2018-06-05T12:48:28Z
  creationTimestamp: 2018-06-05T12:48:28Z
  generation: 1
  name: openjdk18-openshift
  namespace: ocp-odo-build-install
  resourceVersion: "23911"
  selfLink: /apis/image.openshift.io/v1/namespaces/ocp-odo-build-install/imagestreams/openjdk18-openshift
  uid: bea8f314-68be-11e8-bd00-02771de1bd94
spec:
  lookupPolicy:
    local: false
  tags:
  - annotations: null
    from:
      kind: DockerImage
      name: registry.access.redhat.com/redhat-openjdk-18/openjdk18-openshift
    generation: 1
    importPolicy: {}
    name: latest
    referencePolicy:
      type: Source
status:
  dockerImageRepository: <IP_ADDRESS>:5000/ocp-odo-build-install/openjdk18-openshift
  tags:
  - items:
    - created: 2018-06-05T12:48:28Z
      dockerImageReference: registry.access.redhat.com/redhat-openjdk-18/openjdk18-openshift@sha256:aa51a265d9a1650c7371879b3f58b40987675aa80a589cafcadec360a71e63a6
      generation: 1
      image: sha256:aa51a265d9a1650c7371879b3f58b40987675aa80a589cafcadec360a71e63a6
    tag: latest

documented at https://docs.openshift.com/container-platform/4.2/cli_reference/openshift_developer_cli/creating-a-single-component-application-with-odo.html#adding-a-custom-builder-to-specify-a-build-image_creating-a-single-component-application-with-odo
/close


IFileInfo.OpenRead() does not lock file when using MockFileSystem

Describe the bug
If you want to test if a file handle is released correctly after calling IFileInfo.OpenRead() the test does not fail when using MockFileSystem.
To Reproduce
Steps to reproduce the behavior:

Run the following Test and see that it should fail but greens

using System.IO.Abstractions;
using System.IO.Abstractions.TestingHelpers;
using FluentAssertions;
using NUnit.Framework;

namespace InstallerServiceTests.Package;

public class TestClass
{
  [Test]
  public void TestThatStreamIsDisposedAfterOpenRead()
  {
    // Given
    var mockFileSystem = new MockFileSystem();
    var fileInfo = mockFileSystem.FileInfo.FromFileName("aPath.txt");
    mockFileSystem.AddFile(fileInfo.FullName,
                           "");
    ClassUnderTest.MethodUnderTest(fileInfo);
    // When
    var action = () => fileInfo.Delete(); // write access on the still opened file
    // Then
    action.Should()
          .NotThrow();
  }
}

public static class ClassUnderTest
{
  public static void MethodUnderTest(IFileInfo fileInfo)
  {
    var stream = fileInfo.OpenRead();
    // stream is not disposed as it should be correctly
  }
}

Change the MockFileSystem to the real FileSystem and you will see that the test fails correctly

Expected behavior
MockFileSystem should behave like the real FileSystem so that the test fails
Additional context
I am working on Windows 10
Versions:
System.IO.Abstractions = 17.2.3

Thanks for reporting with a test case 👍


Set requests/limits for calico chart used by tigera-operator

Expected Behavior
When I am using tigera-operator deployed I would expect to be able to set requests/limits for
calico-kube-controllers
calico-node
calico-typha
Something like has been done in #4780
Current Behavior
I can't set up limits/requests for the mentioned resources
Steps to Reproduce (for bugs)
Deploy tigera-operator using helm-chart

This should be possible by configuring the installation spec to include component resources: https://projectcalico.docs.tigera.io/reference/installation/api#operator.tigera.io/v1.ComponentResource
Note that this may change with the advent of this improvement in the near-ish future: https://github.com/tigera/operator/issues/1990

Closing for inactivity, please re-open if needed.


Issue with Ray=1.2.0

modin_spreadsheet works with Ray=1.1.0 but not Ray=1.2.0
In Jupyter notebook, the kernel dies when spreadsheet = modin_spreadsheet.show_grid(df, show_toolbar=True, grid_options={'forceFitColumns': False}) called
There's no obvious error in the browser console or notebook server log
When running pytest, all tests fail due to Broken Pipe.
More investigation needs to be done

Seems to be a Modin compatibility issue, same error occurs here: https://github.com/modin-project/modin/issues/2761#issuecomment-782583595
(raylet) [2021-02-23 00:25:47,462 C 13930 2446768] pull_manager.cc:246:  Check failed: it != object_pull_requests_.end()
(raylet) [2021-02-23 00:25:47,462 E 13930 2446768] logging.cc:415: *** Aborted at<PHONE_NUMBER> (unix time) try "date -d @1614057947" if you are using GNU date ***
(raylet) [2021-02-23 00:25:47,462 E 13930 2446768] logging.cc:415: PC: @                0x0 (unknown)
(raylet) [2021-02-23 00:25:47,462 E 13930 2446768] logging.cc:415: *** SIGABRT (@0x7fff6b34933a) received by PID 13930 (TID 0x10e1eedc0) stack trace: ***
(raylet) [2021-02-23 00:25:47,462 E 13930 2446768] logging.cc:415:     @     0x7fff6b3fa5fd _sigtramp
(raylet) [2021-02-23 00:25:47,463 E 13930 2446768] logging.cc:415:     @        0x10cfcf008 absl::lts_2019_08_08::AlphaNum::AlphaNum()::hexdigits
(raylet) [2021-02-23 00:25:47,463 E 13930 2446768] logging.cc:415:     @     0x7fff6b2d0808 abort
(raylet) [2021-02-23 00:25:47,463 E 13930 2446768] logging.cc:415:     @        0x10c8cafba ray::SpdLogMessage::Flush()
(raylet) [2021-02-23 00:25:47,463 E 13930 2446768] logging.cc:415:     @        0x10c8a1fb9 ray::RayLog::~RayLog()
(raylet) [2021-02-23 00:25:47,463 E 13930 2446768] logging.cc:415:     @        0x10c5730f9 ray::PullManager::CancelPull()
(raylet) [2021-02-23 00:25:47,463 E 13930 2446768] logging.cc:415:     @        0x10c53944a ray::ObjectManager::CancelPull()
(raylet) [2021-02-23 00:25:47,463 E 13930 2446768] logging.cc:415:     @        0x10c4456be ray::raylet::DependencyManager::RemoveTaskDependencies()
(raylet) [2021-02-23 00:25:47,463 E 13930 2446768] logging.cc:415:     @        0x10c4f4c39 ray::raylet::ClusterTaskManager::DispatchScheduledTasksToWorkers()
(raylet) [2021-02-23 00:25:47,463 E 13930 2446768] logging.cc:415:     @        0x10c4f678d ray::raylet::ClusterTaskManager::QueueAndScheduleTask()
(raylet) [2021-02-23 00:25:47,463 E 13930 2446768] logging.cc:415:     @        0x10c47096e ray::raylet::NodeManager::HandleRequestWorkerLease()
(raylet) [2021-02-23 00:25:47,464 E 13930 2446768] logging.cc:415:     @        0x10c4ae9a2 ray::rpc::ServerCallImpl<>::HandleRequestImpl()
(raylet) [2021-02-23 00:25:47,464 E 13930 2446768] logging.cc:415:     @        0x10c4ae8e4 _ZN5boost4asio6detail18completion_handlerIZN3ray3rpc14ServerCallImplINS4_25NodeManagerServiceHandlerENS4_25RequestWorkerLeaseRequestENS4_23RequestWorkerLeaseReplyEE13HandleRequestEvEUlvE_E11do_completeEPvPNS1_19scheduler_operationERKNS_6system10error_codeEm
(raylet) [2021-02-23 00:25:47,464 E 13930 2446768] logging.cc:415:     @        0x10cd389b3 boost::asio::detail::scheduler::do_run_one()
(raylet) [2021-02-23 00:25:47,464 E 13930 2446768] logging.cc:415:     @        0x10cd2c7f2 boost::asio::detail::scheduler::run()
(raylet) [2021-02-23 00:25:47,464 E 13930 2446768] logging.cc:415:     @        0x10cd2c68b boost::asio::io_context::run()
(raylet) [2021-02-23 00:25:47,464 E 13930 2446768] logging.cc:415:     @        0x10c423518 main
(raylet) [2021-02-23 00:25:47,464 E 13930 2446768] logging.cc:415:     @     0x7fff6b201cc9 start
Traceback (most recent call last):
  File "/Users/richard/Documents/modin-spreadsheet/qgrid/richard_test.py", line 26, in <module>
    sheet = modin_spreadsheet.show_grid(df)
  File "/Users/richard/Documents/modin-spreadsheet/qgrid/modin_spreadsheet/grid.py", line 512, in show_grid
    return SpreadsheetWidget(
  File "/Users/richard/Documents/modin-spreadsheet/qgrid/modin_spreadsheet/grid.py", line 631, in __init__
    self._update_df()
  File "/Users/richard/Documents/modin-spreadsheet/qgrid/modin_spreadsheet/grid.py", line 823, in _update_df
    self._df.insert(0, self._index_col_name, range(0, len(self._df)))
  File "/Users/richard/.pyenv/versions/modin-spreadsheet/lib/python3.8/site-packages/modin/pandas/dataframe.py", line 960, in insert
    new_query_compiler = self._query_compiler.insert(loc, column, value)
  File "/Users/richard/.pyenv/versions/modin-spreadsheet/lib/python3.8/site-packages/modin/backends/pandas/query_compiler.py", line 2307, in insert
    new_modin_frame = self._modin_frame._apply_full_axis_select_indices(
  File "/Users/richard/.pyenv/versions/modin-spreadsheet/lib/python3.8/site-packages/modin/engines/base/frame/data.py", line 1396, in _apply_full_axis_select_indices
    self._frame_mgr_cls.apply_func_to_select_indices_along_full_axis(
  File "/Users/richard/.pyenv/versions/modin-spreadsheet/lib/python3.8/site-packages/modin/engines/base/frame/partition_manager.py", line 816, in apply_func_to_select_indices_along_full_axis
    preprocessed_func = cls.preprocess_func(func)
  File "/Users/richard/.pyenv/versions/modin-spreadsheet/lib/python3.8/site-packages/modin/engines/base/frame/partition_manager.py", line 56, in preprocess_func
    return cls._partition_class.preprocess_func(map_func)
  File "/Users/richard/.pyenv/versions/modin-spreadsheet/lib/python3.8/site-packages/modin/engines/ray/pandas_on_ray/frame/partition.py", line 155, in preprocess_func
    return ray.put(func)
  File "/Users/richard/.pyenv/versions/modin-spreadsheet/lib/python3.8/site-packages/ray/_private/client_mode_hook.py", line 47, in wrapper
    return func(*args, **kwargs)
  File "/Users/richard/.pyenv/versions/modin-spreadsheet/lib/python3.8/site-packages/ray/worker.py", line 1489, in put
    object_ref = worker.put_object(value)
  File "/Users/richard/.pyenv/versions/modin-spreadsheet/lib/python3.8/site-packages/ray/worker.py", line 277, in put_object
    self.core_worker.put_serialized_object(
  File "python/ray/_raylet.pyx", line 994, in ray._raylet.CoreWorker.put_serialized_object
  File "python/ray/_raylet.pyx", line 918, in ray._raylet.CoreWorker._create_put_buffer
  File "python/ray/_raylet.pyx", line 153, in ray._raylet.check_status
ray.exceptions.RaySystemError: System error: Broken pipe

Opened https://github.com/ray-project/ray/issues/14279 to track

Closing as we will fix this in Modin


String with non-ASCII characters broken

It seems Retrolambda messes up string encoding. This string literal:
Simon Péter
becomes this:
Simon PĂ©ter
I tried to decompile the code in both build/retrolambda and build/intermediates/classes with jd-gui. (I tried javap, too, but it always printed the correct string :S javap -c -constants -v -l MainActivity.class > log.txt).
For me it seems the bytecode contains the correct string if i turn off Retrolambda totally, but it contains the bad string in both places if i turn it on.
Anyway, i created a simple example project which can reproduce the issue. If you comment the retrolambda plugin usage and use java 1.7, it will display the correct string. If you leave it as-is, so retrolambda is used, incorrect strings are displayed.
Of course i am on Windows (8.1). If i add JAVA_OPTS=-Dfile.encoding=UTF-8, it works with Retrolambda, too, but it shouldn't be necessary (as the Retrolambda-less config does not need this).

Fixed by fe02da0e.


FEAT: add get and reset interfaces to suite directly

At the moment you can use vest.get(suiteName) to get the suite's state, and vest.reset(suiteName) to erase it.
It could be nice to be able to access those without having to hold a reference to the suite name:
// validate.js

import vest from 'vest';

export default vest.create('suite-name', () => {
 /* ... */
});

// app.js

import v from './validate.js';

const res = v.get();

v.reset();

Can probably be added here:
https://github.com/ealush/vest/blob/latest/packages/vest/src/core/createSuite/index.js#L44-L58

Can I help with this?

Hey @vligas, yes, of course!
As mentioned, the main file you should probably add the functions to is createSuite/index. The tests should reside next to it as well.
Let me know if you need any help getting things to work.


sink(cdc): kafka producer use default configuration.

What problem does this PR solve?

Issue Number: close #4383, #4499
If the network condition between the TiCDC and Kafka is not good enough, let producer get responses from Kafka as soon as possible, to prevent waste too much time.
What is changed and how it works?
change kafka producer to use default configurations, to prevent wast too much time on network communication with a Kafka cluster in bad network conditions.

set Net.DialTimeout, Net.WriteTimeout, Net.ReadTimeout to 10s
set Metadata.Retry.Max to 1, to make RefreshMatadata return fast

Check List
Tests

Manual test (add detailed scripts or steps below)

./bin/cdc cli changefeed create --pd=http://<IP_ADDRESS>:2379 --sink-uri="mysql://root@<IP_ADDRESS>:3306/"

./bin/cdc cli changefeed create --pd=http://<IP_ADDRESS>:2379 --sink-uri="kafka://<IP_ADDRESS>:9092/kafka-test?protocol=open-protocol"

./bin/go-tpc tpcc -H <IP_ADDRESS> -P 4000 -D workload --warehouses 50 -T 4 prepare

wait a few moment ... then kill the kafka by `kill -9`

[2022/01/17 18:54:33.796 +08:00] [ERROR] [changefeed.go:118] ["an error occurred in Owner"] [changefeed=4b62a15d-5da7-4f48-a40f-608e40456373] [error="[CDC:ErrKafkaSendMessage]kafka send message failed: kafka: Failed to deliver 3 messages."] [errorVerbose="[CDC:ErrKafkaSendMessage]kafka send message failed: kafka: Failed to deliver 3 messages.\ngithub.com/pingcap/errors.AddStack\n\tgithub.com/pingcap/errors@v0.11.5-0.20211224045212-9687c2b0f87c/errors.go:174\ngithub.com/pingcap/errors.(*Error).GenWithStackByArgs\n\tgithub.com/pingcap/errors@v0.11.5-0.20211224045212-9687c2b0f87c/normalize.go:164\ngithub.com/pingcap/tiflow/pkg/errors.WrapError\n\tgithub.com/pingcap/tiflow/pkg/errors/helper.go:30\ngithub.com/pingcap/tiflow/cdc/sink/producer/kafka.(*kafkaSaramaProducer).SyncBroadcastMessage\n\tgithub.com/pingcap/tiflow/cdc/sink/producer/kafka/kafka.go:135\ngithub.com/pingcap/tiflow/cdc/sink.(*mqSink).writeToProducer\n\tgithub.com/pingcap/tiflow/cdc/sink/mq.go:382\ngithub.com/pingcap/tiflow/cdc/sink.(*mqSink).EmitCheckpointTs\n\tgithub.com/pingcap/tiflow/cdc/sink/mq.go:219\ngithub.com/pingcap/tiflow/cdc/owner.(*ddlSinkImpl).run.func1\n\tgithub.com/pingcap/tiflow/cdc/owner/ddl_sink.go:149\nruntime.goexit\n\truntime/asm_arm64.s:1133"]
[2022/01/17 18:54:33.796 +08:00] [INFO] [changefeed.go:315] ["close changefeed"] [changefeed=4b62a15d-5da7-4f48-a40f-608e40456373] [info="{\"sink-uri\":\"kafka://***/asd123?protocol=open-protocol\",\"opts\":{\"max-message-bytes\":\"1048588\"},\"create-time\":\"2022-01-17T18:51:53.105199+08:00\",\"start-ts\":430549686829711362,\"target-ts\":0,\"admin-job-type\":0,\"sort-engine\":\"unified\",\"sort-dir\":\"\",\"config\":{\"case-sensitive\":true,\"enable-old-value\":true,\"force-replicate\":false,\"check-gc-safe-point\":true,\"filter\":{\"rules\":[\"*.*\"],\"ignore-txn-start-ts\":null},\"mounter\":{\"worker-num\":16},\"sink\":{\"dispatchers\":null,\"protocol\":\"open-protocol\",\"column-selectors\":null},\"cyclic-replication\":{\"enable\":false,\"replica-id\":0,\"filter-replica-ids\":null,\"id-buckets\":0,\"sync-ddl\":false},\"scheduler\":{\"type\":\"table-number\",\"polling-time\":-1},\"consistent\":{\"level\":\"none\",\"max-log-size\":64,\"flush-interval\":1000,\"storage\":\"\"}},\"state\":\"normal\",\"error\":null,\"sync-point-enabled\":false,\"sync-point-interval\":600000000000,\"creator-version\":\"v5.4.0-master-dirty\"}"] [isRemoved=false]
[2022/01/17 18:54:33.796 +08:00] [INFO] [ddl_puller.go:195] ["Close the ddl puller"]
[2022/01/17 18:54:33.796 +08:00] [INFO] [kafka.go:196] ["kafka producer closing..."]
[2022/01/17 18:54:33.797 +08:00] [INFO] [kafka.go:221] ["async client closed"] [duration=255.625µs]
[2022/01/17 18:54:33.864 +08:00] [INFO] [region_range_lock.go:370] ["unlocked range"] [lockID=1] [regionID=4] [startKey=6d44444c4a6f624cff69ff737400000000ff0000f90000000000ff00006c0000000000fa] [endKey=6d44444c4a6f624cff69ff737400000000ff0000f90000000000ff00006d0000000000fa] [checkpointTs=430549728786382855]
[2022/01/17 18:54:33.865 +08:00] [INFO] [client.go:1087] ["stream to store closed"] [addr=<IP_ADDRESS>:20160] [storeID=1]
[2022/01/17 18:54:33.888 +08:00] [INFO] [region_range_lock.go:370] ["unlocked range"] [lockID=2] [regionID=4] [startKey=6d44444c4a6f6241ff64ff644964784c69ff7374ff0000000000ff000000f700000000ff0000006c00000000fb] [endKey=6d44444c4a6f6241ff64ff644964784c69ff7374ff0000000000ff000000f700000000ff0000006d00000000fb] [checkpointTs=430549728786382855]
[2022/01/17 18:54:33.889 +08:00] [INFO] [client.go:1087] ["stream to store closed"] [addr=<IP_ADDRESS>:20160] [storeID=1]
[2022/01/17 18:54:34.568 +08:00] [INFO] [kafka.go:228] ["sync client closed"] [duration=771.709333ms]

as shown in the log above, the owner can be closed in around 1 second.
10s later, the changefeed restart, and failed in around 1 second again.
18s later, the changefeed restart again....
the restart logic is handled by feed_state_manager.
When the Kafka cluster is in a bad network condition, this configuration will detect it very fast, to prevent wasting too much time. But this would also have a false-negative case, such as the user's network is just not fast enough...
[2022/01/17 18:54:33.674 +08:00] [INFO] [processor.go:1074] ["processor try to close the sinkManager"] [changefeed=4b62a15d-5da7-4f48-a40f-608e40456373]
[2022/01/17 18:54:33.677 +08:00] [INFO] [manager.go:89] ["sinkManager try close bufSink"] [changefeed=4b62a15d-5da7-4f48-a40f-608e40456373]
[2022/01/17 18:54:55.254 +08:00] [ERROR] [kafka.go:219] ["close async client with error"] [error="kafka: Failed to deliver 383 messages."] [duration=21.576894875s]
[2022/01/17 18:54:55.254 +08:00] [INFO] [kafka.go:228] ["sync client closed"] [duration=41.084µs]
[2022/01/17 18:54:55.254 +08:00] [INFO] [manager.go:98] ["close bufSink success"] [changefeed=4b62a15d-5da7-4f48-a40f-608e40456373] [duration=21.577101583s]
[2022/01/17 18:54:55.254 +08:00] [INFO] [processor.go:1083] ["processor close sinkManager success"] [changefeed=4b62a15d-5da7-4f48-a40f-608e40456373] [duration=21.577510917s]

18:54:33 ~ 18:54:55, processor is closing the first time...

18:54:33 ~ 18:54:34, owner closed the first time
18:54:44 ~ 18:54:55, owner retry to start the first time
18:55:04 ~ 18:55:05, owner retry to start the second time.

It looks that the processor should be fully closed before the owner tries to initialize the changefeed again. Or, the owner shouldn't try to initialize the changefeed before the processor is not fully closed.
Code changes
Side effects
Related changes

Need to cherry-pick to the release branch

Release note
None

Codecov Report

Merging #4359 (39da317) into master (ab62e6b) will decrease coverage by 0.2052%.
The diff coverage is 48.7700%.

Flag
Coverage Δ

cdc
59.1051% <54.5864%> (-0.5109%)
:arrow_down:

dm
52.1700% <45.5601%> (+0.1044%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
@@               Coverage Diff                @@
##             master      #4359        +/-   ##
================================================
- Coverage   55.5183%   55.3130%   -0.2053%
================================================
  Files           495        497         +2
  Lines         61151      61396       +245
================================================
+ Hits          33950      33960        +10
- Misses        23789      24020       +231
- Partials       3412       3416         +4

/run-all-tests

/run-dm-integration-test
/run-kafka-integration-test

/run-all-tests

/run-kafka-integration-test

/run-kafka-integration-test

/run-all-tests

/run-all-tests

/run-kafka-integration-test

/run-all-tests

/run-all-tests

/run-all-tests

/run-all-tests

/run-all-tests

run-kafka-integration-test

/run-kafka-integration-test

/run-all-tests

/run-kafka-integration-test

/run-all-tests

/run-kafka-integration-test

Add test for kafka cluster scenario, kill brokers to make min.insync.replicas cannot be satisfied.

./bin/kafka-topics.sh --bootstrap-server <IP_ADDRESS>:9092  --create --topic kafka-test-1 --partitions 3
./bin/cdc cli changefeed create --pd=http://<IP_ADDRESS>:2379 --sink-uri="kafka://<IP_ADDRESS>:9092/kafka-test-x?protocol=canal-json&enable-tidb-extension=true"

[2022/01/19 00:11:50.557 +08:00] [WARN] [buffer_sink.go:161] ["flush row changed events too slow"] [batchSize=512] [duration=3.420791792s] [changefeed=9f49e1ba-a711-465f-ab9b-950b0994bb49]
[2022/01/19 00:12:07.850 +08:00] [WARN] [buffer_sink.go:161] ["flush row changed events too slow"] [batchSize=512] [duration=17.290436542s] [changefeed=9f49e1ba-a711-465f-ab9b-950b0994bb49]
[2022/01/19 00:12:14.402 +08:00] [INFO] [http.go:72] [/capture/owner/changefeed/query] [status=200] [method=POST] [path=/capture/owner/changefeed/query] [query=] [ip=<IP_ADDRESS>] [user-agent=Go-http-client/1.1] [] [duration=651.916µs]
[2022/01/19 00:12:15.135 +08:00] [INFO] [http.go:72] [/capture/owner/changefeed/query] [status=200] [method=POST] [path=/capture/owner/changefeed/query] [query=] [ip=<IP_ADDRESS>] [user-agent=Go-http-client/1.1] [] [duration=642.875µs]
[2022/01/19 00:12:15.736 +08:00] [INFO] [http.go:72] [/capture/owner/changefeed/query] [status=200] [method=POST] [path=/capture/owner/changefeed/query] [query=] [ip=<IP_ADDRESS>] [user-agent=Go-http-client/1.1] [] [duration=624.709µs]
[2022/01/19 00:12:23.185 +08:00] [WARN] [buffer_sink.go:161] ["flush row changed events too slow"] [batchSize=39] [duration=14.461295541s] [changefeed=9f49e1ba-a711-465f-ab9b-950b0994bb49]
[2022/01/19 00:12:38.748 +08:00] [WARN] [buffer_sink.go:161] ["flush row changed events too slow"] [batchSize=292] [duration=14.617083041s] [changefeed=9f49e1ba-a711-465f-ab9b-950b0994bb49]
[2022/01/19 00:12:42.213 +08:00] [WARN] [buffer_sink.go:161] ["flush row changed events too slow"] [batchSize=1] [duration=3.362624959s] [changefeed=9f49e1ba-a711-465f-ab9b-950b0994bb49]
[2022/01/19 00:12:54.127 +08:00] [WARN] [buffer_sink.go:161] ["flush row changed events too slow"] [batchSize=228] [duration=11.913207625s] [changefeed=9f49e1ba-a711-465f-ab9b-950b0994bb49]

flush row change event is quite slow, which would cause checkpoint progress too slow.

/run-all-tests

/run-all-tests

[2022-01-19T05:28:53.331Z] + cdc.test -test.coverprofile=/tmp/tidb_cdc_test/cov.ddl_puller_lag.cli.7351.out cli changefeed create --start-ts=430589902829125633 '--sink-uri=kafka+ssl://<IP_ADDRESS>:9092/ticdc-ddl-puller-lag-test-16043?protocol=open-protocol&partition-num=4&kafka-client-id=ddl_puller_lag&kafka-version=2.4.1&max-message-bytes=10485760'

[2022-01-19T05:28:58.623Z] Error: [CDC:ErrKafkaNewSaramaProducer]new sarama producer: [CDC:ErrKafkaNewSaramaProducer]new sarama producer: kafka server: Request exceeded the user-specified time limit in the request.

CI would cost too much time to create the changefeed, which cause the test unstable.

/run-all-tests

/run-all-tests

/run-all-tests

/run-integration-test
/run-kafka-integration-test

/run-integration-test
/run-kafka-integration-test

/run-integration-test
/run-kafka-integration-test

/run-integration-tests /tidb=pr/30558
/run-kafka-integration-test /tidb=pr/30558

/run-kafka-integration-test /tidb=pr/30558

/run-kafka-integration-test /tidb=pr/30558

/run-kafka-integration-test /tidb=pr/30558

/run-all-tests /tidb=pr/30558

/run-all-tests /tidb=pr/30558

/run-all-tests /tidb=pr/30558

/run-verify-ci

/run-all-tests

/run-all-tests

/run-all-tests

/run-all-tests

/run-dm-compatibility-test
/run-dm-integration-test
/run-integration-test
/run-kafka-integration-test

/run-all-tests

/merge

/run-dm-integration-test

/run-kafka-integration-test

/run-kafka-integration-test

/run-kafka-integration-test

+1

/run-kafka-integration-test

/run-kafka-integration-test

/run-kafka-integration-test

/run-kafka-integration-test /tidb=pr/32081


Do let tags/attributes go through for the OT Shim.

I'd like to attributes/tags go through for the OT shim, even if we match them to a new field, i.e. (span.kind -> SpanBuilder.setKind()).
The reason for this is that, at this time, backend systems may still depend on these tags/attributes to be set (error is an example) - so, by not filtering them out, we are helping them to keep their current codebase working (later they can migrate smoothly by using the new fields).

Closing this in favor of going with Bogdan's suggestion.


Show which app is playing media in the audio flyout

Looks like there's a perfect gap for it! :p

i have no idea if its possible but would be really neat :D

This feature is already available in ModernFlyouts. You can see the sample images as a proof. This app uses SourceAppUserModelId to find whether the app is packaged/unpackaged and fetches their name and logos.
I added this feature as a part of #1
Which app is playing that?
That particular application couldn't be providing any identity to find it. Can you inform me so that I can reproduce this issue

Oh. I feel stoopid lol.
I'm playing this in MS Edge. I've waited for a good 10, 15 minutes and it still hasn't shown up.

Oh my god another bug? (Are ya kidding me) It works perfectly in my PC.
Anyway, thanks for reporting this pal 🤗.

Bruhhhh! It works for me 😂 (I don't know why I get some bugs in the release version lol)

closing as this has been fixed with 0.0.5 :)

*v0.5.0.
I didn't fix it TBH. It was already working, I'm confused how it worked for you now.

@Poopooracoocoo,
Feel free to reopen this issue if you experience this again


[BUG][UI] Snapshots and Backups content not alignment in volume detail page of a restored v2 volume

Describe the bug
Snapshots and Backups content not alignment in detail page of restored v2 volume

To Reproduce

From backup, restore a v2 volume to v2 volume res-vol
Create PVC res-vol of volume res-vol
Create a workload to mount PVC res-vol
After volume res-vol healthy, nevigate to volume detail page
Snapshots and Backups content not alignment

Expected behavior
Snapshots and Backups content alignment as usual.
Support bundle for troubleshooting
N/A
Environment

Longhorn version: v1.7.0-dev (longhorn-ui aa896b)

Additional context
N/A

cc @a110605

The created is empty from /v1/volumes/?action=snapshotList causes UI render the line not on the same horizontal line. @derekbit ,could you help check why that created is empty?

@DamiaSan The created flag lag is not set. Can you help check it? Thank you.

I haven't still found anything that could cause this issue.
What version of longhorn-instance-manager  are you using? There was a bug about the creation date that has been resolved in this commit https://github.com/longhorn/longhorn-instance-manager/commit/63a153fa618b924a9c1d406ffcf6999cc42faa56

I haven't still found anything that could cause this issue. What version of longhorn-instance-manager  are you using? There was a bug about the creation date that has been resolved in this commit longhorn/longhorn-instance-manager@63a153f

Hello @DamiaSan
Found the issue. It is due to the missing timestamp and userCreated.

Verified on master-head 20240712

longhorn master-head https://github.com/longhorn/longhorn/commit/11066751cf818ddd93a4df0c457004e0fc95894c
longhorn-spdk-engine main https://github.com/longhorn/longhorn-spdk-engine/commit/10fe17ff7e0d0434d135812b360cb1d02b897fbd
longhorn-instance-manager master-head https://github.com/longhorn/longhorn-instance-manager/commit/f06a7b59038bea2611017d05ea86b4a464da6b72

The test steps
https://github.com/longhorn/longhorn/issues/8964#issue-2399652199
Result Passed
After restoring the v2 volume to a healthy state, the snapshots and backups content are all aligned on the volume detail page.


Bad dictionary reference in 2.1.6

Bug description
> /Users/mike/Projects/productivity/clean-workspace/.venv/lib/python3.12/site-packages/todoist_api_python/models.py(37)from_dict()
     32             id=obj["id"],
     33             is_favorite=obj["is_favorite"],
     34             is_inbox_project=obj["is_inbox_project"],
     35             is_shared=obj["is_shared"],
     36             is_team_inbox=obj["is_team_inbox"],
---> 37             can_assign_tasks=obj["can_assign_tasks"],
     38             name=obj["name"],
     39             order=obj["order"],
     40             parent_id=obj.get("parent_id"),
     41             url=obj["url"],

Expected behaviour

Is reproducible
Yes.
To reproduce
Use 2.1.6 and not 2.1.5
Steps taken to try to reproduce

Screenshots

Version information:

Package version: 2.1.6
Python version: 3.12.5

Additional information

@iloveitaly Is this causing you to get 'can_assign_tasksas the response to some operations, e.g.get_projects()andadd_project()? I'm running into this, but get_projects works fine with 2.1.5, and also with curl`.

There was a regression, please update to version 2.1.7.


Update README.md

Hello - request review and approval on the inclusion of Explore IoT on your list. It would be a good addition under LIBRARIES & TOOLS section of this article. Would you like to include it in your list? We'd love to hear your feedback. Thanks!

Thanks !


Overwrite

Coverage decreased (-0.03%) to 87.982% when pulling da3c2180a1110a40bc330ce7156c3e03e4f964f3 on overwrite into 713d420fc2f9da048969dd36bb10de61ec25fd4e on master.

Coverage decreased (-0.03%) to 87.982% when pulling da3c2180a1110a40bc330ce7156c3e03e4f964f3 on overwrite into 713d420fc2f9da048969dd36bb10de61ec25fd4e on master.

Coverage decreased (-0.03%) to 87.982% when pulling da3c2180a1110a40bc330ce7156c3e03e4f964f3 on overwrite into 713d420fc2f9da048969dd36bb10de61ec25fd4e on master.

Coverage decreased (-0.03%) to 87.982% when pulling da3c2180a1110a40bc330ce7156c3e03e4f964f3 on overwrite into 713d420fc2f9da048969dd36bb10de61ec25fd4e on master.

Coverage decreased (-0.03%) to 87.982% when pulling da3c2180a1110a40bc330ce7156c3e03e4f964f3 on overwrite into 713d420fc2f9da048969dd36bb10de61ec25fd4e on master.


Displaying arrayed data in a stack (v/h) not always working

When an arrayed experiment is plotted with e.g. dssh OVJ writes the error
"Array delta > start - stop!"
and then only the first spectrum of the array is shown (the rest of the display screen for spectra stays white).
In the procpar file the arraystart/arraydelta/arraystop parameters are 1/1/1 which explains the error. The Arrayed data is found under the parameter (e.g.) 'd2' with the corresponding arrayed values.
Expected behavior
arraystart/arraystop/arraydelta should be set correctly, or if not possible (non uniform data) the array should still be displayed stacked
Version of OpenVnmrJ you are using.
current master
OVJ_B12 install
Environment (please complete the following information):
Ubuntu 20.04
Additional context
This error is hard to reproduce, sometimes it doesn't appear for an experiment type, but repeating the acquisition produces the ''wrong' metadata that are saved. The error seems to appear when arraying data with manual non-uniform values (e.g. : d2 -> d2=0,0.1,0.2,0.5,1) but it has been observed to appear with uniform spaced points.
Log file/Error msg
will be added later
typical procpars for the array (non - uniform array values):
arraydim 7 1 32768 1 1 2 1 5 1 64
1 25
0
array 2 2 256 0 0 2 1 1 1 64
1 "d2"
0
arraydelta 7 1 32767 0 0 4 1 0 1 64
1 1
0
arraymax 7 1 32767 0 0 4 1 0 1 64
1 25
0
arrayflip 4 2 4 0 0 4 1 0 1 64
1 "n"
0
arrayelemts 1 1 9.99999984307e+17 -9.99999984307e+17 0 2 1 0 1 64
1 1
0
arraystop 7 1 32767 0 0 4 1 0 1 64
1 1
0
arraystart 7 1 32767 0 0 4 1 0 1 64
1 1
0

From OVJ, could you run
jFunc(55,'/vnmr/tmp/arrayBug')
debug('c3')
When you next get the error, run
debug('C')
and send me the /vnmr/tmp/arrayBug file


cant install ink-mde when using svelte 4

most likely due to https://github.com/davidmyersdev/ink-mde/blob/f1e8503b7a9d83a42c1bae311a682ec57db17a31/package.json#L124
what do you think of instead of providing a component for the framework (such as svelte or vue), just providing a "copy-pastable" component (since it is very likely that a wrapper will fit in a single component, no matter the framework), which could be shown in the readme, for example? one clear benefit is that version conflicts would never occur.
i believe this is a plausible approach, given that the core of the package itself (i.e. the ink export from the package) works in native js.
another approach to avoid version conflicts would be to provide the framework-specific components in a separate package, such as @ink-mde/svelte or @ink-mde/vue. however, probably not worth the effort

just for the record, the provided component at the ink-mde/svelte subpath works fine with svelte 4, so you could simply change the peerDependency to use "svelte": "^4.0.0"

Hey @demetrius-mp. If you've confirmed that it works fine with Svelte 4, I can just update the peer dependency to be ^3.0.0 || ^4.0.0 to allow both versions.

Going back to your original point, I do like the idea of a copyable component snippet either way so that people have the option of using either approach.

ink-mde/svelte works just fine with Svelte4.

I just published v0.30.0 to accept Svelte at ^4.0.0.


hint is not visible in xrtos window

Need test case. See screenshot in the following issue. There is zero probability that I can reproduce what you have.
https://github.com/mcu-debug/rtos-views/issues/15#issuecomment-1406663697

You also did not attach a full screenshot of the window. I saw a partial one, I want to see the full screenshot.

Hi, I also met this problem. I've tried both on macOS Sonoma 14.5 and Windows on Arm 11

It seems related to the thread id. As the following images shows, if the thread id disappears, so does the hint. However if the thread id behaves normal, then the hint can display.

Hmmmm. Thanks for reporting this.


Fixing Ping Variance

Shouldnt we use Math.round(bot.ws.ping) instead because of how its more consistent, cause when I tried it I consistently got the same ping instead of variation.

Math.round(client.ws.ping) is specifically ping for the API while Date.now() - message.createdTimestamp is for message ping. I believe Tim originally wanted message ping, but we can have both


Leftover failing tests from #90

[x] #94
[x] #95
[x] #93

All items ticked off, so I'm closing this as complete.


Support for private models

Is it possible to password protect gh-pages websites?

I'm not aware of any functionality for that. If you want to keep things private you have to run everything locally and share the report HTML file yourself? Local workflows already work well so I don't feel the need to go beyond that. If you do find a way to have gh-pages with authentication I'm happy to reconsider.
I suppose an option could be to use a different branch that is not automatically published. You create a private repository and then just have an index.html lying in a particular branch. Anyone with access to the repo can look at that.

Second option would already be ok. First option, wouldn't something simple as .htaccess already do the trick? I know that you can keep a gh-pages branch private.

How would .htaccess do authentication?
According to this SO answer (which is old, I know) there's a Jekyll plugin that helps. For now I'd point users to the second option or they are welcome to come up with a solution themselves, unless you say it's really high priority for us.

No, created this issue mainly as a reminder that most people wouldn't be comfortable sharing models in construction.


Standardize the format of the map files

It would be great if we had a standard format to define the nodes, edges and their attributes - otherwise everyone will come up with their own format.

VDA5050 is in first place an communication protocol not an engineering file format (this changes a bit with VDA5051)
it is really hard do get an unified parametrization format for the all kinds of AGV/AMR types the VDA5050 like support.
and often you have systems without parameters an the AGV and then there are systems you need to make everything twice an the MC and then on the AGV.
and with the MC it get more complicated because of different approaches they use to control the fleet.

There will be something in the VDA5050 for exchange (factory node graphs, not slam maps) but it is more a engineering format between the MC and the AGV track planner.

the name of the format is known:
Layout-Interface-Format (LIF)
source
but there are no official documents.


[#88] Added logging around potential null pointers

This PR closes issue #88

I would like to see in which case we get the msg null for debugging purposes. Can we print that exception as well?

@suranjan I have added an info log which will print the exception in all the cases so whenever we get this null log, we can simply see the log line just before that and analyse it for debugging purposes.


Objects: Adds tests to CI job

Adds a step in build-objects to run the Objects unit tests (currently quite lacking).
Adds unit test to ensure all objects in ObjectsKit have an empty constructor implemented.
In order to not duplicate builds, build-objects will now only build:

Objects.csproj
Tests.csproj

All other projects correspond to Converters that are already being built on each of their respective Connector builds.
This also allowed to change the VM from windows to linux, which has less minute cost.

Disabled CodeCov upload. Should coordinate later on if we want to add these to the coverage, as we'd need to also add Core tests so that the coverage is "complete".
See current coverage report dropping from 40% to 1% because Core tests were not run (nor uploaded)


[main] Upgrade to latest dependencies (#195)

upgrade to latest dependencies
bumping knative.dev/eventing 1f38c2e...56f08d2:

56f08d2 Test Parallel with OIDC support (# 7507)
c38f800 Refactor the code that rejects for wrong audience  (# 7492)
c24dab5 Eventing TLS: Add E2E TLS test for Parallel (# 7395)

Signed-off-by: Knative Automation<EMAIL_ADDRESS>

OCF Webhook is merging this PR


{% example html %} does not indent correctly {% include %}

Hello 👋

  Example label
  {% include components/input.html type="email" id="inputEmail1" placeholder="Example input" %}

Render 👇

Is it correct? Maybe i'm missing something, but I don't understand how to fix it. Could you help me?

This doesn't look like a Bootstrap bug—this looks like you're modifying some Jekyll docs. Please refer to our contributing guidelines and ask in StackOverflow or our Slack.


Add Design considerations for applying flyclient on chain relay

[x] Asymptotically and on Demand Proof Summit and Challenge Time
[x] External Blockchain HardFork和治理机制
[x] On-chain Crypto Verification Support
[x] Consensus Support

Let me see if I've got it right.
For Challenge Time:
A, B, C, D, E, F: relayer
x: waiting time
diff: difficulty
D/n: punish
1 - D/n: reward

Let me see if I've got it right.
For Challenge Time:
A, B, C, D, E, F: relayer
x: waiting time
diff: difficulty
D/n: punishment
1 - D/n: reward

This waiting time is not the interval between relayers, it is the max challenge time the user need to wait for the relayer's submission  get finalized & confirmed(not challenged).
So guess from the diagram, the x (waiting time) has the wrong meaning.


Data Processing

Hi, it's a great job. However, I still have a question:
How did you get the files before the prompt generation summary and reason, i.e. the complete document ``generation/user/user_prompt.''
I would like you to show this part of the raw data and look forward to your reply!

Hi 👋!
Thank you for your interest in RLMRec! We provide links to the raw data and the mapper information in JSON format, which maps the user and item IDs to their original IDs in the raw datasets.

Yelp: https://www.yelp.com/dataset
Amazon Books: https://cseweb.ucsd.edu/~jmcauley/datasets/amazon/links.html
Steam: https://github.com/kang205/SASRec

With these resources, you can access the raw data used for processing user and item profile generation. Please note that for the review or purchased item information in user/item prompts, the relevant user-item interactions are not included in the validation/test sets to avoid data leakage. I hope this information is helpful to you :)
Best regards,
Xubin

Okay, thanks! Have a nice life and good luck with your studies!


fix(markdown_style): Escape content string

No worries, thank folks will get this out as soon as possible 🙌


Refactor of List

List could do with some refactoring. Some ideas...

Change name from List to Array
Use method naming conventions more consistent with other parts of library (like lower camel) and more in line with other array like containers
Use a signed integral type for index, and for return type from indexOf

Such that can use  < 0 as test for valid index
Arguably the integral should be int - as it has fast multiply and an array of larger sizes should perhaps be done another way

For really large blocks of memory perhaps use a different type - that is more limited like MemoryBuffer. It doesn't have indexing (cos its huge right!) etc
Life time of contents of List is odd. On creation of List the whole contents is initialized. Stuff is only deleted when the List itself is destroyed (!). We should only have used elements in known state.
We should support reallocing, and requiring types in Array can be shifted in place (removes need to move)
FastRemoveAt is not clear why it's fast - I know it does a swap by looking at source, but not by name
Remove the use of Exceptions and use asserts
Not use new T[size] to allocate, or delete [] ptr - because has poor memory layout usage, as it stores a size along with the array, and we know what the size is - it's stored in the list. Depending on alignment of T could be quite wasteful.
Move some of the more esoteric methods out and put into util/utils (say like sort)
Split out code that can be shared across template instantiation
Make members explicit (with m_ prefix)
Array size doubles if there isn't enough space - might be okay for smallish sizes, but probably wants something a bit more modest
The initial size, is arguably too big for many types, the initial size should be based on some math around sizeof(T)
Methods should be commented
Implementation should probably be split from interface to make easier to read
FastRemoveAt tests for idx of -1 which seems needless

We have done a lot of refactors to our corelib since this issue opened. If there are any remaining cleanups we should open them as separate issues.


Improve detection of cgroup v2 in unit tests

Due to https://github.com/systemd/systemd/issues/3388, processes can not be easily moved around cgroups, the workaround is to do
sudo chown -R user:user /sys/fs/cgroup/user.slice/user-1000.slice


Superset-UI plugin not coming up in chart selection wizard after creation.

Your question.

Following the blog - https://preset.io/blog/2020-07-02-hello-world/ , i had created the hello_world plugin and registered it under MainPreset.js as directed in the article.

Though after successful creation i do not see new chart in expolore -> chart selection wizard. Futher on debugging i came across the warning " Hello_world , You should call configure(...) before calling other methods ".
Kindly help me debug this, Attached the log files.
debugging_log.txt
npm-dev-server-logs.txt

@Vishal474 this is possibly related to #793
Can you please try to:

stop dev-server
change your plugin's version in package.json to the same as the superset-ui version you're using
change your version reference in incubator-superset/superset-frontend/package.json
run yarn install and yarn build in superset-ui
npm run dev-server in incubator-superset/superset-frontend

And let me know if the issue is fixed?

Hi @codepic, tried the steps suggested but ran into below issues -

Initially at yarn build (step 4), i encountered the error -

@superset-ui/plugin-chart-hello-world: ../../scripts/tsc.sh: line 9: exit: error TS5083: Cannot read file '/home/vishaljeet/Desktop/superset_local/superset-ui/plugins/plugin-chart-hello-world/tsconfig.json'.: numeric argument required
lerna ERR! ../../scripts/tsc.sh       --build exited 2 in '@superset-ui/plugin-chart-hello-world'
lerna WARN complete Waiting for 3 child processes to exit. CTRL-C to exit immediately.
error Command failed with exit code 2.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

After this is referenced #793 and added tsconfig.json to hello-world plugin directory, but now i face this issue -

../../scripts/tsc.sh: line 9: exit: error TS6059: File '/home/vishaljeet/Desktop/superset_local/superset-ui/plugins/plugin-chart-hello-world/src/index.ts' is not under 'rootDir' '/home/vishaljeet/Desktop/superset_local/superset-ui/src'. 'rootDir' is expected to contain all source files.: numeric argument required
lerna ERR! ../../scripts/tsc.sh       --build exited 2 in '@superset-ui/plugin-chart-hello-world'
error Command failed with exit code 2.
Content of tsconfig -
{
"compilerOptions": {
"declarationDir": "lib",
"outDir": "lib"
},
"exclude": [
"lib",
"test"
],
"extends": "../../tsconfig.options.json",
"include": [
"src//*",
"types//",
"../../types/**/"
]
}

Hi @Vishal474
In order to yarn build and yarn jest successfully, you need to have 2 tsconfig.json files in your plugin directory.

superset-ui/plugins/plugin-chart-hello-world/tsconfig.json
superset-ui/plugins/plugin-chart-hello-world/test/tsconfig.json

Your best bet is to copy the following files from plugin-chart-echarts:
# run in superset-ui directory
cp ./plugins/plugin-chart-echarts/tsconfig.json ./plugins/plugin-chart-hello-world/
cp ./plugins/plugin-chart-echarts/test/tsconfig.json ./plugins/plugin-chart-hello-world/test/

And after this
# run in superset-ui directory
yarn install
yarn build
yarn jest

And see if all the steps complete without errors.

Hi @codepic
Thanks for the quick update, Adding tsconfig.json to test worked !! Now yarn build and jest are successful. Though i face below error while running dev-server -
TS2305: Module '"../../core/lib"' has no exported member 'supersetTheme'.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/HelloWorld.tsx(48,26):
TS7031: Binding element 'theme' implicitly has an 'any' type.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/HelloWorld.tsx(49,17):
TS7031: Binding element 'theme' implicitly has an 'any' type.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/HelloWorld.tsx(50,23):
TS7031: Binding element 'theme' implicitly has an 'any' type.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/HelloWorld.tsx(51,16):
TS7031: Binding element 'height' implicitly has an 'any' type.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/HelloWorld.tsx(52,15):
TS7031: Binding element 'width' implicitly has an 'any' type.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/HelloWorld.tsx(57,21):
TS7031: Binding element 'theme' implicitly has an 'any' type.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/HelloWorld.tsx(57,28):
TS7031: Binding element 'headerFontSize' implicitly has an 'any' type.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/HelloWorld.tsx(58,23):
TS7031: Binding element 'theme' implicitly has an 'any' type.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/HelloWorld.tsx(58,30):
TS7031: Binding element 'boldText' implicitly has an 'any' type.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/plugin/buildQuery.ts(19,10):
TS2305: Module '"../../../core/lib"' has no exported member 'buildQueryContext'.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/plugin/buildQuery.ts(19,29):
TS2305: Module '"../../../core/lib"' has no exported member 'QueryFormData'.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/plugin/buildQuery.ts(36,38):
TS7006: Parameter 'baseQueryObject' implicitly has an 'any' type.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/plugin/controlPanel.ts(19,10):
TS2305: Module '"../../../core/lib"' has no exported member 't'.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/plugin/controlPanel.ts(19,13):
TS2305: Module '"../../../core/lib"' has no exported member 'validateNonEmpty'.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/plugin/index.ts(19,10):
TS2305: Module '"../../../core/lib"' has no exported member 't'.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/plugin/index.ts(19,13):
TS2305: Module '"../../../core/lib"' has no exported member 'ChartMetadata'.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/plugin/index.ts(19,28):
TS2305: Module '"../../../core/lib"' has no exported member 'ChartPlugin'.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/plugin/transformProps.ts(19,10):
TS2305: Module '"../../../core/lib"' has no exported member 'ChartProps'.
ERROR in /home/vishaljeet/Desktop/superset_local/incubator-superset/superset-frontend/node_modules/@superset-ui/plugin-chart-hello-world/src/plugin/transformProps.ts(19,22):

Under<EMAIL_ADDRESS>there are no named exports for above mentioned components so the error seems legit. I am unable to understand what could have caused this issue ?
Posting hello-world plugins package.json files for reference as well.
{
  "name": "@superset-ui/plugin-chart-hello-world",
  "version": "0.15.2",
  "description": "Superset Chart - Hello World",
  "sideEffects": false,
  "main": "lib/index.js",
  "module": "esm/index.js",
  "files": [
    "esm",
    "lib"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/apache-superset/superset-ui.git"
  },
  "keywords": [
    "superset"
  ],
  "author": "Superset",
  "license": "Apache-2.0",
  "bugs": {
    "url": "https://github.com/apache-superset/superset-ui/issues"
  },
  "homepage": "https://github.com/apache-superset/superset-ui#readme",
  "publishConfig": {
    "access": "public"
  },
  "dependencies": {
    "@superset-ui/core": "^0.15.2",
    "@superset-ui/chart-controls": "^0.15.2"
  },
  "peerDependencies": {
    "react": "^16.13.1"
  },
  "devDependencies": {
    "@types/jest": "^26.0.0",
    "jest": "^26.0.1"
  }
}

Hi Team,
I have fixed the above issue by again linking the module using npm link command but this have not resulted in plugin being visible at chart selection wizard.
I am unable to find new plugin in registry constant under VizTypeControl.jsx as well.
If i do not use npm link again, i face the above mentioned error. what could be the issue ?

Hi @Vishal474 I've the same issue as you regarding the typescript compiler issues (https://github.com/apache-superset/superset-ui/issues/802) . Do you remember what you did exactly to solve those? You mention linking the plugin again, do you remember or have the concrete command for it? I did the usual yarn link mentioned in the tutorial but it didnt help.

I had the same issue. What I learned is that the versions of superset-frontend and the superset-ui plugins (including dependencies like the yeoman generator) must really match regarding their versions (e.g. 0.37.2 <-> 0.14.9). Reason is that there are lots of breaking / incompatible changes being introduced in both repos with each release/tag.
This is not really a comfortable situation, see also https://github.com/apache-superset/superset-ui/issues/679
The howto-documentation should make this more clear. It works only for a specific version of superset and superset-ui.

The codebase on this repo has been moved to the main Apache Superset repo, and consequently the repo is in the process of being archived. See the Superset Improvement Proposal for details: https://github.com/apache/superset/issues/13013 . While all currently open issues and PRs will be closed, we encourage you to reopen this issue on the main repo if it is still relevant.


UPN - Groups Supported?

Is it possible to enter AD Group or Distribution List instead of individual UPNs in the UPN author list?

Hi @khenry1111
Thanks for reaching out to us.
we will verify and let you know regarding this shortly.

Hi @khenry1111
we can't send messaged by adding AD Group or Distribution List instead of individual UPNs in the UPN author list

Ok, thank you.


Host database on the Exeter server

Move database onto Exeter server to get feedback from comittee

I'm doing this one today


last question, would i have to delete my other fps unlocker?

you can keep it if you want no need to delete it, just dont use it alongside bloxstrap

also to revert all the changes, i would just have to delete bloxstrap correct?

would i have to delete my other fps unlocker?

If you want to avoid conflicts, it would be best to do that.

also to revert all the changes, i would just have to delete bloxstrap correct?

Yeah, just uninstall and you'll be good.

i have the client settings fps unlocker, if i delete the folder (for the fps unlocker) is that enough or do i have to also delete the json file on my pc

Just the unlocker itself is fine.


retry in case of errors

first, thank you for this very nice package, I really like the idea and your concept. the very first question that comes into my mind is: how do I implement a "retry x times with x seconds sleep between" with this? would it make sense to implement a interceptor here or is this something that should be implemented outside of this package? thank for your advice 🙏

I found this online which could help, you can pass this middleware straight into the "addHandler" method in Saloon:
https://github.com/caseyamcl/guzzle_retry_middleware

this is amazing, thanks a lot for letting me know 🙏👍💪


Fix reloading on unaccepted changes

[x] This is a bugfix
[ ] This is a new feature
[ ] This is a code refactor
[ ] This is a test update
[ ] This is a typo fix
[ ] This is a metadata update

For Bugs and Features; did you add new tests?
No test added - I'm not sure how to test if a browser has been correctly reloaded after unaccepted changes
Motivation / Use-Case
Fix for https://github.com/webpack-contrib/webpack-hot-client/issues/26
Breaking Changes
No breaking changes.
Additional Info
Nope!

@pqml thanks for the PR 🍺 you must fill out the pull request template in it's entirety before we'll review it.

I've added more informations for this PR.

Thank you for adding that info. Please note that for future PR and Issues that we require the template to be filled out 😄

Sorry about that, it's fixed :sparkles:

@pqml ping

This is a pretty big show stopper for trying to use webpack-serve, as suggested, over webpack-dev-server. Can this be escalated?

I'm on-site for work this week folks, I'll see what I can do about getting that in.

I've patched a local version with these changes, can confirm this works perfectly! Great work @pksjce


Implement serialization in rulesets

[x] I have read and agree to the contributing guidelines for submitting new pull requests.

Describe your changes
Changed

Rulesets can now be serialized and deserialized.

Issue ticket number and link
NA

Would love a little more info on the thought process. If the goal is to make value and meta immutable is there any other ways? Like override the setter?

@dylanholmes The change comes from pyright's note that:
A frozen class cannot inherit from a class that is not frozen [reportGeneralTypeIssues]
Making SerializableMixin frozen would be a massive (maybe unfeasable) change.


BBT startup fails, blocking use and synchronization

Debug log ID
Zotero Debug ID = D1498337816
BBT log file.io = 3LT38P7J-fio-EkENJhJvee9i
What happened?
Recently, when I start Zotero, I often (but not always) get a popup with the following message:
TransactionInactiveError: A request was placed against a transaction which is currently not active, or which is finished.

When this happens, BBT does not appear in menus and in the list of add-ins and synchronization of my library with zotero.org stops working. This problem occurs on two different machines connected to the same Zotero account. Unfortunately, I do not see how to make a BBT debug log as when this happens, it is as if BBT was not present, so no option to generate a BBT log. Instead I have restarted with Zotero debugging enabled and that is what I copied in the Debug Log ID field.
I am running zotero-better-bibtex-6.7.263.xpi on Zotero 7.0.11 (64-bit) on Ubuntu 22.04.5 LTS.
This error seems to be linked to the use of a (system-wide) network proxy as it occurs when the proxy asks for a username and password (that I unfortunately do not know how to permanently modify). When I turn off the proxy, then I do not seem to get this error, but I need the proxy for journal access...

After submission, I see that the file.io BBT export option is now in the help menu, so I edited the original submission to indicate both the Zotero log ID and the BBT file.io log ID.

I'll look at the fio log when I'm home, but I have no access to D<number> logs, only the Zotero crew can access those.

OK, thanks. For the Zotero log ID, I just included it because I had already created it. Please just ignore it if it is not of use.

I see no relevant errors in the log, but debug logging was off at time of log submission, so maybe some were missed?

I redid the export of the debugging log. This time it was definitely enabled up until I exported the BBT file.io log. The error only occurs when the system wide proxy is enabled. The debug log ID is 67HLNVN4-fio-LdLzfv9jufYz .
Thanks,
David

How do I set the system wide proxy under linux?

Sorry for the slow response, I have been teaching (about Quarto + Zotero + BBT). To set the system wide proxy, you go to settings => network => network proxy. I use the automatic option with a proxy configuration URL...

Do you know a proxy I can use?

Yeah, that is the problem... You are welcome to use mine to the point of entering the username and password, but I am a little bit less enthusiastic about sending you my password...
In any case, the configuration URL for my proxy is http://proxy-doc.ird.fr/proxy.pac

Don't want it and fortunately don't need it. The problem reproduces. As of yet no idea how to get around it.

That is something of a relief as I was worried that it was perhaps a problem on my end. Let me know if I can provide any more information.


Swarm HTTP API and CORS not working for other verbs than GET

Hi,
It seems there is a bug in the implementation of the --cors option. I'm currently working on a web interface to manage a swarm cluster, and I consume the HTTP API using AngularJS.
I started the swarm manager with the --cors option, and I can use it for all the GET requests. But when it comes to the POST requests, nothing works anymore :
XMLHttpRequest cannot load http://<IP_ADDRESS>:3375/networks/create.
Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'http://localhost:9000' is therefore not allowed access. The response had HTTP status code 404.

The thing is, it didn't do a POST request, but an OPTIONS request.
So, I started digging a little. When in a CORS case, if you try to request with something else than GET, the browser will always asks the server if it can do the request using a OPTIONS request. The server is supposed to respond with headers to allow the browser to emit the real request :
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, PUT, DELETE, PATCH

It would be nice to implement this in the swam manager.

I'm going to guess this line, https://github.com/docker/swarm/blob/master/api/primary.go#L93 needs to be "/" or "/*". I am going to try to write a test.


added my name to guestbook.md

Another try...
Dear Mr. Sean Kross. Hello from Russian Federation.

Thank you!


Floating computer.

For the activity Find Meteorite Testing Site, in this case on Hyla-II a, the remote robot computer terminal next to the entrance is floating without support.

Game Version
<IP_ADDRESS>
Language
English (EN)
New Game
No
Reproduction Steps
Go to Hyla-II a, find the meteorite testing site, observe the floating computer.

https://steamcommunity.com/id/Michlo/screenshot/2202883944476166273/


Add support for LevelEventGenericPacket

Hmm could you rename readValue and writeValue to readTag(NbtType type) and writeTag(NbtType type, Object tag)? But everything else looks good to me


Add a method value($id) returning the parameter, the closure defining an object, or the object if the closure has already been invoked

We have a raw() method that allows to return the parameter or the closure, but we don't have a method that simply returns the value (the parameter, the closure, or the object resulting from the closure).
I would add the following code:
/**
 * Gets a parameter, the closure defining an object or the object if the closure has already been invoked.
 *
 * @param string $id The unique identifier for the parameter or object
 *
 * @return mixed The value of the parameter, the closure defining an object or the object
 *
 * @throws \InvalidArgumentException if the identifier is not defined
 */
public function value($id)
{
    if (!isset($this->keys[$id])) {
        throw new \InvalidArgumentException(sprintf('Identifier "%s" is not defined.', $id));
    }

    return $this->values[$id];
}

Example use case:
Let's say I want to include info from a Request object (available from the container) in my error logs.
The problem is that an error might occur early, before the Request object could even be created, and I need a way to check if the Request object is available.
The above function value() would allow me to know if $pimpe['request'] is a Closure or Request object (has the request already been instantiated?).
if (!$pimpe->value('request') instanceof Closure) {
    $request = $pimpe['request'];
    // add request info in error logs
}

@stof I no longer need this functionality for that specific use-case (I use a try/finally). should we close this issue If nobody needs this?


Which configuration does the extension use when it publishes?

When you publish a serverless.template file, which project configuration is used? Can you specify a configuration to use?

Sorry - dumb question. It's set with CodeUri. Duh.


Remove unnecessary null pointer checks

An extra null pointer check is not needed in functions like the following.

_Gdiplus_BrushObject
_Win32_FontObject
ScopedPtr::release

null pointer check is needed there.

Are you aware that the delete operator implementation will tolerate passed null pointers?

I've really missed that info.
This issue is already fixed.
Thanks for your advise. 👍

Which commits will contain corresponding changes?

It is https://github.com/SLIBIO/SLib/commit/fe92599b596ddced1aee89e39672020d58891ba5


Add information to "The Event".

This is from the ISMIR 2019 site:
The annual conference of the International Society for Music Information Retrieval (ISMIR) is the world’s leading research forum on processing, searching, organizing and accessing music-related data.
The ISMIR Conference provides a meeting place for the discussion of MIR-related research. Its main goal is to foster the exchange of ideas across disciplines by bringing together researchers, developers, educators, librarians, students, and professional users.
ISMIR is a non-profit organization which, among other things, oversees the organization of the ISMIR Conference.

The second two paragraphs here are on event_card.md but don't show up in the event content
They should be moved to the page that has the "Event placeholder" note for now


cmd/cover: when a panic occurs in a function call, cover still marks the whole basic block covered

go version go1.6.2 darwin/amd64
This is similar to #10185, but the issue still occurs if the panic happens inside of a function call.
A contrived example:
rand.go:
package covertest

import (
	"log"
	"math/rand"
)

func Rand(i int64) int64 {
	v := rand.Int63n(i)
	log.Println(v)
	return v
}

func MaybeRand(i int64) int64 {
	defer func() {
		recover()
	}()
	return Rand(i)
}

rand_test.go:
package covertest

import "testing"

func TestMaybeRand(t *testing.T) {
	if MaybeRand(0) != 0 {
		t.Error("expected zero")
	}
}

Coverage should be less than 100% because the log.Println inside of Rand is never called. But executing the tests with coverage shows:
coverage: 100.0% of statements

The issue is that the coverage blocks are not fine grained enough if a panic occurs in a function call.

This is a reasonable request but is impractical to fix given the way the cover tool works. It works line-by-line, file-by-file. To solve it would require a much more global analysis of the program or be much more expensive. In your example it would either need to examine the rand package to see that Int63 can panic, or put a counter on every line, which could be too expensive in time and memory (and would require a major redesign).


Some keybinds don't work in mpv launched by invidtui

Config: latest Arch with invidtui from aur/invidtui-bin
Steps to reproduce: play any video with 'V', try to exit the player with 'q' (default mpv keybind for 'quit'), nothing happens
NB: thanks for creating this project

Some default keybindings are blocked in an invidtui-launched mpv instance, like the quit keybinding, since all standard keybindings are usually handled within invidtui itself. To quit MPV, currently, you would use 'Shift+Q' within invidtui.
This was done so that while MPV exits, for example, the main invidtui instance would handle it and exit too.
This could be changed, however, like maybe, modifying MPV to reflect whatever defaults are set in invidtui?

Some default keybindings are blocked in an invidtui-launched mpv instance, like the quit keybinding, since all standard keybindings are usually handled within invidtui itself. To quit MPV, currently, you would use 'Shift+Q' within invidtui.

Yeah, I gave the code a quick look and it's clear. For the 'play audio' use case this is indeed the desired behaviour. However, it's not ergonomic for the 'play video' use case, especially if invidtui is going to crash when mpv terminates.

Agreed. The 'play audio' case has been tested more than the 'play video' case, so it seems. I will look into and optimize the 'play video' case as well.


GPSPRINGSECURITYCORE-305: auth.forceHttps can be sidestepped

Original Reporter: edo
Environment: Java 1.7_67, win7-64, Grails 2.4.3
Version: Grails-Spring-Security-Core 2.0
Migrated From: http://jira.grails.org/browse/GPSPRINGSECURITYCORE-305

This setting only configures functionality in Spring Security, so the issue is there, not in the plugin.


Doc updates for V3 Docker compose?

There are a lot of wildly varying examples on the web for using this with Docker compose v3, are there any thoughts about updating the docs to support it?

I could update the doc with the Docker compose v3 files used here if that suits you : https://github.com/nginx-proxy/docker-letsencrypt-nginx-proxy-companion/blob/master/docs/Docker-Compose.md

If it's helpful, I wrote a docker-compose example in docs here.
It needs a little revision, such as dropping the now no longer necessary dhparam volume, but should otherwise be useful?

Copy of current linked example
version: '3.8'
services:
  # Add the following `environment` and `volumes` to your existing `mailserver` service:
  mailserver:
    environment:
      # SSL_TYPE:         Uses the `letsencrypt` method to find mounted certificates.
      # VIRTUAL_HOST:     The FQDN that `nginx-proxy` will configure itself to handle for HTTP[S] connections.
      # LETSENCRYPT_HOST: The FQDN for a certificate that `acme-companion` will provision and renew.
      - SSL_TYPE=letsencrypt
      - VIRTUAL_HOST=mail.example.com
      - LETSENCRYPT_HOST=mail.example.com
    volumes:
      - ./docker-data/acme-companion/certs/:/etc/letsencrypt/live/:ro

  # If you don't yet have your own `nginx-proxy` and `acme-companion` setup,
  # here is an example you can use:
  reverse-proxy:
    image: nginxproxy/nginx-proxy
    container_name: nginx-proxy
    restart: always
    ports:
      # Port  80: Required for HTTP-01 challenges to `acme-companion`.
      # Port 443: Only required for containers that need access over HTTPS. TLS-ALPN-01 challenge not supported.
      - "80:80"
      - "443:443"
    volumes:
      # `certs/`:      Managed by the `acme-companion` container (_read-only_).
      # `docker.sock`: Required to interact with containers via the Docker API.
      # `dhparam`:     A named data volume to prevent `nginx-proxy` creating an anonymous volume each time.
      - ./docker-data/nginx-proxy/html/:/usr/share/nginx/html/
      - ./docker-data/nginx-proxy/vhost.d/:/etc/nginx/vhost.d/
      - ./docker-data/acme-companion/certs/:/etc/nginx/certs/:ro
      - /var/run/docker.sock:/tmp/docker.sock:ro
      - dhparam:/etc/nginx/dhparam

  acme-companion:
    image: nginxproxy/acme-companion
    container_name: nginx-proxy-acme
    restart: always
    environment:
      # Only docker-compose v2 supports: `volumes_from: [nginx-proxy]`,
      # reference the _reverse-proxy_ `container_name` here:
      - NGINX_PROXY_CONTAINER=nginx-proxy
    volumes:
      # `html/`:       Write ACME HTTP-01 challenge files that `nginx-proxy` will serve.
      # `vhost.d/`:    To enable web access via `nginx-proxy` to HTTP-01 challenge files.
      # `certs/`:      To store certificates and private keys.
      # `acme-state/`: To persist config and state for the ACME provisioner (`acme.sh`).
      # `docker.sock`: Required to interact with containers via the Docker API.
      - ./docker-data/nginx-proxy/html/:/usr/share/nginx/html/
      - ./docker-data/nginx-proxy/vhost.d/:/etc/nginx/vhost.d/
      - ./docker-data/acme-companion/certs/:/etc/nginx/certs/:rw
      - ./docker-data/acme-companion/acme-state/:/etc/acme.sh/
      - /var/run/docker.sock:/var/run/docker.sock:ro

# Once `nginx-proxy` fixes their Dockerfile, this named data volume can be removed from docs.
# Users can opt for a local bind mount volume like all others if they prefer, but this volume
# is only intended to be temporary.
volumes:
  dhparam:

Note that the mailserver container is mounting the certs volume as it doesn't go through nginx-proxy for TLS due to SMTP ports (25, 587, 465, etc) and manages that itself just with acme-companion providing the certs.
The example is for users with existing nginx-proxy setup to reference, but we also advise alternative approach with acme-companion for provisioning standalone certs too.
Feel free to copy and adapt to your own docs if you like, or migrate to generating and serving docs in the same manner (Github Pages via Github Actions building from markdown files).


Needs a quick start guide in docs

Should probably be written by someone other than me. Maybe the only thing that really needs to be covered is
main = do
  let e = JSON.readJSON "1"
  case e of
    Right (x :: Int) -> -- ...

I'll take this, meant to do it before, got distracted.

Fixed a while ago with the quickstart guide


Remove references to System.Windows.Forms

Remove references to System.Windows.Forms
For applications that are not using System.Windows.Forms - this is a problem.

why is it a problem? NAudio was created back in 2002 and is primarily focused on desktop Windows applications - whether you're doing WinForms or WPF, the windows messaging callbacks of WaveIn/WaveOut use that assembly. But if you're not doing desktop apps, just don't use those versions of WaveIn/WaveOut.

It will not compile within Unity3D because of these references.

It's also the only thing code wise preventing basic .Net Standard support.

I believe this is can be closed now, as only NAudio.WinForms references Windows Forms, and NAudio.Core is already .Net Standard.


[Global] Onedrive "connector" is not stable

I see inconsistent behaviours when working locally on the project and reloading frequently various the pages we have (like http://localhost:3000/posts/creating-adobe-experience-platform-pipeline-with-kafka.html). In the hlx up logs, I see errors like:
[hlx] error: Error while fetching Markdown from https://adobeioruntime.net/api/v1/web/helix/helix-services/word2md@latest?rid=9LMbVX53YZ22tg%2BP71%2BMuW14IJYsc%2FhB&src=helix%2Fgithub.com--davidnuescheler--theblog%2Fproducts&path=%2Fhead.docx&shareLink=https%3A%2F%2Fadobe.sharepoint.com%2Fsites%2FTheBlog%2FShared%2520Documents%2Ftheblog%3Fcsf%3D1%26e%3D8Znxth with the following options:
{ uri:
   'https://adobeioruntime.net/api/v1/web/helix/helix-services/word2md@latest?rid=9LMbVX53YZ22tg%2BP71%2BMuW14IJYsc%2FhB&src=helix%2Fgithub.com--davidnuescheler--theblog%2Fproducts&path=%2Fhead.docx&shareLink=https%3A%2F%2Fadobe.sharepoint.com%2Fsites%2FTheBlog%2FShared%2520Documents%2Ftheblog%3Fcsf%3D1%26e%3D8Znxth',
  json: false,
  timeout: 10000,
  time: true,
  followAllRedirects: true }

Looking at Coralogix, I also see plenty of messages like this (INFO, not ERROR):

{"message":"Error while converting document: %s { StatusCodeError: 404 -

Maybe @tripodsan can help here.

Since this morning, I'm not getting anything rendered anymore :(
Same console output as above.

if you hit https://adobeioruntime.net/api/v1/web/helix/helix-services/word2md@latest?rid=4xxbLM72Cz5E%2FJ0Spd4DwEi9S%2FUnHGxo&src=helix%2Fgithub.com--davidnuescheler--theblog%2Fhomepage&path=%2Findex.docx&shareLink=https%3A%2F%2Fadobe.sharepoint.com%2Fsites%2FTheBlog%2FShared%2520Documents%2Ftheblog%3Fcsf%3D1%26e%3D8Znxth repeatedly, you will get AZURE_WORD2MD_CLIENT_ID parameter missing` every other time...

this is no longer the case.


change repo name: poker ==> poker-base

I'd recommend changing the repo name to poker-base as well.

Thanks for this one :)


Add objectId validation for mongoDB

There is an indenting problem. Can you adjust the line indenting?

Can you check last commit.


Install Not Working

Hi,
Been trying to get your software to work with Inmotion Hosting but can't seem to get it right. At first I get a .htaccess error with php_flag, with this error I am not able to even open the install/index.php. If I remove that code from the .htaccess I can then access the install directory. I edit the includes/config.php, with all the correct information, and I am told it cannot connect to the database.
If I try to setup the database tables myself and run the software it seems to work and I create users but when logged in as an admin most the options do no show up and the software is useless.
Would anyone be able to help me get this setup? I tried creating an account on the forums but there doesn't seem to be a place to register.

The author of the script has apparently heavily rewritten it, then stopped. Lots of bugs.
If you just want to get it installed, add the following in install/index.php after "require('../includes/config.php');":
$mysqli = new mysqli(DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
$mysqli->set_charset('utf8');
And then find:
if (!$dbConnected)
and replace with:
if (!$mysqli)

A few other critical fixes:
In includes/header.php, find:

Replace with:
Teams
Schedules
In includes/application_top.php, find:
//if (!$mysqli) {
and replace with:
if (!$mysqli) {
Also find:
}
//} else {
//	die('Database not connected.  Please check your config file for proper installation.');
//}
and replace with:
} else {
die('Database not connected.  Please check your config file for proper installation.');
}
}
After:
$adminUser = $login->get_user('admin');
Add:
if($user->userID == $adminUser->userID) {
$user->is_admin = 1;
} else {
$user->is_admin = 0;
}

Thank you for your bug reports.  I had failed to check in the updated database structure and some other minor updates, which have been checked in now.  Enjoy.


Make Deploy to Azure App Service support repeated deployments (OSOE-714)

Once https://github.com/github/roadmap/issues/755 is available, make the Deploy to Azure App Service workflow support repeated deployments, where if the code is unchanged, the artifact of the previous deployment will be used to quickly deploy without a new build.
Jira issue

https://github.com/github/roadmap/issues/755 is now closed and thus not on the horizon anymore.


UDA contract with allocation but no tokens

Currently it's possible to issue an UDA contract with an asset owner but no tokens. But the assetOwner field wants a seal and an allocation, and the latter is defined as struct Allocation(TokenIndex, OwnedFraction).
If the asset has no tokens I don't see why the allocation should refer to a token index that doesn't exist.
I would change the interface definition from assetOwner* and tokens* to assetOwner+ and tokens+. But I remember this was once said (https://github.com/LNP-BP/LNPBPs/pull/154#discussion_r1179659623):

Genesis now can just produce an issue right and not tokens (i.e. they may be issued later). Thus also a global type change and Issue parameters. This makes RGB21 compatible with RGB20

Therefore I'm ok keeping assetOwner* and tokens*, but IMO we should add a check that prevents setting an assetOwner without defining also tokens. Any other solution that removes this inconsistency will also be fine.

This can be achieved by creating an AluVM script checking genesis. I will try to do this.

BTW we can have more strict requirements in the scheme than in the interface. I mean even if the RGB21 interface allows optional tokens, in schema we can require the presence of at least one:
interface RGB21
    global tokens* :: TokenData
    -- ...

schema UDA implements RGB21
    global tokens+ :: TokenData
    -- ...

I made the necessary changes to the UDA schema in https://github.com/RGB-WG/rgb-schemata/pull/19


height:auto

For some reason, when I set height to auto, the .tse-scroll-content div still has a manually set 300px height, so the table does not size itself to full height.

This is a known issue in the latest beta that we are currently working on. Please revert back to beta.4.

@rwwagner90 should be fixed with the just released beta.7

@offirgolan it is fixed, thanks!


bug: sticky menu 1px issue on mobile

On mobile with Chrome on the page votes on the sticky nav when I scroll there is a 1px transparent space between nav and filters, see under "Votes (137)" we should fix that.
https://snapshotx.xyz/#/s:safe.eth/proposal/0x5cf64434792565591b005460db0460e9314753178d4aa5475dfc0ce4d45638a2/votes
This issue was fixed in delegates page:
https://snapshotx.xyz/#/sn:0x0041ada9121061198b52ae28edeec8ace7c23f2ba8d66938c129af1a2245701c/delegates

Not able to reproduce on Chrome iOS, is it an android only issue ?

It happens randomly for me and many times we can't notice it

Fixed via #341


scatter "angle" works with a constant but not with a column

Thank you for your effort, Patrik!  I have a challenge with pointing the marker at an angle, but I'm not certain bokeh can do this generally.
My dataframe has ~3400 rows and 3 columns.
df

Out[xxx]:
Xnum   Ynum  col3
..................

I have already eliminated NaNs:
df=df.dropna(axis=0,how='any')
I have tried this, it produces a graph on /Interactive%20Plot.html, and I can successfully change the angle:
df.plot_bokeh(kind="scatter",x="Xnum",y="Ynum" ,marker="triangle", size=8,angle=0.5,line_width=0.001,figsize=(400, 400) )
When I run this:
df.plot_bokeh(kind="scatter",x="Xnum",y="Ynum" ,marker="triangle", size="col3",angle=0.5,line_width=0.001,figsize=(400, 400) )
I get the error and no plot:

E-1001 (BAD_COLUMN_NAME): Glyph refers to nonexistent column name: col3 [renderer: GlyphRenderer(id='617da22f-e32c-4004-b8c6-a13be540d385', ...)]

Hi, thanks a lot for your feedback. Sorry for the late reply, but I haven't looked at the issues for a while because I was the only person working on the library so far. If you find more problems/issues, please report them and I try to respond faster in the future ;D.
The problem should be fixed with the update 0.1. I hope to release it this week. The problem is that I in the current release 0.0.2 only the columns specified in x and y parameters are embedded into the plots and therefore only these are accessible with the additional keyword arguments. An example can be found in the updated README:
#Load Iris Dataset from Scikit Learn:
from sklearn.datasets import load_iris
iris = load_iris()
df = pd.DataFrame(iris["data"])
df.columns = iris["feature_names"]
df["species"] = iris["target"]
df["species"] = df["species"].map(dict(zip(range(3), iris["target_names"])))
df = df.sample(frac=1)

p_scatter = df.plot_bokeh.scatter(
    x="petal length (cm)",
    y="sepal width (cm)",
    category="species",
    title="Iris DataSet Visualization",
    size="sepal length (cm)")

You can barely see the differences in size in the example, but it works now.
If you do not want to wait, you can install it from the following wheel:
pandas_bokeh-0.1-py2.py3-none-any.zip
You just have to:

unzip the file
pip uninstall pandas-bokeh
pip install

If it isn't urgent, just wait for the 0.1 release.
Best Patrik


proposal: cmd/vet:  Better unused variable handling

The fact that Go compiler treats unused variables as error is cool, but it's annoying, so many developers uses code like this:
x := dummy() // get variable
_ = x        // assign to void to suppress error

If it's a temporary solution it is OK, but if variable really not used anywhere, it can lead to unnecessary resource or time consumption. For example:
func dummy() int { // dummy simulates long running operation
    time.Sleep(time.Second * 5)
    return random.Int()
}

func main() {
    x := dummy()
    _ = x

    fmt.Println("Hello World!")
}

xbt573 $ go run main.go
... waits 5 seconds ...
Hello World!

Therefore, i propose some changes to go vet:

Warn user if variable used or assigned only to void register
Warn user if variable used, but there is a unnecessary void register assign
Warn user if all of function return values are assigned to void register

It will help remove really unused variables and unnecessary void register assigns

The blank identifier is the standard way of indicating that a value is not to be used. It seems counter productive to make vet warn on it.
1 is intentional, 2 does not seem to a frequent issue, nor does it affect correctness. 3 will cause serious churn for projects that use things like https://github.com/kisielk/errcheck
Given the current state of the ecosystem, I don't think this meets the bar for frequency or precision for cmd/vet.
It may make sense as an external linter.
See also #20803


Scripts linter

A linter would be useful as git commit-hook that will ensure that:

all scripts have the parameters used declared (as comments) next to the script name
There's no more than 1 instances of ${{<var>:<default>}}: if the same default is used multiple times this should be extracted to set-state: <var> ${{<var>:<default>}} ahead (or proposed #160 )
... other linting rules?

there is already a linter in qDup that validates the structure of the yaml definition and does further analysis (i.e. counting signals etc). you can run it with qdup -T without executing the script, and it is run everytime the script is run.
I think there might be a couple of concerns in this issue that could be split out;

additional linting rules. e.g. counting instances of default sets, although there might be situations where you might want different default values depending on context
git commit-hook - is the idea here to run the linter on a PR to validate before the changes are committed? if so, I think this is a good idea, we just need a CI workflow to execute qDup -T . This workflow is possible now.
all scripts have the parameters used declared (as comments) next to the script name I am not clear on what the ask is here. is this in the context of ensuring that parameters required in qDup are being provided by external qDup wrappers?

atm the linter fails the test if it detects issues (@willr3 please correct me if I am wrong here), we might want to be able to have different levels, e.g. ERROR/WARN/INFO etc.  and having different behaviours (i.e. logging vs failure) depending on what levels of issues are discovered.

qDup has -T --test to run static analysis on the scripts to verify they are runnable. it is the same static analysis that qDup performs when starting a run and it checks for signal counts, invalid observing commands (e.g. no sh in a watch) and other requirements.
I think rvansa wants a linter that checks coding styles like the ones that enforce white-space rules in java projects. I can see it being helpful to raise warning for script practices that make them harder to maintain.
using ${key:defaultValue} in multiple places might be easier to maintain with a single set-state: key ${key:defaultValue}.
I'm opposed to style rules for running scripts but I can see a value in a way to check style along with the static analysis rules.
Perhaps a way to add io.hyperfoil.tools.qdup.config.RunRule through the globals?