Exception occurred while using Job Queuing With Commands

An unexpected error occurred in version 5.18.0, and the program was unable to start.
No Commands/Handlers found in the system! Have you called AddFastEndpoints() yet?
This exception will not occur before this version,I am using version 5.18.0 mainly to use the GetCommand and SetCommand methods in the IJobStorageRecord interface.
Here is the code I wrote
builder.Services.AddFastEndpoints();
builder.Services.AddJobQueues<SystemJobQueues, JobProvider>();

app.UseFastEndpointsAssembly();
// Use middleware here
app.UseJobQueuesAssembly();

The above code strictly sets the execution order

/// <summary>
/// 作业队列表
/// </summary>
[SugarTable("system_job_queues")]
[Description("作业队列表")]
[Tenant(SystemConst.MASTERDBID)]
public class SystemJobQueues : DEntityBase, IJobStorageRecord
{
    /// <summary>
    /// 队列Id
    /// </summary>
    [MaxLength(255)]
    [SugarColumn(ColumnDescription = "队列Id", Length = 255, IsNullable = false, ColumnName = "QueueId")]
    public string QueueID { get; set; } = default!;

    /// <summary>
    /// 参数信息
    /// </summary>
    private object command { get; set; } = null!;

    /// <summary>
    /// 执行指令JSON串
    /// </summary>
    [SugarColumn(ColumnDescription = "执行指令", ColumnName = "Command")]
    public string CommandJson { get; set; } = null!;

    /// <summary>
    /// 执行指令
    /// </summary>
    [NotMapped, SugarColumn(IsIgnore = true)]
    public object Command { get; set; } = null!;

    #region 执行隐式转换 解决数据库不能存储对象的问题
    TCommand IJobStorageRecord.GetCommand<TCommand>()
         => JsonExtension.ToObject<TCommand>(CommandJson)!;

    void IJobStorageRecord.SetCommand<TCommand>(TCommand command) => CommandJson = JsonExtension.ToJson(command);
    #endregion

    /// <summary>
    /// 执行时间
    /// </summary>
    [SugarColumn(ColumnDescription = "执行时间", ColumnName = "ExecuteAfter")]
    public DateTime ExecuteAfter { get; set; }

    /// <summary>
    /// 过期时间
    /// </summary>
    [SugarColumn(ColumnDescription = "过期时间", ColumnName = "ExpireOn")]
    public DateTime ExpireOn { get; set; }

    /// <summary>
    /// 是否完成
    /// </summary>
    [SugarColumn(ColumnDescription = "是否完成", ColumnName = "IsComplete")]
    public bool IsComplete { get; set; }
}

Using MySQL database

can you provide a repro project pls?
most likely has something to do with this:
app.UseFastEndpointsAssembly();
app.UseJobQueuesAssembly();

will close this ticket for now since it's not possible to debug the issue without a repro.
feel free to re-open when you can provide a repro project. thanks!


[DigitalAdapter] - Check & Simplify Constructor, Callbacks Methods

Evaluate the following improvements in the Digital Adapter class:

Introduce a ConfigurableDigitalAdapter as already done for the PhysicalAdapter. After this change the default DigitalAdapter will not directly manage the configuration
Simplify Property, Event, and Relationship callback methods since at the moment also the naming convention is not that clear
Allow the DigitalAdapter to read the Digital Twin State onDemand
Check the use and need of the method 'notifyDigitalAdapterBound'
Check Constructor with the correct flag for State Observability
Rename method onStateDescriptionChange ?

The current callback 'mess' is the following:

Digital Adapter Start/Stop:

onAdapterStart()
onAdapterStop()

Digital Twin Life Cycle Notifications:

onDigitalTwinCreate()
onDigitalTwinStart()
onDigitalTwinSync(IDigitalTwinState digitalTwinState)
onDigitalTwinUnSync(IDigitalTwinState digitalTwinState)
onDigitalTwinStop()
onDigitalTwinDestroy()

Digital Twin State Variation

onStateChangePropertyCreated(DigitalTwinStateProperty digitalTwinStateProperty)
onStateChangePropertyUpdated(DigitalTwinStateProperty digitalTwinStateProperty)
onStateChangePropertyDeleted(DigitalTwinStateProperty digitalTwinStateProperty)
onStateChangeActionEnabled(DigitalTwinStateAction digitalTwinStateAction)
onStateChangeActionUpdated(DigitalTwinStateAction digitalTwinStateAction)
onStateChangeActionDisabled(DigitalTwinStateAction digitalTwinStateAction)
onStateChangeEventRegistered(DigitalTwinStateEvent digitalTwinStateEvent)
onStateChangeEventRegistrationUpdated(DigitalTwinStateEvent digitalTwinStateEvent)
onStateChangeEventUnregistered(DigitalTwinStateEvent digitalTwinStateEvent)
onStateChangeRelationshipCreated(DigitalTwinStateRelationship digitalTwinStateRelationship)
onStateChangeRelationshipInstanceCreated(DigitalTwinStateRelationshipInstance digitalTwinStateRelationshipInstance)
onStateChangeRelationshipDeleted(DigitalTwinStateRelationship digitalTwinStateRelationship)
onStateChangeRelationshipInstanceDeleted(DigitalTwinStateRelationshipInstance digitalTwinStateRelationshipInstance)

Property Variation

onStatePropertyUpdated(DigitalTwinStateProperty digitalTwinStateProperty)
onStatePropertyDeleted(DigitalTwinStateProperty digitalTwinStateProperty)

Event Notification

onDigitalTwinStateEventNotificationReceived(DigitalTwinStateEventNotification digitalTwinStateEventNotification)

+1 I found it strange that the DigitalAdapter was parametrized whereas the Physical adapter was not

This was partially addressed in #16 we should close this issue and open new ones with the stuff that was left out


Consider ways for providing different defaults for different machines, meshes and science campaigns

My recent PRs (#63, #64 and #65) made clear to me that there isn't currently a clear mechanism for providing different default config options in zppy for different machines or meshes.  There are several performance options in MPAS-Analysis that need to be set up differently for low- vs. high-res MPAS-Ocean and -Seaice meshes.  I strongly suspect (and #9 seems to confirm) that the same is true for E3SM_Diags and its associated ncclimo calls.
Our supported machines are also configured somewhat differently in E3SM-Unified.  I couldn't get ESMF to compile with system MPI on Cori, so mapping-file generation needs to happen in serial there.  But it can (and should) happen in parallel on other machines.  For now, I'm hard-coding serial mapping-file generation on Cori in #63, which is fine.  But it does seem like other config options will come up where hard coding for each machine isn't the right option (users should ideally still be able to change the option) but the default should be different on different machines.
Finally, as I mentioned on Thursday, it would seem like a good idea to have different default configurations for the different science campaigns.  The Cryosphere campaign needs a lot more analysis than zppy runs by default.  It would also be my preference that WC settings not be prioritized as the defaults, but rather be given equal footing to the defaults for the other science campaigns.
By the way, we haven't found a great solution to these issues in MPAS-Analysis, and this is the reason for having a large number of clumsy and outdated examples in our configs directory.

@xylar : The Water Cycle focus was simply a result of zppy being developed as a Water Cycle effort initially. I totally agree that we need to incorporate more flexibility.  It seems to me that we have at least two dimensions:

Machine specific settings (cori, chrysalis, ...)
Targeted use (Water Cycle, Cryosphere, ...)

I can envision a number of ways to achieve extra flexibility, but I don't know what would work best for you. (There may also be options that I haven't thought of.)

Customize the template, like you have done in your recent PRs. Easy and straight forward, until it's too messy.
Maintain multiple templates (Water Cycle, Cryosphere, ...) and add a high level selector in zppy.
For machine specific settings, they could be abstracted and templatized elsewhere (especially if they need to be reused).
We could also consider having multiple MPAS Analysis tasks (although that is not my preferred option).

I assume you are also facing a similar challenge without using zppy. How do you handle it? Do you provide customized cfg files for targeted machines and uses? Does everyone make their own custom cfg file?
I'm happy to discuss options in more details.

@golaz, yes, we can keep doing 1. above and I also like the idea of 2.  So far, it seems like selectors are enough for 3. but there will likely come a time when a separate, machine-specific config file out help.  I agree with you that different MPAS-Analysis tasks (e.g. one for WC and one for Cryo) doesn't sound like a straightforward option, so let's not do 4.

I assume you are also facing a similar challenge without using zppy. How do you handle it? Do you provide customized cfg files for targeted machines and uses? Does everyone make their own custom cfg file?

It seems to be working well in E3SM-Unified and compass to have a config file for each machine, so I would recommend that approach.  The idea is that you ingest the default config file, then the machine config file, and finally the user's config file so they have the option to override the machine defaults wherever that makes sense.
We also have default config options for the Cryo campaign in a config file for MPAS-Analysis.  That has also worked well.  Users provide the cryo config file, then the custom config file at the command line (so the custom config file overrides the cryo defaults wherever needed).
MPAS-Analysis doesn't do a good job at providing machine-specific defaults.  We have a bunch of examples but we don't try to identify the machine or anything like that.  That was partly based on my experience with A-Prime, where I felt that too much emphasis had been placed on running on specific machines and not enough on robustly in general, regardless of machine.  I still think the individual diagnostics tools (MPAS-Analysis, E3SM_Diags, NCO, etc.) shouldn't get too attached to specific machines so I think zppy provides a great service in being a machine- and project-specific layer above those tools.
Anyway, let's keep the dialog going.  There's no rush to figure this out, nor any need to get it right on the first try.  Just worth experimenting with.

@forsyth2, this is an open-ended issue and it has been partially dealt with.  I suggest we close it and open more targeted issues related to it as needed.

I suggest we close it and open more targeted issues related to it as needed.

Different defaults for:

different machines: #240/#244
meshes: I don't think there are any issues/PRs for this
science campaigns: #135/#138 (water cycle), #144 (cryosphere), #151 (BGC)

@xylar Should I just close this issue and create a issue to provide different defaults for meshes then?

@xylar Should I just close this issue and create a issue to provide different defaults for meshes then?

I think the need for this hasn't yet arisen, expect that it would probably be very difficult to run zppy on E3SM high-res ocean meshes without a lot of tweaks.  You can open an issue if you like but it might be fine to wait for now and let folks that run into difficulties open more specific issues as needed.

Ok sounds good, I'll close this issue and we can open specific issues as they arise.


add ESIGMA generation tutorial and minor bug fixes

- added ESIGMA generation tutorial Jupyter notebook
- fixed epochs of inspiral quantities' PyCBC TimeSeries
such that the last time-grid point falls at 0

@Akash-Maurya-0899 ping me when you have split the commit into 2 and we can merge this.

@prayush Split the commit into two.


Error open RocksDB database in docker for windows

Motivation
To solve the error open RocksDB database in docker for windows
Modifications
$ docker run -it \
  -p 6650:6650 \
  -p 8080:8080 \
  -v "E:/data:/pulsar/data".ToLower() \
  apachepulsar/pulsar:{{site.current_version}} \
  bin/pulsar standalone

Result
Have no effect on.

hi @jiazhai @sijie
thanks
qianjin

Why does this work from the CMD.exe but not PowerShell?

