Cache warming exceeds GCR rate limiting

Reported by a customer.
Logs for the weave-flux-agent show that the agent is making way too many requests in a short period of time:

Caller shows as warming.go: https://github.com/weaveworks/flux/blob/master/registry/warming.go
This seems to have started happening since the upgrade to 1.0.1

After bouncing the agent, it spammed a little more, then terminated:

This appears to be the result of Google deprecating V1:
textPayload: "ts=2017-10-05T21:14:19Z caller=warming.go:145 component=warmer err="requesting manifests: getting remote manifest: Get https://gcr.io/v2/qordoba-devel/segmentation/manifests/latest: http: non-successful response (status=404 body=\"{\\\"errors\\\":[{\\\"code\\\":\\\"MANIFEST_UNKNOWN\\\",\\\"message\\\":\\\"Manifest with tag 'latest' has media type 'application/vnd.docker.distribution.manifest.v2+json', but client accepts 'application/vnd.docker.distribution.manifest.v1+json'.\\\"}]}\")" "

Mitigation: tune the daemon arguments --registry-rps and --registry-burst way down (10 and 1). These govern the rate limiting for outgoing image registry requests so it doesn't spam even if it's getting errors.
The errors in question are
textPayload: "ts=2017-10-05T21:14:19Z caller=warming.go:145 component=warmer err="requesting manifests: getting remote manifest: Get https://gcr.io/v2/path/to/repo/manifests/latest: http: non-successful response (status=404 body=\"{\\\"errors\\\":[{\\\"code\\\":\\\"MANIFEST_UNKNOWN\\\",\\\"message\\\":\\\"Manifest with tag 'latest' has media type 'application/vnd.docker.distribution.manifest.v2+json', but client accepts 'application/vnd.docker.distribution.manifest.v1+json'.\\\"}]}\")"

That last bit is the clue: GCR appear to no longer be serving v1 schema manifests. We assume v1 manifests are available for all images (which seems to be true elsewhere). On the other hand, dockerhub don't seem to serve schema2 manifests for all images, only relatively recent ones. Sigh. Might have to look at the Content-Type to see which.
https://gist.github.com/squaremo/b3b832d6a3b9e0cc07fb35b854a66d47 has a program I used to see what the schema2 manifests look like, using the same docker registry client we use (https://github.com/heroku/docker-registry-client).
If we can't use schema1 manifests, we can use schema2. It takes an extra step, to fetch the Config blob as shown in the gist, but that has the information we need. It looks like this:
{
  "architecture": "amd64",
  "author": "Weaveworks Inc<EMAIL_ADDRESS>  "config": {
    // ...
  },
  "container": "1aa5661ab22a2b34c0e785d94f24c61e129266dfbfa80b2b8e1926f96256966c",
  "container_config": {
    // ...
  },
  "created": "2016-11-29T16:03:39.813618407Z",
  // ...
}

NB the created datetime (though we should check it matches what we get from the schema1 manifests).

Also, I happen to look at the code that gets auth token and learned there is a client library we can use, which might have proper means of refreshing the token based on the TTL.
This is how the client library can be used:
import (
	"errors"
	"golang.org/x/oauth2"
	"golang.org/x/oauth2/google"
)

func tokenFromEnv() (string, error) {
	var GCRScopes = []string{"https://www.googleapis.com/auth/cloud-platform"} // or whatever scopes you want
	var OAuthHTTPContext = oauth2.NoContext
	ts, err := google.DefaultTokenSource(OAuthHTTPContext, GCRScopes...)
	if err != nil {
		return "", err
	}
	token, err := ts.Token()
	if err != nil {
		return "", err
	}
	if !token.Valid() {
		return "", errors.New("access_token was invalid")
	}
	return token.AccessToken, nil
}

I've copied that code from another thread I had with some folks at Google. Just FYI, thought this MBOI.

@jr-qordoba I've backported @squaremo's #780 PR onto the 1.0.1 branch and pushed a preview image to quay.io/weaveworks/flux:1.0.2-pre, any chance you could give it a try before we cut a 1.0.2 final release? Thankyou!

flux:1.0.2-pre appears to work as expected in my dev, test, and prod clusters. Thanks!

I'm going to close this one, with a coda:
The underlying problem was that all requests to GCR were trivially failing (fixed in large part by a back-ported #780, and latterly #801).
We have rate limiting on the requests we make: 200 a second (you are limited to 200 requests over a 1s window), with 125 burst (i.e., you can have 125 requests in play at once). If all requests fail quickly, that means you can get 125 or so errors in the log in a very short period, which is certainly alarming. It's not necessarily the case that gcr will throttle or otherwise reject requests out of hand, though you may want to tune the rps and burst down for other reasons (https://cloud.google.com/container-registry/pricing for example).


Pagination for Client

Pagination logic which might come handy for people querying paginated resources.
I'm not expecting to be perfect from the get go but I wanted to put it out there to get opinions whether or not should be a client concern and if it's what'd be a good api for it.
The pagination logic was inspired by https://github.com/Dwolla/fs2-aws/blob/2.x/core/shared/src/main/scala/com/dwolla/fs2utils/Pagination.scala

I really would prefer this to exist outside the release cycle of http4s. I think this is going to drive a train of iterative releases that I'd prefer to exclude from my (and others) adoption of http4s. I acknowledge that this is a useful feature that I'd even use myself, but I'd prefer it to exist as a supplemental piece rather than something that drives up the 0.21 minor and confuses what people should adopt as a core pathway.

What i didn't highlight: this should probably be feature advertised from the http4s org. It's super useful IMO, but doesn't belong in the core.

I would suggest we add a page quite visible on the documentation site that lists derived projects. I can look into that on my next oss cycle.
I agree that this project is super useful, and can see applications for it @ work .

I've seen on gitter that people shared some opinions around this and @ChristopherDavenport wrote a very similar thing but more succinct and using https://github.com/functional-streams-for-scala/fs2/blob/master/core/shared/src/main/scala/fs2/Stream.scala#L3668
I personally found my self writing some pagination logic in some shape or form

Need to decide if pagination belongs on the client interface or off to the side.

Now that we're schisming everything anyway I'd vote microlib. Feel free to open an issue/discussion if it makes sense to host this under the http4s org.


Make conditionally as CommonJS module as per issue #309

Good morning,
I would like to add that it would be nice to also support AMD loaders. Personally I think the best way is to use UMD as per https://github.com/umdjs/umd/blob/master/returnExports.js
Best regards,
Benjamin

+1

Any reason this hasn't been pulled in yet? While I can install the fork via NPM, it doesn't have the compiled, dist version, so I'll have to make a new fork to use it.

Hello there, any progress for this pull request?
It's over a year now...

Hello,
Kindly wondering if there is a reason if this hasn't been merged (or even responded to in the last 2 1/4 years). Seems like a layup that would make a lot of people's lives a little easier... especially considering the repo is available through npm.
Thanks,
Jeff


New runner

Changes in new-runner branch:

add new structure to control pipe flow
split state into separate internal package
change api for pumps - add buffer size to closure signature
change api for sinks and processors - remove buffersize from interface method
move buffersize to run method

Resolves:

#67
#27
#46
#23


Portfolio page

Is your feature request related to a problem? Please describe.
I want to add a page for Portfolio .
Describe the solution you'd like
I have updated sidenav.html and added sidenav.css for changing current sidenav project into animated sidenav
Additional context
Add any other context about the feature request here.

I would like to work on this issue under LGMSOC.
Can you elaborate the issue pl?

Can i work on this @Rizwan-S

Sure!


Add new payload types

Description

Type: Feature
ID: 863h1uqgw
Priority: High

Not really applicable here as we don't define payload types within this plugin.


Auto publish in the end does not seem to work with Sitecore's new publishing server

Sitecore 8.2, Unicorn 4.0.1, Publishing server 2.0 update 1 (will soon upgrade to 2.1)
The auto publish run in the end does not seem too work with the new Publishing Server from Sitecore.
https://dev.sitecore.net/Downloads/Sitecore_Publishing_Service.aspx
Unicorn says it is published but it is actually not published.
Before we installed the publishing service it seemed to work but now we have to publish it manually.
Is there some setting we have to adjust, is it something that not has been implemented yet or simply a bug?

I'm not too familiar with how Publishing Service's APIs work, but I vaguely recall that it doesn't do incremental publishing (which is how Unicorn's auto publish works). It may make sense, if using publishing service, to trigger a smart publish instead. I'll poke at the APIs when I get a chance, but it may be a bit.

Are you using transparent sync for your items? If so, publishing service won't see them. You'll want to make sure that items are being synced into the database proper (explicitly sync those configurations; by default the UI may skip them) so that the auto publish can pick them up.

We are not using transparent sync (I had to lookup what it is, first).
I can't really tell if the publishing service is using the incremental publishing the same way. It is very simplified in the user interface as you probably know, it does not have the user interface setting for running incremental. What I can tell is that it is not using the same workflows at least.

