Is it possible to deploy CFCR to existing BOSH + CF (Not PCF)?

Hello~
I have a simple question.
I try to deploy CFCR(kubo) to the existing BOSH + CF (Not PCF).
Is this possible?
Do not install new BOSH?

Right now, using entirely upstream deployment manifests & operator files (not some branches & patches etc that havent been merged) it is fundamentally not possible for CFCR to be deployed to the same BOSH as a BOSH running CF.
The current clash preventing this is how the two projects work with BOSH DNS. CFCR needs it and assumes it’s installed in your BOSH env and the bosh-dns will be installed on all VMs via a bosh runtime-config.
Conversely, cf-deployment does not assume you have BOSH DNS installed and after adding the runtime-config for CFCR, your next deploy of cf will fail. There’s a use-bosh-dns.yml operator but it assumes the opposite to CFCR - it wants to add bosh-dns job via the deployment manifest ( not runtime-config) and then you get the clash of two bosh layers trying to both add bosh-dns job templates etc.
@cppforlife said today in #bosh Slack that he is talking to  @dsabeti about changing this in cf-deployment See thread https://cloudfoundry.slack.com/archives/C02HPPYQ2/p1511813403000203
Now the answer is yes if you’re prepared to patch and change stuff. I have some notes on this in an experiment-repo https://github.com/drnic/cfcr-deployment and some PRs floating around.
But since it’s probably not urgent for you to run CFCR on the same bosh as CF, I’d just go with the “no” answer at the top :)

Another approach to getting bosh-dns working today in a manner that works for cf & kubo-deployments would be switch away from runtime-config for bosh-dns job injection; and use deployment manifest addons for cfcr/kubo; just like cf operator file wants to do. That might work.
Then you can try PR https://github.com/cloudfoundry-incubator/kubo-deployment/pull/237 for some simpler instructions
I’ll investigate this approach.

Ok, I'd like to change my answer to "yes".
See https://github.com/drnic/kubo-deployment/tree/cfcr-simpler-times
export BOSH_DEPLOYMENT=cfcr
git clone https://github.com/drnic/kubo-deployment -b cfcr-simpler-times
bosh deploy kubo-deployment/manifests/cfcr.yml \
  -o kubo-deployment/manifests/ops-files/use-bosh-dns.yml

I've now merged the deployment addons for bosh-dns into base manifest; so the base manifest "just works" on any BOSH (assuming it doesn't have runtime-configs/dns.yml yet):
bosh deploy kubo-deployment/manifests/cfcr.yml

If the target BOSH does have bosh update-runtime-config bosh-deployments/runtime-configs/dns.yml then there is an operator file:
bosh deploy kubo-deployment/manifests/cfcr.yml \
  kubo-deployment/manifests/ops-files/use-runtime-config-bosh-dns.yml

Hey @dong-0kim, I'd also encourage to look at Nic's PR and make sure it works for your case. I'd like to close this issue when me merge Nic's PR.

@drnic Thank you very much for your reply.
I am sorry that the answer is too late.
Let me know that I am technically a beginner.
First, I had a BOSH + CF environment,
I installed CFCR as you told me here.
The results were successful first. But it's not perfect because of my technical inexperience.
I modified the cfcr.yml file, but the result is not reflected after deploy.
For example,

name: kubeconfig
release: kubo
properties:
  kubernetes-api-url: "https: // XXXX: 8443"
  kubelet-password: ((kubelet-password))
  kube-proxy-password: ((kube-proxy-password))
  kube-scheduler-password: ((kube-scheduler-password))
  route-sync-password: ((route-sync-password))
  tls:
    kubernetes: ((tls-kubernetes))

I changed the api-url and deployed it, but it was set to master.kubo.
I changed the config of the server directly and started it through monit restart.
$ bosh-ohio -d cfcr vms
Deployment 'cfcr'
Instance                                     Process State  AZ  IPs          VM CID               VM Type
master/1e626fcb-4739-419c-b51e-64d0b76e4b9d  running        z1  <IP_ADDRESS>  i-03ac4d4f609d61d1c  small
worker/89075498-fca3-45b1-9ca9-dcf4d0c6af4e  running        z1  <IP_ADDRESS>  i-0926ad08ec54b80d3  small

I've deployed one master and one worker.
$ kubectl get endpoints
NAME            ENDPOINTS                           AGE
elasticsearch   <IP_ADDRESS>:9200,<IP_ADDRESS>:9300   19m
kubernetes      <IP_ADDRESS>:8443                    9h

I also installed elasticsearch as a sample.
$ kubectl get service
NAME            TYPE           CLUSTER-IP       EXTERNAL-IP   PORT(S)                         AGE
elasticsearch   LoadBalancer   <IP_ADDRESS>   <pending>     9200:31633/TCP,9300:31845/TCP   18m
kubernetes      ClusterIP      <IP_ADDRESS>     <none>        443/TCP                         9h

However, External-IP is pending because of lack of network setting technology. I will try more.

Congrats so far. I’ve not see “External IP” set in kubectl output either.
Next, try adding the -o cf-routing.yml operator and configuration for your CF.
Now you can label your elasticsearch k8s service and its http API will be accessible via your CF apps routing domain.
Like:
kubectl label service elasticsearch http-route-sync=elasticsearch
How try “curl https://elasticsearch.your.apps.domain.com”

From: dong-0kim<EMAIL_ADDRESS>Sent: Friday, December 1, 2017 10:40:10 PM
To: cloudfoundry-incubator/kubo-deployment
Cc: Dr Nic Williams; Mention
Subject: Re: [cloudfoundry-incubator/kubo-deployment] Is it possible to deploy CFCR to existing BOSH + CF (Not PCF)? (#238)
@drnichttps://github.com/drnic Thank you very much for your reply.
I am sorry that the answer is too late.
Let me know that I am technically a beginner.
First, I had a BOSH + CF environment,
I installed CFCR as you told me here.
The results were successful first. But it's not perfect because of my technical inexperience.
I modified the cfcr.yml file, but the result is not reflected after deploy.
For example,
name: kubeconfig
release: kubo
properties:
kubernetes-api-url: "https: // XXXX: 8443"
kubelet-password: ((kubelet-password))
kube-proxy-password: ((kube-proxy-password))
kube-scheduler-password: ((kube-scheduler-password))
route-sync-password: ((route-sync-password))
tls:
kubernetes: ((tls-kubernetes))
I changed the api-url and deployed it, but it was set to master.kubo.
I changed the config of the server directly and started it through monit restart.
$ bosh-ohio -d cfcr vms
Deployment 'cfcr'
Instance                                     Process State  AZ  IPs          VM CID               VM Type
master/1e626fcb-4739-419c-b51e-64d0b76e4b9d  running        z1  <IP_ADDRESS>  i-03ac4d4f609d61d1c  small
worker/89075498-fca3-45b1-9ca9-dcf4d0c6af4e  running        z1  <IP_ADDRESS>  i-0926ad08ec54b80d3  small
I've deployed one master and one worker.
$ kubectl get endpoints
NAME            ENDPOINTS                           AGE
elasticsearch   <IP_ADDRESS>:9200,<IP_ADDRESS>:9300   19m
kubernetes      <IP_ADDRESS>:8443                    9h
I also installed elasticsearch as a sample.
$ kubectl get service
NAME            TYPE           CLUSTER-IP       EXTERNAL-IP   PORT(S)                         AGE
elasticsearch   LoadBalancer   <IP_ADDRESS>        9200:31633/TCP,9300:31845/TCP   18m
kubernetes      ClusterIP      <IP_ADDRESS>             443/TCP                         9h
However, External-IP is pending because of lack of network setting technology. I will try more.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/cloudfoundry-incubator/kubo-deployment/issues/238#issuecomment-348484943, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AAAAbAVa02rgrYo5npLIGNpHQdohi72Wks5s7_OqgaJpZM4QstAe.

I can second that. Took me half a day, but I was able to deploy Kubo against an existing Bosh Director.


Add Article to the list

Hi everyone, I've written an article which describes how to use Cloud9 IDE to make a Hugo site and then deploy it to Google App Engine. Please feel free to review and approve this PR if you think it adds value. Thanks.

Hello @aubort
thank you for sharing this blog post :+1:
Cheers,
Digitalcraftsman


holoviews - pandas rolling_count error

upon install of anaconda v5.1.0
conda create --name pyviz
activate pyviz
conda install -c pyviz pyviz
python
import holoviews
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-1-3c97b9bb50ff> in <module>()
----> 1 import holoviews

C:\Anaconda\envs\pyviz\lib\site-packages\holoviews\__init__.py in <module>()
      9                             commit="$Format:%h$", reponame='holoviews')
     10
---> 11 from .core import archive, config                        # noqa (API import)
     12 from .core.dimension import OrderedDict, Dimension       # noqa (API import)
     13 from .core.boundingregion import BoundingBox             # noqa (API import)

C:\Anaconda\envs\pyviz\lib\site-packages\holoviews\core\__init__.py in <module>()
      1 from datetime import date, datetime
      2
----> 3 from .boundingregion import *  # noqa (API import)
      4 from .data import *            # noqa (API import)
      5 from .dimension import *       # noqa (API import)

C:\Anaconda\envs\pyviz\lib\site-packages\holoviews\core\boundingregion.py in <module>()
     10 import param
     11 from param.parameterized import get_occupied_slots
---> 12 from .util import datetime_types
     13
     14

C:\Anaconda\envs\pyviz\lib\site-packages\holoviews\core\util.py in <module>()
     44
     45 try:
---> 46     import dask.dataframe as dd
     47 except ImportError:
     48     dd = None

C:\Anaconda\envs\pyviz\lib\site-packages\dask\dataframe\__init__.py in <module>()
     10 from .optimize import optimize
     11 from .multi import merge, concat