@phreed : for running Pulsar on docker, please refer the latest documentation : http://pulsar.apache.org/docs/en/next/standalone-docker/#start-pulsar-in-docker
The new instruction should work across 3 platforms (Windows, Linux and Mac).


Visuals on the PR overview page

Pls see

A) propose to increase the vertical space between the button row and the title/date of the PR
B) While "Reviewers" is a title "None yet" is a value. Proposal to visually show that difference by color, font, or borders
C) Missing alignment
D) Propose to increate the vertical space between the check list and the button; increase the horizontal space between "using method" and the drop down

A) The buttons are currently intended to be aligned with the title, however they are currently a little too low. I've moved them to line up better with the title. If instead you were proposing that we move the buttons up above the title (still right aligned), then I will try that out.
B) Has already been addressed with bold and italics.
C) Looks like this one has already been addressed too.
D) Increased the vertical space by 4px. Fixed the missing space before the drop down.


Halfling font of bootstrap not found anymore

Starting with version <IP_ADDRESS> the path for the font "Glyphicons Halflings" in bootstrap is generated with a '//' a the beginning if the variable $_SERVER['DOCUMENT_ROOT'] ends with a '/'.
The resulting https://assets/bootstrap/fonts/glyphicons-halflings-regular.woff is then not found and instead glyph codes displayed by the browser.
It seems to be only a problem of @font-face (with @font-face{ src: url('../fonts/glyphicons-halflings-regular.eot') })
The commit breaking this was: ae5b492a2d1d3bb6bba72f54bb4d55ef38d41608
A local workaround is to fix the document root before calling less:
if ('/' === substr($_SERVER['DOCUMENT_ROOT'], -1)) {             $_SERVER['DOCUMENT_ROOT'] = substr($_SERVER['DOCUMENT_ROOT'], 0, -1);         }

what if DOCUMENT_ROOT does not exists (when you use command line for example) ?
Can you make a pull request to add tests/ for this ?
Also, an other workaround would be to define the correct path for @icon-font-path in variables.less


Fix EffectOp.isBidirectional

EffectOp.isBidirectional has wrong behavior in following program:
module bug

effect Exn(msg: String) : Unit / { Exn }

def main() = {
  var exit = false
  try {
    try {
      do Exn("throw")
    }
    with Exn { msg =>
      resume { do Exn("re-throw") }
    }
  }
  with Exn { msg => resume { () } }
}

The compiler outputs following error:
[error] bug.effekt:12:7: Wrong type of argument section
      resume { do Exn("re-throw") }
      ^^^^^^

The reason of this error is that EffectOp.isBidirectional of Exn is false because EffectOp.otherEffects is empty ({Exn} - Exn = {}). We expects that it's true because Exn is bidirectional effect.

Not sure I would call this a bug, since we haven't specified yet fully how this example should behave.
So far
effect Exn(msg: String) : Unit

would more be equivalent to
effect Exn(msg: String) : Unit / { Exc }

than to

effect Exn(msg: String) : Unit / {}
which I agree can be confusing.

The changes you propose in this PR should also be checked to be consistent with the behavior of Typer and Translator.

In my opinion, the traditional
effect Exn(msg: String) : Unit

should be the same as
effect Exn(msg: String) : Unit / {}

and
effect Exn(msg: String) : Unit / { Exn }

should be a bidirectional effect that requires Exn to be handled at the call-site.
The question is what should happen in the following example:
effect Exn(msg: String) : Unit / { Exn }

try {
  do Exn("hello")
} with Exn { (msg) =>
   println(msg); resume { do Exn(msg) }
}

And in my opinion it should loop and keep printing "hello".

I think what you propose makes sense and aligns with this PR. As mentioned it would be nice to have some test coverage for corner cases like the ones you showed.

Thanks for comments. I agree with @phischu for the behavior.
But the following programs does strange behavior. This prints only one handled, and this should keep print handled. It may be a bug.
module bug

effect Exn(msg: String) : Unit / { Exn }

def main() = {
  try {
    do Exn("throw")
  }
  with Exn { msg =>
    println("handled")
    resume { do Exn("re-throw") }
  }
}

BTW, I'll make a example as a corner case and fix conflicts.

Thanks for comments. I agree with @phischu for the behavior.
But the following programs does strange behavior. This prints only one handled, and this should keep print handled. It may be a bug.
module bug

effect Exn(msg: String) : Unit / { Exn }

def main() = {
  try {
    do Exn("throw")
  }
  with Exn { msg =>
    println("handled")
    resume { do Exn("re-throw") }
  }
}

BTW, I'll make a example as a corner case and fix conflicts.

Yes, that looks like a bug. I would expect it to keep printing "handled", like @phischu suggested

Yes, that looks like a bug. I would expect it to keep printing "handled", like @phischu suggested

I implemented the semantics proposed by @long-long-float in #44 -- it was easier to redo the changes than fully rebasing this branch. I am sorry for losing the commit history here.

I implemented the semantics proposed by @long-long-float in #44 -- it was easier to redo the changes than fully rebasing this branch. I am sorry for losing the commit history here.


The dependent addon won't be installed first in all clusters when trying to enable the parent addon by deploy2env

Describe the bug

The dependent addon won't be installed first in all clusters when trying to enable the parent addon by deploy2env
To Reproduce

Apply the addon observability who depends on addon observability-assets by deploy2env policy.

The applied application is as below.
➜  ~ k get application addon-observability -n vela-system -o yaml
apiVersion: core.oam.dev/v1beta1
kind: Application
metadata:
  annotations:
    app.oam.dev/last-applied-configuration: '{"kind":"Application","apiVersion":"core.oam.dev/v1beta1","metadata":{"name":"addon-observability","namespace":"vela-system","creationTimestamp":null,"labels":{"addons.oam.dev/name":"observability","oam.dev/render-hash":"3222df9314ea5985"}},"spec":{"components":[{"name":"loki","type":"helm","properties":{"chart":"loki-stack","releaseName":"loki","repoType":"helm","targetNamespace":"vela-system","url":"https://charts.kubevela.net/addons","version":"2.4.1"},"traits":[{"type":"register-grafana-datasource","properties":{"access":"proxy","credentialSecret":"grafana","credentialSecretNamespace":"vela-system","grafanaServiceName":"grafana","grafanaServiceNamespace":"vela-system","name":"loki","namespace":"vela-system","service":"loki","type":"loki"}}]},{"name":"kube-state-metrics","type":"helm","properties":{"chart":"kube-state-metrics","repoType":"helm","targetNamespace":"vela-system","url":"https://charts.kubevela.net/addons","values":{"image":{"repository":"oamdev/kube-state-metrics","tag":"v2.1.0"}},"version":"3.4.1"}},{"name":"grafana","type":"helm","properties":{"chart":"grafana","releaseName":"grafana","repoType":"helm","targetNamespace":"vela-system","url":"https://charts.kubevela.net/addons","version":"6.14.1"},"traits":[{"type":"pure-ingress","properties":{"domain":"abc.com","http":{"/":80}}},{"type":"import-grafana-dashboard","properties":{"credentialSecret":"grafana","credentialSecretNamespace":"vela-system","grafanaServiceName":"grafana","grafanaServiceNamespace":"vela-system","urls":["https://charts.kubevela.net/addons/dashboards/kubevela_core_logging.json","https://charts.kubevela.net/addons/dashboards/kubevela_core_monitoring.json","https://charts.kubevela.net/addons/dashboards/kubevela_application_logging.json","https://charts.kubevela.net/addons/dashboards/flux2/cluster.json"]}}]},{"name":"prometheus-server","type":"helm","properties":{"chart":"prometheus","releaseName":"prometheus","repoType":"helm","targetNamespace":"vela-system","url":"https://charts.kubevela.net/addons","values":{"alertmanager":{"persistentVolume":{"size":"20Gi"}},"server":{"persistentVolume":{"size":"20Gi"}}},"version":"14.4.1"},"traits":[{"type":"register-grafana-datasource","properties":{"access":"proxy","credentialSecret":"grafana","credentialSecretNamespace":"vela-system","grafanaServiceName":"grafana","grafanaServiceNamespace":"vela-system","name":"prometheus","namespace":"vela-system","service":"prometheus-server","type":"prometheus"}}]}],"policies":[{"name":"domain","type":"env-binding","properties":{"envs":[{"name":"staging","patch":{"components":[{"name":"grafana","traits":[{"properties":{"domain":"staging.abc.com"},"type":"pure-ingress"}],"type":"helm"}]},"placement":{"clusterSelector":{"name":"staging"}}}]}}],"workflow":{"steps":[{"name":"deploy-control-plane","type":"apply-application-in-parallel"},{"name":"staging","type":"deploy2env","properties":{"env":"staging","parallel":true,"policy":"domain"}}]}},"status":{}}'
    oam.dev/kubevela-version: v1.2.0
  creationTimestamp: "2021-12-23T02:45:25Z"
  finalizers:
  - app.oam.dev/resource-tracker-finalizer
  generation: 1
  labels:
    addons.oam.dev/name: observability
    oam.dev/render-hash: 3222df9314ea5985
  managedFields:
  - apiVersion: core.oam.dev/v1beta1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .: {}
          f:app.oam.dev/last-applied-configuration: {}
        f:labels:
          .: {}
          f:addons.oam.dev/name: {}
          f:oam.dev/render-hash: {}
      f:spec:
        .: {}
        f:components: {}
        f:policies: {}
        f:workflow:
          .: {}
          f:steps: {}
    manager: vela
    operation: Update
    time: "2021-12-23T02:45:25Z"
  - apiVersion: core.oam.dev/v1beta1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          f:oam.dev/kubevela-version: {}
        f:finalizers: {}
      f:status:
        .: {}
        f:appliedResources: {}
        f:conditions: {}
        f:latestRevision:
          .: {}
          f:name: {}
          f:revision: {}
          f:revisionHash: {}
        f:observedGeneration: {}
        f:policy: {}
        f:services: {}
        f:status: {}
        f:workflow:
          .: {}
          f:appRevision: {}
          f:contextBackend:
            .: {}
            f:name: {}
            f:uid: {}
          f:finished: {}
          f:message: {}
          f:mode: {}
          f:startTime: {}
          f:steps: {}
          f:suspend: {}
          f:terminated: {}
    manager: kubevela
    operation: Update
    time: "2021-12-23T02:45:36Z"
  name: addon-observability
  namespace: vela-system
  resourceVersion: "16297686"
  uid: 3fa4a392-21ed-4399-a577-6306674311c2