Hi Kamsar,
I see that here you have discussed about publishing service.
Is there any update on how unicorn would use this publishing service for the auto publish?
I setup publishing service but when I do unicorn sync it does not use publishing service for publishing service.

This has been included in https://github.com/SitecoreUnicorn/Unicorn/releases/tag/4.1.2-pre8

(better late than never ;-))


[BACKLOG-16439] Implemented widgets for repository open/save

@bmorrise

Build Completed
:x: This pull request has errors. They will need to be addressed before it can be accepted. See below for more details. Some links are also available below for further assistance in addressing those issues.
 If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.
org.pentaho.di.core.extension.KettleExtensionPoint

Instruction Change:  + .01%

org.pentaho.di.job.entries.evaluatetablecontent.JobEntryEvalTableContent

Branch Change:  + 1.01%
Complexity Change:  + 1.06%
Instruction Change:  + .17%

org.pentaho.di.job.entries.getpop.MailConnectionMeta

Branch Change:  + 1.00%
Complexity Change:  + 1.41%
Instruction Change:  + .30%

org.pentaho.di.job.entries.sql.JobEntrySQL

Instruction Change: -3.28%:small_red_triangle_down:
Line Change: -3.87%:small_red_triangle_down:

org.pentaho.di.trans.step.StepMeta

Branch Change:  + .68%
Complexity Change:  + .58%
Instruction Change:  + .19%
Line Change:  + .26%

org.pentaho.di.trans.steps.checksum.CheckSumMeta

Instruction Change: -.11%:small_red_triangle_down:

org.pentaho.di.trans.steps.combinationlookup.CombinationLookupMeta

Instruction Change:  + .04%

org.pentaho.di.trans.steps.constant.ConstantMeta

Instruction Change: -.10%:small_red_triangle_down:

org.pentaho.di.trans.steps.dbproc.DBProcMeta

Instruction Change: -.11%:small_red_triangle_down:

org.pentaho.di.trans.steps.ifnull.IfNullMeta

Branch Change: -2.00%:small_red_triangle_down:
Complexity Change: -1.89%:small_red_triangle_down:
Instruction Change: -.17%:small_red_triangle_down:

org.pentaho.di.trans.steps.insertupdate.InsertUpdateMeta

Instruction Change:  + .05%

org.pentaho.di.trans.steps.replacestring.ReplaceStringMeta

Instruction Change: -.07%:small_red_triangle_down:

org.pentaho.di.trans.steps.setvalueconstant.SetValueConstantMeta

Instruction Change: -.14%:small_red_triangle_down:

org.pentaho.di.trans.steps.sort.SortRowsMeta

Instruction Change:  + .08%

org.pentaho.di.trans.steps.symmetriccrypto.symmetriccryptotrans.SymmetricCryptoTransMeta

Branch Change:  + 3.33%
Complexity Change:  + 1.85%
Instruction Change:  + .28%

org.pentaho.di.trans.steps.synchronizeaftermerge.SynchronizeAfterMergeMeta

Instruction Change:  + .04%

org.pentaho.di.trans.steps.systemdata.SystemDataMeta

Branch Change:  + 2.04%
Complexity Change:  + 2.04%
Instruction Change:  + .32%
Line Change:  + .81%

org.pentaho.di.trans.steps.uniquerows.UniqueRowsMeta

Instruction Change:  + .18%

org.pentaho.di.ui.core.PropsUI

Branch Change: -.04%:small_red_triangle_down:
Complexity Change: -.05%:small_red_triangle_down:
Instruction Change: -.03%:small_red_triangle_down:
Line Change: -.04%:small_red_triangle_down:
Method Change: -.05%:small_red_triangle_down:

org.pentaho.di.ui.spoon.Spoon

Branch Change: -.01%:small_red_triangle_down:
Complexity Change: -.01%:small_red_triangle_down:
Instruction Change: -.00%:small_red_triangle_down:
Line Change: -.00%:small_red_triangle_down:
Method Change: -.01%:small_red_triangle_down:

org.pentaho.di.repository.pur.PurRepository

Instruction Change: -.02%:small_red_triangle_down:
Line Change: -.03%:small_red_triangle_down:

License header violations

:heavy_exclamation_mark: Copyright year is not the current year on engine/src/org/pentaho/di/core/LastUsedFile.java. Found 2016. Was expecting 2017

Checkstyle violations
The code submitted is not complying with one or more of our guidelines. To perform these checks locally, please use this tool.
/home/buildguy/project/ui/src/org/pentaho/di/ui/core/PropsUI.java

:heavy_exclamation_mark: Unused import - java.util.Iterator. at Line: 29 Column: 8

/home/buildguy/project/ui/src/org/pentaho/di/ui/spoon/Spoon.java

:heavy_exclamation_mark: ')' is not preceded with whitespace. at Line: 5,126 Column: 78

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
 If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.
org.pentaho.di.core.extension.KettleExtensionPoint

Instruction Change:  + .01%

org.pentaho.di.job.entries.evalfilesmetrics.JobEntryEvalFilesMetrics

Branch Change: -.39%:small_red_triangle_down:
Complexity Change: -.51%:small_red_triangle_down:
Instruction Change: -.08%:small_red_triangle_down:

org.pentaho.di.job.entries.evaluatetablecontent.JobEntryEvalTableContent

Branch Change:  + 1.01%
Complexity Change:  + 1.06%
Instruction Change:  + .17%

org.pentaho.di.job.entries.ftpsget.JobEntryFTPSGet

Branch Change: -.53%:small_red_triangle_down:
Complexity Change: -.56%:small_red_triangle_down:
Instruction Change: -.07%:small_red_triangle_down:

org.pentaho.di.job.entries.getpop.MailConnectionMeta

Branch Change: -1.00%:small_red_triangle_down:
Complexity Change: -1.41%:small_red_triangle_down:
Instruction Change: -.30%:small_red_triangle_down:

org.pentaho.di.job.entries.sql.JobEntrySQL

Instruction Change:  + 3.28%
Line Change:  + 3.87%

org.pentaho.di.trans.steps.constant.ConstantMeta

Instruction Change: -.10%:small_red_triangle_down:

org.pentaho.di.trans.steps.csvinput.CsvInputMeta

Instruction Change:  + .05%

org.pentaho.di.trans.steps.datagrid.DataGridMeta

Instruction Change:  + .09%

org.pentaho.di.trans.steps.dbproc.DBProcMeta

Instruction Change: -.11%:small_red_triangle_down:

org.pentaho.di.trans.steps.dimensionlookup.DimensionLookupMeta

Branch Change: -.31%:small_red_triangle_down:
Instruction Change: -.06%:small_red_triangle_down:
Line Change:  + .23%
Method Change:  + 1.02%

org.pentaho.di.trans.steps.excelwriter.ExcelWriterStepMeta

Branch Change: -1.28%:small_red_triangle_down:
Complexity Change: -.78%:small_red_triangle_down:
Instruction Change: -.04%:small_red_triangle_down:

org.pentaho.di.trans.steps.groupby.GroupByMeta

Branch Change:  + 3.12%
Complexity Change:  + 3.16%
Instruction Change:  + .14%
Line Change:  + .37%

org.pentaho.di.trans.steps.insertupdate.InsertUpdateMeta

Instruction Change: -.05%:small_red_triangle_down:

org.pentaho.di.trans.steps.ldapoutput.LDAPOutputMeta

Instruction Change: -.06%:small_red_triangle_down:

org.pentaho.di.trans.steps.rowgenerator.RowGeneratorMeta

Instruction Change:  + .08%

org.pentaho.di.trans.steps.synchronizeaftermerge.SynchronizeAfterMergeMeta

Instruction Change: -.04%:small_red_triangle_down:

org.pentaho.di.trans.steps.textfileinput.TextFileInputMeta

Branch Change:  + .53%

org.pentaho.di.trans.steps.uniquerows.UniqueRowsMeta

Instruction Change:  + .18%

org.pentaho.di.www.TransformationMap

Branch Change: -12.50%:small_red_triangle_down:
Complexity Change: -9.23%:small_red_triangle_down:
Instruction Change: -10.97%:small_red_triangle_down:
Line Change: -11.54%:small_red_triangle_down:

org.pentaho.di.ui.core.PropsUI

Branch Change: -.04%:small_red_triangle_down:
Complexity Change: -.05%:small_red_triangle_down:
Instruction Change: -.03%:small_red_triangle_down:
Line Change: -.04%:small_red_triangle_down:
Method Change: -.05%:small_red_triangle_down:

org.pentaho.di.ui.spoon.Spoon

Branch Change: -.01%:small_red_triangle_down:
Complexity Change: -.01%:small_red_triangle_down:
Instruction Change: -.00%:small_red_triangle_down:
Line Change: -.00%:small_red_triangle_down:
Method Change: -.01%:small_red_triangle_down:

org.pentaho.di.repository.pur.PurRepository

Instruction Change: -.02%:small_red_triangle_down:
Line Change: -.03%:small_red_triangle_down:


