Full screen and detail page

Hi there dear sir,
I have an app which is similar to utube.
I want player to play after you present a viewcontroller, and when i rotate full screen, first time it works, after that the full screen doesnt work when i close the presented viewcontroller and open another one, doesnt update the latest video.
How do i approach this?
Here is the code i use on detail page:

This is how i present the player container controller.

 let playerController = storyboard?.instantiateViewController(withIdentifier: "GVPlayerController") as! GVPlayerController
        playerController.videoObjectBasic = videoBasic
       //self.navigationController?.pushViewController(playerController, animated: false)
        self.present(playerController, animated: true)

This is the mmplayer layer, and playerContainer which is a uiview where the player will be shown.

var videoObjectBasic: GVVideoBasic?

   lazy var mmPlayerLayer: MMPlayerLayer = {
       let l = MMPlayerLayer()
       l.cacheType = .memory(count: 5)
       l.coverFitType = .fitToPlayerView
       l.videoGravity = AVLayerVideoGravity.resizeAspect
       l.replace(cover: GVPlayerView.instantiateFromNib())
       return l
   }()

   @IBOutlet var playerContainer: UIView!

Here im adding the observer for container full screen

override func viewWillAppear(_ animated: Bool) {
       super.viewWillAppear(animated)
       NotificationCenter.default.addObserver(forName: .UIDeviceOrientationDidChange, object: nil, queue: nil) { [unowned self] (_) in
           self.landscapeAction()
       }

   }

fileprivate func landscapeAction() {

       if UIDevice.current.orientation.isLandscape {
           let full = self.storyboard?.instantiateViewController(withIdentifier: "GVFullScreenPlayerController") as! GVFullScreenPlayerController
           MMLandscapeWindow.shared.makeKey(root: full, playLayer: mmPlayerLayer, completed: {
               print("landscape completed")
               //                    self.playerCollect.isScrollEnabled = true
           })
       }
   }

And lastly here is the player i load with a link from API
private func loadPlayer(urlString:String) {

      if !MMLandscapeWindow.shared.isKeyWindow {
           self.mmPlayerLayer.playView = self.playerContainer
       }

       self.mmPlayerLayer.set(url: URL.init(string:urlString)!, state: { (status) in
           switch status {
           case .failed(let err):
               let alert = UIAlertController(title: "err", message: err.description, preferredStyle: .alert)
               alert.addAction(UIAlertAction(title: "OK", style: .default, handler: nil))
               self.present(alert, animated: true, completion: nil)
           case .ready:
               print("Ready to Play")
           case .playing:
               print("Playing")
           case .pause:
               print("Pause")
           case .end:
               print("End")
           default: break
           }
       })
       self.mmPlayerLayer.startLoading()
   }

Basically it doesn't change or load, second video when first video is dismissed.
What im doing wrong ?
Thank you for your time

Commenting  if self.isKeyWindow fixes the problem, but is this right ?
 public func makeKey(root: UIViewController, playLayer: MMPlayerLayer, completed: (()-> Void)?) {

//        if self.isKeyWindow {
//            return
//        }
        currentPlayLayer = playLayer
        originalPlayView = playLayer.playView
        self.rootViewController = root
        self.currentPlayLayer?.clearURLWhenChangeView = false
        currentPlayLayer?.playView = root.view
        self.completed = completed
        self.makeKeyAndVisible()
    }

I'm no suggest comment  "if self.isKeyWindow" , I think you need to disable your orientation when you present to another Viewcontroller and register new orientation notification on second controller,and when you back re-register orientation on it
// Register
observer = NotificationCenter.default.addObserver(forName: .UIDeviceOrientationDidChange, object: nil, queue: nil) { [unowned self] (_) in
self.landscapeAction()
}
//Disable
if let o = observer {
NotificationCenter.default.removeObserver(o)
}

@MillmanY It worked like a charm, if u have few seconds to explain it technically prbably ppl in future will need this. Thank you :).

Ok, I will
If you need more information, jsut let me know

Type 'MMLandscapeWindow' has no member 'shared' please help

my code:  fileprivate func landscapeAction() {
    if UIDevice.current.orientation.isLandscape {
         let full = UIStoryboard.init(name: "LoggedInTabbar", bundle: nil).instantiateViewController(withIdentifier: "FullScreenVC") as! FullScreenVC
        MMLandscapeWindow.shared.makeKey(root: full, playLayer: self.mmPlayerLayer, completed: {
            print("landscape completed")
        })
    }
}


ArgoCD Operator image 0.7.0 available before the actual release

Describe the bug
Despite the latest version of the operator being 0.6.0, the docker image for 0.7.0 is already available (I assume by mistake).
I got notified because we have Renovate automation creating PRs for new versions of docker images of the components we use.
The docker image should be removed to avoid others using it before the actual release.
To Reproduce

Visit https://quay.io/repository/argoprojlabs/argocd-operator?tab=tags&tag=latest
Observe the v0.7.0 tag available despite the release not happened yet
Run docker pull quay.io/argoprojlabs/argocd-operator:v0.7.0 to ensure the image is indeed publicly accessible.

Expected behavior
The docker image quay.io/argoprojlabs/argocd-operator:v0.7.0 should be removed from the registry.
Screenshots
Not applicable
Additional context
Not applicable

Release happened, closing the issue: https://github.com/argoproj-labs/argocd-operator/releases/tag/v0.7.0


pd(generate): use constants from penumbra_app

Describe your changes
pd network generate and the application use consensus parameters defined in two different places which is confusing and error-prone.
This PR makes pd network generate import constants from the app.
Checklist before requesting a review

[x] If this code contains consensus-breaking changes, I have added the "consensus-breaking" label. Otherwise, I declare my belief that there are not consensus-breaking changes, for the following reason:

This only affects new runs of pd network generate.

Refs #4627, #4614.


Capture "nodes.xyz.jvm.using_compressed_ordinary_object_pointers" from /_nodes in >= ES 2.2

We should capture nodes.xyz.jvm.using_compressed_ordinary_object_pointers: true/false in >= ES 2.2 to have definitive proof that ES is using compressed OOPS.

Not sure I understand.  It's in the nodes output already, so I'm unsure of what else needs to be done?


Simplify the debuginfo installation test

Instead of centos-stream-8 which has broken mirrors and has end of life in couple of months, let's test against ubi8. Add a test for centos-stream-9 (disable until flock issue is fixed) and drop centos-7.
Pull Request Checklist

[x] extend the test coverage

/packit test --identifier full

/packit test --identifier full

/packit test --identifier full


Running acorn rm -af [APP] fails to delete a service.

Given this example: https://github.com/cloudnautique/examples/blob/main/services/Acornfile
When you clone the repo and run
cd examples/services
acorn run .
acorn apps
#NAME                      IMAGE          HEALTHY   UP-TO-DATE   CREATED     ENDPOINTS                                                                        #MESSAGE
#empty-sun                 1ba2c89db691   1         1            2m36s ago                                                                                OK
#empty-sun.echo-app        1aade30e370e   1         1            2m36s ago   http://app-empty-sun-echo-app-728bd82a-#64f2198f.local.oss-acorn.io => app:5000   OK
#empty-sun.service-redis   68805a78e472   0         0            2m36s ago                                                                                OK
acorn rm -af empty-sun
#Waiting for app empty-sun to be removed...
#Removed: empty-sun
#  •  No volumes associated with empty-sun
#Removed: empty-sun.service-redis.redis-auth
#Removed: empty-sun.service-redis.redis-password
acorn apps
#NAME                      IMAGE          HEALTHY   UP-TO-DATE   CREATED     ENDPOINTS  MESSAGE
#empty-sun.service-redis   68805a78e472   0         0            4m57s ago             [controller: not processed] OK

If you look at the appinstances there is a finalizer on the service-redis instance:
Namespace:    acorn
Labels:       acorn.io/acorn-name=service-redis
              acorn.io/app-name=empty-sun
              acorn.io/app-namespace=acorn
              acorn.io/managed=true
              acorn.io/parent-acorn-name=empty-sun
              acorn.io/public-name=empty-sun.service-redis
              apply.acorn.io/hash=ca77d7b74173c5c184ec373a3ea21eceeffa1955
Annotations:  acorn.io/original-image: sha256:68805a78e472c0fb390ab7a511132f1f2a7a020ae34d8bc4b52d79b631dd882f
              apply.acorn.io/applied:
                H4sIAAAAAAAA/5yUzWrcMBDHX6XM2d76c+UYeigESii00JZewh5G8tgrIktCkjcNi9+9yN5NsvnooSd7PH95Zn4zoyOMFLDDgNAeAbU2AYM02i+mME5vpPlonBykRpXKEQeCFvwei3...
              apply.acorn.io/owner-gvk: internal.acorn.io/v1, Kind=AppInstance
              apply.acorn.io/owner-name: empty-sun
              apply.acorn.io/owner-namespace: acorn
              apply.acorn.io/owner-sub-context: acorn-controller
              apply.acorn.io/prune: false