spec:
  components:
  - name: loki
    properties:
      chart: loki-stack
      releaseName: loki
      repoType: helm
      targetNamespace: vela-system
      url: https://charts.kubevela.net/addons
      version: 2.4.1
    traits:
    - properties:
        access: proxy
        credentialSecret: grafana
        credentialSecretNamespace: vela-system
        grafanaServiceName: grafana
        grafanaServiceNamespace: vela-system
        name: loki
        namespace: vela-system
        service: loki
        type: loki
      type: register-grafana-datasource
    type: helm
  - name: kube-state-metrics
    properties:
      chart: kube-state-metrics
      repoType: helm
      targetNamespace: vela-system
      url: https://charts.kubevela.net/addons
      values:
        image:
          repository: oamdev/kube-state-metrics
          tag: v2.1.0
      version: 3.4.1
    type: helm
  - name: grafana
    properties:
      chart: grafana
      releaseName: grafana
      repoType: helm
      targetNamespace: vela-system
      url: https://charts.kubevela.net/addons
      version: 6.14.1
    traits:
    - properties:
        domain: abc.com
        http:
          /: 80
      type: pure-ingress
    - properties:
        credentialSecret: grafana
        credentialSecretNamespace: vela-system
        grafanaServiceName: grafana
        grafanaServiceNamespace: vela-system
        urls:
        - https://charts.kubevela.net/addons/dashboards/kubevela_core_logging.json
        - https://charts.kubevela.net/addons/dashboards/kubevela_core_monitoring.json
        - https://charts.kubevela.net/addons/dashboards/kubevela_application_logging.json
        - https://charts.kubevela.net/addons/dashboards/flux2/cluster.json
      type: import-grafana-dashboard
    type: helm
  - name: prometheus-server
    properties:
      chart: prometheus
      releaseName: prometheus
      repoType: helm
      targetNamespace: vela-system
      url: https://charts.kubevela.net/addons
      values:
        alertmanager:
          persistentVolume:
            size: 20Gi
        server:
          persistentVolume:
            size: 20Gi
      version: 14.4.1
    traits:
    - properties:
        access: proxy
        credentialSecret: grafana
        credentialSecretNamespace: vela-system
        grafanaServiceName: grafana
        grafanaServiceNamespace: vela-system
        name: prometheus
        namespace: vela-system
        service: prometheus-server
        type: prometheus
      type: register-grafana-datasource
    type: helm
  policies:
  - name: domain
    properties:
      envs:
      - name: staging
        patch:
          components:
          - name: grafana
            traits:
            - properties:
                domain: staging.abc.com
              type: pure-ingress
            type: helm
        placement:
          clusterSelector:
            name: staging
    type: env-binding
  workflow:
    steps:
    - name: deploy-control-plane
      type: apply-application-in-parallel
    - name: staging
      properties:
        env: staging
        parallel: true
        policy: domain
      type: deploy2env
status:
  appliedResources:
  - apiVersion: source.toolkit.fluxcd.io/v1beta1
    cluster: staging
    creator: workflow
    kind: HelmRepository
    name: loki
    namespace: vela-system
  - apiVersion: helm.toolkit.fluxcd.io/v2beta1
    cluster: staging
    creator: workflow
    kind: HelmRelease
    name: loki
    namespace: vela-system
  - apiVersion: grafana.extension.oam.dev/v1alpha1
    cluster: staging
    creator: workflow
    kind: DatasourceRegistration
    name: loki-register-grafana-datasource-666c776588
    namespace: vela-system
  - apiVersion: source.toolkit.fluxcd.io/v1beta1
    cluster: staging
    creator: workflow
    kind: HelmRepository
    name: kube-state-metrics
    namespace: vela-system
  - apiVersion: helm.toolkit.fluxcd.io/v2beta1
    cluster: staging
    creator: workflow
    kind: HelmRelease
    name: kube-state-metrics
    namespace: vela-system
  - apiVersion: source.toolkit.fluxcd.io/v1beta1
    cluster: staging
    creator: workflow
    kind: HelmRepository
    name: grafana
    namespace: vela-system
  - apiVersion: helm.toolkit.fluxcd.io/v2beta1
    cluster: staging
    creator: workflow
    kind: HelmRelease
    name: grafana
    namespace: vela-system
  - apiVersion: networking.k8s.io/v1beta1
    cluster: staging
    creator: workflow
    kind: Ingress
    name: grafana
    namespace: vela-system
  - apiVersion: grafana.extension.oam.dev/v1alpha1
    cluster: staging
    creator: workflow
    kind: ImportDashboard
    name: grafana-import-grafana-dashboard-6c6995c5db
    namespace: vela-system
  - apiVersion: source.toolkit.fluxcd.io/v1beta1
    cluster: staging
    creator: workflow
    kind: HelmRepository
    name: prometheus-server
    namespace: vela-system
  - apiVersion: helm.toolkit.fluxcd.io/v2beta1
    cluster: staging
    creator: workflow
    kind: HelmRelease
    name: prometheus-server
    namespace: vela-system
  - apiVersion: grafana.extension.oam.dev/v1alpha1
    cluster: staging
    creator: workflow
    kind: DatasourceRegistration
    name: prometheus-server-register-grafana-datasource-58d89586dd
    namespace: vela-system
  - apiVersion: source.toolkit.fluxcd.io/v1beta1
    creator: workflow
    kind: HelmRepository
    name: loki
    namespace: vela-system
  - apiVersion: helm.toolkit.fluxcd.io/v2beta1
    creator: workflow
    kind: HelmRelease
    name: loki
    namespace: vela-system
  - apiVersion: grafana.extension.oam.dev/v1alpha1
    creator: workflow
    kind: DatasourceRegistration
    name: loki-register-grafana-datasource-666c776588
    namespace: vela-system
  - apiVersion: source.toolkit.fluxcd.io/v1beta1
    creator: workflow
    kind: HelmRepository
    name: kube-state-metrics
    namespace: vela-system
  - apiVersion: helm.toolkit.fluxcd.io/v2beta1
    creator: workflow
    kind: HelmRelease
    name: kube-state-metrics
    namespace: vela-system
  - apiVersion: source.toolkit.fluxcd.io/v1beta1
    creator: workflow
    kind: HelmRepository
    name: grafana
    namespace: vela-system
  - apiVersion: helm.toolkit.fluxcd.io/v2beta1
    creator: workflow
    kind: HelmRelease
    name: grafana
    namespace: vela-system
  - apiVersion: networking.k8s.io/v1beta1
    creator: workflow
    kind: Ingress
    name: grafana
    namespace: vela-system
  - apiVersion: grafana.extension.oam.dev/v1alpha1
    creator: workflow
    kind: ImportDashboard
    name: grafana-import-grafana-dashboard-6c6995c5db
    namespace: vela-system
  - apiVersion: source.toolkit.fluxcd.io/v1beta1
    creator: workflow
    kind: HelmRepository
    name: prometheus-server
    namespace: vela-system
  - apiVersion: helm.toolkit.fluxcd.io/v2beta1
    creator: workflow
    kind: HelmRelease
    name: prometheus-server
    namespace: vela-system
  - apiVersion: grafana.extension.oam.dev/v1alpha1
    creator: workflow
    kind: DatasourceRegistration
    name: prometheus-server-register-grafana-datasource-58d89586dd
    namespace: vela-system
  conditions:
  - lastTransitionTime: "2021-12-23T02:45:25Z"
    reason: Available
    status: "True"
    type: Parsed
  - lastTransitionTime: "2021-12-23T02:45:25Z"
    reason: Available
    status: "True"
    type: Revision
  - lastTransitionTime: "2021-12-23T02:45:25Z"
    reason: Available
    status: "True"
    type: Policy
  - lastTransitionTime: "2021-12-23T02:45:25Z"
    reason: Available
    status: "True"
    type: Render
  - lastTransitionTime: "2021-12-23T02:47:40Z"
    reason: Available
    status: "True"
    type: Workflow
  - lastTransitionTime: "2021-12-23T02:47:51Z"
    reason: ReconcileSuccess
    status: "True"
    type: Ready
  latestRevision:
    name: addon-observability-v1
    revision: 1
    revisionHash: 87c1bd521d7741b4
  observedGeneration: 1
  policy:
  - name: domain
    status:
      clusterConnections:
      - clusterName: staging
        lastActiveRevision: addon-observability-v1
      envs:
      - env: staging
        placements:
        - cluster: staging
          namespace: ""
    type: env-binding
  services:
  - healthy: true
    message: Fetch repository successfully, Create helm release successfully
    name: loki
    traits:
    - healthy: true
      type: register-grafana-datasource
    workloadDefinition:
      apiVersion: ""
      kind: ""
  - healthy: true
    message: Fetch repository successfully, Create helm release successfully
    name: kube-state-metrics
    workloadDefinition:
      apiVersion: ""
      kind: ""
  - healthy: true
    message: Fetch repository successfully, Create helm release successfully
    name: grafana
    traits:
    - healthy: true
      message: 'Visiting URL: staging.abc.com, IP: <IP_ADDRESS>'
      type: pure-ingress
    - healthy: true
      type: import-grafana-dashboard
    workloadDefinition:
      apiVersion: ""
      kind: ""
  - healthy: true
    message: Fetch repository successfully, Create helm release successfully
    name: prometheus-server
    traits:
    - healthy: true
      type: register-grafana-datasource
    workloadDefinition:
      apiVersion: ""
      kind: ""
  status: running
  workflow:
    appRevision: addon-observability-v1:f75507fdf5108f2a
    contextBackend:
      name: workflow-addon-observability-context
      uid: 837e5e22-59a3-4738-8b72-866aa8c61922
    finished: true
    message: Succeeded
    mode: StepByStep
    startTime: "2021-12-23T02:45:25Z"
    steps:
    - firstExecuteTime: "2021-12-23T02:45:26Z"
      id: 4x4tdocmbk
      lastExecuteTime: "2021-12-23T02:45:26Z"
      name: deploy-control-plane
      phase: succeeded
      type: apply-application-in-parallel
    - firstExecuteTime: "2021-12-23T02:45:36Z"
      id: 6f6xyuigw1
      lastExecuteTime: "2021-12-23T02:47:40Z"
      name: staging
      phase: succeeded
      type: deploy2env
    suspend: false
    terminated: false

Check the installed order of components in these two addons.

Component grafana-registration locates in addon observability-assets.

In the control cluster

The component are dispatched almost in the same time.
➜  ~ k get helmreleases.helm.toolkit.fluxcd.io -n vela-system -w
NAME                   READY   STATUS                             AGE
grafana                True    Release reconciliation succeeded   4m37s
grafana-registration   True    Release reconciliation succeeded   4m39s
kube-state-metrics     True    Release reconciliation succeeded   4m37s
loki                   True    Release reconciliation succeeded   4m37s
prometheus-server      True    Release reconciliation succeeded   4m37s

In the child cluster

The component grafana-registration is installed after those from the parent addon.
➜  ~ k get helmreleases.helm.toolkit.fluxcd.io -n vela-system -w
NAME                   READY   STATUS                             AGE
grafana                True    Release reconciliation succeeded   7m48s
grafana-registration   True    Release reconciliation succeeded   6m10s
kube-state-metrics     True    Release reconciliation succeeded   7m50s
loki                   True    Release reconciliation succeeded   7m51s
prometheus-server      True    Release reconciliation succeeded   7m45s

Expected behavior

Screenshots

KubeVela Version

Cluster information

Additional context

I think this issue have been fixed. Can you try again with the latest version? @zzxwill

I think this bug has been fixed. Closing.


Multiple interaces for floating rule

Since version 1.4.0 there is a possibility to manage floating firewall rules.
But the meaning of floating rules is, that they can be related to multiple interfaces.
When you open a firewall rule edit page, you can see "multiselect" text area to pick multiple interfaces.