---> 12 from .rolling import (rolling_count, rolling_sum, rolling_mean, rolling_median,
     13                       rolling_min, rolling_max, rolling_std, rolling_var,
     14                       rolling_skew, rolling_kurt, rolling_quantile, rolling_apply,

C:\Anaconda\envs\pyviz\lib\site-packages\dask\dataframe\rolling.py in <module>()
    198
    199
--> 200 rolling_count = wrap_rolling(pd.rolling_count, 'count')
    201 rolling_sum = wrap_rolling(pd.rolling_sum, 'sum')
    202 rolling_mean = wrap_rolling(pd.rolling_mean, 'mean')

AttributeError: module 'pandas' has no attribute 'rolling_count'

Apologies if I misunderstand how I should have installed pyviz. Will provide more debug info if applicable.

It looks like these window functions API were changed from pandas 0.17 to pandas 0.18. When I try conda install pandas=0.17, I get the following error:
Solving environment: failed

UnsatisfiableError: The following specifications were found to be in conflict:
  - pandas=0.17
  - pyviz -> dask=0.15.4 -> pandas[version='>=0.19.0']
Use "conda info <package>" to see the dependencies for each package.

Do I need to downgrade the dask now as well?

pyviz was heavily pinned to ensure that tutorial attendees could get consistent versions. It's now become somewhat outdated and desperately needs some updates for more recent versions of pandas/dask etc. I'd probably recommend installing latest pandas and dask using conda install pandas dask --force for the time being.

Or install pandas <=0.22, it's only the most recent version (0.23) that has removed the rolling_x methods.

Thank you Phillip, this solved the issue!

There's now a new package (pyviz-0.9.7-py_1.tar.bz2) on the pyviz channel which pins and/or constrains more dependencies.


[breaking] Adding missing type tag for jsonrpc view enums

make it consistent with rest of the api

2 things, could you update API-CHANGELOG.md and add test to test_json_rpc_protocol for the one does not covered yet.

also update the type_account.md and type_transaction.md document

updated PTAL

may also update method_get_account.md and method_get_account_transaction.md, method_get_account_transactions.md, method_get_transactions.md example responses.
copy the curl command and get response should work.
looks like we should have a better way to update these example output.

@bors-libra /land

:exclamation: Invalid command

Bors help and documentation

Bors is a Github App used to manage merging of PRs in order to ensure that CI is always green. It does so by maintaining a Merge Queue. Once a PR reaches the head of the Merge Queue it is rebased on top of the latest version of the PR's base-branch (generally master) and then triggers CI. If CI comes back green the PR is then merged into the base-branch. Regardless of the outcome, the next PR is the queue is then processed.
General

This project's Merge Queue can be found here.
This project requires PRs to be Reviewed and Approved before they can be queued for merging.
Before PR's can be merged they must be configured with "Allow edits from maintainers" enabled. This is needed for Bors to be able to update PR's in-place so that Github can properly recognize and mark them as "merged" once they've been merged into the upstream branch.

Commands
Bors actions can be triggered by posting a comment which includes a line of the form /<action>.

Command
Action
Description

Land
land, merge
attempt to land or merge a PR

Canary
canary, try
canary a PR by performing all checks without merging

Cancel
cancel, stop
stop an in-progress land

Help
help, h
show this help message

Priority
priority
set the priority level for a PR (high, normal, low)

Options
Options for Pull Requests are configured through the application of labels.

          Option
Description

Indicates that the PR is high-priority. When queued the PR will be placed at the head of the merge queue.

Indicates that the PR is low-priority. When queued the PR will be placed at the back of the merge queue.

Before merging the PR will be squashed down to a single commit, only retaining the commit message of the first commit in the PR.

@bors-libra /land

:exclamation: Invalid command

Bors help and documentation

Bors is a Github App used to manage merging of PRs in order to ensure that CI is always green. It does so by maintaining a Merge Queue. Once a PR reaches the head of the Merge Queue it is rebased on top of the latest version of the PR's base-branch (generally master) and then triggers CI. If CI comes back green the PR is then merged into the base-branch. Regardless of the outcome, the next PR is the queue is then processed.
General

This project's Merge Queue can be found here.
This project requires PRs to be Reviewed and Approved before they can be queued for merging.
Before PR's can be merged they must be configured with "Allow edits from maintainers" enabled. This is needed for Bors to be able to update PR's in-place so that Github can properly recognize and mark them as "merged" once they've been merged into the upstream branch.

Commands
Bors actions can be triggered by posting a comment which includes a line of the form /<action>.

Command
Action
Description

Land
land, merge
attempt to land or merge a PR

Canary
canary, try
canary a PR by performing all checks without merging

Cancel
cancel, stop
stop an in-progress land

Help
help, h
show this help message

Priority
priority
set the priority level for a PR (high, normal, low)

Options
Options for Pull Requests are configured through the application of labels.

          Option
Description

Indicates that the PR is high-priority. When queued the PR will be placed at the head of the merge queue.

Indicates that the PR is low-priority. When queued the PR will be placed at the back of the merge queue.

Before merging the PR will be squashed down to a single commit, only retaining the commit message of the first commit in the PR.

/land

:broken_heart: Test Failed - commit-workflow

/land

The failure is KP fixed in https://github.com/libra/libra/pull/5531


Add Video Analyzer use case

Add a use case where you can upload a video and you can ask a prompt to it

Closed by #35


TypeError: Class constructor ThrottlerGuard cannot be invoked without 'new'

Hi,
I'm trying to use the ThrottlerGuard as a global guard. I'm using GraphQL, so I did some extra configuration.
Here's what I've got so far:
@Injectable()
export class GqlThrottlerGuard extends ThrottlerGuard {
    getRequestResponse(context: ExecutionContext) {
        const gqlCtx = GqlExecutionContext.create(context);
        const ctx = gqlCtx.getContext();
        return { req: ctx.req, res: ctx.res }
    }
}

@Module({
    imports: [
        // other modules
        ThrottlerModule.forRoot({
            ttl: 10,
            limit: 3,
        }),
        GraphQLModule.forRoot({
            typePaths: ['src/**/*.graphql'],
            formatError,
            introspection: true,
            playground: true,
            context: ({ req, res }) => ({ req, res }),
        }),
        SentryModule.forRoot({
            dsn: process.env.SENTRY_DSN,
            environment: process.env.SENTRY_ENVIRONMENT,
            debug: true,
            tracesSampleRate: 1.0,
            logLevel: LogLevel.Error,
        }),
    ],
    providers: [
        // other providers,
        {
            provide: APP_FILTER,
            useClass: GraphQLErrorFilter,
        },
        {
            provide: APP_GUARD,
            useClass: GqlThrottlerGuard,
        },
    ],
    controllers: [AppController],
})
export class AppModule {
    configure(consumer: MiddlewareConsumer) {
        // configuring some middleware
    }
}

This results in the error as described in the title, the full stacktrace can be found here:
[0] [Nest] 56196   - 07/14/2021, 2:01:18 PM   [ExceptionHandler] Class constructor ThrottlerGuard cannot be invoked without 'new' +8ms
[0] TypeError: Class constructor ThrottlerGuard cannot be invoked without 'new'
[0]     at new GqlThrottlerGuard (/Users/rubenrutten/Projects/NodeAPI/src/app.module.ts:79:9)
[0]     at Injector.instantiateClass (/Users/rubenrutten/Projects/NodeAPI/node_modules/@nestjs/core/injector/injector.js:286:19)
[0]     at callback (/Users/rubenrutten/Projects/NodeAPI/node_modules/@nestjs/core/injector/injector.js:42:41)
[0]     at Injector.resolveConstructorParams (/Users/rubenrutten/Projects/NodeAPI/node_modules/@nestjs/core/injector/injector.js:114:24)
[0]     at Injector.loadInstance (/Users/rubenrutten/Projects/NodeAPI/node_modules/@nestjs/core/injector/injector.js:46:9)
[0]     at Injector.loadProvider (/Users/rubenrutten/Projects/NodeAPI/node_modules/@nestjs/core/injector/injector.js:68:9)
[0]     at async Promise.all (index 9)
[0]     at InstanceLoader.createInstancesOfProviders (/Users/rubenrutten/Projects/NodeAPI/node_modules/@nestjs/core/injector/instance-loader.js:43:9)
[0]     at /Users/rubenrutten/Projects/NodeAPI/node_modules/@nestjs/core/injector/instance-loader.js:28:13
[0]     at async Promise.all (index 1)

If I replace the GqlThrottlerGuard with ThrottlerGuard, it starts up fine, but the rate limiting doesn't work on GraphQL endpoints.
What other information could be relevant?

That's definitely odd. Do you have a minimum reproduction of this?

I'll try to reproduce it in a clean environment tomorrow. Until then, this seems relevant to the issue: https://stackoverflow.com/questions/51860043/javascript-es6-typeerror-class-constructor-client-cannot-be-invoked-without-ne
Is it possible that there's a mismatch between TypeScript versions / targets?

I was able to find the issue on my own. Multiple versions of ts-node were running, causing the application only to show this behavior when running our watch command, which in turn runs nodemon.
Resolved

Interesting. I wonder if using the @nestjs/cli would change that, as it runs tsc and then node wand also watches for changes. Might be worth a shot

If I run it manually using node path/to/index it runs fine. It also compiles fine. Nodemon 9.0.0 was used because it was defined somewhere in my workspace, made sure Nodemon is at the latest version everywhere and it now runs fine too.


migrate tests from docstrings to test directory?

It seems that some of you feel disgusted with doctests...
I do think it's one of the advanced forms for test driven development in the future, but it seems that there isn't a complete workflow for that.

@thautwarm
the simple example in doctests and corner case save in test file.


windows vm gets 169 address

When I start the Windows VM kubectl get vmi shortly shows the address in the pod IP range, but a few seconds later it changes to a 169 address.
(Linux VMs are working)
Environment:

KubeVirt version (use virtctl version):
0.45.0
Kubernetes version (use kubectl version):
microk8s 1.22.1

On an older combination this worked.

Networking works through the second interface (multus).

Yeah but not primary?

remote desktop is not working on first interface (169). virtctl console works.

Inside windows, if you do ipconfig does it have an IP on the first interface? If not, if you do ipconfig /renew does it get a "The parameter is incorrect" error?

It has the same 169 address. When I try to renew I get a DHCP server error.

Ok, I think you are having the same issue we just stumbled upon. Can't get Pod networking to work in any Windows machine in recent Kubevirt builds. I am working on tracking down the commit where the issue was introduced, I will keep you posted.

Ok, we found the issue, see #6462. If you want to get this working now, you can use our fixed branch. Change your virt-operator deployment to reference image: registry.gitlab.com/atlantic-crypto/kubevirt/virt-operator:cw-network9

Would you retry w/ latest master ? There's a good chance this was fixed by https://github.com/kubevirt/kubevirt/pull/6465.

I just tried against main, but the issue is still there.
To test it did:
kubectl apply -f _out/manifests/release/kubevirt-operator.yaml
kubectl apply -f _out/manifests/release/kubevirt-cr.yaml

kubectl delete -f win10.yaml
kubectl create -f win10.yaml
was this right?

after 2 hours (next time I looked at it) the pod address was shown and no longer the 169 address.


Post https://accounts.google.com/o/oauth2/token: x509: certificate signed by unknown authority

I receive this error when I tried to upload a file to GDrive,
What can I do?
Regards,

I am facing this issue as well. I have installed gdrive in several Rpis. It worked perfectly fine for the first one when I proceed ahead to authenticate for the second one, I face the above mentioned error.

Perhaps checking to see if ca-certificates.crt exists in /etc/ssl/certs helps.

I am having the same issue, and /etc/ssl/certs/ca-certificates.crt is empty.

I'm using source build the new one, on my windows 7 32,

grive about
x509: certificate signed by unknown authority

what can I do?

me too, on mac, how to fix??

Same issue. Any fix? Or what causes it?

Please help with it! @prasmussen @paulz @crosbymichael @jblazquez ...

Perhaps checking to see if ca-certificates.crt exists in /etc/ssl/certs helps.

What I can do with it?


New "Capabilty guards" and principals

I'm currently testing the new capability guards.
(module my-mod G
  (defcap G() true)

  (defcap ESCROW()
    true
  )

  (defun get-escrow-guard()
    (create-capability-guard (ESCROW)))

  (defun get-escrow-principal()
    (create-principal (get-escrow-guard)))
)

(print (format "Cap Guard principal: {}"
               [(my-mod.get-escrow-principal)]))

gives:
Cap Guard principal: c:kp4jc7nDWYyYuUipRKn-60Z3lm4a6JFG1_omaGLyyvY
The principal associated with a cap guard is c: HASH(guard).
Why not having a prettier principal: You could use the same model as user guards:
c:my-mod.ESCROW:HASH(arguments).
I think that's important because when an user sign for transferring to an account (eg an Escrow account), he needs to have clear information about the recipient.
With the current principal, user has no way to know whether he is currently being phished.

I would like to +1 this.
Having human readable accounts is valuable, and makes bridging to future tools that much easier.

Unfortunately, won't be fixed :-(


travis test coverage report service

I think it will be great to generate coverage report on travis build with service like coveralls or scrutinizer or other that can be a benchmark in case any regression after fix/feature.

Good point. I had that thought early on, but have been so busy just trying to get the main code in place I've never made it back to that. Thanks for the reminder. Will see about getting coveralls setup for it.


Failed to parse spam on login

Got this chat spam when I logged in, is it something that needs fixing or can I just ignore it? (it didn't show again after a relog)
[18:46:52] [Dejunk] Item with ID 87806 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197926 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188023 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 186306 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 144117 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 191993 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 82286 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 191999 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 190343 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188931 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 193522 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 186770 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188044 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 190370 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 9318 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197955 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 44599 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197756 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188935 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188055 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 186376 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197938 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 144114 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 144110 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 144011 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188050 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 199156 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197754 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 2678 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 82250 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 181377 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188006 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 190356 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 34064 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188029 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 191989 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 204095 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197935 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188856 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 49212 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 143903 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 191988 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 144120 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 58268 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188015 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 191996 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197939 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 193437 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 20565 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 207002 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 181546 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 144180 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 185855 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 128649 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 194693 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188868 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 82264 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 190357 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 199348 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 2589 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 171264 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197936 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 184363 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 144107 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188031 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 192003 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 34000 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 186285 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 20410 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 44577 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 82248 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 190617 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 82042 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 190597 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 144127 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 82246 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 192002 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 139004 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 82241 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 200247 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 201955 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 190349 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 20571 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 17720 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 37606 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 20398 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 192615 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197923 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 144139 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 193430 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 93029 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 210501 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 190616 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 192025 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 172062 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188880 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 134470 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 190731 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 186368 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 191992 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188018 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188014 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 81971 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 17709 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197931 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 202070 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 74844 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 20573 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188039 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 82245 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 181744 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 37585 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 144159 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 201954 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188022 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 116853 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 192037 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188936 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 188034 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197741 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 191580 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 198991 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 199860 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 193922 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 197742 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 210214 failed to parse and may not exist.
[18:46:52] [Dejunk] Item with ID 208047 failed to parse and may not exist.

You can ignore it and just /reload the UI if it happens again. This seems like a problem that I can probably fix though, so I'll try to resolve it eventually.

Okay 👍

Actually, after reviewing the code, this is not good. All of those ids will have been permanently removed from whatever lists they were on. Terrible design decision on my part. Gonna fix it asap. Sorry for the annoyance!

Oh yikes, luckily I have a pretty decent wowbackup so I can restore the deleted items


Support for TrInitiatorCode and PaymentScheduled parameters

As per the cloudpayments docs, some new headers have been added to the tokens endpoints, one of which is mandatory. (There may be more changed endpoints, but this is the one I'm concerned about). As far as I can tell, there is currently no way to specify those parameters via this library. Since it renders charging payments by tokens impossible, I believe this is a critical issue that deserves urgent attention. If there is a user-side solution I am missing, please inform me

Hello. Thank you for opening the issue. This library is not currently actively maintained, but if you make the changes, test them and make the commit, I'll appreciate it. I think the change is simple, you just need to add there parameters in the CpTokensChargeAuthEndpoint class in aiocloudpayments/endpoints/payments/tokens/bases.py in snake_case, specifiying None as default value for the unrequired fields, and properly type-hinting the new fields. I could make the change rn, but rn I don't have enough time to test it, so I couldn't save it. Also you would need to change the version in aiocloudpayments/init.py to 0.1.2, I can make the changes myself and create a new branch for them and you could test it and send a feedback so that I can merge it into master and upload to pypi.

I've made the changes, however I'm afraid I cannot currently test them. My only potential testbed would be the production deployment of my project, and I'm not sure how to instruct its pipeline to install a package from git, not to mention the issues if it turns out not to work.
I'm also not sure if your code supports enum.IntEnums in models, so I used ints but defined the enumerations alongside. I hope you can find time to test it soon.


Basic authentication is retired for EWS to connect to Exchange Online

As basic authentication is no more supported for EWS to connect to Exchange Online, this page should be updated to capture this fact.

Docs Build status updates of commit 8352832:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/exchange-web-services/authentication-and-ews-in-exchange.md
:white_check_mark:Succeeded
View

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

Docs Build status updates of commit e301f3c:
:clock10: Pending: waiting for processors (8 builds ahead of you)
:warning: Docs Build is busy, currently there are 8 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit e301f3c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/exchange-web-services/authentication-and-ews-in-exchange.md
:white_check_mark:Succeeded
View

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


[Feature request]: Support for Eufy Outdoor Cam E220

Describe the solution you'd like
I'd like to request support for the Eufy Outdoor Cam E220:
https://www.eufy.com/products/t8441z21?variant=39787379753146
This is a popular, capable, and inexpensive camera. Because of its great demand, it's currently being backordered on Amazon and Eufy's official website. However, it only supports Smart Integration with Alexa and Google Assistant, not HomeKit.
Nice to have: Another very welcome capability is the ability to rotate the camera 90 degrees to place it vertically.
Thank you in advance.

I need someone to share the device with me.

@bropat @EarlOrlando I was able to get this camera to work by installing Eufy Security and WebRTC Camera in HACS as well as adding this repo's github URL to Settings > Add-ons > Add-on Store > (three dots at top right, then repositories) Add this repository: https://github.com/bropat/hassio-eufy-security-ws and https://github.com/AlexxIT/hassio-addons I then rebooted Home Assistant and created a custom card on the dashboard with this yaml: `type: custom:webrtc-camera entity: camera.front_door poster: image.front_door_event_image ui: true webrtc: mode: webrtc peer: go2rtc shortcuts:

name: Play
icon: mdi:play
service: camera.turn_on
service_data:
entity_id: camera.front_door
name: Stop
icon: mdi:stop
service: camera.turn_off
service_data:
entity_id: camera.front_door
`

where camera.front_door is the name of the camera. It's been working for me and live streaming the camera. Thanks for this integration! This camera is awesome, and the resolution is great at 2k

Thank you so much @1ll11 !! Unfortunately, I'm tied to Home Bridge and switching to Home Assistant would be a major change for me :/


Remove all runit related scripts

This change is

Reviewed 5 of 5 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Reviewed 5 of 5 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


task runner for stack testing and basic tasks

I want to automate the testing of the stack after the installation and i want to do some basic tasks on the target system after installation.
I will have to write several small tasks for testing the complete environment after the stack is installed and log the things for building a nice report of the system state.
Therefore i need a PHP based task runner, with the following features:

stable / also in-use by other projects
easy to extend and write tasks
parallel job processing on windows would be nice
logger?
reporter? ascii + ascii-tables / html

One task could also cover the relocation feature described #384, but we have to provide this first.
I found:

https://github.com/CHH/bob
http://taskphp.github.io/
https://github.com/Codegyre/Robo
http://bldr.io/
https://github.com/jaz303/phake
https://github.com/kherge-abandoned/php-go
https://github.com/szjani/envcheck
https://github.com/soy-php/soy

No evaluation, yet.
Which tool to select? Whats your opinion?
I'm open for your suggestions.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/26597835-task-runner-for-stack-testing-and-basic-tasks?utm_campaign=plugin&utm_content=tracker%2F164029&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F164029&utm_medium=issues&utm_source=github).

Tasks were named and created in #549

install
uninstall
update
backup
restore
version

Ok, let's go with Robo.

Full stop: one can't define tasks dependencies. Wonder why that runner has 1500 stars. WTF?!


README

Question: can the assisted dagger module be anywhere as long as it stays in the same module as the declared factories?

can the assisted dagger module be anywhere as long as it stays in the same module as the declared factories?

Yes. It contains only unscoped bindings so you can put it anywhere.


range queries on numbers

I know it's out of the scope but would be really happy to have it in lunr :)
var index = lunr(function(){
    this.field('price');
    this.ref('id');
});

index.add({id: "1",price: "2"});
index.add({id: "2",price: "11"});
index.add({id: "3",price: "27"});

var results = index.numericRangeSearch("[10:30]");
// results = {id : 2 , id : 3}

Lucene used to transform numbers to sortable strings to achieve such kinds of queries :
https://github.com/apache/lucene-solr/blob/master/lucene/core/src/java/org/apache/lucene/util/NumericUtils.java
And some times before, the workaround was to use padding :
Before
2
11
27

After
002
011
027

If you don't want to include this feature in lunr, any help would be really appreciated.
Thanks a lot for this wonderful project anyway.
Manu

So, first of all, this is almost definitely not going to make it into the current version of lunr, it would involve too much change, specifically around understanding the search term, but probably in other places too.
The next version of lunr already has some smarts around parsing search queries, so there is already the pieces in place for understanding [10:30] as meaning any document with a number between 10 and 30.
I need to do a bit more background reading, as well as consider how text ranges such as [aa:ab] would work, but it might be something that could end up making it into lunr.
I'll keep this issue open for now, just to remind me to think about it. I can't promise that I'll end up with a solution any time soon though.

wonderful !
So the QueryParser is already in place to achieve range queries but you need to work on the index to make it possible ?
On which part of the code can I try to help ?

Well, there is a query parser, it doesn't yet understand range queries but that can be done. The larger piece of work will be finding ranges in the index, but again, this shouldn't be impossible.
Hold off on making a start on this for now, that branch I linked you to is still a work in progress, and things may change, I don't want you to waste any effort. I'm hoping to publish an alpha soon, and then start finalising the interfaces etc, at that point we can start thinking about how to implement.

hi, now lunr is 2.3, is there a way to do this? :)

@fauno not yet, mostly because I haven't prioritised it.

Most applications which are searching purely text/documents typically require the ability to also add search constraints for Date ranges e.g.

Months or last 6 months
Between times (2-4pm)
Last week, Last 6 weeks

All of which would solved via a simple numeric range capablity.


Weird surface texture artifact at 180 degree longitude

Observed behaviour
There can be an odd surface texture glitch on planet textures at around 180 degree longitude.
Expected behaviour
A smooth texture looping around the 180 degree longitude.
Reproduction Steps

Start a scenario including a body with a surface map.
Move the camera until the 180-degree longitude is in view.

Multimedia

System info:

Operating System: Windows 10
OS3D version (last commit number): 92b410ad659ce355c3de0357cd55f2b57973056b
Python version: 3.10

Additional notes
Not a fatal issue, but can be visually annoying regardless. Probably has something to do with vertex-texture mapping. That, or the Blender UV's or export.

Fixed by ad6e17b48527fc4ec3ef2d3c182dc170f68588b1
As I suspected, it was about the vertex-texture mapping. It wasn't a third-party package fault, but since I bypassed it so throughly already, I may end up completely removing the pywavefront dependency in the future.


UDS naming for servers is handled by a hack in iomgr dns code

https://github.com/grpc/grpc/blob/0043dea25c47838513eb2266959f86b3670bdc56/src/core/lib/iomgr/resolve_address_posix.cc#L54
There ought to be a server resolver type that handles this stuff.

This is something we still need to do.


Microsoft.Windows.SDK.NET.dll not installed as a hard link

Microsoft PowerToys version
0.70.1
Installation method
Microsoft Store
Running as admin
Yes
Area(s) with issue?
Installer
Steps to reproduce

Uninstall the old version of PowerToys
Install PowerToys
Run the following in PowerShell

# Count the number of files that are hard-linked.
ls -Recurse -File -force -ErrorAction SilentlyContinue | ? { $_.LinkType -eq 'HardLink' -and $_.Name -eq 'Microsoft.Windows.SDK.NET.dll' } | Measure-Object
# Count the number of files that are not hard-linked.
ls -Recurse -File -force -ErrorAction SilentlyContinue | ? { $_.LinkType -ne 'HardLink' -and $_.Name -eq 'Microsoft.Windows.SDK.NET.dll' } | Measure-Object

✔ Expected Behavior
PS C:\Program Files\PowerToys> ls -Recurse -File -force -ErrorAction SilentlyContinue | ? { $_.LinkType -eq 'HardLink' -and $_.Name -eq 'Microsoft.Windows.SDK.NET.dll' } | Measure-Object

Count    : 16
Average  :
Sum      :
Maximum  :
Minimum  :
Property :

PS C:\Program Files\PowerToys> ls -Recurse -File -force -ErrorAction SilentlyContinue | ? { $_.LinkType -ne 'HardLink' -and $_.Name -eq 'Microsoft.Windows.SDK.NET.dll' } | Measure-Object

Count    : 0
Average  :
Sum      :
Maximum  :
Minimum  :
Property :

❌ Actual Behavior
PS C:\Program Files\PowerToys> ls -Recurse -File -force -ErrorAction SilentlyContinue | ? { $_.LinkType -eq 'HardLink' -and $_.Name -eq 'Microsoft.Windows.SDK.NET.dll' } | Measure-Object

Count    : 0
Average  :
Sum      :
Maximum  :
Minimum  :
Property :

PS C:\Program Files\PowerToys> ls -Recurse -File -force -ErrorAction SilentlyContinue | ? { $_.LinkType -ne 'HardLink' -and $_.Name -eq 'Microsoft.Windows.SDK.NET.dll' } | Measure-Object

Count    : 16
Average  :
Sum      :
Maximum  :
Minimum  :
Property :

I think Microsoft.Windows.SDK.NET.dll should be hard-linked because many modules use it and the file size is 20MB.
Other Software
Windows 11 22H2 x64

PowerToys installer is described as using hard links.
https://github.com/microsoft/PowerToys/blob/main/doc/devdocs/disk-usage-footprint.md
However, it does not appear to be done for Microsoft.Windows.SDK.NET.dll.

Nice catch!
@stefansjfw is it by design or missing?

We would have to align the version of Microsoft.Windows.SDK.NET.dll across all modules to make this work, so it's not just a simple addition of the Microsoft.Windows.SDK.NET.dll to the files list. I'll take a look. Nice catch it is! Thanks

Closing as we're not using hard links anymore.


chore: PiT - Update to Vaadin v24.4

Created by PiT Script when testing v24.4.0.alpha14.
Do not merge until v24.4.0 GA is released.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.4 out of 5 committers have signed the CLA.:white_check_mark: Artur-:white_check_mark: tarekoraby:white_check_mark: cromoteca:white_check_mark: taefi:x: manoloYou have signed the CLA already but the status is still pending? Let us recheck it.


Add Pro Menu App

Pro Menu is a app for Bangle.js 1 that replaces Bangle.js 1's built in menu function.

Great - thanks!


lora is not shown up in prompt

hi @huchenlei ,
when i add lora to my prompt,

it will not show up in the API payload,

But if i click Copy button, and copy the json payload to clipboard, it does have Lora inside the prompt.
something like this,
    "prompt": "blue hair <lora:ghibli_style_offset:1>  red eye",

Is this expected or a bug? thanks!

I think it is a problem with jsonTree library. It does not do the escape of special chars. I probably need to handle chars like "<" and ">" manually.

I confirm.
But least it IS copied when we copy it manually.


Added custom stopword feature

This will allow developers/Data Scientists/MLEs to use their own custom/domain-specific stopwords list for cleaning text.

Updated README.md
Added punkt download code in the script that downloads Punkt Sentence Tokenizer if not already.

Yes, I'm guessing the code is for pytests? (based on function signature but not mentioned in requirements.txt).
How do you actually run the test_main.py since the main module file is in src?

I am accepting this PR and I'll update documentation about test cases.


Add a simple converter that can convert a RecordWithMetadata into its underlying record

Move Metadata types into gobblin-api (this was an older PR comment
from sdas that I'm finally getting around to).
Add a simple converter that can convert a RecordWithMetadata into its
underlying record

@eogren this should no longer be needed? all records are wrapped now.

closing


problem on colab

i updated and this error is here
Traceback (most recent call last):
File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/webui.py", line 10, in
from modules.paths import script_path
ModuleNotFoundError: No module named 'modules.paths'

you need to run the cell before the last one

@TheLastBen what cell ? I have the same error

the requirements cell

I run the first one, installing the second step "Installing AUTOMATIC111 repo", then in the step 3 I load the model, and in the step 4 I have installed the requirements

Your using a very old version of the colab, always use the latest one from the link :
https://colab.research.google.com/github/TheLastBen/fast-stable-diffusion/blob/main/fast_stable_diffusion_AUTOMATIC1111.ipynb

I am using the same colab, i get the same error

do a clean run, remove the folder sd from your gdrive and run the colab

okey, I will try

@TheLastBen fixed, thanks you ;)

great !


[Bug]: use setValue on custom field not working on submit

Which packages are impacted?

[ ] @rvf/react
[X] @rvf/remix
[X] @rvf/zod
[ ] @rvf/yup
[ ] zod-form-data

What version of these packages are you using?

"@rvf/remix": "^6.1.3"
"@rvf/zod": "^6.0.3"

Please provide a link to a minimal reproduction of the issue.
https://github.com/rachhen/remix-rvf-example
Steps to Reproduce the Bug or Issue
When using custom Select from Shadcn UI the value is set normally but when submit it show the validation error. The shadcn ui can't use the getInputProps function. Need to use custom function that component provide.
Expected behavior
I expected to use setValue and value
Screenshots or Videos
https://github.com/user-attachments/assets/b8cf0b0c-a453-442d-8734-5df3f15255ec
Platform

OS: macOS
Browser: Chrome
Version: 128.0.6613.138 (Official Build) (x86_64)

Additional context
No response

Hi!
This is happening because your component is missing a few things. You need to add:

A name prop (name={field.name()})

The data will never show up in form data with no name on the form control

A ref ref={field.refs.controlled()}

Without a ref, your select won't be focused on error.

Alternatively, I might suggest using an approach like this instead:
const { onChange, ...fieldProp } = field.getControlProps()

//...
<Select
  onValueChange={onChange}
  {...fieldProps}
  {...rest}
/>

You can read more about why this isn't working on the docs for state mode.


Afloat working on Sierra, but causing app crashes.

Thanks so much for your work on mySIMBL! I was so happy to have Afloat back! There's just one issue-- it seems to be causing other apps to crash, even System Preferences. Any idea how to fix this? Thanks!

Hmm are you using the most recent version of Afloat? I'm not having any issues on my system. This would also be more of an Afloat issue than a mySIMBL one.

I works fine for me, even on Sierra's first update (10.12.1). I used Afloat's bundle from https://github.com/rwu823/afloat. Thanks @w0lfschild for the excellent work!

Ok, first issue detected: when Afloat is on, clicking zip files will never unzip them; instead it will call The Unarchiver preferences. This blocking issue had been reported here: https://github.com/rwu823/afloat/issues/34

Closing this because it's not really a mySIMBL issue, also I can't replicate this.


Move branches rule from push trigger to PR trigger

Let's see if this gets us the behavior we want...

@uweseimet I'm starting to think that we might only need the push trigger, and that the pull_request trigger is superfluous in our case (since we're asking for jobs for every push anyways). But I don't have the energy to poke around with this anymore today.

@rdmark Yes, I understand that you also have other things to do ;-). I will just temorary revert to the original workflow in my current branch. This should be sufficient for the moment.


Find a replacement for survey monkey

Our surveymonkey license has expired so we'll need to quickly find a new replacement.
Acceptance criteria

Review other survey tools (free, paid)

Survey tools reviewed

[ ] CHEFS. Not a good choice as its survey builder is very limited. It's more designed for forms rather than surveys.
[ ] CMS Lite forms. Not scalable. responses are received via individually via email.
[ ] Maze. Powerful tool however, data is stored in US and a PIA and STRA would have to be done.

Will continue with SurveyMonkey for now.


Add SidenavUser

This adds alternative Sidenav version for user specific routes:

https://trello.com/c/4WAqLfXt/156-settings-pages

Activity should link to steemd.com same than topnav setting popover (with target="_blank")
Edit profile should link to https://steemit.com/@:username/settings (with target="_blank")
Drafts should not have right sidebar
Settings and Drafts loading should be aligned to left
When i switch from one page to another for 0.1 second there i can see the title in left like this:

can we remove this effect?

I forgot one point, can we have StoryLoading instead of classic loading on bookmarks page? Now there is both the circle loading and storyloading.


on-step-change callback method ussage

on-step-change="vm.onStepChange()" this is my of form and in a parent controller i get this method invoked whenever step changes, but the problem is that it does not take any parameters and in a parent controller (view of this controller includes directive for multi step form). there is not way to learn on which step form is currently on. is there any way i can access this information in the parent controller? maybe method could take argument which includes curent step next step and previews step as a argument object values?

Creating property inside vm would be another option but in this case each step has to implement logic to set value for this step. this would work but architecturally this is not the right way do achieve what i want so is there any better way we could achieve this?

possible place to edit
I think all is needed to achieve this is to pass this function step item.
newStepElement.then(function (step) {
                                onStepChange(step);
                                currentStepScope = step.scope;
                                currentStepElement = step.element;
                                currentStepElement.scrollTop = 0;
                                stepContainer.scrollTop = 0;
                                currentEnterAnimation = $animate.enter(currentStepElement, stepContainer);
                            }, function () {
                                throw new Error('Could not load step ' + step);
});


Feature Request: bubble radius scaling based on value/size property

Setting a radius based on the value prop and the size of the canvas would be awesome. Currently using d3 to accomplish this instead. Simple example
data: [
  {x:foo, y:bar, value: 100},
  {x:fizz, y:buzz, value: 50},
  {x:foobar, y:baz, value: 25},
]

// ... outputs

data: [
  {x:foo, y:bar, r: 20},
  {x:fizz, y:buzz, r: 10},
  x:foobar, y:baz, r: 5},
]

@timelf123 this sounds like a good idea and probably relatively simple to implement. If anyone wants to tackle this hop on slack and let us know so that we can all be on the same page.

Example - Using D3 to scale the chart on the server
I ended up generating my chart.js config server side and using d3 to scale the data for me. I'm sure there is a more efficient way with the usual functional suspects, however this worked as I had lodash already in this environment.
The problem with generating the config server side is passing callback functions becomes difficult in JSON (needing to stringify the function etc then restore it on the frontend), so I may end up letting the server handle 99% of the work getting the graph object together, then tacking the callback functions onto the object in Angular rather then Express -> JSON config object with callback functions stringified -> unstringify and Function(unstringified)
var list = [...]
var objValues = list.map(function(obj) {
  return Math.round(obj.value)
})
var objValuesOverZero = objValues.filter(function(value) {
    return Math.round(value > 0);
})
var minValue = _.min(objValuesOverZero)
var maxValue = _.max(objValuesOverZero)

var range = [5, 50] // range in pixels for bubble radius, min/max
var domain = [minValue, maxValue]
/**
  * scaleRadius - linear scale for bubble chart because chart js doesn't calculate radius, must set in pixels...
  *
  * @param {Object}
  * @returns {Number} scaled radius value r to be used in chartjs bubble chart
  */
function scaleRadius(obj) {
  // var scaleSqrt = d3.scaleSqrt()
  //     .domain()
  //     .range(range)
  // var scaleLinear = d3.scaleLinear()
  //     .domain([minValue,maxValue])
  //     .range(range)
  // var scalePow = d3.scalePow()
  //     .domain([minValue,maxValue])
  //     .range(range)
  //     .exponent(3)
   var scaleLog = d3.scaleLog()
       .domain([minValue,maxValue])
       .range(range)
  return scaleLog(obj.value)
}

Later:
datasets[0].data.push({ r:scaleRadius(obj), y: foo, x: bar});

running into this myself, any tips on scaling factors / good ranges? trying to think through how to get the scaling to look good at different media sizes. wouldn't mind saving a little trial and error ;)

@ralphcallaway @timelf123 Not sure it's exactly what you are looking for but the recently introduced scriptable options (v2.7) might help to implement this (see this fiddle):
options: {
  elements: {
    point: {
      radius: function(context) {
        var index = context.dataIndex;
        var data = context.dataset.data[index];
        var size = context.chart.width;
        var base = data.value / 100;
        return (size / 24) * base;
      }
    }
  }
}

100 being the max value (you might still want to compute it from your data or decide of one that works fine in your case) and 24 is arbitrary. As you can see, scriptable options also allow to compute the radius based on any data value (data.value in your case), so no need to convert data.value to data.r.

Drawback with the above solution is if you hover over a bubble, the radius is shown as "undefined". Can we please get a resolution for that too?

I am using the latest version of chart.js which is 2.9.3. I used the same function provided above.
elements:
{
point:
{
radius: function(context) {
var index = context.dataIndex;
var data = context.dataset.data[index];
var size = context.chart.width;
var base = Math.abs(data.value) / 30;
var value =  Math.round((size /5) * base);
return value;
},
}
},
I am getting the following error. Request support
Type '(context: any) => number' is not assignable to type 'number'.

@dagdashboard when do you get that error? At build time or runtime? It sounds to me like an error with TypeScript types provided by Definitely Typed

Hi Ben McCann,
Thanks for your response.
During build time itself I am getting the error. There is not much of logic/code. I have a simple bubble chart generated with static data. I am just trying to manage the Radius size of the Bubble in the bubble chart and utilized the code posted by Simon Brunel. I am unable to interpret the error.
error TS2322: Type '(context: any) => number' is not assignable to type 'number'

@dagdashboard this is not a bug with Chart.js, but with the type definitions you are using, which are not maintained by this group. I'm guessing you're using https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/chart.js/index.d.ts and will need to file a bug there. You can stop using the types and use just regular JavaScript and it hopefully will work

I went and looked at the types we brought into the v3 code. It appears like radius is correctly defined when accessed via the dataset options, but it is incorrectly defined when accessed via options.elements.point.

Easy to scale using the scales of the charts too:
data: [{x: 10, y: 11, size: 1}, {x: 20, y: 5, size: 3}],
radius(context) {
  var scale = context.chart.scales.y;
  var zero = scale.getPixelForValue(0);
  var value = scale.getPixelForValue(context.dataset.data[context.dataIndex].size);
  return Math.abs(value - zero);
}

https://codepen.io/kurkle/pen/GRjJQZE

Closing since passing a function for the radius is the best way to do this


faster?

right now the second test hangs for a long time in ipfs add. Looks to be hashing (pegs 1 cpu). Maybe

concurrent add wil help https://github.com/ipfs/go-ipfs/pull/1324 (cc @barnacs)
should use more than 1cpu (cpu seems always to be below 100%)

cc @whyrusleeping

@jbenet we do use more than one CPU: https://github.com/ipfs/go-ipfs/blob/master/cmd/ipfs/main.go#L60

@whyrusleeping maybe not being used in the add we have now?

Yeah, our current add call is very serial. If the current concurrent PR doesnt land soon i'll go ahead and implement that.


Custom headers/cookies in InferenceClient

Related to https://github.com/huggingface/api-inference-community/pull/287 (and especially https://github.com/huggingface/api-inference-community/pull/287#issuecomment-1584578637) cc @StephenHodgson @Narsil
With this PR, user can set custom headers and cookies to the InferenceClient session. This can prove useful when using custom endpoints. If set, custom headers overwrite the default user-agent and authorization headers.
(+fix documentation => save audio as .flac instead of .wav)

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

I love having my curiosity satisfied. Must be has caused a lot of headaches :)


403 on post request

Hello
I used all the configuration instructions from readme. My problem is I still get 403 on:
https://ci.arabel.la/ghprbhook/  (issue_comment and pull_request)
Request URL: https://ci.arabel.la/ghprbhook/
Request method: POST
content-type: application/x-www-form-urlencoded
Expect:
User-Agent: GitHub-Hookshot/0b0c52f
X-GitHub-Delivery: 4d5ae500-2f15-11e6-8f47-71173797ee64
X-GitHub-Event: pull_request
Connection: keep-alive
Content-Length: 0
Content-Type: text/html; charset=utf-8
Date: Fri, 10 Jun 2016 14:58:51 GMT
Server: nginx/1.10.0
Set-Cookie: _oauthproxy=; Path=/; Domain=ci.arabel.la; Expires=Fri, 10 Jun 2016 13:58:51 UTC; HttpOnly
Help, please? CSRF is disabled on this jenkins instance.

403 is a forbidden error because your server requires authentication.

Thanks for quick answer.
Yes, it does. Unfortunately, I simply can't turn off authentication. Can you suggest a solution? In an example, we had no problem to get bitbucket pull request builder to work.

I see that on BB we are using  POST: https://ci.arabel.la/git/notifyCommit? and it goes through.
Is there a similar flow possible with your plugin?

if you are using basic auth on your web server, you can modify your url to
<EMAIL_ADDRESS>(


FIX: use_endl_in_stdout

Flush stdout after every cout call to prevent unexpected behavior.

lgtm
CC @ssorj

Thanks, @dstuchli !


Fix select permission checking when logging

Landed in https://github.com/metarhia/globalstorage/commit/11f7e06d40b84754e50d5d56c5f943c5dcbdac94.


Testing and Rails 4

I've been trying to use the test helpers in rails 4 with rspec-rails and no matter how I create the user my first request is always a 302 to github.

I'm having the same issue:

include Warden::GitHub::Rails::TestHelpers is giving the following error:

2: The following code:
subject { get '/clients' }
it { is_expected.to be_github_oauth_redirect }
yields:

@Goblue1616 2. is happening because of 1. Are you requiring the test helpers? require 'warden/github/rails/test_helpers'

Gotcha!  Thanks for the help.


Automate STA test

Can we automate running STA tests (after each commit)?
So we get early feedback after code changes.

Something like this?
$ # get latest images
$ docker pull geodan/gost
$ docker pull geodan/gost-db
$ # run latest images with docker-compose
$ wget https://raw.githubusercontent.com/Geodan/gost/master/src/docker-compose-sta-test.yml
$ # initialize the database, example for test 1:
$ curl -X post http://localhost:8080/v1.0/Things with prerequisite items
$ run STA test -> in another docker container?
$ do something with feedback

Scripts moved to https://github.com/gost/ets-sta10-runner


recordset horizontal scroll bar

People seem to struggle with finding the horizontal scroll bar on the recordset since the horizontal scroll-bar is not always visible..
What are our options to address this problem?

If you have users that see this on linux or windows, we can explore more potential issues but I can't find a simple solution for those cases right now.

To be clear, the issue is not scrollbar showing or not.  It's that the
horizontal scrollbar is offscreen at the bottom of a scrollable
vertical region that is taller than the viewport.  It's very confusing
that the two scrollbars do not stay bound to the viewport and remain
on screen at all times.

We can do something similar to what was done for recordedit which has a scrollbar on the top of the container as well as on the bottom of the container.

Query -
Does this problem need to be solved for all tables i.e. recordset page, facet(view more), record page  OR exclusively for the recordset table?
Few alternatives -

Keep a fixed max height of the table (possible 60% of viewport height) so the horizontal toolbar would be more easily visible (you don't need to vertically scroll over all the entries to find the horizontal scrollbar)

Pros - vertical scrolling is also reduced over the page i.e. user does not need to scroll through all the rows before moving on to the next table in case of record page or to move on to the pagination controls (endless scrolling reduced)
Cons - We now have two scrollbars next to each other and a slightly busy user interaction.
This is available to play around with here - https://dev.rebuildingakidney.org/~kpherwan/chaise/recordset/#2/Protocol:Protocol

As Josh mentioned above, we can do something similar to what was done for recordedit which has a scrollbar on the top of the container as well as on the bottom of the container. This will definitely work for recordset (need to check for facet and record tables)

Pros - Makes it a consistent behavior with recordedit, the scrollbar on top would be latched
Cons - Two scrollbars together are uncommon and the problem of vertical scrolling remains i.e. if we decide to see 100 records, we have to scroll through all of them before we hit the pagination controls or the next table in case of record page)

Closing this issue as this has now been implemented - https://github.com/informatics-isi-edu/chaise/pull/2104


feat: add node managed mode

Checklist

[ ] run make test
[ ] PR title must follow conventional-commit-standard
[ ] tests and/or benchmarks are included
[ ] documentation is changed or added
[ ] commit message and code follows the Code of conduct

canceled, might pick up later


MWPW-140099 - quiz-marquee center variant

The new quiz-marquee needs a 'center' variant to center align content

Added styles to support a center variant
Addressed an issue w/ the unit tests throwing an error. (see screenshot below)

Resolves: MWPW-140099
Test URLs:

Before: https://main--milo--adobecom.hlx.page/drafts/rparrish/quiz/quiz-marquee?quizKey=cc-quiz-en-US&debug=quiz-results&martech=off
After: https://rparrish-quiz-marquee-center--milo--adobecom.hlx.page/drafts/rparrish/quiz/quiz-marquee?quizKey=cc-quiz-en-US&debug=quiz-results&martech=off

FYI - The quiz-marquee related fragments won't load unless your local storage is set in the app-recommender-test on a given branch/url. ex. [https://rparrish-quiz-marquee-center--milo--adobecom.hlx.page/drafts/rparrish/quiz/rec/app-recommender-test/]
Testing:

Confirm the new 'center' variant is center aligning content on the after url. The bottom 2 quiz-marquee blocks have this variant included in the document.

Testing the Tests ;)
on the main branch try npm run test and look for the quiz-marquee.test.js section.
checkout the rparrish-quiz-marquee-center branch and try re-running the tests. These 'browser logs' should be gone.

Thanks for the review. @colloyd pointed out the lana window object wasn't getting set in the quiz-marquee.test. I have cleaned this up and retested w out any changes to the related files and it checks out. LMK if you could give it another quick eye and validated if so. Thanks

Verified. Extra points for the test case names 😄


How to give a pound symbol(£) in bar chart along y-axis label values?also hideOrigin not hiding origin in Bar chart

£10
£20
hideOrigin={true}

Hi @VijinR 👋
You can display custom text on y-axis using the yAxisLabelTexts prop. For example-
<BarChart
 data={barData}
  yAxisLabelTexts={['0', '£10', '£20']} />

By default, there are 10 sections in the chart. You can control the number of sections using the noOfSections prop.
The issue with hideOrigin is now fixed in version 0.2.6 🎉
Cheers! 🍻

@Abhinandan-Kushwaha by using yAxisLabelTexts we must specify the value also right?how we will get the y-axis value been generated by default by library?I need the default yaxis value generated by library with '£' appended at beginning

Use yAxisLabelPrefix='£'


The kernel doesn't be update after install ROCm kernel

Hi,
I found my OS cannot be updated to ROCm kernel also the kfd not be loaded successfully after reboot the system when I finish the ROCm kernel installation.
I follow the tutor as below steps:
sudo apt update && sudo apt install linux-headers-4.13.0-32-generic linux-image-4.13.0-32-generic linux-image-extra-4.13.0-32-generic linux-signed-image-4.13.0-32-generic
sudo reboot
wget -qO - http://repo.radeon.com/rocm/apt/debian/rocm.gpg.key | sudo apt-key add -
echo deb [arch=amd64] http://repo.radeon.com/rocm/apt/debian/ xenial main | sudo tee /etc/apt/sources.list.d/rocm.list
sudo apt-get update && sudo apt-get install rock-dkms
sudo update-initramfs -u
sudo reboot
And here is my OS configuration:
OS Version: Ubuntu 16.04.05 Server Edition
GUI: Text mode only without GUI
Kernel: 4.15.0-29-generic
Thank you guys.


Add Series Cat. Photos

Add corresponding series photos to this endpoint. For example, if a user clicks on the 356 series banner, we want to see the model  titles, photos and descriptions of the 356, 356A, 356B, and 356C.

resolved with issue #37


Frameshift mutations

Love this method!
I'm trying to understand what would happen with the annotation/prediction process if a genome in the DBG has a frameshift mutation in a gene. Would that gene not get annotated? And would it mess up downstream annotations?

Hi, a frameshift will cause the sequence to be missed by the initial gene identification step. However, Panaroo includes a gene refining step, meaning that if intact homologues of the pseudogene are present in other genomes, the sequence should be found, clustered and functionally annotated, with an additional label of "potential pseudogene".

Ah very cool. Thanks for the explanation.


Add as a Member of your community

Sandeep Kumar Gupta
Bihar
Sandeep Gupta
Why do you want to join?

I want to join because

I want to work in open source

@sandeepswnkumar Thanks for your interest. Invitations have been sent to you. Kindly accept it and make your membership public.


How to get the tile format for tif

Question about an existing feature
metadata didn't return the image format for pyramid tif
What are you trying to achieve?
show the format of tile in metadata

Please can you provide more details. Are you perhaps referring to the compression used within a TIFF image? A sample image and the expected output would be useful.

As tiff file has the option to contain tile in format like none, jpeg, deflate, it would be helpful to know the details before further actions, like whether to compress it again. Currently metadata function only return the  format as 'tiff', I would suggest to add field called  tile-format to indicate the format of tile.
Here is an example image file: https://viewers.etu.wiki/cfa461d04332d3648b44a18854a64687.tif

Thanks, we'd need to expose this information via libvips first.
The underlying TIFF "compression" value is an integer - see https://gitlab.com/libtiff/libtiff/-/blob/master/libtiff/tiff.h#L182-218
We'd probably want to map these to the relevant VipsForeignTiffCompression values - see https://www.libvips.org/API/current/VipsForeignSave.html#VipsForeignTiffCompression
The logic would probably live in/near rtiff_set_header() - see https://github.com/libvips/libvips/blob/master/libvips/foreign/tiff2vips.c#L1665
A PR to implement this in libvips would be welcome, if you're able.

hello @lovell  is this issue resolved ?


get distance from the depth map for Android Phones

Hi @ranftlr
Thanks for the wonderful work.
In the context of getting the absolute depth map, I followed these issues 42 25, 4
From this, I understood that in order to get the absolute depth maps, we need to know the absolute depth of at least two pixels in the image.
if I have an Android app:

that captures the photo.
Infer through MiDas tflite model
generate depth map

So as we don't know the distances of the two pixels in images ( no ground truth image.)  we can't get the absolute depth map.
So how to deal with this situation?

We currently don't know a good way to recover absolute depth without external measurements.


Get stationID from coordinates

I took a shot at this in this commit
1ccddafa4460f014cbb799a6a179de34003b5641
I was able to separate and convert the coordinates from the JSON string sent to the backend but could not figure out how to iterate through the geojson_raw and compare to see if they're the same.

@pgicking We shouldn't be iterating through the decoded geojson to compare. Since the client decided to give us points "somewhere nearby", we'll never actually get a match.
We need to be using something like (but not necessarily exactly) http://postgis.net/docs/ST_ClosestPoint.html to let PostGis take the point that the client gives back to us, and find the nearest segment_raw in the stations table.  (I think we're going to want to play around with this by manually entering coordinates into queries in the postgres command line before we start trying to build the queries in the PHP.)
In addition, just to complicate things, we're going to have to figure out which direction the user is trying to go. If they tap directly between the two lanes of the freeway the "nearest point" might be closer to the southbound lane, but if the end point is the north of start point, we'll have to use the highway that goes the other direction, if that makes sense...
I think the easiest thing to do here is to get the nearest station, but realize that we may also need it's opposite station, which we can get from opposite_stationid.

I completely forgot about that bit.
So since we're getting in decoded lat/long strings, but the server holds encoded strings, how is the connection made? Do we have to encode the coords and ship them off?

probably going to be some other postgis functions that will do the conversion from a string lat/lng to it's internal representation. ("pointFromString" or something like that?)
Like I said, I'd play around with the postgres console to see if you can get something working with lat/lng's that you type in manually first, as a proof of concept.

SELECT ST_AsText(ST_ClosestPoint(pt,line)) AS cp_pt_line,
	ST_AsText(ST_ClosestPoint(line,pt)) As cp_line_pt,
	foo.stationid as stationid
FROM (SELECT 'POINT(100 100)'::geometry As pt,
		bar.segment_raw::geometry As line,
        bar.stationid
		FROM (SELECT ST_AsText(segment_raw) as segment_raw, stationid FROM stations As pt2) As bar
	) As foo;

This is what I have so far, but it compares against all of the linestrings of every stations, which is a problem since we only want one. Im not sure how to solve this problem seeing as the coordinates we're given wont be able to give us any information to narrow the query down to only certain line strings.

SELECT *
  FROM stations
  WHERE ST_Distance(ST_Transform(ST_GeomFromText('POINT(-122.78281856328249 45.44620177127501)', 4326), 3857), segment_raw) <= 500;

Seems to work!

donerino, closing


Installation without CocoaPods

Please provide installation instructions for use without CocoaPods

Will be great if this can support Carthage!

Carthage support would be awesome

:+1:

Any update on how to install without Cocoapods ? Thanks

@Snoops we just included the source files form DeepLinkKit in our project

Ah yes thank you !

Currently, if you don't use CocoaPods, you can include all of the source files from the DeepLinkKit directory in your project.


Add support for nested modules when on QUnit 1.20.

I would like to support nested modules, but I am unsure of the exact API.
Current front runner:
import { moduleFor, test } from 'ember-qunit';
import { module } from 'qunit';

moduleFor('foo:bar', function(hooks) {
  hooks.beforeEach(function(assert) {
    // any before each code needed
  });

  test('some non-nested test', function(assert) {
    // stuff here
  });

  module('additional grouping', function(hooks) {
    hooks.beforeEach(function(assert) {
      // setup that is specific to `additional grouping` module
    });

    test('some test name here', function(assert) {
      // stuff
    });
  });
});

Random thoughts:

I'm not terribly happy with the above example having to import module from qunit and moduleFor from ember-qunit.  I suppose I could expose module from ember-qunit, but this is something that we have avoided so far....
I'd like to forbid nested moduleFor invocations.  If you are testing two different modules, IMHO, you should be using different test files.  I am uncertain how you could stack two moduleFor calls anyways (because both of their setups would try to "own" the test context and whatnot).  Need to determine how to detect that we are being called in a nested context...

I think it would make sense to import it from ember-qunit, since you are already importing the test function from there anyway.
Agree with forbidding nested moduleFor.
Would calls to this work only within the module?  I'm thinking about component integration tests where you set up variables for the template using the context.

Would calls to this work only within the module?

this should be the right thing in tests directly under the moduleFor or in the nested modules (I added a test in the example above directly inside the moduleFor).

I think it would make sense to import it from ember-qunit, since you are already importing the test function from there anyway.

Ya, seems a bit like a troll the way I initially proposed it.

I'm not terribly happy with the above example having to import module from qunit and moduleFor from ember-qunit. I suppose I could expose module from ember-qunit, but this is something that we have avoided so far....

@rwjblue, is the problem on exposing module due to the name? If the nested modules are really necessary for ember-qunit they could be exposed with a different name, like suite.

I'd like to forbid nested moduleFor invocations. If you are testing two different modules, IMHO, you should be using different test files. I am uncertain how you could stack two moduleFor calls anyways (because both of their setups would try to "own" the test context and whatnot). Need to determine how to detect that we are being called in a nested context...

That's a very reasonable PoV. Keep in mind the advantage (maybe the only) on nested modules is sharing module hooks and this. I don't see how this could be useful on an ember module/component.

anyway, ping me if you want any help from QUnit or even to give a feedback.

@leobalter We have the same few test cases we have in every component integration test that we consistently name across all of our components.  These test case are in addition to other ones that are specific to each respective component.  I anticipate using nested models as a way to group these "default" test cases.  Admittedly, I have not done enough research yet to ascertain the viability of this.

is the problem on exposing module due to the name? If the nested modules are really necessary for ember-qunit they could be exposed with a different name, like suite.

No, mostly that the example in the issue description had some things imported from ember-qunit and other things imported from qunit.  I think that would lead to pretty big confusion for our users.  I'll likely do as @toddjordan mentioned, and just allow import { moduleFor, module, test } from 'ember-qunit';.

Keep in mind the advantage (maybe the only) on nested modules is sharing module hooks and this. I don't see how this could be useful on an ember module/component.

Ya, exactly.  The kind of sharing and grouping that folks could do with:
moduleForComponent('asdfasd', function() {
  module('hjkl', function() {
    test('some thing', function(assert) { });
  });
});

Is perfect, but to have:
moduleForComponent('asdf', function() {
  moduleForComponent('hjkl', function() {
    test('some thing', function(assert) { });
  });
});

Would be pretty confusing since it is completely non-obvious what the behavior should actually be.  ember-qunit has a whole slew of default setup steps that happen normally for moduleForComponent (many of which set things on the test context) and having one inside another would be extremely confusing.

ping me if you want any help from QUnit or even to give a feedback.

Thanks @leobalter! Will keep you updated as we progress...

I anticipate using nested models as a way to group these "default" test cases

Completely agreed, grouping (for shared beforeEach/afterEach logic and naming) is a huge part of why I am excited about nested modules.

@rwjblue What I meant with my question about this is the this object the same instance between the moduleFor and nested modules, and if so, would the the setup within a module be cleaned?  My guess is it would be the same instance and that you would have to handle tear down of state, which is fine.  I guess if it were different.  you could set up your test context separately between modules, kinda like below, without worrying about module state leaking into the next module.
moduleForComponent('mycomp', function() {
  module('when state is x', function(hooks) {
    hooks.beforeEach(function() {
      this.set('myFn', myStubFnA);
    };
    test('should do j', function(assert) {
      ...
    };
    test('should do k', function(assert) {
      ...
    }
  };
  module('when y', function(hooks) {
    test('should do l', function(assert) {
      ...
    };
  };
}

also is it possible not to have to deal with the hooks object? In doing some jasmine in the past, modules were handled with a describe function and tests with an it function, and you can call them in a nested fashion without having to pass in an object to invoke them on

@toddjordan - Each test gets its own this (just like what happens today).  All beforeEach hooks run in order (from outside in) and the this context in all of them is the same in all of them (so they combine).
In your example:

should do j - Gets its own this, runs the normal moduleForComponent setup stuff, runs where state is x beforeEach, then runs the test itself.
should do k - Same as above.
should di l - Gets its own this, runs the normal moduleForComponent setup stuff, runs when y beforeEach (which doesn't exist in your demo), then runs the test itself.

also is it possible not to have to deal with the hooks object?

Not really (as far as I know, but @leobalter might have additional insight), I'd like to stay as close to QUnit's nested module implementation as possible.

In doing some jasmine in the past, modules were handled with a describe function and tests with an it function, and you can call them in a nested fashion without having to pass in an object to invoke them on

You are basically describing mocha, and there is an ember-mocha project for that :smile_cat:

Thanks, makes sense.  one more question... would tests at the moduleFor level be defined within the moduleFor function?  Currently the are defined outside, but it might make more sense like below with nested modules:
moduleForComponent('x', function() {
  test('should do x', function(assert) {
  };
  module('when doing something', function() {
    ...
  };
};

would tests at the moduleFor level be defined within the moduleFor function?

Yes. See my example in the issue description, it looks roughly like what you have here.

Yeah, I saw that the test was nested in the module, but wasn't sure about the moduleFor.  Cool!

I saw that the test was nested in the module, but wasn't sure about the moduleFor

Ya, see some non-nested test in that example.

This example?  or is there another one?

Maybe need to hard reload or something?  I added the additional test after the question from earlier yesterday...

oops got it after reload.  I this github doesn't react to changes, only new comments.  Thanks.

👍 from me, I'm looking forward to the new capability :sunglasses:

also is it possible not to have to deal with the hooks object?

Not really (as far as I know, but @leobalter might have additional insight). For ember-qunit itself, I'd like to stay as close to QUnit's nested module implementation as possible and not invent our own syntax any more than we have too...

The hooks object on modules are optional, you may use them as the second argument on a module call or from the first parameter of the callback function.
// hooks as arguments, they look messy with the nested function:
module('my module',
  {
    beforeEach: function(assert) {
      assert.ok(true);
    }
  },
  function() {
    test('foo', ...);
  }
);

// hooks from the callback parameter, they are functions here
module('my module', function(hooks) {
  hooks.beforeEach(function(assert) {
    assert.ok(true);
  });

  test('foo', ...);
);

// if you have a ES2015 ready environment:
module('my module', function({beforeEach}) {
  beforeEach(function(assert) {
    assert.ok(true);
  });

  test('foo', ...);
);

// If you really like describe and it methods:
// if you have a ES2015 ready environment:
var {
  describe: module,
  it: test
} = QUnit;
describe('my module', function({beforeEach}) {
  beforeEach(function(assert) {
    assert.ok(true);
  });

  it('foo', ...);
);

You can write your modules without using any hook:
module('my module', function() {
  test('foo', ...);
});

I am happy to see that this functionality, which is already provided by QUnit, will be shipped to Ember-QUnit.
I am struggling with test names ever since I moved to Ember, it feels weird to do BDD without nested modules, and it also feels weird to do unit testing for a product. I guess that you guys, when making the framework, don't quite feel the need for testing behaviour, but I certainly feel it when making a web application.

@rwjblue
Only chiming into mostly echo since you asked:
I think your current front runner is what most people would expect.
I totally see why nested moduleFor would not makes sense. It's analogous to rspec's
describe AClass, type: :some_type do
end

And declaring a new described_class with a different type within a describe call like that... I don't know what it would even mean. It would be complicated from a code perspective and it would be confusing to a reader later on.
The only bikeshedding I have to offer is that the name hooks feels odd. I've been using config as a variable name, but this probably doesn't matter if ember-cli generates files using @leobalter ES2015 example style.

@trentmwillis - We should circle back around on this one...

Barring nesting moduleFors makes plenty of sense.
Would it make sense to re-export QUnit.module as submodule, in line with the expected use as subordinate to a moduleFor-created module?
Would non-nested uses as done today continue to work without change, where the module decl sets the module for all following tests in the file?
FWIW, the nesting style I expected was a moduleFor with 3 args: name, the current second object arg for hooka, and an optional third of a function that can define tests and submodules within. This is what I saw in QUnit's nesting usage, but it differs from the two-arg version shown in the issue, where the hooks are instead installed on an argument to the "module body" function. But if there are docs or templates showing how it's done, I don't think the difference will at all be any issue in practice.

Would it make sense to re-export QUnit.module as submodule, in line with the expected use as subordinate to a moduleFor-created module?

If you mean import { module } from 'ember-qunit'; then yes I think we should allow that.

Would non-nested uses as done today continue to work without change, where the module decl sets the module for all following tests in the file?

Yes, this is default QUnit behavior and must continue to work (for backwards compat).

FWIW, the nesting style I expected was a moduleFor with 3 args: name, the current second object arg for hooks, and an optional third of a function that can define tests and submodules within. This is what I saw in QUnit's nesting usage, but it differs from the two-arg version shown in the issue, where the hooks are instead installed on an argument to the "module body" function.

Both versions are supported and documented under QUnit.module, and I think we would want to support both here also.

Sounds good. What I meant with the submodule question was whether to reexport QUnit.module as a function named submodule from ember-qunit, because of its subordinate role in that module's context.

I'm onboard with this. I'd like to start pushing us in a direction where we nest modules more anyway as it allows for better organization/filtering.
I think the implementation will be fairly straightforward so long as we don't allow moduleFor calls to be nested (we should probably throw an error if it is attempted). I'm not super familiar with the code here, but I think proxying the arguments to support the various signatures shouldn't be too difficult.

What I meant with the submodule question was whether to reexport QUnit.module as a function named submodule from ember-qunit

I think we should avoid renaming/aliasing functions, but we can make our examples more explicit by giving examples like:
import { moduleFor, module as subModule } from 'ember-qunit';

I see this is on hold for more than 1 year. Is there a workaround that allows to nest Qunit modules?

Yes, work is underway to implement emberjs/rfcs#230 which removes all of our custom wrapping around QUnit (and therefore allows us to fully embrace QUnit’s functionality here).


Mistake in documentation?

I was trying to run the simulation with the code from the documentation:
from pylabrobot.liquid_handling.backends.simulation.simulator_backend import SimulatorBackend
from pylabrobot.liquid_handling import LiquidHandler

from pylabrobot.liquid_handling.resources import (
    TIP_CAR_480_A00,
    PLT_CAR_L5AC_A00,
    Cos_96_DW_1mL,
    STF_L
)

sb = SimulatorBackend()
lh = LiquidHandler(backend=sb)

lh.setup()

This didn't started the simulation and instead resulted in an error:
Exception ignored in: <function LiquidHandler.__del__ at 0x1125a77f0> Traceback (most recent call last):   File "/Users/maxhager/Projects2022/KiwiBiolab/PyLabRobot/pylabrobot/pylabrobot/liquid_handling/liquid_handler.py", line 79, in __del__     if self.setup_finished: AttributeError: 'LiquidHandler' object has no attribute 'setup_finished' Traceback (most recent call last):   File "/Users/maxhager/Projects2022/KiwiBiolab/PyLabRobot/simulation.py", line 12, in <module>     lh = LiquidHandler(backend=sb) TypeError: LiquidHandler.__init__() missing 1 required positional argument: 'deck'
What worked for me was adding from pylabrobot.liquid_handling.resources.hamilton import STARLetDeck as an import and using it for lh = LiquidHandler(backend=sb, deck=STARLetDeck()).

Thanks for highlighting this.
The simulator tutorial was outdated on multiple fronts, including #5. It has been fixed in https://github.com/PyLabRobot/pylabrobot/commit/83151f98aeeb55c7320bb363b804ed54e798aacf.


Bug: Mermaid not rendered

Describe the bug.
The mermaid graph in this page is not rendered.
Describe the steps to reproduce the behavior.
No response
Expected behavior.
Render the graph.
Screenshots.
No response
Operating Environment
MacOS
Additional Information
No response

In #105 I have added necessary dependencies for mermaid. Once that PR is merged, all mermaid diagram will be rendered successfully.

@q82419 Can we go ahead and close this issue now that the mermaid diagrams are working perfectly?

It looks great! I will close this issue.


Optimize mock_potc_plugins

Maybe we can provide a new operation
with mock_potc_plugins('xxxx', clear=False):  # default value of clear should be True
    yield

So that the current plugins will not be ignored.

released in https://github.com/potc-dev/potc/releases/tag/v0.1.1


Even faster logs

With @jdolence and @mauneyc-LANL 's help I recently discovered an even faster (on CPU) implementation of our not-quite-logs. I will update to use these at some point.

The integer aliased versions are in fact enabled depending on architecture.


Upcoming Gems, materials and patterns

Upcoming improvements and additions to gems, materials and patterns
Gems
More gems are needed to expand on the potential for block efficiency

[x] #103
[x] #104
[ ] Deepdweller: Deepslate breaking gem
[ ] Heart of the forest: Increased chopping rate for logs
[ ] Lucky charmed gem: improving something
[ ] #108
[ ] Scute gem: Durability improvements, and mining speed against ores, decreases movement speed when worn
[ ] Choruz gem: Teleport when in the direction you are pointing, length is determined by level

Note
Adding gems is way too tedious, and is is somewhat broken. Gems are currently listed in a file before being loaded by the game. This needs to change.
 It needs to change.
Recipes are very basic and could be generated automatically, but its not too bad
The palette situation needs to be sorted out. Manually specifying all preloaded palettes is tedious and stupid.
interesting items I will consider for gems

Honeycomb
Nether scraps
Totem of undying
Blaze powder
Ghast tear
Heart of the sea
Glowstone
Echo shard
Obsidian
Nautilus shell
Prismarine crystal
Nether star
Nether brick
Flint
Bones
Wither rose

Materials

[x] Copper (Primary)
[x] Dark oak (Primary)
[x] Jungle wood (Primary)
[ ] Quartz (Primary)
[x] Diorite (Primary)
[ ] Obsidian (Primary)
[x] Rabbit hide (Secondary)
[x] Phantom membrane (Secondary)
[ ] Nautilus shell (Primary)
[ ] Prismarine shard (Secondary)
[ ] Slimeball (Secondary)
[ ] Flint (Primary)
[ ] Bones (Primary)

Patterns

This is basically invalidated by the #232 issue, so I am closing this.


ValueError: Digital filter critical frequencies must be 0 < Wn < 1

Hey!
I am having trouble running denoiser.. I get the following error: ValueError: Digital filter critical frequencies must be 0 < Wn < 1
My code is as follows:
run_denoise.py
$raw/$sub/$ses/func/sub-006_ses-01_task-rest_space-MNI152NLin6Asym_desc-smoothAROMAnonaggr_bold.nii.gz $raw/$sub/$ses/func/sub-006_ses-01_task-rest_desc-confounds_timeseries.tsv $raw/denoised
--col_names csf white_matter
--hp_filter 0.009
--lp_filter 0.8
--out_figure_path $raw/denoised/$sub/$ses
I specified the high pass and low pass filter options as suggested. I have a feeling that something goes wrong while selecting the high pass filter as of the following output that I get:
of TRs: 160
of Confound Regressors: 2  [SELECTED regressors in CSV]
of High-pass Filter Regressors: 0
/data/jcpottkamper/miniconda3/envs/fmriprep/bin/run_denoise.py:114: RuntimeWarning: divide by zero encountered in true_divide
Fs = 1. / TR
Could you help me please?
Cheers, Julia

@juliapottkaemper , Hi Julia, did you get any response regarding this issue?


Add totp multifactor authentication

I hope this is good enough to be considered for inclusion. Thanks.

I missed this until now. Thank you for your contribution!


x/tools/analysis/passes/httpresponse: check whether http.Response Body is closed.

httpresponse really helps you to avoid a mistake when using net/http package.
But it only whether your function call of Body.Close() is in correct line or not.
So I recently created own linter to check "whether you call Body.Close() or not" like the below case.
func f() {
	_, err := http.Get("http://example.com/") // want "response body must be closed"
	if err != nil {
		// handle error
	}
    return
}

https://github.com/timakin/bodyclose
After I released, I realized it might be better if an official httpresponse supported this workflow.
So, can I contribute to add this feature?

@alandonovan

We already have a check that does something very similar to this: lostcancel, which looks for calls of the form ctx, cancel = context.WithCancel(...) where the cancel variable is not referenced on all execution paths. (It uses the syntactic control-flow graph; you don't need SSA to solve the problem.)
I suggest we fork that analysis, adapt it to this problem, then try to identify the generalization, as I'm sure there are many other functions that users would designate for this analysis, like they do for unusedresult.