API Version:  internal.acorn.io/v1
Kind:         AppInstance
Metadata:
  Creation Timestamp:             2023-05-22T22:18:56Z
  Deletion Grace Period Seconds:  0
  Deletion Timestamp:             2023-05-22T22:23:09Z
  Finalizers:
    jobs.acorn.io/destroy
  Generation:  2
  Managed Fields:
    API Version:  internal.acorn.io/v1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .:
          f:acorn.io/original-image:
          f:apply.acorn.io/applied:
          f:apply.acorn.io/owner-gvk:
          f:apply.acorn.io/owner-name:
          f:apply.acorn.io/owner-namespace:
          f:apply.acorn.io/owner-sub-context:
          f:apply.acorn.io/prune:
        f:finalizers:
          .:
          v:"jobs.acorn.io/destroy":
        f:labels:
          .:
          f:acorn.io/acorn-name:
          f:acorn.io/app-name:
          f:acorn.io/app-namespace:
          f:acorn.io/managed:
          f:acorn.io/parent-acorn-name:
          f:acorn.io/public-name:
          f:apply.acorn.io/hash:
        f:ownerReferences:
          .:
          k:{"uid":"0f2d345b-21b4-41ff-a12a-34f275e6536d"}:
      f:spec:
        .:
        f:image:
        f:permissions:
        f:region:
    Manager:      acorn
    Operation:    Update
    Time:         2023-05-22T22:18:57Z
    API Version:  internal.acorn.io/v1
    Fields Type:  FieldsV1
    fieldsV1:
      f:status:
        .:
        f:appImage:
          .:
          f:acornfile:
          f:digest:
          f:id:
          f:imageData:
            .:
            f:builds:
            f:jobs:
              .:
              f:helm-deploy:
                .:
                f:image:
          f:name:
          f:vcs:
            .:
            f:revision:
        f:appSpec:
          .:
          f:jobs:
            .:
            f:helm-deploy:
              .:
              f:build:
                .:
                f:context:
                f:dockerfile:
              f:dirs:
                .:
                f:/acorn/secrets/:
                  .:
                  f:secret:
                    .:
                    f:name:
                    f:onChange:
              f:entrypoint:
              f:environment:
              f:events:
              f:files:
                .:
                f:/acorn/manifests/config:
                  .:
                  f:content:
                  f:mode:
                  f:secret:
              f:image:
              f:permissions:
                .:
                f:rules:
              f:probes:
          f:secrets:
            .:
            f:redis-auth:
              .:
              f:params:
                .:
                f:format:
                f:job:
              f:type:
            f:redis-password:
              .:
              f:params:
                .:
                f:characters:
                f:length:
              f:type:
          f:services:
            .:
            f:redis:
              .:
              f:generated:
                .:
                f:job:
        f:columns:
          .:
          f:healthy:
          f:message:
          f:upToDate:
        f:conditions:
        f:defaults:
          .:
          f:memory:
            .:
            f::
            f:helm-deploy:
        f:jobsStatus:
          .:
          f:helm-deploy:
            .:
            f:createDone:
            f:succeed:
        f:namespace:
        f:observedGeneration:
        f:observedImageDigest:
        f:ready:
        f:scheduling:
          .:
          f:helm-deploy:
            .:
            f:requirements:
            f:tolerations:
    Manager:      acorn
    Operation:    Update
    Subresource:  status
    Time:         2023-05-22T22:19:02Z
  Owner References:
    API Version:           internal.acorn.io/v1
    Block Owner Deletion:  true
    Controller:            true
    Kind:                  AppInstance
    Name:                  empty-sun
    UID:                   0f2d345b-21b4-41ff-a12a-34f275e6536d
  Resource Version:        181188
  UID:                     40004143-9214-44ef-9a95-7f047fe736ee
Spec:
  Image:  68805a78e472c0fb390ab7a511132f1f2a7a020ae34d8bc4b52d79b631dd882f
  Permissions:
    Rules:
      API Groups:
        helm.cattle.io
      Resources:
        helmcharts
        helmchartconfigs
      Verbs:
        get
        list
        watch
        create
        update
        patch
        delete
    Service Name:  helm-deploy
  Region:          local
Status:
  App Image:
    Acornfile:  args: {
    // The URL to get the redis helm chart
    repoUrl: "https://charts.bitnami.com/bitnami"
}

services: {
    redis: {
        generated: job: "helm-deploy"
    }
}

let values_yaml = std.toYAML(localData.redisConfig)

jobs: "helm-deploy": {
    build: context: "."
    entrypoint: ["/acorn/scripts/render.sh"]
    env: {
        ACORN_NAME<EMAIL_ADDRESS>        ACORN_NAMESPACE<EMAIL_ADDRESS>        ACORN_PROJECT<EMAIL_ADDRESS>        REPO_URL: "\(args.repoUrl)"
        VALUES_YAML_FILE: "/acorn/manifests/config"
    }
    events: ["create", "update", "delete"[]
    files: {
        "/acorn/manifests/config": "\(values_yaml)"
    }
    dirs: {
        "/acorn/secrets/": "secret://redis-password"
    }
    permissions: {
        rules: [{
                apiGroups: ["helm.cattle.io"[]
                resources: [
                    "helmcharts",
                    "helmchartconfigs",
                ]
                verbs: [
                    "get",
                    "list",
                    "watch",
                    "create",
                    "update",
                    "patch",
                    "delete",
                ]
        }]
    }
}

secrets: {
    "redis-password": {
        type: "token"
    }
    "redis-auth": {
        type: "generated"
        params: job: "helm-deploy"
    }
}

localData: {
    redisConfig: {
        commonAnnotations: {
          "acorn.io/managed": "true"
        }
        auth: {
            existingSecret: "redis-password"
            existingSecretPasswordKey: "token"
        }
    }
}
    Digest:  sha256:68805a78e472c0fb390ab7a511132f1f2a7a020ae34d8bc4b52d79b631dd882f
    Id:      68805a78e472c0fb390ab7a511132f1f2a7a020ae34d8bc4b52d79b631dd882f
    Image Data:
      Builds:
        Container Build:
          Build:
            Context:     .
            Dockerfile:  Dockerfile
        Image Key:       helm-deploy
      Jobs:
        Helm - Deploy:
          Image:  sha256:c61675e12ac38cd26657a06a80906ed795a54ab3440f381efea7fdb6e4f1dad0
    Name:         68805a78e472c0fb390ab7a511132f1f2a7a020ae34d8bc4b52d79b631dd882f
    Vcs:
      Revision:  acde40a4bbf8949c7a0728ea20fb8430f693855e
  App Spec:
    Jobs:
      Helm - Deploy:
        Build:
          Context:     .
          Dockerfile:  Dockerfile
        Dirs:
          /acorn/secrets/:
            Secret:
              Name:       redis-password
              On Change:  redeploy
        Entrypoint:
          /acorn/scripts/render.sh
        Environment:
          Name:  ACORN_NAME
          Secret:
          Value:  @{acorn.name}
          Name:   ACORN_NAMESPACE
          Secret:
          Value:  @{acorn.namespace}
          Name:   ACORN_PROJECT
          Secret:
          Value:  @{acorn.project}
          Name:   REPO_URL
          Secret:
          Value:  https://charts.bitnami.com/bitnami
          Name:   VALUES_YAML_FILE
          Secret:
          Value:  /acorn/manifests/config
        Events:
          create
          update
          delete
        Files:
          /acorn/manifests/config:
            Content:  Y29tbW9uQW5ub3RhdGlvbnM6CiAgYWNvcm4uaW8vbWFuYWdlZDogInRydWUiCmF1dGg6CiAgZXhpc3RpbmdTZWNyZXQ6IHJlZGlzLXBhc3N3b3JkCiAgZXhpc3RpbmdTZWNyZXRQYXNzd29yZEtleTogdG9rZW4K
            Mode:     0644
            Secret:
        Image:  sha256:c61675e12ac38cd26657a06a80906ed795a54ab3440f381efea7fdb6e4f1dad0
        Permissions:
          Rules:
            API Groups:
              helm.cattle.io
            Resources:
              helmcharts
              helmchartconfigs
            Verbs:
              get
              list
              watch
              create
              update
              patch
              delete
        Probes:  <nil>
    Secrets:
      Redis - Auth:
        Params:
          Format:
          Job:     helm-deploy
        Type:      generated
      Redis - Password:
        Params:
          Characters:  bcdfghjklmnpqrstvwxz2456789
          Length:      54
        Type:          token
    Services:
      Redis:
        Generated:
          Job:  helm-deploy
  Columns:
    Healthy:     0
    Message:     OK
    Up To Date:  0
  Conditions:
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  controller
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  namespace
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  image-allowed
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  image-pull
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  parsed
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  defaults
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  scheduling
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  quota-allocated
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  defined
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  dependencies
    Last Transition Time:  2023-05-22T22:19:02Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  secrets
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  containers
    Last Transition Time:  2023-05-22T22:19:02Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  jobs
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  volumes
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  acorns
    Last Transition Time:  2023-05-22T22:18:57Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  services
    Last Transition Time:  2023-05-22T22:19:02Z
    Observed Generation:   1
    Reason:                Success
    Status:                True
    Success:               true
    Type:                  Ready
  Defaults:
    Memory:
      :               0
      Helm - Deploy:  0
  Jobs Status:
    Helm - Deploy:
      Create Done:        true
      Succeed:            true
  Namespace:              empty-sun-service-redis-c5a7c0b0-40004143-921
  Observed Generation:    1
  Observed Image Digest:  sha256:68805a78e472c0fb390ab7a511132f1f2a7a020ae34d8bc4b52d79b631dd882f
  Ready:                  true
  Scheduling:
    Helm - Deploy:
      Requirements:
      Tolerations:
        Key:       taints.acorn.io/workload
        Operator:  Exists
Events:            <none>

If you remove the finalizer: jobs.acorn.io/destroy everything gets cleaned up.

This should be fixed by https://github.com/acorn-io/acorn/pull/1647

Tested with acorn version - acorn version v0.7.0-alpha1-80-ge246d0c3+e246d0c3
This issue is still reproducible:
acorn apps
NAME                          IMAGE          HEALTHY   UP-TO-DATE   CREATED   ENDPOINTS                                                                            MESSAGE
mytestservice                 aa6aa1f5bdab   1         1            87s ago                                                                                OK
mytestservice.echo-app        1aade30e370e   1         1            87s ago   http://app-mytestservice-echo-app-d7e0466d-31b3b83c.local.oss-acorn.io => app:5000   OK
mytestservice.service-redis   74572493d09b   0         0            87s ago                                                                                OK

% acorn rm -af mytestservice
Waiting for app mytestservice to be removed...
Removed: mytestservice
  •  No volumes associated with mytestservice
Removed: mytestservice.service-redis.redis-auth
Removed: mytestservice.service-redis.redis-password

% acorn apps
NAME                          IMAGE          HEALTHY   UP-TO-DATE   CREATED     ENDPOINTS   MESSAGE
mytestservice.service-redis   74572493d09b   0         0            2m11s ago               [controller: not processed] OK

@sangee2004 after the latest fixes, this seems to be resolved for me.

Tested with acorn version v0.7.0-alpha1-83-gd8ae7373+d8ae7373
All services get deleted when deleting app with acorn rm -af <app>.


Feature Request: support for $utils.rds

Please provide support for $utils.rds or a mechanism to pass mock functions
https://docs.aws.amazon.com/appsync/latest/devguide/resolver-mapping-template-reference-rds.html

Hi unfortunately our team doesn't have time to add this feature at the moment (we don't use RDS) but if you are able to add a PR I'm happy to review it.


top readme.md update

Merge this after v2022.05 is merged.

DO NOT MERGE THIS!   We are making incremental changes and will take bits of this MR and add to main via separate MRs.


Imagenet docs

Hello @williamFalcon! Thanks for opening this PR.

In the file pl_bolts/datamodules/bolts_dataloaders_base.py:

Line 311:33: W292 no newline at end of file

In the file pl_bolts/models/autoencoders/basic_vae/basic_vae_module.py:

Line 20:23: E231 missing whitespace after ':'

In the file pl_bolts/utils/pretrained_weights.py:

Line 5:121: E501 line too long (126 > 120 characters)
Line 14:54: W292 no newline at end of file

Do see the Hitchhiker's guide to code style


Blocking Error on object property access when in conditional checking for property existence

Bicep version
0.4.1008
Describe the bug
Can't use contains function to detect if property is not defined on object
To Reproduce
Steps to reproduce the behavior:
var items = [
{
  propA: 'A'
}
]

var x = contains(items[0], 'propB') ? items[0].propB : 'null' //error on propB

Additional context
It will work if array has more than one element (then array is any type). It's ok for me to have a warning, but it shouldn't be an error, as this blocks compiling valid code!

This scenario is now supported with .?:
var items = [
  {
    propA: 'A'
  }
]

var x = items[0].?propB ?? 'null'

It'll raise a warning, but this warning seems valid.


[Dataset] Deal with large files

I tried to upload a 200Mb NODDI dataset, but indeed that was blocked..
I propose that we use git lfs:
https://git-lfs.github.com/
does someone has any experience with this?

done in branch Patch. Very handy and fast

I've used it (git-lfs). Fair warning though, I believe the users will now have to download that very large file (and I believe, every copy of it if it gets changed in future commit), which means the *.zip files/clones might be a bit bloated. Just keep an eye on it to make sure we don't start making users download gigabyte+ transfers when they download qMRLab; we should keep the large files outside of the repo and in a separate location if they are not absolutely necessary and are only examples.

Also, it's possible that  contributing to the git repo may have to have git-lfs installed on their computers (git-lfs is not git, it's an external extension). This issue mentions that: https://github.com/TeamPorcupine/ProjectPorcupine/issues/328
I already have git-lfs on my laptop so I can't test this hypothesis, maybe someone else in the group who doesn't have it installed could pull your branch and see if the file was downloaded.
If so, we will need to update the documentation to ensure people have git-lfs before cloning the repo, otherwise those large files might not be downloaded depending on their system's default git setups.