Incompatibility with the latest revision format for Flux

The source revision format reported by the Flux controllers has changed according to RFC-0005
https://github.com/fluxcd/notification-controller/blob/v0.32.1/CHANGELOG.md#0320
DEBUG:urllib3.connectionpool:https://api.github.com:443 "GET /repos/myorg/myrepo/commits/dev@sha1:1fde4efca7a513638ba8f1c836b37f1661e0abd3/status HTTP/1.1" 404 None
ERROR:gitops_event_handler:Exception on /gitopsphase [POST]
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2077, in wsgi_app
    response = self.full_dispatch_request()
  File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1525, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1523, in full_dispatch_request
    rv = self.dispatch_request()
  File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1509, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
  File "/app/gitops_event_handler.py", line 33, in gitopsphase
    gitops_connector.process_gitops_phase(payload, req_time)
  File "/app/gitops_connector.py", line 30, in process_gitops_phase
    if not self._git_repository.is_commit_finished(commit_id):
  File "/app/repositories/github_git_repository.py", line 40, in is_commit_finished
    response.raise_for_status()
  File "/usr/local/lib/python3.9/site-packages/requests/models.py", line 1021, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://api.github.com/repos/myorg/myrepo/commits/dev@sha1:1fde4efca7a513638ba8f1c836b37f1551e0abd3/status

while the correct URL would be something likehttps://api.github.com/repos/myorg/myrepo/commits/1fde4efca7a513638ba8f1c836b37f1551e0abd3/status

https://github.com/Azure/gitops-connector/pull/48

Hey! I've tested the fix implemented by @bigkevmcd and I can confim that it works like a charm for Azure DevOps as well. Could we pelase get this merged and release a new version of the chart?

Fixed by #49


Parse port until the end or to an @ symbol

Newer Redis Cluster includes the bus port in the output of CLUSTER NODES,
appened to the default ip:port tuple after an @ symbol.
Reference: https://github.com/antirez/redis/commit/b841f3ad1

Thanks for helping us with the compability problem.
We are testing the current version of corvus in one of our IDC and going to release 0.2.6 after we are done. Sorry to say that for stability considerations this modification may not be merged into 0.2.6 but next version.
We will merge this after testing.

Fully understand not merging in a bug fix release that doesn't officially support Redis >3 anyway. Happy to help out for future compatibility

We will finally merge this when the modification of CLUSTER NODES in redis is merged into redis 3.2.

Now the redis 4 has been released with the new format of CLUSTER NODES. I'm going to merge this to keep compatible with the new redis version.


Create topics and Improvement search to support topics

We decide to improvement search feature by when you are on a topic page, it will search only that topic.

also when user are in main page when user use search feature it'll search topic not forum and user can search in category what user are on.

Almost forgot!!!!!! we decide when user create forum user will create forum in topic they are on and can create forum only when user are on topic page.


AMD compatibilty

Please consider making your lib AMD friendly.
https://github.com/umdjs/umd
Thank you!!

Infinite Scroll v3 is out!. It's an all new re-write, so take a look at how to upgrade from v2.
Infinite Scroll v3 now supports UMD. I recommend upgrading to v3. Please open a new issue if you run into trouble with Infinite Scroll v3. 🌈🐻


Adding JS custom action needs to restart Composer to get the action added

Describe the bug
After I ejected and customized the JavaScript custom action,

I was unable to see the custom action added by reopening the bot project in Composer.
I was able to see the custom action added by restarting my Composer.

Version
v1.3
Browser

Electron distribution

OS

Windows

To Reproduce
Steps to reproduce the behavior:
adding-custom-actions-to-your-composer-bot-for-nodejs
Expected behavior
When adding a C# custom action, you can see the action added after reopening the bot project in Composer.
Can we make adding the JS custom action the same behavior on this with C#?
Additional context
Related to this doc work item: https://github.com/MicrosoftDocs/composer-docs/issues/59

I tried the C# flow, it's not working as well.
To keep schema files updated, the /open api should be fired when user manually reopen the project. However, according to current behaviour, only the first time you open a bot project will the /open api be fired. As a result, it broke the experience of using custom runtime in Electron.

I tried the C# flow, it's not working as well.
To keep schema files updated, the /open api should be fired when user manually reopen the project. However, according to current behaviour, only the first time you open a bot project will the /open api be fired. As a result, it broke the experience of using custom runtime in Electron.

@yeze322  investigating it now

@srinaath Tried on my side, it's loaded

@srinaath Tried on my side, it's loaded

@yeze322  I'll revert that piece of code for now.
It seems a bit of work to keep tracking the last updated state for a project in composer client side. Then we can use fs stat to get lastUpdatedTimestamp for the project folder(changes made outside composer) and then see if the two timestamps are different. As a result, lets just reload it again. Let me know if u see a better solution.

@yeze322  I'll revert that piece of code for now.
It seems a bit of work to keep tracking the last updated state for a project in composer client side. Then we can use fs stat to get lastUpdatedTimestamp for the project folder(changes made outside composer) and then see if the two timestamps are different. As a result, lets just reload it again. Let me know if u see a better solution.

@zxyanliu just to make sure if you open a different project and then open this project containing the custom action does the action load?

@srinaath Yes. The bot project will get reloaded after I open a different project and then open this project containing the custom action.

@zxyanliu just to make sure if you open a different project and then open this project containing the custom action does the action load?

@srinaath Yes. The bot project will get reloaded after I open a different project and then open this project containing the custom action.

I tried the C# flow, it's not working as well.

@yeze322
Yes, the reloading issue also happens when adding a C# custom action.

I tried the C# flow, it's not working as well.

@yeze322
Yes, the reloading issue also happens when adding a C# custom action.

@srinaath If it's possible to trace the last modified date of a project folder, we can leverage standard http features to optimize our flow. Generally, we can maintain If-Modified-Since on client side and Last-Modified on server side to avoid uncecessary content transfer.
One concern is the efficiency of getting lastUpdatedTimestamp for the project folder, it needs to check the whole project recursively. If it's time costly, we can only include those content folders Composer cares about (Dialogs, LU/LG, Schemas) meanwhile exclude those non-content folders (runtime, scripts).

@srinaath If it's possible to trace the last modified date of a project folder, we can leverage standard http features to optimize our flow. Generally, we can maintain If-Modified-Since on client side and Last-Modified on server side to avoid uncecessary content transfer.
One concern is the efficiency of getting lastUpdatedTimestamp for the project folder, it needs to check the whole project recursively. If it's time costly, we can only include those content folders Composer cares about (Dialogs, LU/LG, Schemas) meanwhile exclude those non-content folders (runtime, scripts).

FYI. I just tested with Composer v1.3.1 release candidate.
The reloading issue was resolved for C#.
The reloading issue persists for JS.

FYI. I just tested with Composer v1.3.1 release candidate.
The reloading issue was resolved for C#.
The reloading issue persists for JS.


Create a real client

Summary

Creates a stateful client struct in grpc_api_helpers that re-uses a single connection for all API calls
Removes any use of JSON in the API boundaries and replaces with a mix of transparent and opaque structs for request and response types.
Wraps and exposes the Client and Subscription types to Swift so they can be used as regular classes

Notes
I've looked through the most popular repos that have swift-bridge as a dependency and most are using passed structs and opaque types. That gives me hope that the memory management of shared data is doable, although I suspect we are going to have to work through a few nasty issues.
The upside is we don't need to deal with handles or lazy-static mappings of clients, and get a more normal API in Swift-land. Figure we'll offset some of the memory management pain with type safety all the way through.
Up next

Integrate this into our Swift library and test end to end in xmtp-ios
Integrate with @jazzz and @michaelx11's TLS work to allow for TLS clients
Handle closing subscriptions better. Need some way to inform Swift that the Subscription has ended (maybe a connection failure)

I'm gonna merge this as-is and take a stab at TLS

I'm realizing the ApiService wrapper within xmtp-rust-swift may not make sense for these new bindings. Instead, xmtp-ios should interface directly with the bindings.

Ya. I think that's the long-term goal. Not sure how it would work with the package steps, type conversions, etc. But I hope we can get there.

@neekolas FYI some stuff that I found out from trying to build in Swift land. We can look into it in a subsequent PR. I think they summarize as:

Generated code doesn't seem to like Strings as errors because the Swift representation of a Rust Result expects something that conforms to any Error. I wonder if a Rust std::error would fit the bill.

           let wrapper = Unmanaged<CbWrapper$RustClient$publish>.fromOpaque(cbWrapperPtr!).takeRetainedValue()
            if rustFnRetVal.is_ok {
                wrapper.cb(.success(()(ptr: rustFnRetVal.ok_or_err!))) // <--- error here, doesn't convert void return correctly
            } else {
                wrapper.cb(.failure(RustString(ptr: rustFnRetVal.ok_or_err!))) // <--- error here, expects any Error instead of RustString
            }

Envelope isn't Vectorizable? Not sure about what's going on with this one
Seems like             self: &mut RustClient, in publish isn't converted correctly?