This is not possible to achieve with API.
Solution proposal:

an interface string attribute in the request body can consume multiple values separated by "," delimiter (so we can set it up via existing attribute)
or
Duplicating the /firewall_rules endpoint to firewall_floating_rules and handling the floating rules completely separate

Cheers,
Viktor

Asked here while ago on the relevant PR btw:
https://github.com/jaredhendrickson13/pfsense-api/pull/188#issuecomment-1070593580

And actually, the values from already existing floating rules are also returned in "opt1,opt9" format in interface attribute.
Is there any reason why not enable multiple interfaces separated by "," (without spaces) - like backwards compatibility reasons etc?


[XamarinProfiler-Windows]: Accessibility: Color Contrast: MAS1.4.3: "Size text" in snapshot popup window is not having color contrast ratio of 4.5:1

Steps to Reproduce

Follow the Pre-requisite to launch the xamarin profiler.
Select the available instruments to "Allocations" and hit "Start Profiling"button.
This will invoke "Allocations" profiling page. Navigate to "Root&Cycles" tab and invoke it.
Verify the color contrast ratio of "Text Present" under Graph column

Pre-Requisite:

Install Xamarin Profiler.
Launch Profiler through ".mlpd" file.

Expected Behavior
Color contrast ratio should be minimum 4.5:1
Actual Behavior
Color contrast ratio is less than 4.5:1 i.e, 2.5:1 - 2.9:1
See the screenshots attached
User Impact
Low vision user will feel difficult in seeing the text
Screendhots

Environment
Microsoft Windows version: 1803(OS Build 17134.112)
Xamarin Profiler version: <IP_ADDRESS>2

Log File

Please add the following labels to this bug:
A11yMAS
Accessibility
MAS1.4.3
Xamarin-Profiler-Windows
Wipro


Set up gha repoman CI with Azure Pipelines

Other considerations:

Folks opening up PRs against azure/setup-azd repo are not going to get reviews and must open their PRs in azure/azure-dev instead. Create a GH Action that comments on new PRs to this effect and closes them immediately. Make sure to @mention the user who opened the PR in the body of the message... it increases the likelihood they'll see the message.
Update contributing guidelines to this effect
Dependabot still needs to run and open updates but should do that in the azure-dev repo instead of the setup-azd repo. Create a GH Action in azure-dev which does this. Having that GH Action in the setup-azd repo would only create noise so eliminate that.

For further inspiration see https://github.com/Azure/azure-dev/blob/main/eng/pipelines/templates/steps/publish-cli.yml#L244-L266
An adaptation here would look like:
    - pwsh: git clone https://github.com/Azure/setup-azd
      displayName: Clone Azure/setup-azd

    - task: ... Run tests, update the local copy of `dist/`, check for differences, etc.

    - template: /eng/common/pipelines/templates/steps/git-push-changes.yml
      parameters:
        BaseRepoBranch: pr-from-azure-dev/<pr#>   # <--- Use some kind of name here that's obvious what's going on

        # Do all of your testing against another repo like your fork before using `Azure`
        # TODO: Set to `Azure` before merging to main
        BaseRepoOwner: hemarina
        TargetRepoName: setup-azd
        WorkingDirectory: setup-azd
        CommitMsg: Update for PR# <pr #> (possibly a link to the PR in `azure-dev`)


Update stack.md

Thank you for your contribution!  It's a good way to contribute to Hacktoberfest 😎


remove domain assertions from slot definitions

I had previously pushed for adding them exhaustively, but it just adds more complciation.

I'll take care of these since I started with some of my last PRs.


Bump GMT dev version from 6.2.0rc2 to 6.3.0.dev0+13dde94

This PR will update the following package:

gmt from 6.2.0rc2 to 6.3.0.dev0+13dde94

Full list of commits made since last release viewable at compare view

Notes for merging this PR:

Feel free to push to the bot's branch to update this PR if needed.
Checklist before merging this PR:

[ ] Dependencies have been updated if changed
[ ] Tests have passed

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

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

@conda-forge-admin, please rerender


Remove depricated use of "@coroutine" decorator

Running the test for Python 3.8 yields the following warnings:
tests/v16/test_v16_charge_point.py::test_route_message_with_existing_route
tests/v20/test_v20_charge_point.py::test_route_message_with_existing_route
  /home/developer/projects/tmh-ocpp/ocpp/charge_point.py:186: DeprecationWarning: "@coroutine" decorator is deprecated since Python 3.8, use "async def" instead
    response = await asyncio.coroutine(handler)(**snake_case_payload)

tests/v16/test_v16_charge_point.py::test_route_message_with_existing_route
tests/v20/test_v20_charge_point.py::test_route_message_with_existing_route
  /home/developer/.pyenv/versions/3.8.0/envs/ocpp-py38/lib/python3.8/site-packages/asynctest/mock.py:599: DeprecationWarning: "@coroutine" decorator is deprecated since Python 3.8, use "async def" instead
    def proxy():

tests/v16/test_v16_charge_point.py::test_route_message_with_existing_route
tests/v20/test_v20_charge_point.py::test_route_message_with_existing_route
  /home/developer/projects/tmh-ocpp/ocpp/charge_point.py:217: DeprecationWarning: "@coroutine" decorator is deprecated since Python 3.8, use "async def" instead
    asyncio.coroutine(handler)(**snake_case_payload))

The calls to asyncio.coroutine() should be replaced with something else.

Fixed by #109


Upgrading from 1.0.0 to 2.0.0

Hello! I have a quick question about upgrading. Previously, calling the updateRecall function looked like this: new_alpha, new_beta, new_half_life = updateRecall((alpha, beta, half_life), correct, hours_since_last_update) but now it is changed to new_alpha, new_beta, new_half_life = updateRecall((alpha, beta, half_life), total_correct, total_overall, hours_since_last_update) where hours_since_last_update is the number of hours since the model (alpha, beta, half_life) was last calculated.
Are the model values still good from version 1.0.0 and should I be aware of any other breaking changes?
Thanks! Fantastic library btw.

Yes! The models should be reused, I’ll make a note about that in the changelog.
And yes, your summary of the change is the only difference—instead of a boolean you pass in two integers; everything else is the same. You can recover the previous behavior by always setting your total_overall to 1, and adjusting total_correct for quiz.


Rework Word puzzle to display properly in 3D

Word puzzle display is messed up in the WEBGL context
Done:
when Word puzzle properly displays as a texture in WEBGL mode

Rendering fix to display properly on cube, input working on test file, but not on cube need to investigate


The sequenceMatch function similar to click house, when can StarRocks support it

Feature request
The sequenceMatch function similar to click house, when can StarRocks support it
Describe the solution you'd like
The sequenceMatch function similar to click house, when can StarRocks support it
Describe alternatives you've considered
The sequenceMatch function similar to click house, when can StarRocks support it
Additional context
The sequenceMatch function similar to click house, when can StarRocks support it

It seems like a window funnel function, we will do some investigation on it.


Trade UC04.08.01 - BrowseMyTrades