Again, very relevant feedback Mathieu, thanks! :)
If git-lfs is not installed, files are replaced by a text file (containing a link) with the exact same name and extension.
We could create a function that checks if datasets are here. If not, download dataset using urlwrite. For instance urlwrite https://github.com/neuropoly/qMRLab/blob/Patch/Data/IR_demo/IRData.nii.gz?raw=true test.nii.gz download the Inversion Recovery data...
This function can be called in startup.m, or in each batch example..
Note that the data are automatically downloaded in releases, so I agree we should be careful to have small datasets.

Apart from that git-lfs is easy to install and transparent afterwards. It prevents from having a growing repo.

Ok thanks! The other issue is  related to Julien's email this morning. Github accounts have bandwidth limits. If the Github repo is 400mb in size, it only takes three fresh clones to go over the current neuropoly limit. I did a fresh clone of this repo last night, including your Patch branch (which contains duplicate copies of every single data file, since you changed their storage to git-lfs), which is likely what contributed to the neuropoly github account to go beyond its bandwidth limit.

Also, if this repo becomes larger than the 1gb storage limit for free github accounts (note that every time a data file is change and saved in a commit, old files are not removed, they accumulate when using version control), people may not be able to fork this repo. It's another point to consider - I don't have admin privileges, so I can't see what Github considers to be the current size. However, when I pull all the branches, qMRLab takes up 1.03 GB of space on my laptop currently...

As to your last point,

Apart from that git-lfs ... prevents from having a growing repo.

This is not true, unfortunately. I skipped over this in my explanation above, but the repo will always increase in size. What git-lfs does is allow you to git pull large files, that will only pull the pointers to large files. If you have git-lfs installed, that then allows you to retrieve the files from those pointers. But all the data is still stored somewhere, and contributes to github's space limit/bandwidth.

Ok, we'll have to move to OSF then... and clean the .nii.gz from the repo
In each batch_example, we need to add
urlwrite link filename

I'm not familiar with OSF, but I'll look into it, thanks!
To add to my last point, for reference, here is a link that explains how the limits are taken into account for git-lfs: https://help.github.com/articles/about-storage-and-bandwidth-usage/
Bandwith is not counted for git-lfs uploads, but are for downloads, which may be why you did not get a warning about the usage.

Note that you may need to delete your branch and recreate it to properly remove the files, because simply deleting them and pushing the commit of that delete will keep the files from previous commits on the system/repo.

data on https://osf.io/tmdfu/

nice @tanguyduval, but don't you want to zip (or tar.gz) each folder, so that only a single download per model is required?

Ok I deleted the branch and regenerated the commits in Patch2

I agree, I will zip the files along with the fitresults

anyone knows a way to download data from the OSF URL?  i'm looking for a matlab equivalent of curl/wget

urlwrite
https://www.mathworks.com/help/matlab/ref/urlwrite.html

@jcohenadad urlwrite is better than websave because not compatible by Octave.
Did you commited your modif? We are going to finish this with Agah

@jcohenadad @agahkarakuzu
I tried with octave, and urlwrite('https://osf.io/zkefh/download?version=1','test.zip') works fine.
On Matlab, use websave('test.zip','https://osf.io/zkefh/download')
To handle that we need to create a method DownloadDataset in the Abstract Class, and use if Octave ...

See also my message in #139
In the method downloadData (where you manage the condition octave OR Matlab) you can add a warning for old versions of Matlab

Data are on OSF and can be downloaded smoothly locally.
However, there is a failure on TRAVIS--> no outputs from octave's urlwrite.
@jcohenadad are you aware of any difference between local and Travis for downloading data?
They had similar issue on SCT project, here is their script:  https://github.com/neuropoly/spinalcordtoolbox/blob/f03153603589723a790ccb66f7e40c8bac6fa1a2/scripts/sct_download_data.py

sometimes the server is not responding. I would catch the exception and display it to understand what the problem is (runtime error? cannot connect to server? typo? permission error? etc.)

I already tried in this commit 136fda2730394c052407741c05fbaa8188ee27b5
But no error message (SUCCESS = true). We need to find an alternative to urlwrite to debug this error

strange... is anything downloaded?

Absolutly no files are downloaded.
Travis output:
Please wait. Downloading data...
before:
.   ..
after:
.   ..

@agahkarakuzu maybe fork qMRLab to create a private repo --> this way you can debug Travis
https://docs.travis-ci.com/user/running-build-in-debug-mode/
Useful in the future..

solved using curl 66bdc9b93bba67f35124515bf8dd1affaab1f58c


Clarify the gap between prototype and merged design document

Clarify the gap between prototype in https://github.com/jsoss-sig/keycloak-fapi/issues/47 and merged design document in https://github.com/jsoss-sig/keycloak-fapi/issues/48. List up their differences.

https://github.com/jsoss-sig/keycloak-fapi/issues/53 to https://github.com/jsoss-sig/keycloak-fapi/issues/65


fix server warning message to stderr to avoid example yaml error

Fix https://github.com/istio/istio/issues/33831
[X] Installation

@kebe7jun: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
b1204bd4a2511f773f3b4e5131fd807424eee47e
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@kebe7jun: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-pilot-multicluster-tests_istio
2ec3f1b556b6efbfa1950fa82b6797b344e4860a
link
/test integ-pilot-multicluster-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

/cherry-pick release-1.10

@kebe7jun: new pull request created: #34074

In response to this:

/cherry-pick release-1.10

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.


Fix opentherm_gw config flow migration.

Description:
The config flow migration for opentherm_gw lacked default options. This was not taken into account with the subsequent options flow PR, causing problems with the climate platform after migration.
This PR implements default options for the opentherm_gw climate platform.
Related issue (if applicable): fixes #28363
Pull request with documentation for home-assistant.io (if applicable): N/A
Example entry for configuration.yaml (if applicable):
N/A
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.
[x] I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

N/A

If the code communicates with devices, web services, or third-party tools:

[x] The manifest file has all fields filled out correctly. Update and include derived files by running python3 -m script.hassfest.
[x] New or updated dependencies have been added to requirements_all.txt by running python3 -m script.gen_requirements_all.
[x] Untested files have been added to .coveragerc.

If the code does not interact with devices:

N/A

Failed tests seem unrelated. Can we do something about this?


Create BoxWrapper component for the forms (see EditVolunteering)