Re: 1) from above, looks like we might have to annotate in Swift: https://github.com/chinedufn/swift-bridge/issues/150

@michaelx11 oof. Should have gone through the Swift imports earlier.
Let's try the Rust errors. Worst case scenario we can make an error type. Or really worst case scenario instead of using Result we return objects with both results and errors. But Result conversion is nice because it just throws in Swift.
I'll take a look at how to make Envelope vectorizable.

I'm debugging now too. I'm wondering if I'm fundamentally misunderstanding swift-bridge. Do we even need to bundle the generated xmtp_rust_swift.swift if we're consuming from Swift or is the XCFramework enough?


I don't think there is a way to see the possible values for the settings file

I want to change the forceFieldStrategy option in the settings file but I don't know what other values for that to put in... Could you please make a file with a list of possible settings or something like that?
Thanks!

I have a comment in Settings.java, but here are the options:
FASTEST: All hostiles are attacked at every possible moment, every frame.
SMART: Closest hostile is attacked at max every 0.2 seconds.
OFF: Forcefield off
Will add this info officially either into the settings file itself or in a wiki of sorts.

Awesome, thanks!

Where is it?


Special slug/url for posts

Hi,
I love the work you put in so far. There's one thing that I am still missing though. Currently all posts and pages can get a slug e.g. domain.tld/post-name or domain.tld/page-name. It would be great if all posts would go under domain.tld/post/post-name and pages would stay with domain.tld/page-name. It would be even greater if I had the possibility to adjust the parameter for posts (so instead of domain.tld/post/post-name I could go for domain.tld/magazine/post-name). Allowing "/" in slugs would be a simple solution for now (maybe with automatically adding /post/ before /post-name/).
I hope you get the idea. Sorry, it's late and I'm German haha.
Best regards,
Kaléy.

I like this idea, and I don't think it would be too difficult to implement. Separating posts from pages is the logical thing to do and for some reason it flew under my radar until you mentioned it.
There's already a slug setting for the blog in .env so we can just tap into that.
Off the top of my head, here's what needs to be done:

[ ] Update router/controller to only accept /blog/{slug} for posts (prevent duplicate content)
[ ] Update router/controller to only accept /{slug} for pages

There might be more after diving in, but should be pretty straight forward. I'd gladly accept a PR if you're up for the task and want a faster turn around.


Google_Utils_UriTemplate - URITemplate.php not autoloading in Resource.php

PHP Fatal error:  Class 'Google_Utils_UriTemplate' not found in /var/www/jp/current/vendor/google/apiclient/src/Google/Service/Resource.php on line 286

Is this related to removing Google_Utils from this release?
My hack is to explicitly require_once URITemplate.php in Resource.php... is there is a cleaner fix?
using php 5.5.9
installed library in my project using composer.
trace stack:

[05-Apr-2016 11:21:49 America/Chicago] PHP Fatal error:  Class 'Google_Utils_UriTemplate' not found in /var/www/jp/current/vendor/google/apiclient/src/Google/Service/Resource.php on line 286
[05-Apr-2016 11:21:49 America/Chicago] PHP Stack trace:
...
[05-Apr-2016 11:21:49 America/Chicago] PHP   8. RCP_Social_Google->getUser() /var/www/jp/current/application/modules/member/controllers/LoginController.php:407
[05-Apr-2016 11:21:49 America/Chicago] PHP   9. Google_Service_Plus_People_Resource->get() /var/www/jp/current/library/RCP/Social/Google.php:139
[05-Apr-2016 11:21:49 America/Chicago] PHP  10. Google_Service_Resource->call() /var/www/jp/current/vendor/google/apiclient/src/Google/Service/Plus.php:419
[05-Apr-2016 11:21:49 America/Chicago] PHP  11. Google_Service_Resource->createRequestUri() /var/www/jp/current/vendor/google/apiclient/src/Google/Service/Resource.php:192

What was your solution?

The most recent composer update seemed to fix my issue... Google_Utils_UriTemplate auto loads as expected now.  Sorry I don't have more insight.

@bshaffer, I wanted to follow-up with my definitive solution.
Everything was working in my test/stage/production environments, but my dev continued to have issues with the auto_include without the explicit require hack I outlined originally.
I discovered that somewhere along the way, the UriTemplate.php file was named/renamed URITemplate.php -- therefore, the autocomplete had issues finding the file because of case discrepancy even though the class name was correct in that file.
Not sure why composer didn't update/fine/fix the file name? - regardless, now works as expected in all my environments.

It's almost certainly because you are using a case-insensitive OSX filesystem, so the only way it can update the file is if you blow the directory away and run composer install again. Good ol' OSX 😄


Support Stockholm (eu-north-1) for EC2 region

What kind of request is this (question/bug/enhancement/feature request): enhancement
Steps to reproduce (least amount of steps as possible):

Add new cluster
Select Amazon EC2
Try to add eu-north-1 as region in the node template

Result:
The region does not exist in the list.
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): v2.1.6 (also tested on master)
Installation option (single install/HA): HA

Needs https://github.com/rancher/machine/pull/20 before it can be tested.

If this is marked as resolved, when can we hope to get support for this?

next release (v2.2.0)

Version: Master 2.2 (3/8/19)
Confirmed issue. eu-north-1 region has been added to ec2 node templates.

Note: QA test account does not allow creation in this region.


Test tools

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@28d5e45). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage          ?   99.27%
=========================================
  Files             ?       12
  Lines             ?      412
  Branches          ?       47
=========================================
  Hits              ?      409
  Misses            ?        1
  Partials          ?        2

Flag
Coverage Δ

unittests
99.27% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@28d5e45). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage          ?   99.27%
=========================================
  Files             ?       12
  Lines             ?      412
  Branches          ?       47
=========================================
  Hits              ?      409
  Misses            ?        1
  Partials          ?        2

Flag
Coverage Δ

unittests
99.27% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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


Indicate that deletion has been requested in svcat

I deleted a helm chart before it finished provisioning and things went sideways. Everything is gone now except the instance:
$ svcat describe instance quickstart-wordpress-mysql-instance
  Name:        quickstart-wordpress-mysql-instance
  Namespace:   default
  Status:      Ready - The instance was provisioned successfully @ 2017-12-12 14:41:46 -0600 CST
  Class:       azure-mysqldb
  Plan:        standard800

I then tried to cleanup my mess by deleting the instance through kubectl. I've been told that it is pending deletion because the deletion timestamp is set in the metadata.
Would it make sense for that to be included in the output of describe? We could check for that deletion timestamp and provide some additional status text.
e.g.
$ svcat describe instance quickstart-wordpress-mysql-instance
  Name:        quickstart-wordpress-mysql-instance
  Namespace:   default
  Status:      Deletion Pending - Deletion requested @ 2017-12-12 14:41:46 -0600 CST
  Class:       azure-mysqldb
  Plan:        standard800

$ svcat get instances
      NAME       NAMESPACE           CLASS            PLAN              STATUS
+--------------+-----------+-----------------------+---------+--------------------------+
  redis1         default     redis                   4-0-9     Deletion Pending

Imported from the old svcat repo: https://github.com/Azure/service-catalog-cli/issues/70

Ideally the server would be responsible for adding a condition called "DeletionPending" or something like that, but short term I'd like to see anything that helps users understand what's going on.


Cloud Build for Terraform

Overview
This will add the initial Cloud Build YAML file to execute Terraform code.

Sorry wrong repository.