[Link to use case] (https://github.com/CMPUT301F15T02/Xperts/wiki/Use-Case:-Trade-with-Friends-(kathb))

As an owner or borrower, I can browse all past and current trades involving me.

This works. Still needs tests though

State is being saved, but in a weird way.  you can use getState() to get the state object then check its class.


Update illuminate components to the latest version(^7.0)

Update illuminate components to the latest version(^7.0)

@motian Thanks for the help with this, it's available in 4.9.0 now


File local-variables error: (doom-hook-error +cc-init-lsp-h (void-function lsp!))

What did you expect to happen?
No error happens, when I open *.c file, the lsp-server can work as expect.
What actually happened?
Open a *.c file, mini buffer show:

File local-variables error: (doom-hook-error +cc-init-lsp-h (void-function lsp!))

and lsp server exit.
Steps to reproduce:

SPC p p to open a C project and open a *.c file

System information:

```
emacs   version    27.0.90
        features   XPM JPEG TIFF GIF PNG SOUND GSETTINGS GLIB NOTIFY INOTIFY GNUTLS FREETYPE HARFBUZZ XFT ZLIB TOOLKIT_SCROLL_BARS GTK2 X11 XDBE XIM MODULES THREADS PDUMPER GMP
        build      Apr 14, 2020
        buildopts  ()
        windowsys  nil
        daemonp    nil
doom    version    2.0.9
        build      HEAD -> develop 25b240b9b0b0 2020-06-28 01:09:54 -0400
        dir        ~/.config/doom/
system  type       gnu/linux
        config     x86_64-pc-linux-gnu
        shell      /usr/bin/zsh
        uname      Linux 5.8.0-rc1+ #81 SMP Thu Jun 25 22:04:52 EDT 2020 x86_64
        path       (~/.cargo/bin /workspace/kernel/bin/bin ~/.cargo/bin /workspace/kernel/bin/bin /usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin /usr/games /usr/local/games /usr/share/bcc/tools /usr/local/go/bin /workspace/go/bin /workspace/go/src/github.com/google/syzkaller/tools ~/systemtap-4.2-40535/bin /snap/bin /opt/node-v12.16.0-linux-x64/bin /usr/share/bcc/tools /usr/local/go/bin /workspace/go/bin /workspace/go/src/github.com/google/syzkaller/tools ~/systemtap-4.2-40535/bin /snap/bin /opt/node-v12.16.0-linux-x64/bin /usr/local/libexec/emacs/27.0.90/x86_64-pc-linux-gnu)
config  envfile    nil
        elc-files  0
        modules    (:completion company ivy :ui doom doom-dashboard doom-quit hl-todo modeline nav-flash ophints (popup +all +defaults) vc-gutter vi-tilde-fringe window-select workspaces :editor (evil +everywhere) file-templates fold multiple-cursors rotate-text snippets :emacs dired electric ibuffer vc :term term :checkers syntax :tools docker (eval +overlay) fasd (lookup +docsets) lsp magit wakatime :lang (cc +lsp) data emacs-lisp (go +lsp) json kernel lua markdown (org +dragndrop +ipython +pandoc +present) (python +lsp) (rust +lsp) sh yaml :config (default +bindings +smartparens))
        packages   (n/a)
        unpin      (n/a)
        elpa       (n/a)
```

Not sure how it's possible that an autodef like lsp! isn't defined. An autodef is always defined, even if the containing module isn't enabled.

Did you remember to run doom sync last time you modified ~/.doom.d/init.el?
Check *Messages* (SPC h e or C-h e to open it) for errors/warnings at startup; possibly an unrelated startup error.
Does doom build fix it?

Not sure how it's possible that an autodef like lsp! isn't defined. An autodef is always defined, even if the containing module isn't enabled.

Did you remember to run doom sync last time you modified ~/.doom.d/init.el?
Yes, I tried it.
Check Messages (SPC h e or C-h e to open it) for errors/warnings at startup; possibly an unrelated startup error.
No error or warning.
Does doom build fix it?
No, I tried but the problem still exist.

After a clean reinstall, the problem gone. Thanks.


Aligning pixel to 3D point on D435i (deprojection): undistortion, alignment, frame synchronization, best practices

Required Info

Camera Model
D435i

Firmware Version
05.14

Operating System & Version
Ubuntu 18.04 (L4T)

Kernel Version (Linux Only)

Platform
Jetson TX2

SDK Version
2

Language
C++

Segment
Robot

Issue Description
Hello, I am trying to retrieve 3D point coordinates from pixels using a D435i.
I have some questions about the preferred way of doing this, and I would like to be referred to relevant documentation if possible, since the questions I'm asking have been answered multiple times but never referring to "authoritative" resources such as SDK docs or device datasheets.
Relevant context: I am aligning depth to RGB frames since I will be using RGB for processing with a neural net. I am not sure this is the recommended approach, I just figured it would be easier for me to query the correct data points, since the NN output is provided in the RGB reference frame. I receive two streams (depth and color) at the same resolution (848x480) and framerate (30fps).

Are the color and depth streams already undistorted by the SDK? Would it be of any use to calibrate intrinsics and distortion parameters before performing depth-to-color alignment?
When using rs2::pipeline::wait_for_frames(), are the depth and color frames always synchronized or should I take care of that? Ideally, I would love the hardware to take care of frame synchronization, but I don't know how to achieve that (in case it is even possible).
All postprocessing should be applied to the depth frame after alignment to color, is this correct?

Hi @Stack-it-up  Thanks very much for your questions.

Most of the streams have a distortion model applied to them (they are rectified).  An exception to this is the Y16 infrared format, which is unrectified as it is used for camera calibration.  Performing calibration with the Dynamic Calibration tool can be a useful way to improve alignment if you suspect that there is mis-alignment, as the tool calibrates both the depth and RGB sensors.

https://www.intel.com/content/www/us/en/download/645988/intel-realsense-d400-series-dynamic-calibration-tool.html
Alternatively, you could try resetting the camera to its factory-new default calibration using the instructions at https://github.com/IntelRealSense/librealsense/issues/10182#issuecomment-1019854487

When wait_for_frames() is used, it will try to find the best timestamp match between depth and RGB frames.  Also, RGB-depth sync on the same camera  should kick in automatically once both RGB and depth have the same actual FPS.

It is recommended that post-processing filters are applied before alignment in order to avoid distortion effects such as aliasing (jagged lines).

Hello @MartyG-RealSense and thanks for the quick reply.

You gave this verbatim answer on the Realsense help forum: I think it would be really useful if there was some reference table regarding which streams are rectified and which aren't. How do I know if frames in my stream need to be aligned using OpenCV?
I found some mentions of hardware sync being disabled by default on some cameras (which ones?). Do you mean to tell me that hardware sync is always enabled on D435 whenever the two streams have the same framerate?
I see, thanks for the heads up!

To the best of my knowledge, there is not a documentation table showing which streams are rectified or unrectified because most are rectified.

The SDK's official Projection documentation at the link below states that "Left and right infrared images are rectified by default (Y16 format is not)", "The two infrared streams have identical intrinsics" and "The two infrared streams have no distortion".
https://dev.intelrealsense.com/docs/projection-in-intel-realsense-sdk-20#appendix-model-specific-details
Streams are not aligned by default in the RealSense SDK, so if you have not specified in your program that the streams should be aligned then they will not be aligned.

https://github.com/IntelRealSense/librealsense/issues/10926#issuecomment-1298818196 has further information about sync between the depth and RGB sensors.  It states that on the D435 / D435i models, sync between the sensors is achieved by making RGB the 'master' and depth the 'slave' that follows RGB.

Thank you! The links above have been useful to me

You are very welcome.  Thanks very much for the update!


Add support for URL previews for matrix Synapse homeservers

Adds support for Synapse homeservers for Matrix.
Matrix generates URL previews for clients by the server making a single request to the URL and then caching and serving that result. Because of this, BetterTwitFix doesn't function as expected as Synapse uses an unrecognized user-agent string Synapse (bot; +https://github.com/matrix-org/synapse). Further details are available at https://matrix-org.github.io/synapse/latest/setup/installation.html?highlight=url pre#url-previews, and the value for the user-agent string was pulled from https://github.com/matrix-org/synapse/blob/master/synapse/rest/media/v1/preview_url_resource.py
I tested this locally with Postman and on my own homeserver and verified that it works.

This should now be active on vxtwitter.com

weird it doesn't seem to be working for me? i'm using the pony.house client and filly.chat home server


improve enum handling

fix https://github.com/dart-lang/vm_service_drivers/issues/86

improve the enum parsing - use a map instead of a O(n) list lookup
better toString() methods for some types

@danrubel

LGTM


Page Not Found: docs.zowe.org/stable/user-guide/cli-installcli/cli-configure-scs-on-headless-linux-os

Description

Pages to Update

Screenshots

Expected behavior

Additional context

@dvpbandaru
On what page did you click a link that gave you the 404?

Hi James,
Sorry for not providing the details.

Navigate to this page and the link with https://docs.zowe.org/stable/user-guide/install-ha-overview.md got broken. Please see this in the screenshot.
Thanks,
Prasad Bandaru

@dvpbandaru ... Hi Prasad - that page is in fact returning a 404 error. it is pointing to https://docs.zowe.org/stable/user-guide/install-ha-overview.md. This link is not the same topic that returned the 404 that you mentioned in your original notification to us. By some chance, do you recall the topic that returned the 404 error?   https://docs.zowe.org/stable/user-guide/cli-installcli/cli-configure-scs-on-headless-linux-os.
Thank you!
PS we will fix this latest error that you discovered!

@JamesBauman I think this 404 may be the same one as https://github.com/zowe/docs-site/issues/2275

Verified that the two link issues have been fixed on the Zowe doc site:

https://docs.zowe.org/stable/user-guide/install-zos where "High availability overview" now points to https://docs.zowe.org/stable/user-guide/zowe-ha-overview.
https://docs.zowe.org/stable/user-guide/cli-installcli where "Configure Secure Credential Store on headless Linux operating systems" now points to https://docs.zowe.org/stable/user-guide/cli-configure-scs-on-headless-linux-os

Closing this issue and thank you @dvpbandaru again for bringing this to the team!


Validate a resource when/after accepting an invitation ?

I've come across the following use case quite often in some of my previous projects and I'd like to submit a fix for this, if everyone else can agree that this is something that the community needs.
The use case

an invitation is sent to a user
the user is redirected to a custom page for an extension of Devise::InvitationsController
the user MUST accept terms of agreement before proceeding.

The Problem
The problem here is that I need to validate user.terms_accepted_at.present?, but only IF the invitation was accepted. Otherwise, the validation for terms of agreement should apply only when/after accepting the invitation.
Also, I could just overwrite the accept_resource method and run validations in there, but this really isn't too great, not to mention I want to memoize the callbacks, and this quickly turns into scope creeping e.g.:
def accept_resource
  run_callbacks :validations_for_invitations
    resource_class.accept_invitation!(params)
  end
end

Solutions

I am proposing the following solution: can we run validations inside the block for :invitation_accepted callbacks (lib/devise_invitable/model.rb), e.g.:

def accept_invitation!
  run_callbacks :invitation_accepted do
    if self.invited_to_sign_up? && self.valid?
      self.accept_invitation
      self.confirmed_at = self.invitation_accepted_at if self.respond_to?(:confirmed_at)
      self.save(:validate => false)
    end
  end
end

Another way of doing it is to include validations SPECIFICALLY for the invitation process, e.g.:

define_callbacks :invitation_validations, terminator: ->(target, result) { result == false }

#...

def accept_invitation!
  if self.invited_to_sign_up? && self.valid?
    run_callbacks :invitation_validations do
      run_callbacks :invitation_accepted do
        self.accept_invitation
        self.confirmed_at = self.invitation_accepted_at if self.respond_to?(:confirmed_at)
        self.save(:validate => false)
      end
    end
  end
end

In my opinion the cleanest way, why not just validate again in order to save the resource, e.g. don't use self.save(:validate => false), and just follow rails error handling conventions ?

def accept_invitation!
  # ...
  self.save()
  # ...
end

I don't understand your third proposal. Do you mean have this code for accept_invitation!?
      def accept_invitation!
        if self.invited_to_sign_up?
          run_callbacks :invitation_accepted do
            self.accept_invitation
            self.confirmed_at = self.invitation_accepted_at if self.respond_to?(:confirmed_at)
            self.save
          end
        end
      end

With this change I guess invitation_accepted callbacks will run even if validations fails. Probably it's ok for before callbacks, but I don't think running after callbacks when validations fails is good idea.
I think you can do this in your model, without changing nothing on devise invitable:
attr_reader :accepting_invitation
validates :terms_accepted_at, :presence => true, :if => :accepting_invitation
def accept_invitation!
  @accepting_invitation = true
  super
end

Well, first of all thanks for responding so quickly!

I don't understand your third proposal. Do you mean have this code for accept_invitation!?

Actually no. What I meant is have the exact same code, but call self.save without (:validate => false). This way, if any validations rely on invitation_accepted_at, they will simply be triggered on save and the invitation will not be accepted:
def accept_invitation!
  if self.invited_to_sign_up? && self.valid?
    run_callbacks :invitation_accepted do
      self.accept_invitation
      self.confirmed_at = self.invitation_accepted_at if self.respond_to?(:confirmed_at)
      self.save
    end
  end
end

This way, the :invitation_accepted callbacks don't end up running if the model is not valid to begin with.
The only problem might be that the invitation save fails, and :invitation_accepted after callbacks are still run. But that is fixed with:
set_callback :do_something, :after,  :accept_invitation, if: :valid?

I added accepting_invitation? method, you can use that as conditional in your validations, so terms acceptation is only check when invitation is being accepted.
validates :terms_accepted_at, :presence => true, :if => :accepting_invitation?

That solution makes sense, and thank you for putting this in. But I must ask: why do you have to call self.save(:validate => false) on line 96 ? Why not just do self.save ?

because valid? is already called so I don't see why run again validations

I agree, validations shouldn't rerun. It completely slipped my mind when I posted the code above.
What I was leaning towards is: why not just allow self.save to run the validations, instead of running them before running the accept_invitation callbacks?
if self.invited_to_sign_up?
  run_callbacks :invitation_accepted do
    self.accept_invitation
    self.confirmed_at = self.invitation_accepted_at if self.respond_to?(:confirmed_at)
    self.save
  end
end

But now I realize that if the save fails, we also have to break out of the invitation_accepted callbacks and not run the :after callbacks, maybe using the callbacks terminator:.
This allows others to create validations on the confirmed_at field and accepted_at field (i.e. can't accept an invitation on the weekends), without having to think of how the devise_invitable gem is implemented. What do you think ?

I was able to change this without changing current behaviour (I hope so, tests pass)

That's brilliant! I'll rerun things on my end later today and help double check that everything works as expected. Thanks so much!

So I ran things on my end and it seems in order to make sure after_invitation_accepted callbacks don't run, the callbacks also need a terminator:
    define_model_callbacks :invitation_created
    define_model_callbacks :invitation_accepted, terminator: ->(target, result) { result == false }

Also, it seems like there's no more need for @accepting_invitation. I tried taking that out but some of the tests started failing so I'll try to look more into that before submitting a PR

terminator shouldn't be needed, I have test for that, because define_model_callbacks already set that terminator. What rails version are you using?
@accepting_invitation is needed, if validation fails, invited_to_sign_up will be false because we don't have token (although it's present on db), but I fixed returning true if accepting invitation. Also, when accepting, on validations invitation_accepted? would return true, but it's not accepted really yet, so I return false checking @accepting_invitation


Unable to reach host ip:port from container using bridge network on CentOS

BUG REPORT INFORMATION
With the following docker version:
Client version: 1.6.2
Client API version: 1.18
Go version (client): go1.4.2
Git commit (client): ba1f6c3/1.6.2
OS/Arch (client): linux/amd64
Server version: 1.6.2
Server API version: 1.18
Go version (server): go1.4.2
Git commit (server): ba1f6c3/1.6.2
OS/Arch (server): linux/amd64
I'm not able to reach the host ip port from the container.
Basically the following fails:
from the host:
$ nc -l 9999
another terminal:
docker run --net=bridge ubuntu:14.04 /bin/sh -c "echo 'hi' | nc hostname -i 9999"
When running the above test in Ubuntu 14.04 with the same docker version 1.6.2 you'll see the ncat listen output hi and exits, but on CentOS it never receives the message.
Wierd part is that I'm able to ping the host ip, but somehow with a port it doesn't work.

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

Maybe I don't understand, but in the container hostname -i would yield the ip address of the container, not the host.

What is the error you get? Connection refused, host lookup failed, timeout while connecting, ... ?
Does the centos box have any iptables rules on it?
What does hostname -i output on the centos box?

@cpuguy83
docker run --net=bridge ubuntu:14.04 /bin/sh -c "echo 'hi' | nc `hostname -i` 9999"

The hostname -i part evaluates on the host, not in the container (double quotes, not single)

@phemmer Aaah, thanks I see now.

So im actually using another image tnachen/test-executor and it simply says cannot route to that IP address right away

And actually 1.7.0 with Ubuntu the same steps listed in the pr doesn't work as well, I believe with standard settings for docker and OS

@phemmer host name -I returned <IP_ADDRESS> for me

@tnachen Is firewalld running in your CentOS host?

@tnachen Any word?

closing because there was no response, but happy to reopen if this is still an issue on the current release


Contribution guidance vignette extra details needed for newcomers

During my testing out the contribution model yesterday I found some gaps in the guidance vignettes which I think would help newcomers (i.e. those brand new to software dev in R) as follows:
Git usage

we should mention under pull requests to link the issue to the pull request, so that it automatically closes upon merging of the PR.
reminder needed to run devtools::document() and add the updated DESCRIPTION, NAMESPACE, and files in man/ to the pull request - i assume this is only if you've updated some header that impacts the site documentation right?
add a note on updating the Changelog (NEWS.md)
would it be useful to have a short paragraph here around the R-CMD and lintr checks that run automatically on your pull request - is the developer meant to review these? i have to say when my first attempt got failures i couldn't make much sense of the messages, but i didn't spend too long looking.

Programming strategy
5. i found the deprecation section is missing necessary detail: i would suggest to add clearer guidance of how we include the old function with deprecate_warn and then how we pass the input arguments to the new function, and maybe give an example here like derive_var_base.R (although even with the example i made mistakes here). also there should be a test case in tests/testthat/deprecation.R that checks whether a warning is issued when using the old function
@bundfussr @thomas-neitmann FYI
p.s. i'd be happy to take the updates for this on as i'd like to try out updating a vignette next but i would need advice on the R-CMD/lintr bit around what to add

Thanks @rossfarrugia , I think these are all good points, which we should add.
Regarding 2.: You need to run devtools::document() if you have

changed a header,
renamed a .R file, created a new one, or deleted one, or
updated admiral-package.R

Regarding 4.: Yes, the developer should review the issues from R-CMD and lintr checks. Ideally before requesting review. On the Pull Request Review Guidance is some guidance how to solve such issues.
I am not sure if we should add all of the points 1. to 4. to the git usage vignette. I think at the moment the information on what to do when implementing an issue is distributed across the vignettes. I would propose to create a "Development Process" vignette which list all the steps required for implementing an issue. It should provide an overview of the steps and link to the corresponding sections of other vignettes for details.
What do you think?

@bundfussr i like the idea. like a step by step high level guide that links to each vignette for more details where needed. if you both agree i'm happy to start drafting this on our box folder for now and if you both review there then we could make a new page on our site later?
the above more details will still need to be added to the respective vignettes but i like the idea of one step by step guide to tie it altogether, as i did find it difficult to flick between all the different pages.

Makes sense to me.
@thomas-neitmann , do you agree?

Yes!

@koegerr FYI what comes from this I noticed could supersede this section of https://roche-gsk.github.io/admiral/articles/contribution_model.html:

We could just link to the Development Process

@bundfussr @thomas-neitmann - what do you think of this Development Process first draft: https://exbpbox.ent.box.com/file/896889277657? please add any comments directly. my feeling is best to add this as a new vignette and link it in the contribution page instead of the first 3 bullets shown in the screenshot above.
with this i personally feel points 1-4 above would be taken care of, and then for point 5 i'll make a PR with an attempted update of what to add there and will include you both as reviewers.

Thanks @rossfarrugia , looks great. I have added some comments and suggestions.

thanks @bundfussr - i accepted all your changes. @thomas-neitmann there's one open comment left around who deletes the branch after the merge - i'm okay with the suggestion but please double check when you review this doc.

Hey all.  A little off topic - but I'm having trouble remember all the steps!  For example, I forgot the news.md file as to go through and fix my lintr checks.  The green check for lintr is a bit misleading as there are issues in there!
Anyways, is there a way to have a template checklist for Pull Request for our purposes.

[ ] Updated Changelog/News
[ ] Addressed all lintr checks
[ ] Did you run devtools:document for updated documentation
[ ] Units Tests completed - See Unit Test Guide
[ ] Other stuff, etc

Sorry @thomas-neitmann you got me fascinated with actions/automation stuff...it is almost magic to me.  But this could help to mitigate reviewers having to check this kind of stuff.
Here is some links on folks implementing these checklists:

https://jemurai.com/2019/08/15/github-pr-checklist/

https://stackoverflow.com/questions/25272215/how-to-automatically-add-a-checklist-to-new-github-prs

@bms63 had a very similar chat with Thomas last week and suggested the core team have some brainstorms in the new year around ways in which it can be made easier for any developer (core or from community) or reviewer to remember all the steps. any automated checks in these areas would be a big plus! nice suggestions above.

Thanks @bms63, some very good points! I agree we need to become much better in this area and automate as much as possible.
For starter I've updated our lintr workflow to actually throw an error when any lints are detected here.
Regarding documentation, I'm thinking of creating a new GitHub action that automatically runs devtools::document() and commits any changes files whenever a branch is merged into either devel or master. That way a developer would never have to think about running devtools::document() locally.
The checklist is really neat and I certainly want to have something like that. I didn't know this was a thing. Thanks a lot for bringing this to my attention!

That would be awesome @thomas-neitmann! working through your PR comments now... thanks!


ASRock Phantom Gaming A770 16GB (No fan RPM)

With the plugin for Fan Control can see the A770 Core and VRam temperatures, but no fan sensor/RPM is detected.
I loaded HWINFO64 and it sees the GPU Fan 1 sensor and displays proper change in RPM when the GPU is loaded. Is GPU fan RPM typically detected with this plugin? No errors are being reported in the Fan Control log file for this.
Is there any information I can contribute to assist with adding GPU fan RPM reporting?
ASRock Phantom Gaming A770 16GB
Intel Driver Version: <IP_ADDRESS>76
HWINFO Shared Memory Viewer:
Original Name: GPU [#0]: Intel Arc A770         ID: 0xe0003000
Current Name: GPU [#0]: Intel Arc A770         Instance: 0x0
ID: 0x3000000    Type: FAN     Units: RPM
Using Intel Arc Control I set the fan profiles to:
'Automatic' which stops fans below approximately below 52c GPU temp
'Fan Curve' which sets a minimum of 30% duty cycle (1500 RPM).
Values:
Maximum value reached: 3904.00000
Minimum: 0.000000

I tried, but IGCL (Intel Graphics Control Library) cannot get the maximum RPM (returns -1), nor can it control the fan speed. I don't know if there is a problem with the way I use the API or if it itself does not support these functions on arc.


NEW: CountryFlag component

This Pull Request meets the following criteria:

[x] Tests have been added/adjusted for my new feature
[x]  New Components are registered in index.js of my project

closes #160

@wEprous pls rebaze


Pingpong sample (for video tutorial)

This code will be written (from scratch) in a video tutorial explaining the workings of Mir.

This PR will not be merged. It has been superseded by #252


Institute global no-loc

Fixes #25187
🎉 HERE it is! 🍾
Testing looks good for using fileMetadata with the live test entry that I set up earlier. The test topic is at ...
https://docs.microsoft.com/es-es/aspnet/core/migration/no-loc-test?view=aspnetcore-6.0
... for ...
"no-loc": {
  "**/**.md": [ "toaster", "bowl", "toothbrush", "magnet", "oak" ]
},

... in docfx.json. This PR sets up ...
"no-loc": {
  "**/**.md": [ ".NET MAUI", "Mac Catalyst", "Blazor Hybrid", "Home" , "Privacy" , "Kestrel", "appsettings.json", "ASP.NET Core Identity", "cookie", "Cookie", "Blazor", "Blazor Server", "Blazor WebAssembly", "Identity", "Let's Encrypt", "Razor", "SignalR" ]
},

... and BTW ... I think I'll alphabetize that. Not tonight tho. I'm 🧠🔥again ... it's late here and time for 🛌💤. I'll alphabetize the list in the morning.
This is a good time to adjust the list. I'm not sure why appsettings.json is here. Can't that be a find-'n-replace with a code-fenced filename? Anyway ... this is a good time to make adjustments.👂
There were no custom no-loc entries in the doc set AFAICT. It looks like my find-'n-replace 🔪 every entry. Adios no-locs! 😄
There are ~600 file updates here, so we either need to just scan-👁 it ... or break out the EYE DROPS.
If there are any concerns at all about this, then let's just close it. If there are no concerns, GrEaT! 🎉 This will save real ⏱ and 💰, so I hope we can proceed. However, I don't want to create a giant 💥 with this.

cc @serpent5

⬆📅:

I was able to find some custom no-locs after all to get OUT 🔪. My search phrase last night must have been hosed 🙈.
In most cases, I was able to move custom entries to the global list in docfx.json. In some cases, I was able to code-fence the entries in the topic to resolve it.
I didn't need to do the following for the updates, but individual topics don't need the full custom no-loc list with custom entries for just a few words/phrases. I think it best in those cases to use the inline syntax: :::no-loc text="{TEXT}":::. That approach eliminates the need to ever use a topic-based no-loc metadata entry.
Some topics merely didn't have the entry code fenced in headings. It's fine to code fence in headings, so that's how I resolved those.
I also alphabetized the global list.
I code-fenced a few "appsettings.json" entries around the repo in order to avoid having that in the global list. I also eyeballed the dev, staging, and production versions of the file. We're good! :+1:

I will have to leave the review up to Rick, who knows the history on this and what we are testing here.
Just a side note:  I think we will soon need to add ".NET Multi-platform App UI" as a no-loc product name if that is what we are to officially use for .NET Maui going forward.  It is already being used, however, it seems a bit long and clunky to me so I wonder if it will change later.

Great stuff. It's awesome to see this finally made it. ⭐


Feature requests： can user edit the config file

just like

in project-manager https://github.com/danielbrodin/atom-project-manager

The global config file is called package-switch.bundles in .atom. If it doesn't exist then you don't have any global bundles configured, in which case you should execute package-switch:create to create one. Local config files (.package-switch.cson) can only be edited through my UI. If you want to edit it manually then you'd have to open it in another editor.

UI is not effective.
And I want to manage a lot of packages

I guess a package-switch:open-global-config-file and a button to open local ones as a text file will do.

good job.
and I have a question.
when we create some package-list.
can we load package-list in init.coffee depend on project main files type(Of course setting by user)?
and I have write an article make your atom quicker start by your package.
http://simplyy.space/blog/article/make your atom quicker start

and I want to make the last step automatic.
I wish you can help me

If you open atom with only one active project then my package will automatically load the .package-switch.cson from said project.
Together with https://github.com/deprint/package-switch#save-and-restore-package-states this could be used to prevent other packages from being loaded when Atom starts. The problem is that this is very buggy because Atom has no API for package management. I'd have to hack my way around Atom's package manager.
I'll see what can and can't be done about this.

I was able to fix the package and also add a few new settings. I'll refer to the CHANGELOG for details.


Is it possible to set an initial position for the background canvas?

Describe your use case
When the graph renders, the background (or canvas) is in the position such that all nodes at position (0,0) appear in the top left corner with scale 1. I was wondering whether it is possible to set a specific set of initial coordinates and scale. The point is to store the current viewing in a database so that a user could resume their work at the exact same point where it was left.
I know it's possible to set the node x,y positions but I'm not sure about the viewing (scale + coordinates at top left corner) which would be very usefull.

I think I figured out how to retrieve the translation (from attribute transform of element g, first child of svg) but I'm still not sure how to set it from react

I think I figured out how to retrieve the translation (from attribute transform of element g, first child of svg) but I'm still not sure how to set it from react


multiple baseline designs

Please leave suggestions for single-case or small-n studies using a multiple baseline design. I'm primarily thinking about multiple baselines across persons, but these could also be multiple baselines across settings or behaviors. These could also be redundant with suggestions for ABAB designs, and so on.

Consider Himle et al (2013; https://doi.org/10.1901/jaba.2004.37-1), Teaching safety skills to children to prevent gun play. Here's the abstract:

Research has shown that children often engage in gun play when they find a firearm and that this behavior is often involved in unintentional firearm injuries. Previous research has shown existing programs to be ineffective for teaching children safety skills to reduce gun play. This study examined the effectiveness of a behavioral skills training (BST) program supplemented with in situ training for teaching children safety skills to use when they find a gun (i.e., don't touch, leave the area, tell an adult). Eight 4- to 5-year-old children were trained and assessed in a naturalistic setting and in a generalized setting in a multiple baseline across subjects design. Results showed that 3 of the children performed the skills after receiving BST, whereas 5 of the children required supplemental in situ training. All children in the study learned to perform the skills when assessed in a naturalistic setting and when assessed in a generalization setting. Performance was maintained at 2- to 8-week follow-up assessments.

This is an n = 8 multiple baseline AB design where some of the children had subsequent in-situ training after the B phase. The primary outcome is a 4-point ordinal scale, which would give a nice example for a softmax analysis. This article was used in Kate's class (file path: /BA Seminar/7. Increasing Community Safety/Himle et al., 2004 JABA.pdf).

Consider Donaldson et al (2015; https://doi.org/10.1002/jaba.229), Immediate and distal effects of the good behavior game. Here's the abstract:

The Good Behavior Game (GBG) has been demonstrated to reduce disruptive student behavior during implementation. The effects of playing the GBG on disruption immediately before and after the GBG are unknown. The current study evaluated the effects of the GBG on disruption in 5 kindergarten classes immediately before, during, and after GBG implementation. The GBG reduced disruption during implementation but did not affect rates of disruption during activity periods that preceded or followed the GBG.

Here n = 5  kindergarten classes participated in a "two-component multiple-schedule arrangement with reversals across components to examine the effects of the GBG and standard teacher contingencies (STC) on student disruptions" (p. 686). The two outcomes are counts per minute and the analysis would be a nice challenge. This article was used in Kate's class (file path: /BA Seminar/3. Behavior Analysis & Schools/3. Lagniappe/Donaldson et al., 2015.pdf).

Consider Li et al (2024; https://doi.org/10.3758/s13428-024-02359-7), Multilevel modeling in single-case studies with zero-inflated and overdispersed count data. Here's the abstract:

Count outcomes are frequently encountered in single-case experimental designs (SCEDs). Generalized linear mixed models (GLMMs) have shown promise in handling overdispersed count data. However, the presence of excessive zeros in the baseline phase of SCEDs introduces a more complex issue known as zero-inflation, often overlooked by researchers. This study aimed to deal with zero-inflated and overdispersed count data within a multiple-baseline design (MBD) in single-case studies. It examined the performance of various GLMMs (Poisson, negative binomial [NB], zero-inflated Poisson [ZIP], and zero-inflated negative binomial [ZINB] models) in estimating treatment effects and generating inferential statistics. Additionally, a real example was used to demonstrate the analysis of zero-inflated and overdispersed count data. The simulation results indicated that the ZINB model provided accurate estimates for treatment effects, while the other three models yielded biased estimates. The inferential statistics obtained from the ZINB model were reliable when the baseline rate was low. However, when the data were overdispersed but not zero-inflated, both the ZINB and ZIP models exhibited poor performance in accurately estimating treatment effects. These findings contribute to our understanding of using GLMMs to handle zero-inflated and overdispersed count data in SCEDs. The implications, limitations, and future research directions are also discussed.

Their empirical example data are from an $N = 5$ multiple-baseline AB design. Most participants have very few occasions per phase, making this a good example to discuss intercepts-only versus intercepts-and-slopes models, and the methodological issue of how many occasions one should have per phase. The authors made their data open on the OSF at https://osf.io/e4tp5/. In addition to contrasting Poisson, NB, ZIPoisson and ZINB models, this is a great opportunity to fit all them all as full distributional models.


Javascript is cache causing calculator to still shows version from 2021/2022

Hi,
First of all, thank you for the calculator, as a Foreigner, it is relatively easy to use (if you plan bring translation, I'll happy to help with English / Spanish).
I wanted to report, it just happened with a colleague of me, he entered the link and he still saw only available years 2021/2022 (Rok podatkowy), it's the same colleague who originally refereed me to the calculator.
.
So it turned out, the old script was still cache in his browser :)
I bet the same could had happened to others, so maybe adding some headers in the webserver could force to the client to download the latest version.
I'm sorry I cannot provide much info because it happened in someone else browser but it just happened (lucky I knew the calculator was updated to 2023/2024).
Best regards,

Hello,
nice to hear that foreigners also use my calculator :-) I checked Google translators at some time, and I think it translates the app enough good. I'd like to support other languages, but it's so much work to achieve it.
I know this issue. Unfortunately, the service worker had been broken. I fixed it ~ a year ago, and newer updates should work fine. I don't have possibilities to inform old users about it. I can just hope they'll clear their browser's cache at some point.


Determine way to handle encoding failure of SgxExternalities

In PR #30 we discussed how to best handle a failure in encoding SgxExternalities. Since the encode() method itself does not return a Result but just a vec<u8>, we need a way of communicating an error that can happen inside the encode() implementation (due to the serialization). Before my changes in PR #30, we logged the error and returned an empty vec. This can be problematic in case the empty vec is a valid result. In that case, the caller won't notice that an error has occurred. If we do unwrap(), the thread will panic and die, which might also not be so ideal, but is what we chose for now to ensure we notice an error.

Enclave code must never panic. This may pose a security threat by revealing sensitive data.

How should a corrupted state be handled then? The enclave should not go on with an invalid state, should it?

I don't know currently. Are we able to prove that this never panics?


DBPool should be able to limit the number of connections it will create

Original report by Kerim Güney (Bitbucket: TaskForce_Kerim, GitHub: KerimG).

First of all, great work on this lib! Really appreciate what you all are doing.
I was going through the docs and trying out a few things. I don't think I completely understand DBPool.attach()
As I understand, when attach() is called, it returns an available connection from the pool but if all connections are in use, the connection pool size is increased. Wouldn't that lead to the same issues as in idb-connector issue 23t if attach() is called faster than connections freeing up?
Wouldn't it be better to queue further attach() attempts after the pool is exhausted and wait for connections to free up again?

@KerimG
I'm sure we simply cap the number connections in the pool with maxSize property mentioned before.
When the max is reached a call to attach() will throw an error.
Also would like to add an additional property initalSize to differentiate it from incrementSize
Not sure how we would implement the queuing feature you mentioned though.
any thoughts on possibly adding queuing as suggested?
@ThePrez @kadler @markdirish @bjeromeHCS

Could be done, but we'd need to make attach return a Promise.
Basic design:

pool has two new internal attributes: a list of waiters and an an EventEmitter instance
when the pool is constructed, add an event listener to the EventEmitter instance which listens for the 'connection-added' event
when attach is called, if the pool is full, create a Promise, append it to the wait list on the pool and return it
whenever a connection is returned to the pool, a 'connection-added' event is emitted
when the 'connection-added' listener fires, the called function pulls the first waiter from the wait list and fulfills the promise with the recently added connection

hello guys,
first of all thank you for the great work here.
recently, we are considering developing a nodejs application which needs to connect to db2 on ibm machine,
so I have a question,
is there any plan to release this feature this year?

Currently there are no plans to release this feature by end of year. I would recommend using node-odbc which does implment limiting the max number of connections pool will contain. See https://github.com/markdirish/node-odbc#parameters-11


Hello World with Visual Studio 2015

Title
Hello World with Visual Studio 2015
Summary
Hello World with Visual Studio, with additional topics on debugging and publishing
Fixes #1170
Suggested Reviewers
@billwagner @mairaw

@davidcsa I'd meant to add you as a reviewer as well.

Open Publishing Build Service: The pull request content has been published and here are some changed files links of this time:

Docset 1 - core-docs
https://review.docs.microsoft.com/en-us/dotnet/articles/csharp/getting-started/debugging-with-visual-studio?branch=pr-en-us-1176
https://review.docs.microsoft.com/en-us/dotnet/articles/csharp/getting-started/publishing-with-visual-studio?branch=pr-en-us-1176
https://review.docs.microsoft.com/en-us/dotnet/articles/csharp/getting-started/with-visual-studio?branch=pr-en-us-1176

Status: SucceededWithWarning. Message: Warning occurred: Invalid file link:(~/docs/csharp/getting-started/media/oublish.jpg). Referenced by file: docs/csharp/getting-started/publishing-with-visual-studio.md at line: 26...
Open Publishing Report.


Control proxy-chain's 'host' parameter from Apify's launchContext

The host argument has been added to proxy-chain, for its listener to be bound to something else than <IP_ADDRESS>.
However it's not possible to set this parameter while launching Puppeteer as it's not available in the launchContext.
Is it possible to add this option to the launchContext, or do you have any advice for launching Puppeteer with a customized proxy-chain instance which has this argument too?
Thanks!

Hello @zuccon !
Hi @barjin, thanks for answering.

Are you sure this is an issue for this package (apify/apify-client-js)? To me, this sounds like a thing from crawlee - there, we're using proxy-chain to create a local proxy server that authenticates with the target proxy server. I'll transfer this issue to crawlee and we can continue the discussion there.

As far as I understood the proxy-chain instance is instantiated in crawlee, however crawlee is instantiated by our call of Apify.launchPuppeteer(), with Apify being const Apify = require("apify");.
https://docs.apify.com/sdk/js/docs/1.3/api/apify#apifylaunchpuppeteerlaunchcontext
So in order for it to work, I believe this option needs to be propagated from proxy-chain, where it has been implemented first, through crawlee, to end up being exposed in Apify's launchContext so that we can change its default value.
I may be wrong though, not completely familiar with it yet.

As far as I understand - you want this "immediate" proxy server inside crawlee to only listen on a certain address / network interface, right?

yes, this is the goal

Hello again!
I see that you're mentioning the Apify.launchPuppeteer() method. Would you mind sharing the versions of the packages you're using? Perhaps the output of the following command?
npm ls crawlee apify apify-client proxy-chain puppeteer

From your message, it seems that you're using 1.x version of Apify SDK - which is around 3 years old now and not in active development anymore. Even if we updated Crawlee now, you wouldn't get the new features because of this. If that's the case, here's our Upgrading guide... But maybe all of this is just us being confused and any of this won't be needed :)
Looking forward to hearing from you soon. Cheers!

Hi @barjin,
this is the output of npm ls crawlee apify apify-client proxy-chain puppeteer :
│ └─┬<EMAIL_ADDRESS>│   ├──<EMAIL_ADDRESS>│   ├─┬<EMAIL_ADDRESS>│   │ └──<EMAIL_ADDRESS>│   └──<EMAIL_ADDRESS>deduped

Is v2 also too old for this feature?

Yes<EMAIL_ADDRESS>is 2 years old by now - it was the last release before v3 when we renamed the project to Crawlee and split the Apify SDK (for communicating with Apify Platform) and Crawlee (for writing the crawlers, even locally) into two separate projects.
In order to fix this in your project, you'll first have to switch your project to Crawlee. Here's the upgrading guide for it - feel free to ask questions if you encounter any problems on the way.

Closing due to inactivity.


[BUG] Bot exits after playing ~30sec of music.

When using !play, bot leaves the channel after ~30sec-1min. Bot doesn't crash, only leaves the channel.
Accessing the issue:

Use !play command with song you like
Wait

Latest Version and lower ones.
This is probably problem created by discord (attachment)
Is it possible to fix it by myself, or i need to wait?
Also, bot doesn't throw any error. I once got "aborted" error but never again.
Have a nice day :)

Hello, I am experiencing similar behavior and also receiving an error after the bot leaves the channel.
AbortError: The operation was aborted
    at abortListener (node:events:970:14)
    at AbortSignal.<anonymous> (node:events:1006:47)
    at AbortSignal.[nodejs.internal.kHybridDispatch] (node:internal/event_target:643:20)
    at AbortSignal.dispatchEvent (node:internal/event_target:585:26)
    at abortSignal (node:internal/abort_controller:291:10)
    at AbortController.abort (node:internal/abort_controller:322:5)
    at Timeout.<anonymous> (/home/ftp/zbots/Discord/Mcskill/NewYearRadio/node_modules/@discordjs/voice/dist/index.js:1991:39)
    at listOnTimeout (node:internal/timers:559:17)
    at processTimers (node:internal/timers:502:7) {
  code: 'ABORT_ERR',
  [cause]: DOMException [AbortError]: This operation was aborted
      at new DOMException (node:internal/per_context/domexception:70:5)
      at AbortController.abort (node:internal/abort_controller:320:18)
      at Timeout.<anonymous> (/home/ftp/zbots/Discord/Mcskill/NewYearRadio/node_modules/@discordjs/voice/dist/index.js:1991:39)
      at listOnTimeout (node:internal/timers:559:17)
      at processTimers (node:internal/timers:502:7)
}

My code:

I'm also having this issue

I had this issue, If you add the following solution after line 162 of the /src/managers/Queue.js file fixes it. This is where I found it #322.
connection.on('stateChange', (oldState, newState) => {
            const oldNetworking = Reflect.get(oldState, 'networking');
            const newNetworking = Reflect.get(newState, 'networking');

            const networkStateChangeHandler = (_oldNetworkState, newNetworkState) => {
                const newUdp = Reflect.get(newNetworkState, 'udp');
                clearInterval(newUdp?.keepAliveInterval);
            }

            oldNetworking?.off('stateChange', networkStateChangeHandler);
            newNetworking?.on('stateChange', networkStateChangeHandler);
 });

Thank you so much! It worked!
For other ones if you struggle to do this
Open the bot folder, enter into node modules, find discord music player, enter, enter dist enter managers and open Queue.js
Now you need to find the line 126, it should start with "selfDeaf", after the "});" copy and paste the code that nice fellow posted above me :), save, run the bot and check if it is working!

I Don't work in my bot but i have the change

it doesn't work either on my side the music works for 30 seconds and it stops

I haven’t tested it myself but a few hours ago djs released a new update for their voice package. Consider updating it as it might fix your issue

I haven’t tested it myself but a few hours ago djs released a new update for their voice package. Consider updating it as it might fix your issue

I said it's ok it works I had a bug and then it's ok it works 😺

When will it fix? Because, I Can't edit files on hosting server.


Privacy-enhanced OAuth 2.0

[x] Outline
[ ] Redirecting to the user's wallet
[x] Client Registration
[ ] Token Opaqueness
[ ] Securing the frontchannel
[ ] Resource Registration
[ ] Unique RO identifier for the transaction
[ ] Auth response format
[ ] Wallet registration at RS/AS

TODO: add constraint: must support Safari, Chromium-based browsers, Firefox


Attempting to copy PE-exclusive blocks to PC world makes obscure message

Attempting to copy a PE block like a stonecutter into a PC world via schematics will cause this error:

Saving the world after that will also cause an error, but should there be a better error message for this than that? Nobody knows what any of that means so perhaps a "Cannot copy PE exclusive blocks to PC world" error would be in order. Because of that, I had to figure out what the cause was myself and wasted quite a bit of time on it.
Steps to Reproduce:

Open an MCPE world with a stonecutter placed already.

Select the stonecutter or any selection that contains the stonecutter.

Export it as a schematic.

Open a PC world (mine was 1.7.10 if it helps).

Import the schematic. The error will appear.
MCEdit Version Number - <IP_ADDRESS>
Minecraft Version Number - 1.7.10, no mods
Operating System Version - Windows

Sorry for the late answer, but MCEdit <IP_ADDRESS> does not have a real PE support...
The current development code is really better, but no transferring functions from PE to PC worlds and vice-versa are implemented yet.
You can expect a new beta PE support for the next release, but no more for now.
My advice is to remove non PC blocks from your schematics before importing them in PC worlds.


[MP branding page adding ] from Resources tab item: Mktg drive link

How about removing the MP Marketing drive link from the Resources and adding in the Branding page as its own card?
Simplify and keep together stuff. :)

@aeiras Makes sense. I made the changes and added new cards to the resource page and branding page

Wonderful 💪🏼


Args only ever used in recursion should be unused

If I write a function foo with an argument x and x only ever gets passed to foo, then although x is technically "used" (because it's passed to foo), it's a function argument that is only ever passed to the function!

Closing as duplicate of https://github.com/roc-lang/roc/issues/4467


Added acl option, made acl and private options mutually exclusive

This fixes #71 by adding an additional --acl argument that lets you specify any of the Canned ACLs instead of just "public-read" and "private". The change moves the --private flag and the new --acl argument into a mutually exclusive group. This ensures that both arguments cannot be used at the same time, yet it maintains backwards compatibility (as the private flag can still be used just like before).

Looks good. Thank you!


Issue210: Update / Improve comment for 'AccountCredentials'.

Update the docuemntation for AccountCredential to make it clear what the parts of the proto message mean, with respect to a normal openssh format ssh public key.

I'd assign this to @limehat but apparently I can't do that?

I'd also try to assign this to @melzhan but I can't do that either?
how does review / assignment / review even work here?

I'd also try to assign this to @melzhan but I can't do that either?
how does review / assignment / review even work here?

I created a team: https://github.com/orgs/openconfig/teams/gnsi-contributors/members
Gave it "triage" permissions (to manage PR's and Issues, but not write access).
I added @melzhan and @LimeHat to this contributors group.  I made @morrowc and admin, so you can add/remove people from here.
There is a maintainers team (https://github.com/orgs/openconfig/teams/gnsi-maintainers) which has write access.

It looks like I can't approve this and it needs approval from Rob or Marcus


eslint plugin?

It'd be awesome to have this as an eslint plugin as well - something that warns/errors when all of lodash is required unnecessarily.

This suggestion sounds relevant to https://github.com/wix/eslint-plugin-lodash3.

This suggestion sounds relevant to https://github.com/wix/eslint-plugin-lodash3.


ob run can leave a rogue GHC instance running indefinitely

Numerous people have reported that a ghc process can be left behind after ob run has been closed or even after a ghcid reload.

I can confirm encountering this bug today. Do you think the withProcess problem you describe above could be an easy fix?

I sort of doubt it will actually fix it unless we add more logic for "Hm you're taking a long time, I really want you to die so SIGKILL this time"

To clarify, what we definitely should be doing is bracketing our process creation properly in withProcess and calling terminateProcess in the "release". However, I've found that these rouge GHC's don't die with normal SIGTERM and must be SIGKILLed, which is something terminateProcess doesn't do. So we'd have to further extend our bracketing to add a fallback to SIGKILL and that sounds a bit tricky to get right in general.

Even I have hit this issue many times recently. The rogue ghc needs to be terminated manually by kill -9


fix(core): rebuild fields when form change.

fix #788

This change is

Codecov Report

Merging #789 into master will increase coverage by 0.01%.
The diff coverage is 71.42%.

@@            Coverage Diff             @@
##           master     #789      +/-   ##
==========================================
+ Coverage   91.67%   91.69%   +0.01%
==========================================
  Files          22       22
  Lines         913      915       +2
  Branches      253      254       +1
==========================================
+ Hits          837      839       +2
  Misses         76       76

Impacted Files
Coverage Δ

src/core/src/components/formly.form.ts
96.7% <71.42%> (+0.07%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 7fb93d6...3d7298d. Read the comment docs.


Fix Russian translation

Fixes to the Russian translation, now it doesn't look like auto translated text

Wow, thanks for doing this! 🙌🏼


Update domains.json for eth.colombia

Hi! What is your PR about?

[ ] Add a custom domain for your space

Closing this PR for now, feel free to open it again once you've done the changes.