Is your feature request related to a problem? Please describe.
Currently forms have a bunch of repeated  components that essentially just wrap form elements vertically and horizontally (See https://github.com/MichaelZhao21/tams-club-cal/blob/master/client/pages/edit/volunteering/[[...id]].tsx#L111 for an example).
Describe the solution you'd like
I want to have these consolidated in a component that can be reused.
Describe alternatives you've considered
N/A
Additional context
N/A

Should be resolved soon with #518


Add admission webhooks

Problem:
We need a way to validate requests received by the Harvester backend and Kubernetes API server.
Solution:
Add admission validation and mutation webhooks for required CRs.

The above figure explains the design. Note the number in the circle doesn't suggest order:

(1) The user can issue requests to Harvester backend and (2) the backend translates the requests to kube-api .
(3) The user can also send requests to kube-api directly. e.g., applying a manifest.
Inside kube-api

(4) The mutating controller sends mutating requests to the webhook server (if any resource needs a field mutation).
(5) The validating controller sends validating requests to the webhook server (we can do field validating here).

Items:

[x] Add a webhook server. A new binary and new image (rancher/harvester-webhook) are created for this service.
[x] Update helm chart. Add webhook service and deployment.
[x] Migrate validation and mutation from custom API stores.
[x] Update integration tests.
[ ] Update drone file.

Limitations and changes:

Error messages returned by the kube-api server are not under our control. e.g.,

The string "can't delete self" is what we can program in the webhook server.

Extra actions are not supported. For example, we allow passing a removedDisks query parameter in a virtual machine deleting request. This is handy for GUI. But it can't be done in webhook server because the field is not defined in the CR. After discussing with @guangbochen, we decide to keep the shortcut in the backend.

Related Issue:

https://github.com/harvester/harvester/issues/855
https://github.com/harvester/harvester/issues/874

Test plan:

As discuss in the sync call, need to make validation works individually for some resources (not only in mutator).


Add text-transform on mj-text component

Close #238
Fix #131

Hi @pixelize can you test it on litmus ?

Hi @iRyusa, sure gonna do this afternoon. Campaign monitor says it's fully supported
http://www.campaignmonitor.com/css.
Will come back to you asap with results;)

I just have a free account on Litmus, looks great on Outlook 2k13, Gmail & iPhone 6s. Based from that point and considering campaign monitor support, can we imagine to include this PR or do we need full design tests ?

Ok for me, @iRyusa ?


Added missing Path parameter for teamwork schema

This fixes #70 that was introduced with #69. Feel free to adjust the path if something else would be more appropriate. For now, I aligned it with the path for the SharePoint output.

@SamErde should the readme reflect all those changes in the exported configuration?

@SamErde should the readme reflect all those changes in the exported configuration?

Yes, but it might be helpful to wait for this PR to be merged and the bug fixed before advertising the changes. The information pulled doesn't contain much detail, so I'm curious if @ramical has any plans to loop back and add more for the components that he recently introduced.

@SamErde should the readme reflect all those changes in the exported configuration?

Yes, but it might be helpful to wait for this PR to be merged and the bug fixed before advertising the changes. The information pulled doesn't contain much detail, so I'm curious if @ramical has any plans to loop back and add more for the components that he recently introduced.

Yes exactly my point 😅 thanks


Preserve xml file encoding to prevent non-ascii chars from disappearing

For example, System/Math.xml and MathF.xml have several unicode characters that get lost after the tool runs.

Previously the tool loaded in 1252
https://github.com/carlossanlop/DocsPortingTool/blob/bcbb8d36dc3c4e264b2d37b063cdb737ba0e1796/Libraries/Docs/DocsCommentsContainer.cs#L179-L182
so I changed the save code to save in 1252 based on that comment
https://github.com/carlossanlop/DocsPortingTool/blob/bcbb8d36dc3c4e264b2d37b063cdb737ba0e1796/Libraries/Docs/DocsCommentsContainer.cs#L50-L51
I'm now unsure what is correct. @gewarren is asking. (UTF-8 everywhere would be wonderful)

Thanks for that. I chose that encoding because 99% of the xml files had that particular encoding.
Ideally (and I tried to do this in many ways) we would extract the original encoding of the file, and use that when loading the file, then when saving the file. Unfortunately, it wasn't as straighforward as I hoped: whenever a non-ascii character showed up, the XML APIs would either throw an unexpected exception, or the characters would get unexpectedly replaced with the square character □.


dom-repeat in vanilla template does not stamp

Please consider this simplified test case: http://jsbin.com/budeqi/2
When stamping a vanilla template containing a dom-repeat, Safari 8 (and I suspect Safari 7 + all IE, although I have not confirmed this) does not stamp a nested dom-repeat.
This is particularly problematic for test-fixture, which is supposed to be able to stamp arbitrary DOM from vanilla templates.

This looks working to me.

+1 it does not work for me neither in IE11.0.9600.18125 nor Edge 20.10240.16384.0
Same goes for dom-bind

Should be fixed with https://github.com/webcomponents/webcomponentsjs/pull/489

Yup this is working now: http://jsbin.com/juviyikuxu/edit?html,output

dom-bind stamped from template, works as well http://jsbin.com/lekuvekora/edit?html,js,output


build/launch failed on windows 10 and flutter 3.7

after upgrading flutter to 3.7 following error occurs when trying to use this package
Error waiting for a debug connection: The log reader stopped unexpectedly, or never started.
Error launching application on Windows.

with flutter run -v shows a little bit more
           #4      CommandRunner.runCommand (package:args/command_runner.dart:209:13)
           <asynchronous suspension>
           #5      FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:283:9)
           <asynchronous suspension>
           #6      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #7      FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:229:5)
           <asynchronous suspension>
           #8      run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:64:9)
           <asynchronous suspension>
           #9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #10     main (package:flutter_tools/executable.dart:91:3)
           <asynchronous suspension>

Minimal example
import 'package:flutter/material.dart';
import 'package:media_kit/media_kit.dart';
import 'package:media_kit_video/media_kit_video.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyScreen(),
    );
  }
}

class MyScreen extends StatefulWidget {
  const MyScreen({Key? key}) : super(key: key);
  @override
  State<MyScreen> createState() => _MyScreenState();
}

class _MyScreenState extends State<MyScreen> {
  final Player player = Player();
  VideoController? controller;

  @override
  void initState() {
    super.initState();
    Future.microtask(() async {
      controller = await VideoController.create(player.handle);
      setState(() {});
    });
  }

  @override
  void dispose() {
    Future.microtask(() async {
      await controller?.dispose();
      await player.dispose();
    });
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Video(
      controller: controller,
    );
  }
}

pubspec.yaml
name: media_kit_test
description: A new Flutter project.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
version: 1.0.0+1

environment:
  sdk: '>=2.19.0 <3.0.0'

dependencies:
  flutter:
    sdk: flutter
  media_kit:
    git:
      url: https://github.com/alexmercerind/media_kit
      path: media_kit
  media_kit_video:
    git:
      url: https://github.com/alexmercerind/media_kit
      path: media_kit_video
  cupertino_icons: ^1.0.2

dev_dependencies:
  flutter_test:
    sdk: flutter
  flutter_lints: ^2.0.0

flutter:
  uses-material-design: true

flutter doctor -v
[√] Flutter (Channel stable, 3.7.0, on Microsoft Windows [Version 10.0.19045.2486], locale de-DE)
    • Flutter version 3.7.0 on channel stable at C:\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision b06b8b2710 (2 days ago), 2023-01-23 16:55:55 -0800
    • Engine revision b24591ed32
    • Dart version 2.19.0
    • DevTools version 2.20.1

[X] Windows Version (Unable to confirm if installed Windows version is 10 or greater)

[√] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
    • Android SDK at C:\Users\Filly\AppData\Local\Android\Sdk
    • Platform android-33, build-tools 32.0.0
    • ANDROID_HOME = C:\Users\Filly\AppData\Local\Android\Sdk
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.4.4)
    • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
    • Visual Studio Community 2022 version 17.4.33213.308
    • Windows 10 SDK version 10.0.22621.0

[√] Android Studio (version 2022.1)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[√] VS Code (version 1.74.3)
    • VS Code at C:\Users\Filly\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.56.0

[√] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.19045.2486]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 108.0.5359.125
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 109.0.1518.61

[√] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

it has to do with media_kit_video, the above mentioned error occurs as soon as having media_kit_video in the dependencies list of pubspec.yaml, without even have to using it

It's likely an access violation within C++ implementation of package:media_kit_video.
Make sure you are on latest version from Git i.e. specify the ref (latest commit hash) in your pubspec.yaml. Flutter does not detect changes in Git dependencies.

Specify ref like this: https://github.com/alexmercerind/media_kit/issues/17#issuecomment-1383668931.
I have serious exam situation, so I'm not available before next month.

no hurry, but still no luck even with latest commits
it comes down to this i think
D:\repositories\git\entwicklung_dart\media_kit_test\windows\flutter\ephemeral\.plugin_symlinks\media_kit_video\windows\angle_surface_manager.h(15,10): fatal  error C1083: Datei (Include) kann nicht ge�ffnet werden: "EGL/egl.h": No such file or directory
[D:\repositories\git\entwicklung_dart\media_kit_test\build\windows\plugins\media_kit_video\media_kit_video_plugin.vcxproj]
[        ]   D:\repositories\git\entwicklung_dart\media_kit_test\windows\flutter\ephemeral\.plugin_symlinks\media_kit_video\windows\video_output.h(14,10): fatal  error C1083: Datei (Include) kann nicht ge�ffnet werden: "client.h": No such file or directory
[D:\repositories\git\entwicklung_dart\media_kit_test\build\windows\plugins\media_kit_video\media_kit_video_plugin.vcxproj]
[        ]   D:\repositories\git\entwicklung_dart\media_kit_test\windows\flutter\ephemeral\.plugin_symlinks\media_kit_video\windows\video_output.h(14,10): fatal  error C1083: Datei (Include) kann nicht ge�ffnet werden: "client.h": No such file or directory
[D:\repositories\git\entwicklung_dart\media_kit_test\build\windows\plugins\media_kit_video\media_kit_video_plugin.vcxproj]
[        ]   D:\repositories\git\entwicklung_dart\media_kit_test\windows\flutter\ephemeral\.plugin_symlinks\media_kit_video\windows\video_output.h(14,10): fatal  error C1083: Datei (Include) kann nicht ge�ffnet werden: "client.h": No such file or directory
[D:\repositories\git\entwicklung_dart\media_kit_test\build\windows\plugins\media_kit_video\media_kit_video_plugin.vcxproj]
[        ]   D:\repositories\git\entwicklung_dart\media_kit_test\windows\flutter\ephemeral\.plugin_symlinks\media_kit_video\windows\video_output.h(14,10): fatal  error C1083: Datei (Include) kann nicht ge�ffnet werden: "client.h": No such file or directory
[D:\repositories\git\entwicklung_dart\media_kit_test\build\windows\plugins\media_kit_video\media_kit_video_plugin.vcxproj]