Skinned meshes panic with TAA enabled on 0.14

          @komadori panics for me with TAA enabled on 0.14 :(

thread '<unnamed>' panicked at /home/gena/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-0.20.1/src/backend/wgpu_core.rs:2996:5:
wgpu error: Validation Error

Caused by:
    In a RenderPass
      note: encoder = `<CommandBuffer-(16, 1, Vulkan)>`
    In a draw command, indexed:true indirect:false
      note: render pipeline = `outline_pipeline`
    Incompatible bind group at index 1 in the current render pipeline
      note: Should be compatible an with an explicit bind group layout with label = `skinned_mesh_layout`
      note: Assigned explicit bind group layout with label = `skinned_motion_mesh_layout`
      note: Entry 6 not found in expected bind group layout

note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Originally posted by @Shatur in https://github.com/komadori/bevy_mod_outline/issues/27#issuecomment-2251534146

Fixed by 9af01787f8a2f17eb9965e7500c9165d12df15e6. I will make a minor release shortly.

Thanks a lot!
Just tried it out, it no longer crashes. But the outline jitters a bit.

I recorded a video:
https://github.com/user-attachments/assets/66d34de7-6419-4b80-b88f-0cb4eab51308

2f371cebddde2a704adfa5fdfaecdba872f33c81 fixes the TAA jitter affecting outlines.
Note that, per https://github.com/komadori/bevy_mod_outline/issues/27#issuecomment-1989721491, outlines are not anti-aliased by TAA because the outlines are drawn after TAA has finished for various reasons.

Thanks, it solved the problem!

Released in 0.8.2.


Module '"component-library-name"' has no exported member 'ComponentName'. Did you mean to use 'import ComponentName from "component-library-name"' instead?

I'm unable to import the component I need without error. I didn't change much from the default boilerplate. The weird part is that I can see the component rendered behind the error screen.
entry.esm.ts
import { App, Plugin } from 'vue';

// Import vue components
import * as components from '@/lib-components/index';

// install function executed by Vue.use()
const install: Exclude<Plugin['install'], undefined> = function installComponentLibraryName(app: App) {
  Object.entries(components).forEach(([componentName, component]) => {
    app.component(componentName, component);
  });
};

// Create module definition for Vue.use()
export default install;

// To allow individual component use, export components
// each can be registered via Vue.component()
export * from '@/lib-components/index';

entry.ts
// iife/cjs usage extends esm default export - so import it all
import plugin, * as components from<EMAIL_ADDRESS>
// Attach named exports directly to plugin. IIFE/CJS will
// only expose one global var, with component exports exposed as properties of
// that global var (eg. plugin.component)
type NamedExports = Exclude<typeof components, 'default'>;
type ExtendedPlugin = typeof plugin & NamedExports;
Object.entries(components).forEach(([componentName, component]) => {
  if (componentName !== 'default') {
    const key = componentName as Exclude<keyof NamedExports, 'default'>;
    const val = component as Exclude<ExtendedPlugin, typeof plugin>;
    (plugin as ExtendedPlugin)[key] = val;
  }
});

export default plugin;

components > index.ts
export { default as ComponentName } from './componentName/ComponentName.vue';

Ah sorry. I didn't export the component type from the auto-generated declaration file
export const ComponentName: DefineComponent<{}, {}, any>;

Ah sorry. I didn't export the component type from the auto-generated declaration file
export const ComponentName: DefineComponent<{}, {}, any>;

Hi I am looking for information on how to do this.
When I look at the generated  tag in the dom I see the template.
<div data-v-c3cc36fe="" class="my-button">
    <button data-v-c3cc36fe="" id="someBtn" role="button">This is a dynamic button label</button>
</div>

and not the expected custom element
<myButton>
    <button data-v-c3cc36fe="" id="someBtn" role="button">This is a dynamic button label</button>
</myButton>


Clean up Merged Branches

We should remove any stale branches that aren't actively being worked on. I assume most belong to @abarciauskas-bgse and @kylebarron do you want to trim yourself or I can go through on Monday and do it?

I cleaned mine up!

I cleaned up mine as well. I'm also in favor of checking this box in the settings:

(I don't have permissions to do that)

Thanks @kylebarron I enabled that feature. Look like we're down to 6 active branches, closing !!!


Add reference to node.js clone, "quick-transfer".

Thought your project was pretty neat. Decided to write a node.js clone/fork and wondered if you'd like to reference my project?
Totally cool if you don't want to.

Hey @CodeMan99, I really appreciate your effort on this clone, great to hear this was an inspiration for you.
Could you please change the title to:
Clones and similar projects
?
Thanks!

Changed.
It is a fun little project. I have plenty of oddities to work out with stdin. If I ever learn any golang, I'll be sure to make some real contributions here too.

That's great to hear, good luck, looking forward to your first code contribution!


License?

I noticed you have no license, how are you licensing your code?

Added https://github.com/ffdead/wav.js/blob/master/LICENSE.md
Enjoy!


Tween: Timeline: progress and totalProgress are incorrect if timeline has more than one tween

Version

Phaser Version: 3.52.0
Operating system: macOS Catalina
Browser: Google Chrome 88.0.4324.182

Description
Result:
Timeline has progress and totalProgress values that go from 0 to progress / tweens.length.
Expected result:
Timeline has progress and totalProgress values that go from 0 to 1.
Example:
If a timeline has 3 tweens, the progress and totalProgress values will go from 0 to 0.333333.
Example Test Code
this.tweens.timeline({
  targets: someObj,
  tweens: [
    {
      duration: 2000,
      props: { x: 69 },
    },
    {
      offset: 0,
      duration: 2000,
      props: { y: 1337 },
    },
    {
      offset: 0,
      duration: 2000,
      props: { alpha: 0.8008 },
    },
  ],
  onUpdate: timeline => {
    console.log(timeline.progress, timeline.totalProgress, timeline.elapsed, timeline.duration)
  },
})

Maybe this is working and I was spamming the console too much? The progress value seems to be working again for me inside of onUpdate.

Your example logs out correctly for me.


Login with 2.6-head Commit ID 4375161 requires 2 attempts to succressfully login

Setup

Rancher version: 2.6-head Commit ID 4375161 Docker Install & HA
Browser type & version: Chrome Version 96.0.4664.45 (Official Build) (x86_64)

Describe the bug
In 2.6-head, I have to attempt login 2 times, with the second being a successful login. The first login looks like it is going to login, but the page refreshes, shows the loading circle, but user is returned to login page. No error is shown, and user is not logged in. Second attempt, same user & password, user logs in successfully.
To Reproduce

Login to Rancher Docker install as admin user
Log out via the Avatar > Log Out menu item in the upper right corner of the app
fill in admin and password
click Login with Local User
Page refreshes and wipes out username / password (looks like it's logging in)
Enter same login info
Click Login with Local User
Login successful

Result
It requires two login attempts to successfully login
Expected Result
With correct login information, user should be logged in on first attempt.
Additional context

I've replicated this in chrome and in chrome incognito. Also confirmed that other users on QA team have seen this behavior.
Network tabs show a call made to logout https://rancher-server/v3/tokens?action=logout after the first login attempt (after setting password)
Logs in rancher server after this 2021/12/01 15:21:27 [ERROR] Unknown error: Post "https://<IP_ADDRESS>:6443/apis/management.cattle.io/v3/namespaces/user-s29gz/preferences?timeout=15m0s": context canceled

This is happening, too, with 2.6.3-rc3

PASS Verified in 2.6.3-rc4

Logged in the rancher setup as admin
created new standard user
logged out for admin
logged in for user
user logged in on first attempt

this is the expected/desired result - this bug is no longer present as of 2.6.3-rc4

I see this issue on an HA server.


Change Wrapper of InspectorPanel from View to SafeAreaView

Summary

Currently, the InspectorPanel component is wrapped in View, which is a little difficult to click the panel button when in a device with a notch screen.
Changelog

[General] [Fixed] - Change Wrapper of InspectorPanel from View to SafeAreaView
Test Plan

From:

To:

Hi @raykle, could you please rebase your PR?

Hi @lunaleaps, I have rebase the PR.

Hi @lunaleaps , Sorry about that, I'm a little not familiar with the GitHub Pull Request flow, and I clicked the resolve conversation by mistake.
I agree with your suggestion absolutely!
What should I do now? Change the code and push again?

modified the code and also rebased it.

Great, thank you!


An extra letter shows next to one localized menu

Storage Explorer Version: 1.10.1
Build: 20190926.4
Branch: master
Platform/OS: Windows 10/ Linux Ubuntu 18.04
Architecture: ia32/x64
Language: Chinese (zh-TW) / Chinese (zh-CN)
Regression From: Not a regression
Steps to reproduce:

Launch Storage Explorer -> Open Settings panel-> Preference Locale.
Select language as 'Chinese (simplified)' -> Restart Storage Explorer.
Check the localized menus in the top left corner of Storage Explorer.

Expect Experience:
No extra letter shows.
Actual Experience:
An extra letter shows.

More Info:
This issue doesn't reproduce on Mac.

That's by design. The letter corresponds to keyboard input when pressing Alt.


service status dont work good

this scrip dont return status code for failed inactive (dead) and other code (0)
cent os 7 python 2.7

HI @HPParasite, sorry for the late response, I'll check it tomorrow on CentOS7 and will see.

I too faced this issue, perhaps this issue should be reopened.
Take a look:
(venv) root@hostname:/opt/srvstatus# /opt/srvstatus/venv/bin/python /opt/srvstatus/service.py
Failed to connect to bus: No such file or directory
Failed to connect to bus: No such file or directory
Failed to connect to bus: No such file or directory
Failed to connect to bus: No such file or directory
[{"status": 1, "status_time": 74365, "service": "docker.service"}, {"status": 1, "status_time": 8797, "service": "grafana-server.service"}, {"status": 1, "status_time": 8761, "service": "prometheus.service"}, {"status": 1, "status_time": 2548, "service": "influxdb.service"}, {"status": 1, "status_time": 2556, "service": "telegraf.service"}, {}, {}, {}, {}]
(venv) root@rockpi:/opt/srvstatus#


fix: update some dependencies

This PR updates some of the dependencies (namely, requests, urllib3 and pytest).

Codecov Report

Merging #780 (4ef9a86) into main (034c53b) will not change coverage.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@           Coverage Diff           @@
##             main     #780   +/-   ##
=======================================
  Coverage   86.75%   86.75%
=======================================
  Files          51       51
  Lines        2763     2763
=======================================
  Hits         2397     2397
  Misses        366      366

:tada: This PR is included in version 5.0.1 :tada:
The release is available on:

v5.0.1
GitHub release

Your semantic-release bot :package::rocket:


TLS provider has changed and it is not compatible with the current code

Seems like the Terraform TLS provider has changed and key_algorithm argument is no longer needed in tls_self_signed_cert:
╷
│ Error: Invalid Configuration for Read-Only Attribute
│
│   with tls_self_signed_cert.this,
│   on main.tf line 11, in resource "tls_self_signed_cert" "this":
│   11:   key_algorithm   = "RSA"
│
│ Cannot set value for this attribute as the provider has marked it as
│ read-only. Remove the configuration line setting the value.
│
│ Refer to the provider documentation or contact the provider developers for
│ additional information about configurable and read-only attributes that are
│ supported.
╵
ERRO[0015] 1 error occurred:
	* exit status 1

I created the following pull request: https://github.com/kuptan/terraform-k8s-sealed-secrets-bootstrap/pull/3

Thanks for fixing this @joscabmar
I released your changes in 0.3.1
Closing this issue


Labels no longer showing on Item Drawers

Love the mod. As of last game patch(es?) I no longer have the labels/signs on the item drawers.
Cheers

This has finally been fixed in version 2.0.2


Added page limit for orders and customers history

Codecov Report

Merging #125 (1072e7b) into master (45ce324) will increase coverage by 0.84%.
The diff coverage is 87.30%.

:exclamation: Current head 1072e7b differs from pull request most recent head 05fc030. Consider uploading reports for the commit 05fc030 to get more accurate results

@@             Coverage Diff              @@
##             master     #125      +/-   ##
============================================
+ Coverage     26.94%   27.79%   +0.84%
- Complexity     2164     2191      +27
============================================
  Files            76       76
  Lines          6832     6901      +69
============================================
+ Hits           1841     1918      +77
+ Misses         4991     4983       -8

Impacted Files
Coverage Δ

retailcrm/lib/RetailcrmOrderBuilder.php
31.89% <50.00%> (-0.06%)
:arrow_down:

retailcrm/lib/RetailcrmHistory.php
53.64% <85.36%> (+1.97%)
:arrow_up:

retailcrm/retailcrm.php
24.16% <90.90%> (ø)

retailcrm/lib/RetailcrmTools.php
39.54% <91.30%> (+3.97%)
:arrow_up:

retailcrm/lib/RetailcrmCustomerAddressBuilder.php
91.66% <96.42%> (+2.77%)
:arrow_up:

retailcrm/lib/RetailcrmAddressBuilder.php
97.02% <100.00%> (+0.12%)
:arrow_up:

retailcrm/lib/api/RetailcrmApiPaginatedRequest.php
98.03% <100.00%> (+0.26%)
:arrow_up:

retailcrm/lib/RetailcrmHistoryHelper.php
53.84% <0.00%> (+0.59%)
:arrow_up:

... and 1 more

Continue to review full report at Codecov.

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


Device authentication (Face ID)

[x] PoC Face ID
[x] Navigate to list page
[x] (optional) support the other method (PIN authenticaiton)

Support PIN as a backup step


Primer clipping

Version

UnCoVar version: v0.13.2
OS: Linux
Snakemake version: 6.10.0

Bug Report

The primer clipping doesn't seem to work. Can see from 3. Sequencing Details -> 4. Correct Amplicon Primer Clipping.
Minimal Example

See run from 2022-03-18.
Logs

Additional context

When using the correct primer file, the primer clipping works properly


make sidebar chat commands match main quick pick

Next iteration on https://github.com/sourcegraph/cody/issues/631
Follow-up on https://github.com/sourcegraph/cody/pull/798
Design

Adds separators to the sidebar chat command groups.
Adds reset command.
If the input value starts with a known slash command, the corresponding item remains visible in the commands dropdown.
When a user starts typing a known slash command and hits "Enter", the command is autocompleted in the input field. The next time a user hits "Enter" this command is submitted.

https://github.com/sourcegraph/cody/assets/25318659/f1b00c32-d00f-4cee-ab72-9957da8d9098
Test plan
CI passes.
Tested manually (video attached).

Should the /reset command be added to the quick pick menu too, to be consistent?

@abeatrix no let’s leave that off as it’s more specific to the chat view.

Pushed a few small tweaks. It would be good to add /ask in there too.

@toolmantim, "/ask" submits a question is a sidebar chat. The user has already chat input focused, they need to type their question and submit. Does having "/ask" command add additional value in this case?

@toolmantim, "/ask" submits a question is a sidebar chat. The user has already chat input focused, they need to type their question and submit. Does having "/ask" command add additional value in this case?

@taras-yemets there's a similar argument in the command quickpick too, in that they can ask a question just by typing and hitting enter.
But the real value is in consistency & muscle memory.
People can get used to mashing the same keys on the keyboard and having the same commands available, whether it's the chat window or the command palette. The goal is that people don't have to keep a mental map of what commands are available in each of the places. Even though it does feel a little redundant or repetitive in isolation.


Roll Flutter Engine from b789b197c218 to 3210d1979fb5 (1 revision)

https://github.com/flutter/engine/compare/b789b197c218...3210d1979fb5
2023-04-03<EMAIL_ADDRESS>Roll Dart SDK from<PHONE_NUMBER>c9 to ca96c7c53af6 (1 revision) (flutter/engine#40874)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC rmistry<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


Fix a few things about tasks from the redesign

Details

This didn't happen on staging or production, but for whatever reason the dev build of RN makes it so that multiline text inputs don't focus to the end. This PR fixes that.
Makes it so the task title input in task creation accepts multiple lines
Makes it so clicking the task header doesn't open the task assignee selector modal. Instead it now functions like threads, navigating you back to the parent report.

Fixed Issues

$ https://github.com/Expensify/App/issues/22494
$ https://github.com/Expensify/App/issues/22495
$ https://github.com/Expensify/App/issues/22498
Tests/QA

FAB > Assign Task.
Enter a large amount of text into the task title This is a very very long task title that should occupy multiple lines, at the very least., verify that it can occupies multiple lines.
Finish creating the task with any other values for the other fields.
In the Task View, click the title. Verify that the cursor is at the end of the text input.
Close the task title modal. Click the header. Verify it takes you back to the task's parent report, and doesn't open the task assignee selector modal.

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos
Had some issues with Android/iOS simulators, but was able to test on them prior and confirmed they were working

Web
https://github.com/Expensify/App/assets/31285285/151164d5-e0fe-49d6-b6af-80eb3096c930

Mobile Web - Chrome
https://github.com/Expensify/App/assets/31285285/c9034581-d090-4c25-9a8e-31b7b2f9a841

Mobile Web - Safari
https://github.com/Expensify/App/assets/31285285/9775c384-2b6b-471a-bf66-47e968fa72c4

Desktop
https://github.com/Expensify/App/assets/31285285/98c06f72-3223-448f-bf2c-7d975d745557

iOS

Android

@jasperhuangg Conflicts please resolve

@Santhosh-Sellavel had to incorporate a few more changes into this PR, give me a moment while I update the screen recordings

@Santhosh-Sellavel this is ready for review!

@jasperhuangg Are you gonna handle this or not?

@Santhosh-Sellavel fixed!

@jasperhuangg Do test steps Cover everything that needs to be tested, if not please update!

@jasperhuangg Unable to mark the task done.

Login as User A
FAB -> Assign Task
Enter task details
Fill in other Pick assignees same logged-in user.
In the Task View Report try to click Mark as done. Unable to click it

https://github.com/Expensify/App/assets/85645967/4479a984-9371-4a86-a5db-0edeb51d5bb5

Woah, didn't think that could happen from my changes, will investigate

@jasperhuangg Not sure what went wrong earlier, it's not able to reproduce now!

@Santhosh-Sellavel nope, can't reproduce on my side. That looks an error thrown by Onyx when a key in Onyx doesn't start with the expected prefix. Perhaps you just had some bad Onyx data? Were you testing against staging, and did you create a brand new task report, or use an existing one?

@Santhosh-Sellavel are you able to help review this?

Yes, I'm running into weird issues. Keep getting these warnings.

@jasperhuangg

Click the header. Verify it takes you back to the task's parent report and doesn't open the task assignee selector modal.

This fails
https://github.com/Expensify/App/assets/85645967/431ad48d-4f4c-415f-a29c-ff2f41699e9d

@Santhosh-Sellavel few questions in your Slack DM

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://github.com/Expensify/App/assets/85645967/ab732cff-77ce-4992-8bdc-d9072f4ee8eb

Mobile Web - Chrome & Mobile Web - Safari
https://github.com/Expensify/App/assets/85645967/a4108c14-a9c7-4ad8-90b5-d7fb91a704b6

Desktop
https://github.com/Expensify/App/assets/85645967/cc39d767-69b2-402c-8f7e-864c4cc3736b

iOS & Android
https://github.com/Expensify/App/assets/85645967/9c05906a-9cf8-47d6-9422-2faaa1f055f2

All looks good. Just a couple of questions.

While online, click the header near the subtitle that has the text from some email and take to the report where the task was shared. And click the task title in the header takes you to the details page of the chat where it was shared. Is it the expected behaviour?

While offline, after performing the steps in the test create a new task. When I click the from some email takes me to the chat as it was shared. But when clicking on the task name in the header takes me to details page and it is empty

Refer video for more understanding, can you answer those questions please thanks!
https://github.com/Expensify/App/assets/85645967/a33fb941-0103-4e80-a4d3-0f680511e76c

All looks good. Just a couple of questions.

While online, click the header near the subtitle that has the text from some email and take to the report where the task was shared. And click the task title in the header takes you to the details page of the chat where it was shared. Is it the expected behavior?

While offline, after performing the steps in the test create a new task. When I click the from some email takes me to the chat as it was shared. But when clicking on the task name in the header takes me to the details page and it is empty. Is it expected or what should we do now?

Refer video for more understanding, can you answer those questions please thanks!
https://github.com/Expensify/App/assets/85645967/a33fb941-0103-4e80-a4d3-0f680511e76c

Yes that's expected
I’m honestly not sure, I don't think that's expected? But this bug seems like it has to do with an existing issue that's we're fixing internally, so I wouldn't worry about it.

But this bug seems like it has to do with an existing issue that's we're fixing internally, so I wouldn't worry about it.

Should I report it then?

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/thienlnam in version: 1.3.42-0 🚀

platform
result

🤖 android 🤖
cancelled 🔪

🖥 desktop 🖥
cancelled 🔪

🍎 iOS 🍎
cancelled 🔪

🕸 web 🕸
cancelled 🔪

🚀 Deployed to production by https://github.com/jasperhuangg in version: 1.3.42-26 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


EasyGas

Pull request type

Please check the type of change your PR introduces:

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?

Issue Number: N/A
What is the new behavior?

Other information

need update https://github.com/starcoinorg/starcoin-framework/blob/main/scripts/dev_setup.sh MPM_VERSION=v1.13.7  @sanlee42


Add a license

You're publishing code in an open git repo, but not adding a license. So people have no idea if/how they can use the code.
See also: https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/licensing-a-repository

Thanks for noting that. I'll definitely add the license asap.

Thanks again for pointing this out. Apache-2.0 License was added closing the issue.


decrease gutter width?

when using this theme, the space between the line numbers and the left side, where the file names appears, is almost 1" on my screen. if i collapse the left-side pane (where the file names are) this white space increases to about 3", wasting very much of my screen space.
i'd like to reclaim that space, push the line numbers over left more, is there an easy way to do this?
sorry i'm not familiar with CSS, but i can edit the .css file and insert/edit whatever code is needed if someone can give it to me.
thanks!

Can you provide screenshots of the issue? Please also let me know if you are using any plugins or the Live Preview beta.

I'm new to Obsidian, found your theme in the list and liked it. Not running any plugins in these screenshots, but same look with a few plugins I've tried enabled as well, so no change there. I'm using a M1 MBA MacOS 15.0.1, and Windows 10 system, including screen shots from both. I did blue out my folder names for privacy. The red arrows indicate the space I want to shrink. I tried various settings but none of them seems to make it any smaller, or larger.
Sorry line numbers weren't enabled in Windows, I forgot to turn them on. I compare the space of the gap to the digits in line numbers. It looks like I have space to go up to the millions or more! I'd rather that space be used to present more text.
If I'm doing something wrong, please feel free to tell me.
Mac:

Windows:

Oh I see. You can change this in the settings. The settings you are looking for are the following:
Obsidian Settings

Editor > Readable line length — turn this off if you want lines to go full width

Minimal Theme Settings (this is the companion plugin for Minimal)

Minimal Theme Settings > Typography > Normal line width — number of characters per line
Minimal Theme Settings > Typography > Maximum line width — maximum percentage of the pane width

The last setting is probably the one you want to change

i see. yes. this is exactly what i'm looking for. thank you! here i was thinking it was the gutter space i needed to change. i've reclaimed the space. thank you again.


Update audit-log-retention-policies.md

We removed the "Create Audit Retention Policy" button on the main page.  So updated the verbiage in step 2 to have them click on the "Audit retention policies" tab.
Need to update the image in step 2 to remove the "Create Audit Retention Policy" button and to move the purple outline around the "Audit retention policies tab" instead.

@brucehuy Thanks for submitting this PR. But I'm going to close it and then make this change and other changes related to the audit retention policies dashboard in the private branch, so that I can run spellcheck and check the formatting.


Fixes configuration options retrieval on Pylint 3

Related to https://github.com/pylint-dev/pylint/commit/2f7cb9870c61592bf663359fb21250e007c022fe.

This patch fixes the following traceback :
Traceback (most recent call last):
  File "[...]/venv/bin/pylint", line 8, in <module>
    sys.exit(run_pylint())
  File "[...]/venv/lib/python3.9/site-packages/pylint/__init__.py", line 34, in run_pylint
    PylintRun(argv or sys.argv[1:])
  File "[...]/venv/lib/python3.9/site-packages/pylint/lint/run.py", line 162, in __init__
    args = _config_initialization(
  File "[...]/venv/lib/python3.9/site-packages/pylint/config/config_initialization.py", line 134, in _config_initialization
    linter.load_plugin_configuration()
  File "[...]/venv/lib/python3.9/site-packages/pylint/lint/pylinter.py", line 408, in load_plugin_configuration
    module_or_error.load_configuration(self)
  File "[...]/venv/lib/python3.9/site-packages/pylint_secure_coding_standard.py", line 726, in load_configuration
    checker.set_os_open_allowed_modes(checker.config.os_open_mode)
AttributeError: 'SecureCodingStandardChecker' object has no attribute 'config'

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
264

Relevant Lines:
264

💛  - Coveralls


Create tool to display Kafka lag with LN and other prediction models

Create tool to display Kafka lag with LN and other prediction models

Created via the following pull request: https://github.com/RedHatInsights/insights-results-aggregator-utils/pull/266


QUEUE TIME: counts shuffled or playlist queue

the counter uncludes the shuffled queue or possibly its the queue of the playlist playing. my counter shows 4 hours even though i dont have nearly enough songs that i manually added to me queue. a bit confusing as i thought it counts the time left in the queue i manually made

Yeah, the timer basically shows how long until the music will stop playing (ignoring if you're on repeat mode). In #5 I've considered making an option to customise the timer to optionally show only how much time is left in your manual queue, excluding songs from the album or playlist you're listening from. I haven't done it yet because I didn't manage to implement the feature in the way that I wanted lol.


Making the dropdown menu use iron pages to switch between elements.

This will remove the flickering issue that was seen when switching between flows on the dropdown. Instead of closing one paper dialog to open another, I now just have a single paper dialog and swap the content using iron pages.
I also fixed an error with the password label not showing up due to the key being mismatched. I accidentally made the l lowercase instead of uppercase, so I just went ahead and fixed it.

This change is

:100:


Training on Custom Dataset

Hello Everyone,
Could anyone please help me to find out how to train on custom dataset?
To be accurate I am using a sub sample from the original LaSOT because of hardware limitation, but unfortunately me code is stuck here for idx, data in enumerate(train_loader): in the train.py file
Any Ideas what is the root cause for that?

/dup #492

/dup #492


Comment support for Blueprint markup language (.blp)

Contributing guidelines

[X] I have read CONTRIBUTING.md
[X] I have read CODE_OF_CONDUCT.md

Module(s)
mini.comment
Description

Blueprint uses C-style line comments (// comment for the rest of the line) and block comments (/* multiline comment... */).

https://jwestman.pages.gitlab.gnome.org/blueprint-compiler/reference/index.html

Yes, the suggested way of defining custom comment structure is by defining custom commentstring per buffer or options.custom_commentstring for complex cases.
Create a file 'after/ftplugin/blueprint.lua' (or whichever 'filetype' is actually set in your case) and add line vim.bo.commentstring = '// %s' to it.

@clason @echasnovski Thank you!!


Can't open links

If I add a link to a text, clicking the link does not open it.

Thanks for reporting ! It will be fixed in the next prerelease.

fixed in 2.1.11


banned from javdb

Scraped too much at once?
Have dissabled in settings to remove.
Write-Error: C:\Users\Navi\Documents\PowerShell\Modules\Javinizer\2.4.11\Public\Invoke-JVParallel.ps1:561
Line |
561 |                      Get-RunspaceData
|                      ~~~~~~~~~~~~~~~~
| [MMZ-006] [Get-JavdbUrl] Error occured on [GET] on URL [https://javdb.com/search?q=MMZ-006&f=all]: The
| owner of this website has banned your access based on your browser's behaving
IP: .My IP.

Module version used: 2.4.11
Operating System and PowerShell version: 10 x64, PS7 x64

Yep, some other users have also noted this. The ban seems to be a persistent (permanent?) IP ban from javdb unfortunately.
I'll probably have to remove/disable this scraper in further versions.

Heard from others that the unban was lifted after approximately 14 days. I'd caution anyone using this scraper to limit their sorting threads to ~1-2 at max.

I was banned from javdb after I tried to scrape a single movie.  Could this issue be resolved by providing a user agent?

@Borisbee1 I'm not sure.. it's pretty hard to test javdb requests if their bans keep coming. They seem to have a pretty hard stance on scrapers so at this point I'm thinking of dropping support.

Please can you add the User-Agent when call to Javdb? Because Javdb has many results that other site doesn't have. :)

I've tried setting the cookie, I've tried using VPN always get banned. Is there a way around this?

@jvlflame You can use stash as reference.
https://github.com/stashapp/CommunityScrapers/blob/master/scrapers/javdb.yml
With cookie key: _jdb_session, remember_me_token and User-Agent used, I was not ban from javdb9.com

@jvlflame You can use stash as reference.
https://github.com/stashapp/CommunityScrapers/blob/master/scrapers/javdb.yml
With cookie key: _jdb_session, remember_me_token and User-Agent used, I was not ban from javdb9.com


Appending array items to a placeholder

Hi,
I am struggling with this problem for a while.
I have an array of text that I want to append each item in that array to a master slide place holder.
is a for loop possible in addText()?
tests = ['test1', 'test2', 'test3'];
for (var i = 0; i < tests.length; i++) {
slide.addText(tests[i], { placeholder:'placeholder1', fontSize:8, fontFace: 'Arial'});
}
With this code only the last item would appear in the place holder which make sense!
Do you have any solutions?

[Closing due to age]


Cleanups

Random cleanups and optimizations. Feel free to cherry-pick.

@postmodern thank you very much for the cleanup! I had a quick look at all the commits, and I can't see any reason to cherry pick some rather than merging the entire PR.
I'll run a final look later on and then I'll merge it. Thank! :clap:


Is there any interpolation function supporting byte type?

I know there are interpolation expressions for strings.

let k = "rhai";
let s = `hi ${k}`;
print(s);
// hi rhai

I have byte type now.

let body = "ssssssssssssssssssssss".as_bytes();
print(body);
// [7373737373737373<PHONE_NUMBER>737373<PHONE_NUMBER>73]
let body = `aaa ${body}`;
print(body);
// aaa [7373737373737373<PHONE_NUMBER>737373<PHONE_NUMBER>73]

I have to extract the byte data in the string with regular expression in rust, and then convert the string into bytes and splice it.

let s = "aaa [7373737373737373<PHONE_NUMBER>737373<PHONE_NUMBER>73]";
do_something()
let mut all_bytes: Vec<u8> = Vec::new();
all_bytes.push_str("aaa");
all_bytes.push_byte(rhai_blob_string_to_bytes("[7373737373737373<PHONE_NUMBER>737373<PHONE_NUMBER>73"));

Or whether there is illegal UTF-8 conversion of byte data into string without loss, that is, it is better to use string to represent byte data in script.

You need to realize that interpolation is nothing but syntactic sugar for the + operator.
Therefore, the following are equivalent:
let s = `hi ${k}`;    // <- this

let s = "hi " + k;    // <- is equivalent to this

So for your bytes, you can easily do:
let body = "ssssssssssssssssssssss".as_bytes();

let body = "aaa ".as_bytes() + body;

I'll add a to_blob method to strings in the next version so you don't have to define your own as_bytes.

However, after reading your post more carefully, it seems that you want to use strings interpolation but with BLOB's that are UTF-8 data.  You may want built-in support for building strings out of UTF-8 bytes other than sub-strings.
If this is what you want, then there is no such built-in support right now.  It would not be difficult to add though, but the trick is to do it yourself by defining the + operator for the operand types string and Blob.  Something like:
engine.register_fn("+", |s: ImmutableString, b: Blob| {
    if b.is_empty() {
        s
    } else if s.is_empty() {
        String::from_utf8_lossy(&b).into_owned().into()
    } else {
        let mut s = s.to_string();
        let b = String::from_utf8_lossy(&b);
        s.push_str(b.as_ref());
        s
    }
});

However, illegal strings will be lost.
I just want to convert a string to bytes, not bytes to strings, because converting from bytes to strings will lose data.

If it is the previous format, I can easily convert the string of blob to byte type without loss, but the current compact format is changeable, and I have to write more code to convert it back to byte type.
let body = "ssssssssssssssssssssss".to_blob();
print(body);
// [115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115]
// [7373737373737373<PHONE_NUMBER>737373<PHONE_NUMBER>73]

How to hook byte type to_ string() method. I want to restore the previous format when converting bytes to strings, not compact.
In this way, I can better separate the connection between string and byte.

Not very sure what you want.
Which print format do you want?
Or you may give a more concrete example.

like this
// [115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115]

This is the previous format, but now it is changed to compact. I wonder if there is a way to get the previous format by hook without modifying the source code and using patch.
let body = "ssssssssssssssssssssss".to_blob();
print(body);
// [115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115]
let body = `aaa ${body}`;
print(body);
// aaa [115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115]

Ah, OK.  Actually, I've changed the source code for special treatment for BLOB's, so in the future
let body = `aaa ${body}`;
print(body);
// aaa sssssssssssssssssssssssss

In order to get the previous compact version, you can do:
let body = `aaa ${body.to_string()}`;
print(body);
// aaa [7373737373737373<PHONE_NUMBER>737373<PHONE_NUMBER>73]

For the non-compact version, you need to change the BLOB into an array of integers.  For example:
let x = [];
for ch in body { x += ch; }
let body = `aaa ${x}`;
print(body);
// aaa [115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115]

In the future, you can do:
let body = `aaa ${body.to_array()}`;
print(body);
// aaa [115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115]

In the interpolation expression, I don't know whether the body is of byte type, so I can't judge whether it needs to be used to_ array()  method.
Can I add engine.set_blob_format(), allowing developers to choose the format to return.
let mut engine = Engine::new();
engine.disable_symbol("eval");
engine.set_blob_format("array");

and

let body = `aaa ${body}`;
print(body);
// aaa [115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115]

I've done it
#[export_fn]
pub fn blob_to_array_string(bytes: Blob) -> String {
    format!("{:?}", bytes)
}
#[export_fn]
pub fn string_to_bytes(string: &str) -> rhai::Blob {
    string.as_bytes().to_vec()
}

engine.register_fn("to_string", blob_to_array_string);
engine.register_fn("to_blob", string_to_bytes);

let body = "ssssssssssssssssssssss".to_blob();
let body = `aaa${body}`;
print(body);
aaa[115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115]

I can also prefix blob when converting

#[export_fn]
pub fn blob_to_array_string(bytes: Blob) -> String {
    format!("blob:_prefix:{:?}:blob_suffix", bytes)
}

let body = "ssssssssssssssssssssss".to_blob();
let body = `aaa${body}`;
print(body);
aaablob:_prefix:[115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115]:blob_suffix

Yep, that's the way to do it.  You can just "monkey patch" Rhai's built-in functions to suit your own.  No need for new options.


Update README.md

Name Added
Related issue

What changes does this PR do?
Screenshots (If any)
Questions

@Pradumnasaraf hey please merge my request

Awesome, David merged it.


THREESCALE-7906

THREESCALE-7906
Under some error circumstances (like 414 Request-URI Too Large) the  access log were generated in a phase previous to having defined the access_log_enabled and the extended_access_logs_enabled.
This causes a warning to arise, but most importanty, prevented that acces to be logged.
We use the workarround of declaring the variables as a map with a default value because maps can be used in the http context and therefore will be available and initialized even on the given error case.

Does this PR need any further work or review?


refactor(examples/https): use new exported string constants for semconv

Which problem is this PR solving?
Updates https://github.com/open-telemetry/opentelemetry-js/issues/4567
Short description of the changes
Replaced deprecated import (SemanticResourceAttributes) from @opentelemetry/semantic-conventions with new string constants (SEMRESATTRS_SERVICE_NAME) for the example https package
Type of change

[x] Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

[x] npm test (no tests for examples?)

Checklist:

[x] Followed the style guidelines of this project
[ ] Unit tests have been added
[ ] Documentation has been updated

I'll update the changelog entry after all the examples package have been updated. If the entry should be for each update, then do let me know.

Thx :slightly_smiling_face:

I'll update the changelog entry after all the examples package have been updated. If the entry should be for each update, then do let me know.

I think we generally skip the changelog entry for examples so no need to add it :slightly_smiling_face:

I think we generally skip the changelog entry for examples so no need to add it 🙂

Okay, noted


Add simple HTML pages for agent accounts, agents, and list entries

At least agent accounts, agents, and list entries should be visible/browsable as simple HTML pages.

Done with 3c2eae33203f202d0665b17fac852f3f73f13e79.