i think i got that right with the ref
  media_kit:
    git:
      url: https://github.com/alexmercerind/media_kit
      path: media_kit
      ref: c63aecfbe4db223b11a27a12ad261832fe8d0c36
  media_kit_video:
    git:
      url: https://github.com/alexmercerind/media_kit
      path: media_kit_video
      ref: 13ab81338b3ba88fd0be7196edfd18805741dd93

20c46b58bb5c8a9e749b6b9760234281e7bf2e02 is latest ref.
Use it for both packages. Confirm if it still crashes. If not, close this.

unfortunately it still crashes
  media_kit:
    git:
      url: https://github.com/alexmercerind/media_kit
      path: media_kit
      ref: 20c46b58bb5c8a9e749b6b9760234281e7bf2e02
  media_kit_video:
    git:
      url: https://github.com/alexmercerind/media_kit
      path: media_kit_video
      ref: 20c46b58bb5c8a9e749b6b9760234281e7bf2e02

you may need to delete the build folder completely

@Quackdoc did not help :(

it works now, yay. thank you both

Yup. New versions won't build without it.
I didn't quite understand your issue if you were facing compile time issue or that memory access violation.

initially I had both media_kit_libs_windows_video and media_kit_libs_windows_audio in my pubspec, but not the latest commit ref, so that was the missing point, but while testing around I removed those packages unfortunately

still (or again) experiencing issues after trying to move from the working example project to my real project.
current status is that not even the example project is working anymore (I guess because it is created from scratch after I thought I don't need it anymore)
it compiles with no errors, but it does not launch.
when trying to launch the generated build manually from build\windows\runner\Debug or build\windows\runner\Release it says that libmpv-2.dll is missing. but there is a mpv-2.dll, so I copied that file and renamed it to libmpv-2.dll and the app launches and I can see the screen for a second or two than it crashes.
btw: it crashes only when really using the package in main.dart.
I have no idea how I got it to work yesterday, I guess because I had some variations of the git-url in my pubspec.yaml prior to the final one with the latest ref in it. I tried to reconctstruct my steps from yesterday but did not suceed

Don't keep both libs package. READ THE README.

As long as our CI is passing, everything is alright.
There is a decent application in repository with working pubspec.yaml & main.dart, what else is needed or expected from open source?

oh man really, yeah you are right. damn you media_kit_libs_windows_audio. sorry for the inconvenience
the README should really say to NOT EVER USE both media_kit_libs_windows_video and media_kit_libs_windows_audio packages :-)

It's not like there will always be only these 2 packages. They are variant of a same thing. In future, there might be 5 or 6 targetted different features to focus on modularity.

you are completely right, I really could AND SHOULD have figured that out on my own


Spanned: impl PartialEq, Eq, Hash, PartialOrd, Ord in terms of the value

This is because we want to be able to index into HashMap<Spanned, T>
with a dummy span and get results where only the content has to match.
For more info, see #327 and #341

Sorry for the delay in getting to this!

Thanks for merging!


E2 preprocessor: Add dynamic/variant return type to e2function syntax

For example, I have a function which returns either a string or a number, what would do I specify as a return type?

e2function ??? foo(x)
    if x == 1 then return 1 end
    return 'not 1'
end

So, I am wondering if there is something such as dynamic/variant type.
I could use an array/table, but then users will need to write more code.

No, there isn't. I also don't believe this is really possible in a strict type environment, it'd break type safety.

No, there isn't.

There should be.

I also don't believe this is really possible in a strict type environment

It is possible...

it'd break type safety

Not quite, it would basically have to perform checks/validations at runtime rather than when it is compiling the code. So, if any of these checks fail during runtime, just throw an error.

Not quite, it would basically have to perform checks/validations at runtime rather than when it is compiling the code. So, if any of these checks fail during runtime, just throw an error.

That in my opinion beats the point of type safety.
Although, I guess if a dynamic type was created it could work out, although I imagine it'd be very similar on the user end for writing extra code to handle it.

Not happening.


[codeowners] Add reviewers for /api/include/

Reviewers added by request of Oleg Nabiullin.

I added all existing reviewers, will invite Solodkov and Leonenko.


FF-3363 chore: streamline version strings management

Our current versioning flow is tricky and error-prone. With multiple packages in the same repository and changes that affect multiple SDKs, it's hard to keep track what SDKs need a version bump and what kind of version bump they need (major/minor/patch). Keeping track of required version bumps is taxing, and already led to multiple incidents when versions were not properly bumped (breaking changes released without major bump, or version was accidentally skipped).
This PR tries to make version string management easier by integrating changesets.
New flow
The new flow will look like this:

When we add new changes, we should add changeset files (npm run changeset helps to generate it automatically) that describe what packages need what kinds of version bumps, along with the description of the changes (there are examples of these in this PR).

There's a github bot that's going to remind us to add changeset files (optionally because not all changes should cause a release). See changeset-bot below

Once merged, a github workflow opens a PR that applies all version bumps and updates changelogs. If there are multiple unreleased versions, the workflow will update the existing PR.
Version updating is two-step (internally):

changesets updates versions in package.jsons
A bunch of small scripts update Cargo.tomls and keep all version strings in sync (e.g., updating eppo_core dependency version in all SDKs, or syncing version strings in Ruby's Cargo.toml and version.rb files). This is recommended by changesets.

When we are ready to release, we merge the PR and create github releases as usual.

How this was tested
This PR includes changesets for all unreleased changes. I have applied them with npm run version and verified the results.
Why not nx
When discussing this before, someone proposed nx. Theoretically, it's a good suggestion as it can do more and works with different languages (not just js). Practically, I couldn't integrate it because their Rust plugin doesn't work for mixed-language projects (which is exactly what our SDKs are: python bridging to rust, ruby bridging to rust).
If that is fixed, we can still migrate to nx as nx uses the same format for changeset files.

Ruby failure is unrelated to this PR. Fix: https://github.com/Eppo-exp/eppo-multiplatform/pull/137


Issue with v-model data when selectedTags is empty

If the component is initialised with an empty array set for the v-model then when a tag is added and the tags-updated or tags-added is fired, the v-model array still remains empty.
I've tried cloning this repo and modifying your demo example and the problem still remains.
So if you were to update the selectedTags property to be an empty array and in your onTagAdded or onTagUpdated callbacks you console.log(this.selectedTags) you will see an empty array the first time you add a tag. If you delete the tag and then re-add the console will correctly show the array with one item in it.
Any thoughts?

Me too. I see this problem when first adding a tag.

Hey. Sorry for the late reply. I just released a new version and I was unable to reproduce the bug there. Please give a try again. Feel free to reopen this if the bug persists.

I have the same issue with the new version. The first tag is not showing up in the selectedTags, as soon as I add a second tag, the array will be shown correctly.

I include this library into my page manually from a CDN, I already use the latest versio but the first time when I added a tag, the selectedTags is empty array and array is correct when I added a second tag.

same here!

Thanks guys! This has been fixed in v.2.0.2.


RUST_LOG description

I assume the desired thing here is to document RUST_LOG which we use to show additional traces when debugging and sometimes when reporting issues.

Closing—rather than adding a section to the book for debugging, we'll point it out on the main repo and on issue templates.

Awesome! Let's do it then. I'll keep this issue closed and create a more appropiate new one ^^ @mds1


[DOC] add timeseries section to website docs

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

Updates docs to have a timeseries module section
Adds .. currentmodule:: janitor to all other module .rst files to ensure timeseries module section appears in nav bar.

This PR resolves #742 .
PR Checklist
Please ensure that you have done the following:

[X] PR in from a fork off your branch. Do not PR from <your_username>:dev, but rather from <your_username>:<feature-branch_name>.
[X] If you're not on the contributors list, add yourself to AUTHORS.rst.

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

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

Quick Check
To do a very quick check that everything is correct, follow these steps below:

[X] Run the command make check from pyjanitor's top-level directory. This will automatically run:

black formatting
flake8 checking
running the test suite
docs build

Once done, please check off the check-box above.
If make check does not work for you, you can execute the commands listed in the Makefile individually.
Documentation Changes
If you are adding documentation changes, please ensure the following:

[X] Build the docs locally.
[X] View the docs to check that it renders correctly.

Relevant Reviewers

Please tag maintainers to review.

@ericmjl

Everything looks great, thanks @loganthomas!


support Korean

Issue Type: Feature Request
I need to support 'Korean help document(tag, tutorial, ect......)' more than now~ PLZ~~
VS Code version: Code 1.39.0 (9df03c6d6ce97c6645c5846f6dfa2a6a7d276515, 2019-10-09T06:57:43.593Z)
OS version: Darwin x64 18.7.0

@weeteckt @jasoncard, looks like a content loc request.

@ChungSangHee Thank you for your feedback. Currently, VS Code documentation site does not support localization (no language selection nor multi-lingual publishing). We may also localize the content if moved to docs.microsoft.com, but there is no plan for this at this time.
@gregvanl @chrisdias Do you have any update on this?

@JasonCard No plans at present.


Fix leaking input CSS in the link widget in draftjs

We didn't realised that the CSS for the inputs was leaking to it, that's why it was out of place and so fat! :)


Incorrect password when I haven't created one..

Just downloaded the mac version. It is behaving as if I have already set up a node and telling me my password is incorrect. Also tells me I can just create a new wallet without actually giving me the option to create a new wallet. Please advise..
I have never used the software before so I have no idea why it thinks I am a returning user.
Cheers

@BitSenseApp you must have LND data on your machine already.
If you want to remove old LND data and start over make sure you close all channels and send all funds from the wallet. Then you can remove the LND data located at:
MacOS: $HOME/Library/Application Support/Lnd
Windows: %LOCALAPPDATA%\Lnd
Linux: ~/.lnd

I had it downloaded LND before but I had removed it. $HOME/Library/Application Support/Lnd no longer exists. Any ideas? It seems theres something still on my computer thats blocking the set up.
TIA

That worked thanks!

I am having the same problem, I also downloaded LND, but I don't see that file in the location you mentioned

I have this problem too, but there is no Lnd folder under Application Support. (Mac)

@SDWouters are you definitely looking in The Application Support dir under your homedir (~/Library/Application Support/Lnd and not the system-wide one (/Library/Application Support/Lnd)

TIL my Mac has not 2, but 3 folders called Library. Could only find that one through the Terminal 🤨Thanks!


create copy for the About page, and a list of top contributors

We'll need content and that contributor list (each with name, CIViC ID, affiliation, introductory blurb, etc.).

Also will need a link to the current profiles for the key contributors.

This is in progress but has been evolving a bit as we work on it. I'll get something to you as soon as we have it worked out.


Please reconsider the shutdown of the "gapi.auth.authorize" feature.

I hope you don't stop the "gapi.auth.authorize" function. Or can I extend it for two more years?
The apps I've developed are not compatible with the new "Google Identity Services".
And there are more than 100 apps to change.
It doesn't matter if the "gapi.auth2" function is discontinued, but the initial "gapi.auth" is easy to use because it only has the basic authentication function.

Could you share specifically what "not compatible" means to you ?
You are right, these are significant changes to auth -- and more information on your situation is helpful.
By "basic authentication" are you referring to using an access token in the Authorization header, managing session state, retrieving an email address for a user, or something else entirely ?

please share how to decode the access token when google sign-up gives the token.


fend: add tests and meta.changelog

Description of changes
Add simple package tests for the benefit of automatic updates.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

expected> building '/nix/store/1s7j0irmn5417vabjnwsdz42fd69g9c8-expected.drv'
actual> building '/nix/store/1ngrwg624l7g947fsfxbdrvsdr98f9wa-actual.drv'
fend-1.3.2-test-version> building '/nix/store/yd1q3yqp8y25my831ics3j6ym46l0g6v-fend-1.3.2-test-version.drv'
equal-contents-fend-does-simple-math-and-unit-conversions> building '/nix/store/7gpagznfz28vdy2p1jw1ial2ppij3kj9-equal-contents-fend-does-simple-math-and-unit-conversions.drv'
fend-1.3.2-test-version> 1.3.2
equal-contents-fend-does-simple-math-and-unit-conversions> Checking:
equal-contents-fend-does-simple-math-and-unit-conversions> fend does simple math and unit conversions
equal-contents-fend-does-simple-math-and-unit-conversions> expected /nix/store/583zx6ll456l2q4953c86zyimnvf2gdj-expected and actual /nix/store/ff84bb1ygc5fq71h7j247k9zbplbfbsb-actual match.
equal-contents-fend-does-simple-math-and-unit-conversions> OK

LGTM, thanks


Auto push application artifacts to quay.io

Provide a method to automatically push application artifacts on merge to
master.
Closes #3

Addressed some comments left by @csibbitt. I think this is good to go. Unfortunately only a merge to master truly tests this from end to end, but I think it should work since it's the same approach I used for the documentation repository to publish our documentation to github pages.


Auto trigger release pipeline builds once "-ga" tag is published

To save missed time before we notice the "-ga" tags.. we should have a "monitor" that triggers the release-pipeline jobs:

Once a -ga tage appears, eg.jdk-19.0.2-ga, query the actual build tag on the same commit (eg.jdk-19.0.2+n)
Launch the already generated Jenkins release-pipline job (already branched from temurin-build,.. tag), specifying the actual release jdk tag...

currently all mirror jobs are under https://ci.adoptopenjdk.net/view/git-mirrors/job/git-mirrors/job/adoptium/,
thinking if easier to either extend this job, or add function into skaraMirror.sh

currently all mirror jobs are under https://ci.adoptopenjdk.net/view/git-mirrors/job/git-mirrors/job/adoptium/, thinking if easier to either extend this job, or add function into skaraMirror.sh

so to keep things simple, we will keep what is in these mirror jenkins job, and create new job for the trigger part

One option is: using gihub jenkins plugin, by adding webhook in source code repo (e.g https://github.com/adoptium/jdk17u)

then we can, in the release pipeline, get tag's name from payload to fill in scmReference

In case you want an approach that is not tied to Jenkins/plugins or implies Jenkins config that is not visible to all, here is a snippet from a shell script used to autogenerate the scorecard, dumps all tags for a repo into a file, and could be adapted to check for existence of one.
TAG_INFO=tag${VERSION}.txt

function getrepo () {
    REPONAME=$1
    REPO=$2
    PREFIX=$3
    DIR=$(pwd)
    echo "Repo is  $REPO"
    rm -rf $REPONAME
    git init $REPONAME
    cd  $REPONAME
    echo "Getting Tags for $REPONAME"
    git config extensions.partialClone true
    git remote add origin https://github.com/adoptium/$REPONAME
    git fetch --filter=blob:none --tags --depth=1 origin   2>&1 | cat > /dev/null
    git log --tags --simplify-by-decoration --pretty="format:%ci %d" > ../${PREFIX}$TAG_INFO
    cd ..
    git config extensions.partialClone false
    rm -rf $REPONAME
}

if [ $VERSION == 8 ]
then
    REPONAME=aarch32-jdk8u
    getrepo $REPONAME https://github.com/adoptium/$REPONAME  "aarch32-jdk8u-"
fi
REPONAME=jdk${VERSION}u
getrepo $REPONAME https://github.com/adoptium/$REPONAME

so sum how we are doing release with tags now: (take 2022 oct jdk19 as example)

in skara  repo openjdk/jdk19u,

first creates commit by upstream contributor
when it is the release date, normal build tag is applied  to this commit jdk-19.0.1+10
later to apply GA tag jdk-19.0.1-ga onto the same commit : jdk-19.0.1+10 and jdk-19.0.1-ga are pointed to the same sHA1

in origin  repo adoptium/jdk19u

git-mirror job checks per hour if new tag appear then create our adoptium tag jdk-19.0.1+10_adopt (this is done all the time regardless release or not) onto the same jdk-19.0.1+10
the person drives release, checks mail/slack/etc if we have jdk-19.0.1-ga appeared and use jdk-19.0.1+10_adopt as scmReference to start openjdk19-pipeline.

So in theory, use any of these 3 tags jdk-19.0.1+10 jdk-19.0.1-ga and jdk-19.0.1+10_adopt to build are the same.
But we should stick with jdk-19.0.1+10_adopt for our release.
for this issue, i think the real automation, we should do is not to use "-ga" tag (i.e jdk-19.0.1-ga) but jdk-19.0.1+10_adopt
and due to the difficulty of troubleshooting events by github jenkins plugin in ci.adoptopenjdk.net ( without proper permission, even event-driven model is much better in this use case), I will start with a solution purely using git cli.

# fetch all new refs including tags
git fetch --all --tags

# take latest -ga tag (sorted by time) from skara as input
gaTag=`git tag --sort=-v:refname | grep ga | head -1`

# from -ga tag find original commit SHA and list all tags applied onto it , exclude -ga tag and append _adopt
scmReference=`git rev-list -1 $gaTag | xargs git tag --points-at  | grep  -v  '\-ga'`_adopt

# loop with 10m sleep not git-mirror has not apply _adopt tag or merge conflict in git-mirror need to manual resolve
for i in {1..5}
do
  if [ $(git tag -l "$scmReference") ]; then
    echo $scmReference
    break
  else
    echo "No $scmReference found yet, sleep 10minutes"
    sleep 10m
  fi
done

echo "Trigger release pipeline"
...

Now i realize one more thing:
so the release pipeline is built based on all parameters are the same, i.e no drift from one jdk version to another version.
But in some case, we need to set a different value
e.g --with-toolchain-version=2013 for jdk8 win64 , others no need this flag (need double check --with-toolchain-version=2017 on jdk11 win64)
e.g overridePublishName is needed for jdk8 arm32
e.g --without-version-pre --without-version-opt is needed for jdk11, 17 and 19 (probably can use this as pre-set default when create release pipeline)

so i think it is better, that we do not trigger jdk8u aarch32 automatically and it is usually coming with late ga tag.

as for the others, release champion can do a double check after release pipelines are generated, and correct parameters if they need customized value. e.g additionalConfigureArgs


Zozonacci kata with "Allow Contributors" is not editable

XRFXLP reported that he can't see the Edit on the Zozonacci

But contributors are allowed:

I believe it's just because there were no issue or suggestion opened for more than 7 days already.
I can see the edit button, on my side (but I'm already a contributor)

I believe it's just because there were no issue or suggestion opened for more than 7 days already.
I can see the edit button, on my side (but I'm already a contributor)

@Blind4Basics I don't think that can be bcause if that's true then "Allow contributor" option would be redundant.
I thought one have to wait 7 days if-and-only-if "Allow contributors" option is unselected.

@Blind4Basics I don't think that can be bcause if that's true then "Allow contributor" option would be redundant.
I thought one have to wait 7 days if-and-only-if "Allow contributors" option is unselected.

not sure anymore... (we should document that too)

not sure anymore... (we should document that too)

@Blind4Basics and @XRFXLP: I'm confused by this... I thought that after certain number of points one can edit any "Allow contributors" kata.

@Blind4Basics and @XRFXLP: I'm confused by this... I thought that after certain number of points one can edit any "Allow contributors" kata.

I'm confused by this...

that makes two of us.... x)

I'm confused by this...

that makes two of us.... x)

I think the thing about the suggestions and issues always applies, and maybe the "Allow Contributors" was only for the beta stage...?

I think the thing about the suggestions and issues always applies, and maybe the "Allow Contributors" was only for the beta stage...?

The Allow contributors checkmark allows/disallows access to the editor to other users while the kata is still in beta (the Edit/Approve button is not affected by this, obviously). In any other case the kata must have a pending suggestion/issue.

The Allow contributors checkmark allows/disallows access to the editor to other users while the kata is still in beta (the Edit/Approve button is not affected by this, obviously). In any other case the kata must have a pending suggestion/issue.


std::normal_distribution with units

Dear Mr. Mateusz Pusz,
What would be a good way to use constructs such as std::normal_distribution with units?
I'm getting static assertion failed: result_type must be a floating point type.
What is the best way to tackle something like this? Is there anything that could / should be added to the library?
Thank you in advance.
Ramzi

Something like this seems to work:
namespace units
{
    template<typename Quantity>
    struct normal_distribution : public std::normal_distribution<typename Quantity::rep>
    {
        using Base = std::normal_distribution<typename Quantity::rep>;
        normal_distribution(Quantity mean, Quantity stddev) : Base(mean.count(), stddev.count()) {}
        template <class Generator>
        Quantity operator()(Generator& g) { return Quantity(Base::operator()(g)); }
    };
}

What do you think? Should these kinds of classes be in units?
Do you think it's a good idea?

The static assertion is correct (according to the C++ standard). You can find that rand.dist.norm.normal requires RealType which is defined here: rand.req.genl.
I do not think that redefining all distribution for units in this library have sense. On the contrary, I will try to speak with SG6 (Numerics) to extend the definition to every type that advertises itself as RealType. It is not only useful for physical units but also for any type-safe arithmetic wrapper, and we have a few of those in the pipeline already.
Thanks for pointing this issue out!

Oh, that's great!
Would it make sense to at least add them in the meantime until the motion is perhaps approved?
I have a prototype I whipped up in the last hour or so.

We can add it but please make it a separate header (maybe following C++ Standard Library naming) and we need to support all distributions and not only a normal one.

Awesome, on it.


Added  status cake groups .

Added  status cake groups .

TRA Digital
Teacher-Services-infr

 Review StatusCake contact groups


Please make UID and GID of the user editable

Hello,
is it possible to change the uid and gid of the user which is running syncplay-server in the container? e.g. via an docker -e parameter.
I am trying to use this with a cert which is linked via a Volume. But the files are not owned from uid/gid 800, so they are not readable inside the container from the syncplay-server user.
Changing the ownership of the cert files is not an option.
Log of Syncplay container
Welcome to Syncplay server, ver. 1.6.7
Error while loading the TLS certificates.
[Errno 13] Permission denied: '/etc/letsencrypt/live/example.org/privkey.pem'
TLS support is not enabled.

Permissions inside the container
/app/syncplay $ ls -la /etc/letsencrypt/live/example.org/
total 28
drwxr-xr-x    2 1000     1000          4096 Apr 11 09:25 .
drwxr-xr-x    3 root     root          4096 May 31 10:09 ..
lrwxrwxrwx    1 1000     1000            41 Apr 11 09:25 cert.pem
lrwxrwxrwx    1 1000     1000            42 Apr 11 09:25 chain.pem
lrwxrwxrwx    1 1000     1000            46 Apr 11 09:25 fullchain.pem
-rw-r--r--    1 1000     1000          7122 Apr 11 09:25 priv-fullchain-bundle.pem
lrwxrwxrwx    1 1000     1000            44 Apr 11 09:25 privkey.pem
-rw-------    1 1000     1000          5565 Apr 11 09:25 privkey.pfx

docker-compose.yml
[...]
syncplay:
    image: ninetaillabs/syncplay-server
    container_name: syncplay
    environment:
      - PORT=8999
      - TLS=/etc/letsencrypt/live/example.org
    volumes:
      - /etc/letsencrypt/live/example.org:/etc/letsencrypt/live/example.org:ro
    ports:
      - 8999:8999
    restart: unless-stopped
[...]

FYI I am using the linuxserver/SWAG Proxy to generate the certs and adding them to the syncplay-server as described here:
https://github.com/linuxserver/docker-swag#using-certs-in-other-containers

Unfortunately my skills in this regard is pretty much zero and I don't currently have the time to try and figure it out either.
I might get time later, otherwise if someone submits a pull request to address the issue I'd be happy to accept one.

can't you just create the container with the --user argument?
docker create ... --user 1001:1001 ...

I will take a look and see what happens when I have some time.

I will take a look and see what happens when I have some time.

Oh I meant the user deploying the container. Not for the image itself

For example:
> docker create --name=syncplay --net=host --hostname=syncplay.example.com --user 1001:1001 -e PASSWORD=hunter2 -e PORT=8999 -e TLS=/certs -v /etc/ssl/syncplay:/certs ninetaillabs/syncplay-server
> docker start syncplay
> docker exec syncplay sh -c "id && hostname"
uid=1001 gid=1001
syncplay.example.com


Number of extensions that need an update is cut off on the nav bar

Steps to reproduce
Check an extension that needs an update
Expected behavior
The number shouldn't be cut off on the nav bar when it is selected and highlighted.
Actual behavior
The number is slightly cut off

Crash logs
No response
Animiru version
<IP_ADDRESS>
Android version
Official LOS 18.1
Device
Samsung Galaxy Note 3 SM-N9005
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is an issue with an extension, I should be opening an issue in the extensions repository.
[X] I have gone through the FAQ and troubleshooting guide.
[X] I have updated the app to version <IP_ADDRESS>.
[X] I have updated all installed extensions.
[X] I will fill out all of the requested information in this form.

Fixed in new update!


Eager Loading for has_one Not Behaving as Expected

It is possible I am not using this correctly, but I haven't been able to find much documentation about it's use.  Using Mongoid 2.3.4 I'm finding that even though I do eager loading on a has_one relation, the database is still getting hit when I try to access the relation.  Here are my models:
class BookShelf
  include Mongoid::Document
  include Mongoid::Timestamps

  has_one :book
end

class Book
  include Mongoid::Document
  include Mongoid::Timestamps

  field :name, :default => "Test"

  belongs_to :book_shelf
end

And here's my test case:
ruby-1.9.2-p180 :003 > Mongoid.identity_map_enabled
 => true
ruby-1.9.2-p180 :004 > @bookshelves = BookShelf.includes(:book).all.to_a
 => [#<BookShelf _id: 4ed7b86d1dbbbb700c000001, _type: nil, created_at: 2011-12-01 17:25:01 UTC, updated_at: 2011-12-01 17:25:01 UTC>, #<BookShelf _id: 4ed7b86d1dbbbb700c000002, _type: nil, created_at: 2011-12-01 17:25:01 UTC, updated_at: 2011-12-01 17:25:01 UTC>, #<BookShelf _id: 4ed7b86d1dbbbb700c000003, _type: nil, created_at: 2011-12-01 17:25:01 UTC, updated_at: 2011-12-01 17:25:01 UTC>, #<BookShelf _id: 4ed7b86d1dbbbb700c000004, _type: nil, created_at: 2011-12-01 17:25:01 UTC, updated_at: 2011-12-01 17:25:01 UTC>, #<BookShelf _id: 4ed7b86d1dbbbb700c000005, _type: nil, created_at: 2011-12-01 17:25:01 UTC, updated_at: 2011-12-01 17:25:01 UTC>, #<BookShelf _id: 4ed7b86d1dbbbb700c000006, _type: nil, created_at: 2011-12-01 17:25:01 UTC, updated_at: 2011-12-01 17:25:01 UTC>, #<BookShelf _id: 4ed7b86d1dbbbb700c000007, _type: nil, created_at: 2011-12-01 17:25:01 UTC, updated_at: 2011-12-01 17:25:01 UTC>, #<BookShelf _id: 4ed7b86d1dbbbb700c000008, _type: nil, created_at: 2011-12-01 17:25:01 UTC, updated_at: 2011-12-01 17:25:01 UTC>, #<BookShelf _id: 4ed7b86d1dbbbb700c000009, _type: nil, created_at: 2011-12-01 17:25:01 UTC, updated_at: 2011-12-01 17:25:01 UTC>, #<BookShelf _id: 4ed7b86d1dbbbb700c00000a, _type: nil, created_at: 2011-12-01 17:25:01 UTC, updated_at: 2011-12-01 17:25:01 UTC>]
ruby-1.9.2-p180 :007 > Mongoid::IdentityMap.get(Book, "book_shelf_id" => @bookshelves.first.id)
 => #<Book _id: 4ed7ba5d1dbbbb70cc000002, _type: nil, created_at: 2011-12-01 17:33:17 UTC, updated_at: 2011-12-01 17:33:17 UTC, name: "Test", book_shelf_id: BSON::ObjectId('4ed7b86d1dbbbb700c000001')>
ruby-1.9.2-p180 :008 > @bookshelves.first.book
 => #<Book _id: 4ed7ba5d1dbbbb70cc000002, _type: nil, created_at: 2011-12-01 17:33:17 UTC, updated_at: 2011-12-01 17:33:17 UTC, name: "Test", book_shelf_id: BSON::ObjectId('4ed7b86d1dbbbb700c000001')>

When I execute the last call, I still see a call to the database:
Thu Dec  1 11:24:39 [conn37] query: mongotest_development.books{ $query: { book_shelf_id: ObjectId('4ed7b86d1dbbbb700c000001') }, $orderby: { _id: 1 } }
Thu Dec  1 11:24:39 [conn37]   running multiple plans
Thu Dec  1 11:24:39 [conn37]    used cursor: 0x100e31e20
Thu Dec  1 11:24:39 [conn37] query mongotest_development.books ntoreturn:1 reslen:140 nreturned:1 0ms

I would have expected that with eager loading and the book in the identity map that this call to the database should not occur.

I would expect the same... Marking for 2.4.


Make the bound address configurable

Previously the bound address was hardcoded as "<IP_ADDRESS>", which is not always desirable. This PR updates the mzoon and moon crates and the examples so that an address can be provided from MoonZoon.toml. The default address is coincides with the previously hard coded address.

hardcoded as "<IP_ADDRESS>", which is not always desirable

Why would you want to change the default IP? Have you encountered a problem or do you see a security problem or something related to IPv6?
<IP_ADDRESS> works without problems on dev machines, Heroku and CleverCloud so I didn't have a reason to set different IP so far.

Sorry, I did have a use case, but I have forgotten what it was. Chances are it was very specific to what I was doing though so I will just close this PR.


How Do I Contact Kraken Support Number?

➡ For help with Kraken Support Number 📲 1(209)-798-6943 reach out to our support team anytime at We're available 24/7 to assist with installation.
➡ For Kraken Phone Support, please feel free to contact our support team at 📲 1(209)-798-6943 We can assist with installation, setup, and troubleshooting.
➡𝐅𝐨𝐫 𝐡𝐞𝐥𝐩 𝐰𝐢𝐭𝐡 Kraken Support, 𝐫𝐞𝐚𝐜𝐡 𝐨𝐮𝐭 𝐭𝐨 𝐨𝐮𝐫 𝐬𝐮𝐩𝐩𝐨𝐫𝐭 𝐭𝐞𝐚𝐦 𝐚𝐧𝐲𝐭𝐢𝐦𝐞 𝐚𝐭 (📲 1(209)-798-6943). 𝐖𝐞'𝐫𝐞 𝐚𝐯𝐚𝐢𝐥𝐚𝐛𝐥𝐞 𝟸𝟺/𝟽 𝐭𝐨 𝐚𝐬𝐬𝐢𝐬𝐭 𝐰𝐢𝐭𝐡 𝐢𝐧𝐬𝐭𝐚𝐥𝐥𝐚𝐭𝐢𝐨𝐧, 𝐬𝐞𝐭𝐮𝐩, 𝐚𝐧𝐝 𝐭𝐫𝐨𝐮𝐛𝐥𝐞𝐬𝐡𝐨𝐨𝐭𝐢𝐧𝐠.
➡𝐅𝐨𝐫 𝐡𝐞𝐥𝐩 𝐰𝐢𝐭𝐡 Kraken, 𝐫𝐞𝐚𝐜𝐡 𝐨𝐮𝐭 𝐭𝐨 𝐨𝐮𝐫 𝐬𝐮𝐩𝐩𝐨𝐫𝐭 𝐭𝐞𝐚𝐦 𝐚𝐧𝐲𝐭𝐢𝐦𝐞 𝐚𝐭 📲 1(209)-798-6943. 𝐖𝐞’𝐫𝐞 𝐚𝐯𝐚𝐢𝐥𝐚𝐛𝐥𝐞 𝟸𝟼/𝟽 𝐭𝐨 𝐚𝐬𝐬𝐢𝐬𝐭 𝐰𝐢𝐭𝐡 𝐢𝐧𝐬𝐭𝐚𝐥𝐥𝐚𝐭𝐢𝐨𝐧, 𝐬𝐞𝐭𝐮𝐩, 𝐚𝐧𝐝 𝐭𝐫𝐨𝐮𝐛𝐥𝐞𝐬𝐡𝐨𝐨𝐭𝐢𝐧𝐠.
➡For help with ❞Kraken Support Number❞, reach out to our support team anytime at 📲 1(209)-798-6943 We're available 24*7 to assist with installation.
➡ For Kraken Support, please feel free to contact our support team at 📲 1(209)-798-6943 We can assist with installation, setup, and troubleshooting.

Closing this issue as spam.


KT and Java mixed code in the same project

I have kt and Java mixed in the same project.
I send messages to bus from KT
How do I receive messages in Java part of the project?
Some lines of code would be useful

Hi @Duna ,
Unfortunately is not possible to call the inline function KBus.subscribe<>() on Java code due to a language limitation :/

What about sending events from Java code?


Add camomile

As discussed in the RFC https://github.com/unifiedjs/rfcs/pull/9, here is the implementation of camomile, our Node.js image proxy to work together with rehype-github-image.
How it works
camomile works together with rehype-github-image, which does the following at build time:

The original URL in the content is parsed.
An HMAC signature of the URL is generated.
The URL and HMAC are encoded.
The encoded URL and HMAC are placed into the expected format, creating the signed URL.
The signed URL replaces the original image URL.

After your web app serves the content to the user, camomile takes over:

The client requests the signed URL from camomile.
camomile validates the HMAC, decodes the URL, then requests the content from
the origin server and streams it to the client.

Features

A maxSize option in bytes to limit the downloading of resources (failing if exceeded)
Security. Only HTTP(s) is allowed, no other protocols. Protection built-in for Server-Side Request Forgery.
Filtering of headers. Request headers from the client which we want to pass on to the remote server and response headers from the remote server to the client.

Future additions

Allow audio and video content through options
Respect forwarded headers
Structured logging (with log levels)
Add events (server.on('foo', () => {}))
Compression

Time spent
36 hours (without implementing feedback)

I think this is ready now. All open comments have a response from me now. I think most open comments are some subjective opinions not blocking for merge. There is the comment about rounding down versions numbers, which I find odd but willing to change of course if that is considered blocking.

I think this is good to go now @Murderlon? Do you want to merge this, shall I do it?
Can I help you with the invoice?  How does it relate to what it does under the hood? And when I want to add such feature in my app, how can I get to know I should use camomile instead of other tools.

OK, actually I mean the discoverability of the package. Usually projects under rehypejs use rehype-x (x is exactly what it does), right?

It's a bit of an outlier indeed, but in this case the rehype prefix would be more confusing as it implies it being a plugin. Since it's a server, which is completely different from anything else in this org, a different name makes sense. And with a different name why not a wordplay on what it was inspired by :)

My point is still the discoverability of the package. I'm fine with name without rehype-. 😂
But if you think keywords in package.json is already fine, that's OK to me either.

Yes, we cannot use rehype-, that means plugins/presets. This is something else.
Choosing a meaningful name is nice for something like node-fetch for fetch. But when there isn’t really one word, or that name is already taken, I like using a fun name, a play on words.
Like undici for fetching.
Or MDX, or remark.
I don’t worry about discoverability. The keywords and description and the partial match of camo in camomile are fine.
And a link in the related project rehype-github-image soon, should do the trick!


Support JDBC to authenticate with azure identity token credentials

Description
Support Azure hosted PostgreSQL and MySQL services authenticating with Azure AD.
All SDK Contribution checklist:

[ ] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

Feature Checklist

[x] In JdbcPropertiesBeanPostProcessor, check if users use Azure managed MySql or PostgreSql with password, if so, add a log to remind users use credential-free features.
[x] 5 new artifacts libraries

azure-identity-providers-core
azure-identity-providers-jdbc-mysql
azure-identity-providers-jdbc-postgresql
spring-cloud-azure-starter-jdbc-mysql
spring-cloud-azure-starter-jdbc-postgresql

Related issues:

[x] #29777
[x] #29776
[x] #29219
[x] #29775
[x] #29780

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-identity-providers-core

CI failed for The process '/opt/hostedtoolcache/Python/3.6.15/x64/bin/python' failed with exit code 1, but the code doesn't cause it. So skip the check and merge this PR now.

CI failed for The process '/opt/hostedtoolcache/Python/3.6.15/x64/bin/python' failed with exit code 1, but the code doesn't cause it. So skip the check and merge this PR now.

@saragluna Fixed in this PR.

Pull request follow-ups:
https://github.com/Azure/azure-sdk-for-java/pull/30806
https://github.com/Azure/azure-sdk-for-java/pull/30788
https://github.com/Azure/azure-sdk-for-java/pull/30772


android-platform-tools: 26.0.0 -> 26.0.2

Motivation for this change
Upgrading to the latest adb and fastboot for newer devices.
Things done

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[X] Fits CONTRIBUTING.md.

λ nixpkgs →  ./result/bin/fastboot --version
fastboot version -4022467
Installed as /nix/store/cb27g8a8s0msgggin7pybpsk43bkl3xv-android-platform-tools-r26.0.2/platform-tools/fastboot

@GrahamcOfBorg build androidenv.platformTools


MNT: Remove 'pip install' options

Remove --no-deps --no-build-isolation 'pip install' options in recipes as the build tool (e.g. conda-build, rattler-build) will enforce all required 'pip install' options itself at build time.

c.f. https://github.com/conda/grayskull/issues/582

Bump build number.

Checklist

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

@conda-forge-admin, please rerender

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/meta.yaml) and found it was in an excellent condition.


Support for function parameter type which is a Collection

E.g. if I want to use a Function<List<Foo>, Bar> it should be possible. Currently a FunctionRegistration only has one input/output type, and  it's not generic.

It actually already works some (most) of the time. Only the FunctionInspector has inaccurate / partial information about the input and output types, so some things won't work (e.g. output List<Foo> works but input List<Foo> will fail to convert the input to the correct type).


add my school domain

@sivajr This domain does not belong to a university, nor to a college. I have to close the request without merging. Please ensure that you are familiar with this repository rules located at the bottom of this page before submitting a new request.


Update simulator.py

gabage -> garbage

Thanks for your suggestions. Btw please follow the commit message in CONTRIBUTE.md next time. Thanks!


document section

Hi @SofiaSousa
is there a way to add item like title or slug to document section ?

Hi @amirrahimi71
Check PluginDocumentSettingPanel component: https://developer.wordpress.org/block-editor/developers/slotfills/plugin-document-setting-panel/, it may help you.


screen sharing android

hi,
i tested the screen sharing experiment on google Nexus 9 (Android 5.0), since i read the Android support on the Readme, but i doesn't work. And i am not surprised since on Android Chrome doesn't support extension. Is it a mistake on the Readme?
Regards,

Screen capturing is currently NOT available in mobile devices, both using Chrome & Firefox. It maybe a typo mistake, however my main point was:

You can capture screen from desktop (windows/mac/linux)
You can view the screen in Android (Chrome/Firefox/Opera) or iOS

thanks a lot, it's clear now.