text:
README.md -> fix SSH docs

Fixes https://github.com/phusion/baseimage-docker/issues/461
Also uses 127.0.0.1:2222 instead of localhost:2222 -> for localhost could be a problem on some hosts when resolving to IPv6.

@kingdonb I don't know exactly why it failed, I am restarting it to see if that resolves it.

I see what's going on, I will change it to not push for external repos.

source: gharchive/pull-request

authors: Theaxiom rdxmb

repo: phusion/baseimage-docker

license: mit

license_type: permissive

license_source: bigquery


text:
Size of Michael's closed subspace

While trying to check which spaces wouldn't be automatically of non-measurable size, I've tried checking which spaces don't have the property "size $\leq 2^\mathfrak{c}$.
Those were Bing's space and its Michael subspace. By definition, $|X| = 2^{2^\mathfrak{c}}$ where $X$ is Bing's space.
But $Y\subseteq X$, $Y = F\cup M$ is a subspace. The justification given was that $Y$ is of size $> 2^\mathfrak{c}$ by definition.
$M$ is of size $\mathfrak{c}$ since its a set of elements $x_r$ for $r\in\mathbb{R}$, all of them distinct
$F$ is obtained by removing $M$ from a set bijective to the collection of all finite subsets of $2^\mathbb{R}$.
Therefore $F$ and $2^\mathbb{R}$ have the same cardinality
Note that in Counterexamples in Topology chart, they say that Michael's subspace is not of size $\leq 2^\mathfrak{c}$ as well.

Thanks for the contribution!

repo: pi-base/data

license_source: github-api


text:
Added context menu option filterDefaultSystemContextMenuItems

Customizable context menu
Added option "filterDefaultSystemContextMenuItems" in ContextMenuOptions.
Purpose
When system context menu is visible (hideDefaultSystemContextMenuItems = false), using this option we can show only some of the default context menu items.
Example:
If we need webview context menu to only show some items (Cut, Copy, Paste - whenever they are available), we can get rid of "Select all", "Dictionary", or any other items, like this:
_contextMenu = ContextMenu(
  options: ContextMenuOptions(
    hideDefaultSystemContextMenuItems: false,
    filterDefaultSystemContextMenuItems: ["Cut", "Copy", "Paste"],
  ),
);

Testing and Review Notes
The option was added for both Android and IOS.
Tested only on Android.
To Do
Nothing.

The problem here is that filterDefaultSystemContextMenuItems is language-dependent. What I mean is that filterDefaultSystemContextMenuItems: ["Cut", "Copy", "Paste"] would work only if the current device language is English.
If my device is using another language, such as Italian, this won't work.
So I think that this way filterDefaultSystemContextMenuItems: ["Cut", "Copy", "Paste"] could create a fake impression that it would work on every device, without considering the device language.
I already thought about this feature when I was working on the Context Menu, but the problem here is that on Android, there isn't a way (to my knowledge at least) to determine what button corresponds to in a language-independent way. Maybe there is a way using android.R.string. but, unfortunately, I didn't find it.
Instead, on iOS, there is a way to do it in language-independent way.
However, I will leave this pull request open if someone could find a solution for that!
Thanks anyway for your support! 😄 👍

The problem here is that filterDefaultSystemContextMenuItems is language-dependent. What I mean is that filterDefaultSystemContextMenuItems: ["Cut", "Copy", "Paste"] would work only if the current device language is English.
If my device is using another language, such as Italian, this won't work.
So I think that this way filterDefaultSystemContextMenuItems: ["Cut", "Copy", "Paste"] could create a fake impression that it would work on every device, without considering the device language.
I already thought about this feature when I was working on the Context Menu, but the problem here is that on Android, there isn't a way (to my knowledge at least) to determine what button corresponds to in a language-independent way. Maybe there is a way using android.R.string. but, unfortunately, I didn't find it.
Instead, on iOS, there is a way to do it in language-independent way.
However, I will leave this pull request open if someone could find a solution for that!
Thanks anyway for your support! 😄 👍

Lorenzo, yes, I thought about that too, but I found no better solution.
At least one can add more labels (in more languages) to filterDefaultSystemContextMenuItems: ["Cut", "Copy", "Paste"], in order to "catch" the majority of the posibilities.
If anybody has a better solution, of course.
But this (optional) setting would be great to be added because some of the default context menu actions are very annoying and consume much space on the screen.

Lorenzo, yes, I thought about that too, but I found no better solution.
At least one can add more labels (in more languages) to filterDefaultSystemContextMenuItems: ["Cut", "Copy", "Paste"], in order to "catch" the majority of the posibilities.
If anybody has a better solution, of course.
But this (optional) setting would be great to be added because some of the default context menu actions are very annoying and consume much space on the screen.

I found this R.id.menu_copy here:
https://developer.android.com/guide/topics/text/copy-paste#kotlin
could this be helpful in any way?

I found this R.id.menu_copy here:
https://developer.android.com/guide/topics/text/copy-paste#kotlin
could this be helpful in any way?

I cant call initialHeaders in last version ?

authors: EslamAbotaleb mxmihai pichillilorenzo


text:
loading class wont work when button  has tooltip class

If there is a button with tooltip and also loading classes, the loading circle is not visible.
I checked only buttons, maybe problem exist also for other elements.

Hi,
I have fixed it in https://github.com/picturepan2/spectre/pull/578

@renegat59  perfect

source: gharchive/issue


text:
Deploy to Heroku

Similarly with deploying the backend service to Heroku, deploy the frontend repository to Heroku to generate a live-link to the application. Ensure that all queries and mutations to the backend work appropriately.
Set up CD rules on Heroku to automatically deploy from the main branch as long as tests pass.

Fullstack application is now live at: https://photobook-fe.herokuapp.com/
Auto-deploy is enabled for every push to the main branch, as long as tests succeed.

license: MIT


text:
Temporal resolution of results

Thank you very much for making the code available online. It's been really helpful.
May I ask, what is the temporal resolution of output predictions. Do you produce C dimensional sigmoid activations or every 8 frames, same as I3D temporal resolution? I3D compress 8 frames into one feature vector or classification vector, 16 into 2, 32 into 4, 64 into 8, and so on. Given 64 RGB frames, do you produce 8 score vectors or 64?
Thanks- gurkirt

We followed the I3D setting from the Charades competition and took the output, interpolated it to match the input size then sampled 25 evenly spaced frames which were used as the input to the evaluation script. We also tried without the interpolation and just taking 25 outputs directly from the I3D features and it did not make any noticeable difference.

authors: gurkirt piergiaj


text:
Facet & Continuous Colorscale, multiple CLims

If you do facet_grid and have multiple continuous colorscales, they each are mapped on the full scale, instead of their respective domains.
See for example this code:

figure
g = gramm('x',repmat(1:10,1,20),'y',1:200,'color',1:200)
g.geom_line()
g.facet_grid([repmat({'1'},40,1);repmat({'2'},160,1)],[])
g.draw

Same thing for facet_wrap.
And here is a screenshot of the output.

Ooops, a line that shouldn't have been commented was.... It's corrected now. I also added a way to set continuous color colormaps, so now your example can be turned to this if you want parula. I also added a 'group' for separating the lines.
figure
g = gramm('x',repmat(1:10,1,20),'y',1:200,'color',1:200,'group',reshape(repmat(1:20,10,1),1,200))
g.geom_line()
g.facet_grid([repmat({'1'},40,1);repmat({'2'},160,1)],[])
g.set_continuous_color('colormap','parula')
g.draw

authors: behinger piermorel

repo: piermorel/gramm


text:
fixes #44: Do not try to load debug symbols when selecting a process

This will also speed up listing the modules of a process.

I addressed the comments in the latest commit. Thanks for the feedback.

repo: pierricgimmig/orbitprofiler


text:
how to work if laravel and public_html

hey
My project folder is as follows:
laravel ---> source code
public_html ---> public
However, I get the following error during the update operation
Thank you for helping me
laraupdater.UPDATE_FOUND: 1.0.2 (laraupdater.current_version: 1.0)
laraupdater.DESCRIPTION: Minor bugs fix
» laraupdater.Update_downloading_..
laraupdater.ERROR_DURING_UPDATE_(!!check_the_update_archive!!)Exception => The "C:\xampp\htdocs\test\laravel/backup_20191227" directory does not exist.
[ laraupdater.FAILED ]
laraupdater.Backup_folder_is_located_in: C:\xampp\htdocs\test\laravel/backup_20191227.
laraupdater.Remember_to_restore_System_UP-Status_through_shell_command: php artisan up.

Instead of putting your public directory inside public_html you should keep it inside your laravel folder and then just point your sub-domian/domain to laravel/public.

@MFakhrani  How did you solve this?

authors: EgyptianM MFakhrani TechTailor

repo: pietrocinaglia/laraupdater


text:
Please add a screen shot

I'd like to add this to awesome-zsh-plugins, but I prefer to add themes with screen shots in the readme so that users can see what they look like without having to install them.
Thanks!

Hi @unixorn, added an ss in readme, thanks!

authors: pifabs unixorn

repo: pifabs/pifabs-zsh-theme


text:
ESM imports of npm CSS files don't work in unbundled builds

Original Discussion: https://www.pika.dev/npm/snowpack/discuss/208
/cc @fabiancook, @FredKSchott

run snowpack build without a bundler plugin
import a CSS file from a dependency package in your JS
See that it doesn't work (no js proxy module created)

Current Workaround

Use a bundler plugin for builds
Import the dependency CSS from your HTML files instead of JS

This was fixed by #515 !

repo: pikapkg/snowpack


text:
🛑 Newsletter URL is down

In 84964fb, Newsletter URL (https://news.pik.farm/sign-up) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Newsletter URL is back up in 0b1299e after 59 minutes.

repo: pikfarm/PikfarmStatus


text:
🛑 Stripe Test Endpoint URL is down

In a13d6f7, Stripe Test Endpoint URL ($STRIPETESTAPI) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Stripe Test Endpoint URL is back up in 9c6c5ae after 53 minutes.


text:
🛑 Newsletter URL is down

In baa9051, Newsletter URL (https://news.pik.farm/sign-up) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Newsletter URL is back up in 2644fe5 after 30 minutes.


text:
Bug fix

Bug fix: Activate Eudic and bring it to the front.
When Eudic runs in the mini bar (with the main window closed), or when minimize the main window into the Dock, the extension doesn't work. In details, PopClip can't activate Eudic and make it to the frontmost.

Hi thank this looks great - to make it easier for me could you submit it as a change in source/ since it's an existing extension there. Cheers!

authors: MfbPgqDpjm invariant

repo: pilotmoon/PopClip-Extensions


text:
Spotify Playlists not working since Spotify API Change

Known issue with mopidy-spotify not being able to load the tracks within Spotify Playlists since Spotify updated their API
This will need to be fixed in Mopidy before being ported into pimusicbox, this thread is just to track this issue

Can you please verify that this is the issue we are talking about?
https://github.com/mopidy/mopidy-spotify/issues/182
Does anyone know a work-around to be able to use Spotify at all right now?

Can you please verify that this is the issue we are talking about?
Yes
Does anyone know a work-around to be able to use Spotify at all right now?
Use the Mopify web client.

The Mopify Web Client on PiMusicbox does not load Spotify Playlists though. We are waiting on that fix to be rolled into the next build

It doesn't? Why not? Mopify loads playlist data from the Spotify Web API directly. This should work.

Use the Mopify web client.
I'm waaay too stupid to find it :-/

I can confirm that is does not work, even after a rebuild. We have ours set to use Mopify as the default client, we can see the playlist but when we click on it nothing loads

still open?

Still having this issue,

sure, it's a long work in progress:
https://github.com/mopidy/mopidy-spotify/pull/188
tldr; they have to switch to spotify web-api for that
don't bother moving to volumio, same problem there. use spotify-connect in the meantime.

I've had same problem with these music apps... found the spotify addon for
kodi works better!
On Wed, 20 Mar 2019, 08:34 rainerda, notifications@github.com wrote:

sure, it's a long work in progress:
mopidy/mopidy-spotify#188
https://github.com/mopidy/mopidy-spotify/pull/188
tldr; they have to switch to spotify web-api for that
don't bother moving to volumio, same problem there. use spotify-connect in
the meantime.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/pimusicbox/pimusicbox/issues/486#issuecomment-474735207,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AZZbPFK77fvvt8MextkaJfVWE2x74Xkjks5vYfKPgaJpZM4VLFg5
.

I can actually play playlists using spotify connect using a little trick.
First start the playlist on your computer and then select the speaker.
To play something different you first have to select your computer as output again start playing and then select musikbox again.
This workaroud works reliably on v0.7.0RC7

authors: AlbertMN MrGJones jo3rg kingosticks noah1510 paradxum rainerda thescottyq

repo: pimusicbox/pimusicbox


text:
Got error when install - blog.Post.image_set: (fields.E300) Field defines a relation with model 'ImageSet'

ERRORS:
blog.Post.image_set: (fields.E300) Field defines a relation with model 'ImageSet', which is either not installed, or is abstract.
Any idea?
thanks

@wyx2000  I believe pinax-blog v6.0.2 release fixes this issue with documentation indicating the need to add pinax-images to SETTINGS. Please close this issue if so, thanks!
https://github.com/pinax/pinax-blog/releases/tag/v6.0.2

repo: pinax/pinax-blog


text:
Confusing features in dataset returned by get_torch_loader

I'm trying to use the dataloaders returned by pinder.core.loader.dataset.get_torch_loader for all-atom representations of the protein complexes. When I iterate over the keys present in a sample from one of these datasets, I get:
from pinder.core.loader.dataset import PinderDataset, get_torch_loader
train, val = [get_torch_loader(PinderDataset(split=split)) for split in ["train", "val"]]
for key in train.dataset[0].keys():
    print(key, type(train.dataset[0][key]))
    if type(train.dataset[0][key]) == dict:
        for key2 in train.dataset[0][key].keys():
            print("    ", key2, type(train.dataset[0][key][key2]), train.dataset[0][key][key2].shape)

### ------- Output ------- ###

target_complex <class 'dict'>
     atom_types <class 'torch.Tensor'> torch.Size([2556, 12])
     residue_types <class 'torch.Tensor'> torch.Size([2556, 1])
     atom_coordinates <class 'torch.Tensor'> torch.Size([2556, 3])
     residue_coordinates <class 'torch.Tensor'> torch.Size([2556, 3])
     residue_ids <class 'torch.Tensor'> torch.Size([2556])
     chain_ids <class 'torch.Tensor'> torch.Size([2556])
feature_complex <class 'dict'>
     atom_types <class 'torch.Tensor'> torch.Size([2556, 12])
     residue_types <class 'torch.Tensor'> torch.Size([2556, 1])
     atom_coordinates <class 'torch.Tensor'> torch.Size([2556, 3])
     residue_coordinates <class 'torch.Tensor'> torch.Size([2556, 3])
     residue_ids <class 'torch.Tensor'> torch.Size([2556])
     chain_ids <class 'torch.Tensor'> torch.Size([2556])
id <class 'str'>
sample_id <class 'str'>
target_id <class 'str'>

I have the following questions:
What is the difference between atom_coordinates and residue_coordinates?
For at least the first 10 examples in the train dataset, I find that
for i in range(10):
    print((train.dataset[i]['feature_complex']['residue_coordinates'] == train.dataset[i]['feature_complex']['atom_coordinates']).all())

returns True.
Can the loader be modified to also return atom name information?
The atom_types tensor provides only a one-hot encoding of element type, for example, running
train.dataset[0]['target_complex']['atom_types'].unique(dim=0)

returns
tensor([[0., 0., 0., 0., 1., 0., 0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 1., 0., 0., 0., 0., 0., 0., 0., 0.],
        [0., 0., 1., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
        [1., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]])

This is confusing when compared to the Structure class, in which atom_name is encoded as elements of constants.BB_ATOMS and constants.SC_ATOMS (e.g. 'N', 'CA', 'C', 'O', 'CB', 'CG', etc.).
It would be useful/less confusing if the dataloader returned by get_torch_loader contained information that corresponded more closely to the data provided in the Structure class.

Hi @eswan01, thanks for the feedback on the example transform implementation. I agree that it would make sense to rename the misleading atom_types key to reflect that its actually encodings of elements and not atom types and also introduce an atom type encoding.
Regarding your first question

What is the difference between atom_coordinates and residue_coordinates?

In the PinderDataset (torch dataset), there is no difference. It appears this was an oversight when hijacking the existing transform that was targeting the torch-geometric dataset. In the torch-geometric dataset, the difference is that residue_coordinates tracks only the C-alpha atom coordinates (one per residue) and atom_coordinates tracks all-atom. Note the receptor.filter("atom_name", mask=["CA"]) below:
https://github.com/pinder-org/pinder/blob/bb62635bcb4186cf4f45696fc3da5082bb899f0a/src/pinder-core/pinder/core/loader/geodata.py#L118-L133
That structure2tensor function really just serves as an example transform for how one could go from Structure instances to Tensor-encoded data items. In the PinderDataset implementation, the default  torch-API transform defined is the structure2tensor_transform which essentially just wraps the structure2tensor method such that it accepts a Structure as input and returns a dict of tensors.
https://github.com/pinder-org/pinder/blob/bb62635bcb4186cf4f45696fc3da5082bb899f0a/src/pinder-core/pinder/core/loader/dataset.py#L238-L254
As you can see below, the current version uses all-atom coordinates for both residue_coordinates and atom_coordinates (the oversight):
https://github.com/pinder-org/pinder/blob/bb62635bcb4186cf4f45696fc3da5082bb899f0a/src/pinder-core/pinder/core/loader/dataset.py#L54-L63
I will push a fix to that default transform shortly 👍
Regarding the second question

Can the loader be modified to also return atom name information?

As I alluded to above, we can definitely adjust the info being returned by the default transform as you suggested. I will try to include that in the upcoming patch for the residue_coordinates bug.
That being said, the short answer to

Can the loader be modified to also return atom name information?
It would be useful/less confusing if the dataloader returned by get_torch_loader contained information that corresponded more closely to the data provided in the Structure class.

Absolutely! You can define whatever transform you desire, that's why the PinderLoader default return value of __getitem__ contains a tuple of (PinderSystem, Structure(<feature complex>), Structure(<target complex>))
https://github.com/pinder-org/pinder/blob/bb62635bcb4186cf4f45696fc3da5082bb899f0a/src/pinder-core/pinder/core/loader/dataset.py#L293-L299
You can specify your own transform and target_transform to apply to the feature_complex Structure and target_complex Structure. This closely follows the transform/target_transform concepts from the torch datasets + dataloader tutorial: https://pytorch.org/tutorials/beginner/basics/data_tutorial.html#creating-a-custom-dataset-for-your-files

repo: pinder-org/pinder


text:
需求

可以只打印一份结果吗 比如加载2个url的时候 每一部分的url是累加在一起的。
url:
http://test1.com/api
http://test2.com/api2
-ff 是还没加上吗

更新哦，下载新版本：https://github.com/pingc0y/URLFinder/releases/tag/2023.4.22


text:
Failed to execute question for question 887a7dc0-1d8b-49e6-afa8-0ab6788eeb70

Hi, it's failed to execute question
Question title
show me the averange stargazers of https://github.com/explosion/spaCy repository per month for four years until today
Error message
Failed to create the execution plan for the generated SQL: Unknown column 'ge.stars' in 'field list'
Generated SQL
SELECT
  DATE_FORMAT(`ge`.`created_at`, '%Y-%m-01') AS `t_month`,
  AVG(`ge`.`stars`) AS `stars`
FROM
  `github_events` AS `ge`
WHERE
  `ge`.`type` = 'WatchEvent'
  AND `ge`.`repo_id` = (
    SELECT
      `repo_id`
    FROM
      `github_repos`
    WHERE
      `repo_name` = 'explosion/spaCy'
    LIMIT
      1
  )
  AND YEAR(`ge`.`created_at`) >= YEAR(NOW()) - 4
GROUP BY
  `t_month`
ORDER BY
  `t_month` ASC
LIMIT
  200

Chart info
{
  "chartName": "LineChart",
  "title": "Average Stargazers of explosion/spaCy Repository Per Month for Four Years Until Today",
  "x": "t_month",
  "y": "stars"
}

(1054, "Unknown column 'ge.stars' in 'field list'")

Fixed

repo: pingcap/ossinsight


text:
[Discuss] What if one store belongs to more than one namespaces?

The current implementation of tableNamespaceClassifier.GetStoreNamespace only return one ns.
If two namespaces contain the same store, only one returned, and which one returned is undefined(If the go map has no predefined order when itering).
If the word namespace has the same meaning as that in k8s, and the store has the same meaning as host in k8s, then two namespaces should able to use the same store. And in real deployment, this case can be very common.
So should we support this feature?

hi @lerencao , the concepts we are using is different from k8s, for instance, a store refers to a tikv-server instance rather than a host in our context. And a store can only belong to a single namespace for now, this restriction is by design.
I wonder if you have any special scenario that need a store to belong to multiple namespaces? If so, please feel free to communicate with us, we can discuss whether to support it later.

@disksing  thx for the explanation. What I mean is that it's a choice between one-to-one mappings and many-to-one mappings, just like the lightweight thread and physical thread.
There is no special scenario currently, only some plan of using namespace classifier to separate databases of different businesses. Resources are limited, less important dbs (of different businesses, aka different namespaces) need be shared on the same stores.
As far as I can see, If many-to-one mapping doesn't complicate things(will try to modify the code to see the difference),  it's more suitable, as one-to-one is just a special case of it.

The purpose of the introducing of namespace is to isolate resources. If a store belongs to two namespaces, this isolation is in fact violated -- heavy requests from one namespace can affect the other namespace.
For your case, I think you can create a single namespace and register all unimportant dbs to it. Hope my answer can help.

Using many-to-one mappings still enable the one-to-one mapping. It's just a special case.

It is currently already many-to-one now :-) You see, many stores/tables can be configured to the same namespace. I think you are suggesting a many-to-many support -- which we have not found any case really need.

Yes, you are right. What I meant many was many namespaces onto one store. Considering other stores, many-to-many is the word.
Still, I think it's a more general solution. If fact, yesterday, I changed the tableNamespaceClassifier.GetStoreNamespace to GetStoreNamespaces, and will use it in my environments.
If some other guy comes up similar questions, please reconsider  it.

The namespace feature has been removed in the latest several versions. Close it. Feel free to reopen it.

authors: disksing lerencao rleungx

repo: pingcap/pd


text:
Release v2.1.0-rc.5

Signed-off-by: disksing i@disksing.com
What problem does this PR solve?
Prepare release.
What is changed and how it works?
Add changelog.
Check List
Tests

Unit test

/run-all-tests tidb=release-2.1 tikv=release-2.1 tidb-test=release-2.1

/run-all-tests tidb=release-2.1 tikv=release-2.1 tidb-test=release-2.1

/run-unit-test


text:
Implement Agg_BitOr function push down

Feature Request
Describe the feature you'd like:

We'd like to support Agg_BitOr function push down.
Teachability, Documentation, Adoption, Migration Strategy:

At least one integration test and several unit tests.

/assign

authors: RinChanNOWWW Willendless

repo: pingcap/tiflash


text:
fix bug that Decimal256's hash value is not stable (#1574) (#1597)

What problem does this PR solve?
Issue Number: close #xxx
Problem Summary:
What is changed and how it works?
Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

/run-integration-tests

/run-integration-test

authors: CLAassistant JaySon-Huang windtalker


text:
dm(engine): /status openapi returns unexpected result

What did you do?
Submit some dm jobs:
mysql> select id from  master_meta_kv_data \G
*************************** 1. row ***************************
id: 06d96323-3043-4331-ab67-648fcb5d5f02
*************************** 2. row ***************************
id: 18fdcd39-67b2-49ad-83f7-75c1bc643f27
*************************** 3. row ***************************
id: 1981ac0b-1898-4fa9-887b-734eac366bf2
*************************** 4. row ***************************
id: 435ae910-236b-4f0b-8a2e-990e4bfc5fc5
*************************** 5. row ***************************
id: 44a6ffd3-c1c5-4bcb-a92d-6b3b9457d57d
*************************** 6. row ***************************
id: 66bb1ad7-8edb-4b18-8d9d-be143c1d376a
*************************** 7. row ***************************
id: 8c32bd6c-28bc-4185-91cb-9c8e4316e80b
*************************** 8. row ***************************
id: aacbb6f7-2d97-4110-a9ed-82c48d3c72bf
*************************** 9. row ***************************
id: bb417e30-e24f-4d8a-ade4-efe5bce569d6
*************************** 10. row ***************************
id: c10ed09c-c981-46c9-b30f-3b1e74a86d5b
*************************** 11. row ***************************
id: c1e5d664-9a92-4b35-a1eb-d45645dfa096
*************************** 12. row ***************************
id: dataflow-engine-job-manager
*************************** 13. row ***************************
id: f6a5dfc6-6040-465c-878b-f82af0e5a314
13 rows in set (0.00 sec)

Then query the dm job status:
/ # curl  http://127.0.0.1:10240/api/v1/jobs/18fdcd39-67b2-49ad-83f7-75c1bc643f27/status
{
    "code": 0,
    "message": "[DFLOW:ErrMetaOpFail]meta operation fail: record not found"
}

What did you expect to see?
Some task progress of the dm job
What did you see instead?
/ # curl  http://127.0.0.1:10240/api/v1/jobs/18fdcd39-67b2-49ad-83f7-75c1bc643f27/status
{
    "code": 0,
    "message": "[DFLOW:ErrMetaOpFail]meta operation fail: record not found"
}

But the unexpected retrun code and some inner error message.
Versions of the cluster
Dataflow Engine version (run tiflow version):
master@600f82f3e204e6

server-master-log.tgz
executor-log.tgz

Seems bug of the framework, log of following format has exceed 300MB:
tiflow-server-master-1.log:[2022/08/15 04:33:41.967 +00:00] [INFO] [server.go:199] [payload="task_id:\"555eca9f-169f-4954-b2cd-ab67d97b0839\" cost:1 resource_requirements:<job_id:\"435ae910-236b-4f0b-8a2e-990e4bfc5fc5\" resource_id:\"/local/10k_dm_jobs_0/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:41.970 +00:00] [INFO] [server.go:199] [payload="task_id:\"dd867b07-0dff-48e6-9d62-5085fb22c6a8\" cost:1 resource_requirements:<job_id:\"66bb1ad7-8edb-4b18-8d9d-be143c1d376a\" resource_id:\"/local/10k_dm_jobs_5/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.001 +00:00] [INFO] [server.go:199] [payload="task_id:\"1972bfe6-378f-4f42-92b8-e2d0a4ac7031\" cost:1 resource_requirements:<job_id:\"f6a5dfc6-6040-465c-878b-f82af0e5a314\" resource_id:\"/local/10k_dm_jobs_1/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.009 +00:00] [INFO] [server.go:199] [payload="task_id:\"0458fdcb-8cf3-4a1e-b990-223d5e612976\" cost:1 resource_requirements:<job_id:\"aacbb6f7-2d97-4110-a9ed-82c48d3c72bf\" resource_id:\"/local/10k_dm_jobs_2/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.012 +00:00] [INFO] [server.go:199] [payload="task_id:\"5c55f65d-3a95-4939-baef-e65e6a4da4d6\" cost:1 resource_requirements:<job_id:\"c10ed09c-c981-46c9-b30f-3b1e74a86d5b\" resource_id:\"/local/10k_dm_jobs_7/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.013 +00:00] [INFO] [server.go:199] [payload="task_id:\"cd765c9e-37d4-485a-8db7-bd16be99d472\" cost:1 resource_requirements:<job_id:\"bb417e30-e24f-4d8a-ade4-efe5bce569d6\" resource_id:\"/local/10k_dm_jobs_4/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.014 +00:00] [INFO] [server.go:199] [payload="task_id:\"cdad29ae-ca95-4895-b149-058bbb35963b\" cost:1 resource_requirements:<job_id:\"8c32bd6c-28bc-4185-91cb-9c8e4316e80b\" resource_id:\"/local/10k_dm_jobs_0/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.014 +00:00] [INFO] [server.go:199] [payload="task_id:\"b0a36ae1-747c-4e4a-94e9-d94f20b25ebb\" cost:1 resource_requirements:<job_id:\"1981ac0b-1898-4fa9-887b-734eac366bf2\" resource_id:\"/local/10k_dm_jobs_1/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.018 +00:00] [INFO] [server.go:199] [payload="task_id:\"f9c58bd3-d407-4ea2-b092-5ca3bd78fbbb\" cost:1 resource_requirements:<job_id:\"435ae910-236b-4f0b-8a2e-990e4bfc5fc5\" resource_id:\"/local/10k_dm_jobs_0/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.021 +00:00] [INFO] [server.go:199] [payload="task_id:\"d3e4a9e9-9908-48f4-9700-7651195c468b\" cost:1 resource_requirements:<job_id:\"66bb1ad7-8edb-4b18-8d9d-be143c1d376a\" resource_id:\"/local/10k_dm_jobs_5/upstream1\" > "] [request=ScheduleTask]

log.tgz

Seems bug of the framework, log of following format has exceeded 300MB:
tiflow-server-master-1.log:[2022/08/15 04:33:41.967 +00:00] [INFO] [server.go:199] [payload="task_id:\"555eca9f-169f-4954-b2cd-ab67d97b0839\" cost:1 resource_requirements:<job_id:\"435ae910-236b-4f0b-8a2e-990e4bfc5fc5\" resource_id:\"/local/10k_dm_jobs_0/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:41.970 +00:00] [INFO] [server.go:199] [payload="task_id:\"dd867b07-0dff-48e6-9d62-5085fb22c6a8\" cost:1 resource_requirements:<job_id:\"66bb1ad7-8edb-4b18-8d9d-be143c1d376a\" resource_id:\"/local/10k_dm_jobs_5/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.001 +00:00] [INFO] [server.go:199] [payload="task_id:\"1972bfe6-378f-4f42-92b8-e2d0a4ac7031\" cost:1 resource_requirements:<job_id:\"f6a5dfc6-6040-465c-878b-f82af0e5a314\" resource_id:\"/local/10k_dm_jobs_1/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.009 +00:00] [INFO] [server.go:199] [payload="task_id:\"0458fdcb-8cf3-4a1e-b990-223d5e612976\" cost:1 resource_requirements:<job_id:\"aacbb6f7-2d97-4110-a9ed-82c48d3c72bf\" resource_id:\"/local/10k_dm_jobs_2/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.012 +00:00] [INFO] [server.go:199] [payload="task_id:\"5c55f65d-3a95-4939-baef-e65e6a4da4d6\" cost:1 resource_requirements:<job_id:\"c10ed09c-c981-46c9-b30f-3b1e74a86d5b\" resource_id:\"/local/10k_dm_jobs_7/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.013 +00:00] [INFO] [server.go:199] [payload="task_id:\"cd765c9e-37d4-485a-8db7-bd16be99d472\" cost:1 resource_requirements:<job_id:\"bb417e30-e24f-4d8a-ade4-efe5bce569d6\" resource_id:\"/local/10k_dm_jobs_4/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.014 +00:00] [INFO] [server.go:199] [payload="task_id:\"cdad29ae-ca95-4895-b149-058bbb35963b\" cost:1 resource_requirements:<job_id:\"8c32bd6c-28bc-4185-91cb-9c8e4316e80b\" resource_id:\"/local/10k_dm_jobs_0/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.014 +00:00] [INFO] [server.go:199] [payload="task_id:\"b0a36ae1-747c-4e4a-94e9-d94f20b25ebb\" cost:1 resource_requirements:<job_id:\"1981ac0b-1898-4fa9-887b-734eac366bf2\" resource_id:\"/local/10k_dm_jobs_1/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.018 +00:00] [INFO] [server.go:199] [payload="task_id:\"f9c58bd3-d407-4ea2-b092-5ca3bd78fbbb\" cost:1 resource_requirements:<job_id:\"435ae910-236b-4f0b-8a2e-990e4bfc5fc5\" resource_id:\"/local/10k_dm_jobs_0/upstream1\" > "] [request=ScheduleTask]
tiflow-server-master-1.log:[2022/08/15 04:33:42.021 +00:00] [INFO] [server.go:199] [payload="task_id:\"d3e4a9e9-9908-48f4-9700-7651195c468b\" cost:1 resource_requirements:<job_id:\"66bb1ad7-8edb-4b18-8d9d-be143c1d376a\" resource_id:\"/local/10k_dm_jobs_5/upstream1\" > "] [request=ScheduleTask]

The main reason for this error is:
I use the same job name for many jobs, which will cause jobA find a mark in downstream(jobB with the same job name writed it) and skip the dump process, jump to sync process directly. Then the dm logic will find some dependent resource not found.
This bug can be avoid in production environment, where the dm job name will be j_<job-id> and unique.

repo: pingcap/tiflow


text:
ticdc/cli: use cdc OpenAPI instead of etcd for some cli commands (Part Ⅰ)

What problem does this PR solve?
#3658
What is changed and how it works?
Previously, the cdc cli commands interact with etcd to retrieve information. So it's quite tightly-coupled with etcd because the metadata modification requires a cdc cli command code change. Instead, we turn to use the owner capture HTTP OpenAPI to decouple  from the interaction with etcd.
Check List
Tests

Unit test

Code changes

Has exported function/method change
Has exported variable/fields change
Has interface methods change

Release note
None

Could you move the package into pkg/api/internal/rest?

Yes, the methods in rest should be hidden.

/run-all-tests

/run-leak-tests
/run-verify

Codecov Report

Merging #3920 (7742a48) into master (3873d39) will decrease coverage by 1.8764%.
The diff coverage is 69.9561%.

Flag
Coverage Δ

cdc
58.7290% <69.9561%> (+0.4924%)
:arrow_up:

dm
52.1937% <ø> (-3.8409%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.
@@               Coverage Diff                @@
##             master      #3920        +/-   ##
================================================
- Coverage   57.0741%   55.1977%   -1.8765%
================================================
  Files           478        488        +10
  Lines         56551      60151      +3600
================================================
+ Hits          32276      33202       +926
- Misses        20978      23585      +2607
- Partials       3297       3364        +67

/merge

/merge

/run-leak-tests

authors: codecov-commenter liuzix zhaoxinyu


text:
sinkv2(ticdc): impl kafka ddl sink

What problem does this PR solve?

Issue Number: ref https://github.com/pingcap/tiflow/issues/5928
What is changed and how it works?

Add mq ddl sink
Add mq ddl producer
Add tests for ddl sink

Notice: The new implement has different behavior from the old one. The old one will use an async producer to send data to partition zero and flush it immediately, but the new one uses a sync producer.
I think it's OK because send it and flush immediately same as directly using a sync producer.
Check List
Tests

Unit test

Questions
Will it cause performance regression or break compatibility?
No
Do you need to update user documentation, design documentation or monitoring documentation?
No
Release note
None

Codecov Report

Merging #6464 (a628746) into master (f14088c) will increase coverage by 0.2305%.
The diff coverage is 70.3056%.

Flag
Coverage Δ

cdc
66.1650% <69.7777%> (+0.2715%)
:arrow_up:

dm
52.0684% <100.0000%> (+0.0552%)
:arrow_up:

engine
64.0067% <ø> (+0.5436%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
@@               Coverage Diff                @@
##             master      #6464        +/-   ##
================================================
+ Coverage   59.2403%   59.4709%   +0.2305%
================================================
  Files           754        762         +8
  Lines         86755      87172       +417
================================================
+ Hits          51394      51842       +448
+ Misses        30799      30734        -65
- Partials       4562       4596        +34

/run-all-tests

/merge

authors: codecov-commenter hi-rustin


text:
config(ticdc): do not return error when enable-tidb-extension is not supported

What problem does this PR solve?

Issue Number: close #8719
What is changed and how it works?
Check List
Tests

Unit test
Integration test
Manual test (add detailed scripts or steps below)
No code

Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
`None`.

/run-all-tests

/run-verify

/test verify

make check failed.

/merge

/merge


text:
consumer(ticdc): kafka consumer start pprof to detect memory consumption

What problem does this PR solve?

Issue Number: ref #9919
What is changed and how it works?
Check List
Tests

Unit test
Integration test

Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
`None`

/retest

/test verify

/retest

/test cdc-integration-storage-test


text:
ci: add code coverage using tarpaulin & codecov

See also #3012

Hi @codeworm96
can we add https://codecov.io to the ReadMe to replace the origin coverage here.

PTAL @BusyJay @Hoverbear

TiKV is not the only project that uses circle ci. I think all the projects in pingcap organization will be affected too.

@BusyJay Yes that's true.

Another problem after merging jobs: since some tests will fail randomly and we have merged the job, we cannot just retry testing and have to run coverage calculation again and again...

authors: BusyJay Hoverbear codeworm96 overvenus siddontang

repo: pingcap/tikv


text:
[BUG] issue of LONGTEXT encoding

Describe the bug

Using longtext data type may be unable to use filter as expected.
Spark and TiSpark version info

Master

Tispark is no longer maintained？

Tispark is no longer maintained？

Tispark is no longer maintained？

Hi, we are working on this problem. Since there are a lot of issues recently as we are running through various cases, the fix may spend some time for now. I will raise the priority of this issue and give you a reply ASAP. If you have any concerns, please let me know in this issue.

Tispark is no longer maintained？

Hi, we are working on this problem. Since there are a lot of issues recently as we are running through various cases, the fix may spend some time for now. I will raise the priority of this issue and give you a reply ASAP. If you have any concerns, please let me know in this issue.

is it be fixed or not

/lifecycle frozen

authors: birdstorm shiyuhang0 wfxxh

repo: pingcap/tispark


text:
[close #2389] Fix get stuck when exiting

What problem does this PR solve?
Fix bug #2389.
What is changed and how it works?
Delete tiSession.close() in telemetry.
Check List
Tests

Manual test (add detailed scripts or steps below)

start spark-shell

bin/spark-shell --jars tispark-assembly-3.0_2.12-3.0.0.jar

use tidb catalog and execute select SQL

scala> spark.sql("use tidb_catalog")```
scala> spark.sql("select * from ${database}.${table}").show

execute :quit and exit immediately

Code chan

Has exported function/method change

Related changes

Need to cherry-pick to the release branch

/run-all-tests

/merge


text:
Release 3.1.1

What problem does this PR solve?
Release 3.1.1
What is changed and how it works?
Check List
Tests

Unit test
Integration test
Manual test (add detailed scripts or steps below)
No code

Code changes

Has exported function/method change
Has exported variable/fields change
Has interface methods change
Has persistent data change

Side effects

Possible performance regression
Increased code complexity
Breaking backward compatibility

Related changes

Need to cherry-pick to the release branch
Need to update the documentation
Need to update the tidb-ansible repository
Need to be included in the release note

/run-all-tests

/merge


text:
Bump hoek and lab to avoid warnings about unmaintained packages.

This PR bumps hoek and lab versions to avoid warnings like these:
warning lab > hoek@5.0.4: This version is no longer maintained. Please upgrade to the latest version.
warning lab > eslint > file-entry-cache > flat-cache > circular-json@0.3.3: CircularJSON is in maintenance only, flatted is its successor.

Coverage decreased (-0.2%) to 98.859% when pulling 5b1e4f86e56e7c69bb24f72625ca3db83644ab32 on saboya:hoek-version-bump into 7e5b048b0b837647a27603dfa5dbda3fa695c3b3 on pinojs:master.

Coverage decreased (-0.2%) to 98.859% when pulling 5b1e4f86e56e7c69bb24f72625ca3db83644ab32 on saboya:hoek-version-bump into 7e5b048b0b837647a27603dfa5dbda3fa695c3b3 on pinojs:master.

authors: coveralls saboya

repo: pinojs/hapi-pino


text:
HERE’S!!* UFC 309 𝙻𝚒𝚟𝚎 𝐒𝐭𝐫𝐞𝐚𝐦𝐢𝐧𝐠 𝙵𝚛𝚎𝚎 𝙵𝚞𝚕𝚕 𝙵𝚒𝚐𝚑𝚝 2024

MMA legends will collide as Jon Jones defends his World Heavyweight Championship against former champion Stipe Miocic at UFC 309 today – Saturday, Nov. 16 – at Madison Square Garden in New York, New York. This main event is available on one streaming service.
How do I watch Jones vs. Miocic?
UFC 309 will be streamed live on PPV via ESPN+. You can get a subscription to ESPN+ for $11.99 per month but this special event will be $79.99. Another option is to sign up for an annual subscription for $119.99.
What time is UFC 309?
The event will begin at 6 p.m. Eastern with early prelims that will air exclusively on UFC Fight Pass. ESPN+ and ESPN News will have main prelims starting at 8 p.m. The main card will stream on PPV via ESPN+ and is scheduled to begin at 10 p.m. Eastern. The Jones-Miocic main event is expected to begin around midnight.
You can watch the main prelims on ESPN News for free via DirecTV Stream (free trial) or FuboTV (free trial and $20 off first month). You can also catch it for cheap on SlingTV.
Watch Jones vs. Miocic on PPV via ESPN+
Main Event preview
Jones (27-1-0, NC) vs. Miocic (20-4-0)
This bout was supposed to take place at UFC 295 in November 2023, but was cancelled after Jones suffered a pectoral injury. Jones' previous fight was a Heavyweight clincher against Ciryl Gane in March 2023. He applied a dominating guillotine choke to score the first round submission.
Miocic’s last fight was back in March 2021 at UFC 260 in a rematch against Francis Ngannou where he lost the Heavyweight Championship after a second-round TKO. Miocic, an Independence, Ohio native, looked overmatched and his MMA career was thrust into uncertainty.
The co-main event pits former UFC Lightweight Champion Charles Oliveira (34-10-0, 1 NC) against Michael Chandler (23-8-0), who is making his return to the Octagon after two years.
What is the main card for UFC 309?
(Champion) Jon Jones vs. Stipe Miocic - UFC Men’s Heavyweight title
Charles Oliviera vs. Michael Chandler - Lightweight
Bo Nickal vs. Paul Craig - Middleweight
Vivian Araujo vs. Karine Silva - Women’s Flyweight
Mauricio Ruffy vs. James Llontop - Catchweight
PRELIMS (Available on ESPN news)
Jonathan Martinez vs. Marcus McGhee - Bantamweight
Chris Weidman vs. Eryk Anders - Middleweight
Jim Miller vs. Damon Jackson - Lightweight
David Onama vs. Roberto Romero - Lightweight
EARLY PRELIMS (Available on UFC Fight pass)
Marcin Tybura vs. Jhonata Diniz - Heavyweight
Mickey Gall vs. Ramiz Brahimaj - Welterweight
Bassil Hafez vs. Oban Elliott - Welterweight
Veronica Hardy vs. Eduarda Mora -Women’s Flyweight
What are the latest odds for UFC 309?
(Champion) Jon Jones (-625) vs. Stipe Miocic (+455)
Charles Oliviera (-258) vs. Michael Chandler (+210)
Bo Nickal (-1350) vs. Paul Craig (+800)
Vivian Araujo (+240) vs. Karine Silva (-298)
Mauricio Ruffy (-900) vs. James Llontop (+600)
Jonathan Martinez (+110) vs. Marcus McGhee (-130)
Chris Weidman (-102) vs. Eryk Anders (-118)
Jim Miller (+185) vs. Damon Jackson (-225)
David Onama (-1350) vs. Roberto Romero (+800)
Marcin Tybura (-118) vs. Jhonata Diniz (-102)
Mickey Gall (-155) vs. Ramiz Brahimaj (+130)
Bassil Hafez (+240) vs. Oban Elliott (-298)
Veronica Hardy (-108) vs. Eduarda Mora (-112)

sad

authors: Nafihar haikal-gmx

repo: pinokiocomputer/pinokio


text:
agentID and agentName  I want to use more than 24 characters.Could you tell me where to fix it?

agentID and agentName  I want to use more than 24 characters.Could you tell me where to fix it?  I try to use this method to come from https://github.com/pinpoint-apm/pinpoint/pull/6015/commits/29ab391de758336900256ef0ce24d806e3a1eab5 ， but have some error:
From collector
11-09 06:02:49.049 [cAgent-Server-7] INFO  c.n.p.g.s.HeaderPropagationInterceptor   : Header extract fail cause=INVALID_ARGUMENT: invalid agentid, method=v1.ProfilerCommandService/HandleCommandV2 headers=Metadata(content-type=application/grpc,user-agent=grpc-java-netty/1.14.0,supportcommandcode=740;710;730;750,agentid=yy-test-1234567890-1234567890,applicationname=yy-djxd-1234567890-1234567890,starttime=1604901564349,grpc-accept-encoding=gzip), attr={remote-addr=/172.19.0.1:49256, transportMetadata=DefaultTransportMetadata{debugString='grpcAgentReceiver', remoteAddress=/172.19.0.1:49256, transportId=6, connectTime=1604901567545}}
io.grpc.StatusRuntimeException: INVALID_ARGUMENT: invalid agentid
	at io.grpc.Status.asRuntimeException(Status.java:517) ~[grpc-core-1.14.0.jar!/:1.14.0]
	at com.navercorp.pinpoint.grpc.server.AgentHeaderReader.validateId(AgentHeaderReader.java:110) ~[pinpoint-grpc-2.1.0.jar!/:2.1.0]
	at com.navercorp.pinpoint.grpc.server.AgentHeaderReader.getId(AgentHeaderReader.java:68) ~[pinpoint-grpc-2.1.0.jar!/:2.1.0]
	at com.navercorp.pinpoint.grpc.server.AgentHeaderReader.extract(AgentHeaderReader.java:41) ~[pinpoint-grpc-2.1.0.jar!/:2.1.0]
	at com.navercorp.pinpoint.grpc.server.AgentHeaderReader.extract(AgentHeaderReader.java:34) ~[pinpoint-grpc-2.1.0.jar!/:2.1.0]
	at com.navercorp.pinpoint.grpc.server.HeaderPropagationInterceptor.interceptCall(HeaderPropagationInterceptor.java:55) [pinpoint-grpc-2.1.0.jar!/:2.1.0]
	at io.grpc.ServerInterceptors$InterceptCallHandler.startCall(ServerInterceptors.java:229) [grpc-core-1.14.0.jar!/:1.14.0]
	at io.grpc.internal.ServerImpl$ServerTransportListenerImpl.startWrappedCall(ServerImpl.java:560) [grpc-core-1.14.0.jar!/:1.14.0]
	at io.grpc.internal.ServerImpl$ServerTransportListenerImpl.startCall(ServerImpl.java:541) [grpc-core-1.14.0.jar!/:1.14.0]
	at io.grpc.internal.ServerImpl$ServerTransportListenerImpl.access$1800(ServerImpl.java:361) [grpc-core-1.14.0.jar!/:1.14.0]
	at io.grpc.internal.ServerImpl$ServerTransportListenerImpl$1StreamCreated.runInContext(ServerImpl.java:477) [grpc-core-1.14.0.jar!/:1.14.0]
	at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) [grpc-core-1.14.0.jar!/:1.14.0]
	at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123) [grpc-core-1.14.0.jar!/:1.14.0]
	at com.navercorp.pinpoint.collector.monitor.MonitoredRunnableDecorator$InstrumentedRunnable.run(MonitoredRunnableDecorator.java:109) [classes!/:2.1.0]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_212]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_212]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_212]

From agent
11-09 14:24:26.026 [-Executor(14-0)] WARN  c.n.p.p.s.g.ResponseStreamObserver       -- Failed to stream, name=StatStream-4486, cause=INVALID_ARGUMENT: INVALID_ARGUMENT: invalid agentid
io.grpc.StatusRuntimeException: INVALID_ARGUMENT: INVALID_ARGUMENT: invalid agentid
	at io.grpc.Status.asRuntimeException(Status.java:526) ~[grpc-core-1.14.0.jar:1.14.0]
	at io.grpc.stub.ClientCalls$StreamObserverToCallListenerAdapter.onClose(ClientCalls.java:420) [grpc-stub-1.14.0.jar:1.14.0]
	at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:459) [grpc-core-1.14.0.jar:2.1.0]
	at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:63) [grpc-core-1.14.0.jar:2.1.0]
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:546) [grpc-core-1.14.0.jar:2.1.0]
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.access$600(ClientCallImpl.java:467) [grpc-core-1.14.0.jar:2.1.0]
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:584) [grpc-core-1.14.0.jar:2.1.0]
	at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) [grpc-core-1.14.0.jar:2.1.0]
	at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123) [grpc-core-1.14.0.jar:2.1.0]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_131]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_131]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_131]

Maybe those constants? I didn't try it though
https://github.com/pinpoint-apm/pinpoint/blob/master/commons/src/main/java/com/navercorp/pinpoint/common/PinpointConstants.java

thank you, use  https://github.com/pinpoint-apm/pinpoint/commit/29ab391de758336900256ef0ce24d806e3a1eab5 is ok.

repo: pinpoint-apm/pinpoint


text:
Getting error 'insufficient data written' when using JsonMessageParser

Hi,
I'm sinking my data to Google Cloud Storage. I've suffered from the insufficient data written in the past, but managed to bypass it by setting secor.gs.upload.direct=true, as suggested in the documentation.
Now, after changing my message parser to JsonMessageParser, I get the exception again:
java.lang.RuntimeException: Failed to apply upload policy
        at com.pinterest.secor.consumer.Consumer.checkUploadPolicy(Consumer.java:116)
        at com.pinterest.secor.consumer.Consumer.run(Consumer.java:106)
Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.io.IOException: insufficient data written

Any ideas?

If you have solved this issue, then you can close this issue, or if still u need help, you can refer https://github.com/pinterest/secor/issues/232

authors: ofirsharony tygrash

repo: pinterest/secor


text:
Crash when TURN server requires credentials

Your environment.

Version: cbd86cd4c700c72ceef2b0848d89dd3f56cf604d
Browser: Firefox 75.0b11 (64-bit) Linux and Chromium 80.0.3987.162

What did you do?
Joining a conference with two peers.
What did you expect?
WebRTC connection to be over TURN
What happened?
The turn server requires credentials which I couldn't figure out where to specify in the sfu.toml if they are not specified sfu just crashes with
2020-04-03 18:47:17.772 ERR NewWebRTCTransport api.NewPeerConnection InvalidAccessError: turn server credentials required
2020-04-03 18:47:17.772 INF rtc.GetOrNewRouter id=8e78b081-ad44-4aea-ac0e-e321eff2abc3#TOUYWG
2020-04-03 18:47:17.773 INF rtc.GetRouter id=8e78b081-ad44-4aea-ac0e-e321eff2abc3#TOUYWG
2020-04-03 18:47:17.773 INF rtc.AddRouter id=8e78b081-ad44-4aea-ac0e-e321eff2abc3#TOUYWG
2020-04-03 18:47:17.774 INF NewRouter id=8e78b081-ad44-4aea-ac0e-e321eff2abc3#TOUYWG
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0xe0 pc=0xcc775a]

goroutine 34 [running]:
github.com/pion/ion/pkg/rtc/transport.(*WebRTCTransport).Answer(0x0, 0x1, 0xc000102700, 0x6c6, 0x0, 0xc00038fa20, 0x2b, 0xc000161c00, 0x7f5a04ddd008, 0x0, ...)
	/app/code/pkg/rtc/transport/webrtctransport.go:266 +0x7a
github.com/pion/ion/pkg/node/sfu.publish(0xc00032f6b0, 0x12, 0xc0000e5d90)
	/app/code/pkg/node/sfu/internal.go:88 +0x488
github.com/pion/ion/pkg/node/sfu.handleRequest.func1(0xc00032f680, 0xc00032f740, 0xc00032f770)
	/app/code/pkg/node/sfu/internal.go:31 +0x2f2
github.com/cloudwebrtc/nats-protoo.(*NatsProtoo).handleRequest(0xc00018dc80, 0xc00032f680, 0xc0003379e0, 0x14, 0xc000337a00, 0x19)
	/root/go/pkg/mod/github.com/cloudwebrtc/nats-protoo@v0.0.0-20200328144814-d3c1c848d442/protoo.go:150 +0x1d4
github.com/cloudwebrtc/nats-protoo.(*NatsProtoo).handleMessage(0xc00018dc80, 0xc0000b8900, 0x820, 0x820, 0xc0003379e0, 0x14, 0xc000337a00, 0x19)
	/root/go/pkg/mod/github.com/cloudwebrtc/nats-protoo@v0.0.0-20200328144814-d3c1c848d442/protoo.go:105 +0x156
github.com/cloudwebrtc/nats-protoo.(*NatsProtoo).onRequest(0xc00018dc80, 0xc00036e0a0)
	/root/go/pkg/mod/github.com/cloudwebrtc/nats-protoo@v0.0.0-20200328144814-d3c1c848d442/protoo.go:96 +0x198
github.com/nats-io/nats%2ego.(*Conn).waitForMsgs(0xc0000c7b80, 0xc000184240)
	/root/go/pkg/mod/github.com/nats-io/nats.go@v1.9.1/nats.go:2147 +0x330
created by github.com/nats-io/nats%2ego.(*Conn).subscribe
	/root/go/pkg/mod/github.com/nats-io/nats.go@v1.9.1/nats.go:2987 +0x50e

The sfu.toml section looks like this:
[webrtc]
ice = ["stun:my.nebulon.space:3478", "turn:my.nebulon.space:3478"]

Is there a way to specify credentials within that uri schema?
And generally it should maybe nor crash if the server does require credentials.
Thanks!

Thanks！Let me see..

@nebulade Fixed, you can try

Thanks for the quick turnaround. The change fixed the crash, however as far as I understand the very same credentials are now applied to both TURN and STUN servers. At least with the current coturn setup we have, only TURN has credentials, so the STUN requests will fail, since the specified TURN username is not found on the STUN endpoint. Does that make sense or did I misread the changed configuration? Thanks!

Thanks for the quick turnaround. The change fixed the crash, however as far as I understand the very same credentials are now applied to both TURN and STUN servers. At least with the current coturn setup we have, only TURN has credentials, so the STUN requests will fail, since the specified TURN username is not found on the STUN endpoint. Does that make sense or did I misread the changed configuration? Thanks!

@nebulade fixed..

@nebulade You can try

authors: adwpc nebulade

repo: pion/ion


text:
Upgrade for Pi OS

Summary
Upgrade for Pi OS
Motivation
Has anybody planned to upgrade the project for the latest Pi OS? Raspberry Pi has upgraded from Raspbian to Pi OS. They said they would discontinue the "Legacy Camera", which pion/mediadevices relies on right now, in the future.
This project is so useful to the Raspberry Pi ecosystem that a thorough upgrade for Pi OS would benefit a lot of new apps.
Right now, the webrtc example does not work on Pi OS. I have to rebuild the opus library to make it work.
Describe alternatives you've considered
As I stated above, the "Legacy Camera" must be enabled and some libraries such as opus must be rebuilt.

The problem is that libcamera doesn't present a v4l2 device, libraries are expected to call the c++ api.
To support older v4l2 based programms you can use libcamerify  which uses  LD_PRELOAD to hook the open and v4l2 libc syscalls.
This doesn't work if you use the go builtin syscalls as these use assembly to directly call in the kernel instead of using libc.
The solution is to use cgo and use a bridge function for open/close/v4l2 syscalls and run the progamm.
I have a working solution, but I'm not ready to upload it yet.
You could also replace the ioctls with cgo code in the blackjack/webcam package.

authors: DevelopDaily bprfh

repo: pion/mediadevices


text:
Laravel v6 Compatibility

This pull request replaces some deprecated helpers in laravel v6.
This is not all of them, just those which affect my use case.

Thank you for your PR. ❤
I've made few changes and tried it via example repo (with Laravel 6.5, PHP 7.3) and works. Changes: https://github.com/pionl/laravel-chunk-upload/pull/85

authors: TheFrankman pionl

repo: pionl/laravel-chunk-upload


text:
Infer action and return type from action creator

First of all, thanks a lot for this library as it makes my code base so much safer 😊  However, I am facing a special issue right now which is quite tricky and might also be related to Typescript itself and not this library.
The example below is a simplified example what I would like to achieve. The function getTypeAndPayload should be able to get the type of the incoming action creator but also the return type of it.
const sampleActionCreator = createAction(
  'TEST',
  (test: boolean) => ({
    test,
  }),
  (test: boolean) => ({
    test,
  })
)()

function getTypeAndPayload<
  TType extends TypeConstant
>(actionCreator: ActionCreator<TType> & ActionCreatorTypeMetadata<TType>) {
  return {
    type: getType(actionCreator),
    getSource: (source: ReturnType<typeof actionCreator>) => source,
  }
}

function getTypeAndPayloadWithGeneric<
  TType extends TypeConstant,
  TActionCreator extends ActionCreator<TType> & ActionCreatorTypeMetadata<TType>
>(actionCreator: TActionCreator) {
  return {
    type: getType(actionCreator),
    getSource: (source: ReturnType<typeof actionCreator>) => source,
  }
}

function getTypeAndPayloadWithTwoParameters<
  TType extends TypeConstant,
  TActionCreator extends ActionCreator<TType> & ActionCreatorTypeMetadata<TType>
>(
  actionCreator: ActionCreator<TType> & ActionCreatorTypeMetadata<TType>,
  actionCreator2: TActionCreator
) {
  return {
    type: getType(actionCreator),
    getSource: (source: ReturnType<typeof actionCreator2>) => source,
  }
}

The function modules return different types:
/*
{
    type: "TEST";
    getSource: (source: Action<"TEST">) => Action<"TEST">;
}
*/
const test1 = getTypeAndPayload(sampleActionCreator)

/*
{
    type: string;
    getSource: (source: PayloadMetaAction<"TEST", {
        test: boolean;
    }, {
        test: boolean;
    }>) => PayloadMetaAction<"TEST", {
        test: boolean;
    }, {
        test: boolean;
    }>;
}
*/
const test2 = getTypeAndPayloadWithGeneric(sampleActionCreator)

/*
{
    type: "TEST";
    getSource: (source: PayloadMetaAction<"TEST", {
        test: boolean;
    }, {
        test: boolean;
    }>) => PayloadMetaAction<"TEST", {
        test: boolean;
    }, {
        test: boolean;
    }>;
}
*/
const test3 = getTypeAndPayloadWithTwoParameters(
  sampleActionCreator,
  sampleActionCreator
)

The last one is actually the one I am interested in (with a const type and a proper return type). However, I don't want to have two input parameters. Is there any trick to infer both types at the same time?
Here is a playground link: https://stackblitz.com/edit/typescript-jf7alj?devtoolsheight=33&file=index.ts
Thanks a lot in advance!

Okay, I got it finally... just for anyone who's also interested in it:
function getTypeAndPayloadFinally<
  TType extends TypeConstant,
  TActionCreator extends ActionCreator<TType> & ActionCreatorTypeMetadata<TType>
>(actionCreator: TActionCreator) {
  return {
    type: getType(actionCreator) as ReturnType<typeof actionCreator>['type'],
    getSource: (source: ReturnType<typeof actionCreator>) => source,
  }
}

The important piece is the explicit cast to ReturnType<typeof actionCreator>['type'].

repo: piotrwitek/typesafe-actions


text:
Add a new ops job to clean stale planpreview outputs

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #2285
Does this PR introduce a user-facing change?:

Add a new ops job to clean stale plan-preview outputs

/hold

/hold cancel

Nice
/lgtm

/approve

authors: khanhtc1202 nakabonne nghialv

repo: pipe-cd/pipe


text:
ensurepath support for xonsh shell

I use xonsh for my shell (highly-recommend).
No surprise, though, that pipx ensurepath doesn't work. It just emits a message giving bash syntax on how to ensure the path. Perhaps it would be possible to detect the xonsh environment and configure the setting in ~/.xonshrc.

Hmm. I was about to file a different issue about the behavior on Windows, but I now see #121. At first blush, that's probably the best approach and any xonsh support should be implemented there.

Moreover, I confirmed that userpath works for xonsh.

repo: pipxproject/pipx


text:
Adds instructions for privileged container.

closes #7

Thank you @dermidgen!

authors: dermidgen pires

repo: pires/docker-elasticsearch


text:
update to v1.2.1

Add a new config form for AZURE_SQLDB_ALLOW_TO_CREATE_SQL_SERVER and AZURE_SQLDB_SQL_SERVER_POOL. This allows the operator to disable the developer from creating the SQL server.

Add a module configuration example for creating databases on a existing server.

Update the example of credentials.

Update screenshots.

Thanks, @zhongyi-zhang !

authors: ljarzynski zhongyi-zhang

repo: pivotal-cf/docs-azure


text:
Add VmStrategy to Update block

This allows using the bosh hot-swap feature supported by recent bosh directors.

All merged thank you. Expect it in ODB in the next release, or in the SDK now.

authors: abg jacknewberry

repo: pivotal-cf/on-demand-services-sdk


text:
[WIP] Add PAS Outputs

Ensures that terraform outputs contain all fields required to
configure Director tile and PAS tile

Only fields not included are vcenter username/password
for security reasons

TODO: needs another pass on input/output names
Also adds script to upload ova file

cc @rowanjacobs @cunnie as this seems related to what y'all are working on. We don't currently test on NSX so the outputs added by this PR are for vanilla vSphere only, e.g. you're going to use a single HAProxy with a static IP rather than an NSX LB.

repo: pivotal-cf/terraforming-vsphere


text:
Docker container does not find either ruby nor license_finder gem

Using the dlf script from the repo, v 7.0.1:
$ ./dlf license_finder
Required ruby-2.6.5 is not installed.
To install do: 'rvm install "ruby-2.6.5"'
/usr/share/rvm/rubies/ruby-3.1.1/lib/ruby/site_ruby/3.1.0/rubygems.rb:265:in `find_spec_for_exe': can't find gem license_finder (>= 0.a) with executable license_finder (Gem::GemNotFoundException)
	from /usr/share/rvm/rubies/ruby-3.1.1/lib/ruby/site_ruby/3.1.0/rubygems.rb:284:in `activate_bin_path'
	from /usr/share/rvm/gems/ruby-3.1.1/bin/license_finder:25:in `<main>'
	from /usr/share/rvm/gems/ruby-3.1.1/bin/ruby_executable_hooks:22:in `eval'
	from /usr/share/rvm/gems/ruby-3.1.1/bin/ruby_executable_hooks:22:in `<main>'

As the README suggested chaining commands ought to work, I also tried:
$ ./dlf "rvm install ruby-2.6.5 && license_finder"
Required ruby-2.6.5 is not installed.
To install do: 'rvm install "ruby-2.6.5"'
/bin/bash: rvm install ruby-2.6.5 && license_finder: command not found

And finally I tried running just dlf and then in the shell running rvm and license_finder, but it still doesn't find the gem binary.
Unfortunately I could not find a lot of documentation for the Docker image, so I'm not sure why it would not find ruby, would not automatically install it, or not find the gem binary.

Hey @moeffju ! Based on what you're saying, this should be a problem with the previous versions as well that do not have ruby 2.6.5 installed. The 7.0.1 docker image comes with ruby 3.1.1 installed by default. If you want to use the LF docker image on an older version of ruby, you can to install that version of ruby with rvm as you have done. However you are missing the step of reinstalling license_finder and the required dependencies for that version of ruby.
However, I think the proper way is to run ./dlf from the base LF directory and use the --project-path flag to the repo you are trying to scan to ensure the proper dependencies are being used. Something like ./dlf license_finder --project-path=temp
Does that make sense?

Hmm, I thought about that but didn’t see why cwd vs project-path would make a difference, but I think now that I tried it I believe the .ruby-version file in the repo causes it. Since that’s not super uncommon, I wonder how to handle that case (and I was hoping that the docker image would do it automagically 😅) because the way of passing in a quoted command doesn't work, and the workaround of invoking bash -c with a quoted command breaks the rvm integration.
Anyhow, concrete situation in this project: There is a .ruby-version file in the project root that sets ruby 2.6.5, and the Gemfile references this as well (through reading the file directly as an argument for the ruby tag in the Gemfile). The latter fails naively with dlf and --project-path because it uses a relative path and looks for .ruby-version relative to the dlf root, not the Gemfile itself. That’s something I can fix tho.

@moeffju I think there may have been an issue with the dlf script since November. There was escaping logic that was added. I was confused when running because it looked right but it was because I was fetching info from my local machine and not the docker image. I just pushed a fix and ran ../dlf "rvm install ruby-2.6.5 && gem install license_finder && license_finder"
Can you let me know if this solves things for you??

I'll update the script & image and try again tomorrow, thanks!
I will probably also look into optimizing the docker image as it's quite big, and maybe adding a little wrapper that would take care of things like ensuring the right ruby is installed, and so, do you think that's something that would make sense to upstream?

Yes! Sounds good. Looking at docker image size was something that we wanted to do for a while so that would be great. The change I made for dlf was only for the script though. The image would be the same.
Wrappers will also be very useful. Its also great to get feedback from the community because we use the tool for different use cases. We rarely use the LF docker image directly and never use the dlf script. I'd be happy to look through any PR that comes up and we would really appreciate any help!!

authors: moeffju xtreme-shane-lattanzio

repo: pivotal/LicenseFinder


text:
Ability for product/stemcell version to accept globs patterns

I have a use case for accepting regex/glob patterns for product/stemcell versions.
I am storing my product/stemcell versions as git config. When a version has been applied to one environment, it writes the version to a file representing another environment. However, I want my sandbox environment to be able to take the latest patch version available without me having to manually update it.
This is similar to how the pivnet-resource can accept a product_version.

@calebwashburn I know you're quite busy. Nonetheless, does this seem like a feature you'd want this resource to support?

I am thinking about having this solved a bit different.  Have a pipeline that watches pivnet using pivnet-resource or some other resource.  If there are changes have it update the file for your sandbox.  That way file-downloader always does explicit version but something upstream would be tracking lastest versions to update your config.  Not necessarily ideal but concerned about other file drivers not being able to translate something like 2.2.* to a version to download.

Gotcha. Okay, that was my basically plan-B if globs weren't planned to be supported first-class.
Thank you, I appreciate it. 👍

Interested to see what you come up with in your plan-b @aegershman

authors: aegershman calebwashburn


text:
do not merge until om issue 250 is merged.

change product_name to product-name to match new om interface

https://github.com/pivotal-cf/om/issues/250

@calebwashburn now you can merge this PR. Now om takes product-name in the config file.
https://github.com/pivotal-cf/om/blob/master/commands/configure_product.go#L298-L300

Merged, but added back product_name to not break existing consumers.  Yaml file will have both product-name and product_name for a period of time.

authors: calebwashburn fredwangwang kcboyle

repo: pivotalservices/tile-config-generator


text:
Try to add this to Pi-apps

What does this suggestion do to pi-ware?
This will grow the number of users that pi-ware has :)
Why should we add this?
More apps would be built to be to be in the pi-ware store for Raspberry Pi and it would benefit you guys with the more help of some of the contributors from pi-apps.

The reason were not adding our app store to pi-apps is because we are a separate app store, rather than an app. The pi-ware project is also not maintained, as you can see with the last commit being 2 years ago. We initially wanted this to be a "competitor/alternative" to pi-apps, but pi-apps is basically the default raspberry pi app store at this point so it doesn't matter. Besides, we only have 10 or so apps, and most of them are on pi-apps anyways, and the rest could easily added to pi-apps without any issue.

The reason were not adding our app store to pi-apps is because we are a separate app store, rather than an app. The pi-ware project is also not maintained, as you can see with the last commit being 2 years ago. We initially wanted this to be a "competitor/alternative" to pi-apps, but pi-apps is basically the default raspberry pi app store at this point so it doesn't matter. Besides, we only have 10 or so apps, and most of them are on pi-apps anyways, and the rest could easily added to pi-apps without any issue.

Fair enough.
Also a suggestion in the readme on pi-ware include a way of installing python3, tk, ttkthemes and screeninfo
Incase someone who isn't tech savvy and new to Linux can install pi-ware easily.
Thank you :)

Also a suggestion in the readme on pi-ware include a way of installing python3, tk, ttkthemes and screeninfo
Incase someone who isn't tech savvy and new to Linux can install pi-ware easily.

Tk, ttkthemes and screeninfo are installed via the installscript on the repo, but I guess not everyone would have python installed, so ill keep that in mind
Thank you for the suggestion tho 👍


text:
Track timing

From https://github.com/pixiebrix/pixiebrix-extension/issues/6581#issuecomment-1751716925

We can add meta-data to the message itself to track the time in messenger vs. handler (with send/receipt/etc. timestamps before delegating to the handler

cc @BLoe thoughts?
I think this information can generate further warning logs or events when context crossing takes a while.
log.debug(type, seq, "↘ received in", getContextName(), {
  sender,
  args,
  wasForwarded: trace.length > 1,
});

if (tooLong) {
	log.warn(type, seq, "↘ crossed context in", duration);
}

By "context crossing time" I mean:

the time between a successful runtime.sendMessage and runtime.onMessage callback to be called
the time between return and the resolution of the last runtime.sendMessage() Promise

This excludes handler execution time and retries, which are not relevant and already visible respectively.

repo: pixiebrix/webext-messenger


text:
Very slow rendering of my "big" (not really) stage. Please help me figure it out.

(Sorry for asking this here, but the forum is as annoying as most forums and doesn't let me post. Why doesn't Github have an exact copy of "issues" but for tech support anyway?)
For the last week, I've been trying to move from Canvas 2D to WebGL for my game due to the fascinating sluggishness of the former, and the amazing speediness of the latter. To make a long story short, I've arrived at a final solution that should work for me, but currently doesn't.
_Important: what I have technically works exactly as intended, in every regard, except for the rendering speed. It's even slower than Canvas 2D currently, which can only mean that I have done something horribly, HORRIBLY wrong._
I've looked through my code 10 times now and can't find anything obvious. It seems to me that it should be very fast.
Note: I'm well aware of the fact that I have no "culling" routine yet. However, the entire world map is so small, that it barely covers a few screens. Also, I'm gonna have a feature where the user can zoom out to see the whole world at once anyway, so I can't really do culling most of the time.
Either case, the culling is not the problem here. The problem must be something I'm confused about, because again, this is even slower than Canvas 2D. I'm 100% convinced that this is not due to WebGL or Pixi.js, but due to some error of mine. Can you help me find and fix it?
I cannot make a working example due to the complexity of my project, but I did spend significant time creating this minimal example with real code but which doesn't actually run as a program. It contains all the relevant parts and shows exactly what I'm doing for all the relevant parts.
CPU usage: 24-33%. GPU usage: 14-33%. OS: Windows 8.1 Update 1. Latest stable Chromium. WebGL confirmed to work. Very fast and beefy computer. Very slow perceived rendering of my world. As in, Mario Paint on the SNES kind of rendering. Almost.
The code:
var renderer = new PIXI.WebGLRenderer(800, 600); // This is set the size of the screen when resized.

var stage = new PIXI.Stage(); // Important note to self: Stage objects are for some reason special and cannot be modified! Only use for a "wrapper" of sorts, and remember to render() it, but otherwise, do everything to "root" instead of stage!
var root = new PIXI.DisplayObjectContainer(); // root is the real stage, which can be modified in all kinds of ways, unlike stupid Stage.
stage.addChild(root);

function doThisOnceToSetTheGameUp()
{
    for (var i = 0; i < mapLayers.length; i++)
    {
        var theLayer = new PIXI.DisplayObjectContainer();

        for (var x = 0; x < (WORLD_WIDTH_IN_TILES * TILE_SIZE); x += TILE_SIZE)
        {
            for (var y = 0; y < (WORLD_HEIGHT_IN_TILES * TILE_SIZE); y += TILE_SIZE)
            {
                var theTileSprite = new PIXI.Sprite(/* complicated calculation that works; it just grabs the correct texture from the world map */);
                theTileSprite.position.x = x;
                theTileSprite.position.y = y;
                theTileSprite.layer = i;
                theLayer.addChild(theTileSprite);
                screenTiles.push(theTileSprite);
            }
        }

        root.addChild(theLayer);
    }
}

function drawStuffWhenAnimationFrameIsGiven()
{
    root.position.x = -cameraX;
    root.position.y = -cameraY;

    renderer.render(stage); // Since stage is rendered, root is rendered, thus each of the layers, thus all the sprites in each layer.
    requestAnimationFrame(drawStuffWhenAnimationFrameIsGiven);
}

Edit: Added code markdown styles.

Have a similar Problem, but depends on the Browser. Chrome x64 on Ubuntu 16.04 runs like silk with +30fps.
Firefox on same Machine behaves like a total failure and displays nothing with far below 1fps.
http://jsfiddle.net/nikkikoole/tq13caus/3/

@steffomix possibly Ubuntu related - firefox & chrome both +30fps on my win10 box

@NikkiKoole ,
Could you suggest me a good lib to visualize a large amount of data as a network in browser with binding events for nodes, edges and a view ( like rightclick, drag node, drag view, zoom, multiple select and text labels for nodes and edges).
I`ve tested cytoscape.js, vis.js, sigma.js.
Cytoscape.js animate smoothly up to 3k nodes and 5k edges.
Vis a little bit less than Cytoscape.js
Sigma visualize and animate smoothly up to 5k nodes and 8k edges.
(10k * 10k is too laggy for Sigma)
Sigma is the best choice but it`s still not enough performance for such large network.
Need more or equal to 10k nodes and 10k edges to animate them smoothly on changing layout from random position to circle for example or other type of layout
Does it a good idea to use PIXI for example?
Thanks in advance


text:
Pixi v3 - updateTransform generates "Cannot read property 'worldTransform' of null"

call updateTransform on a DisplayObject that isn't added to the displayList generates a :
Cannot read property 'worldTransform' of null
In Pixi v2, if we wanted to split rendering and calculation, we needed to call updateTransform on the stage when we didn't called renderer.render
In pixi v3, do we need to call stage.updateTransform if we don't call renderer.render ? If it's the case, we need to fix it when there's no parent in the Container.prototype.updateTransform (for the stage for example) :
line 8106: var pt = this.parent!=null ? this.parent.worldTransform : PIXI.Matrix.IDENTITY;
line 8192: this.worldAlpha = this.alpha * (this.parent!=null ? this.parent.worldAlpha : 1);

Current version is v4, I dont think that @GoodBoyDigital will change that in v3. Please look in WebGLRenderer.render(), it assigns temporary parent before doing updateTransform().

I'm at the moment on a project with students with Pixi v3 and we won't update Pixi in the middle of the production but I found a workaround.
Thank for the information on pixi v4, I will check it for the next project :)

Good luck to you and your students!

The currently released version is v3, v4 is currently in development. The change from v2 -> v3 was for us to assume there would be a parent (which simplifies and speeds up the updateTransform function that runs every frame) and then we assign a temp parent when one doesn't exist.
If you need to update transform directly, on a root object, then place it in a temporary parent.

Ok thanks Chad for explanations. The game is in a child of stage so the updateTransform is made on this one and not directly on stage. It works perfectly

authors: englercj ivanpopelyshev mathieuanthoine


text:
Component description populated wrongly

Configuration:
"@pxtrn/storybook-addon-docs-stencil": "^6.4.1",
"@stencil/angular-output-target": "^0.8.3",
"@storybook/addon-docs": "^7.6.15",
"@storybook/addon-essentials": "^7.6.15",
"@storybook/addon-interactions": "^7.6.15",
"@storybook/addon-links": "^7.6.15",
"@storybook/blocks": "^7.6.15",
"@storybook/builder-vite": "^7.6.15",
"@storybook/html": "^7.6.15",
"@storybook/html-vite": "^7.6.15",
"@storybook/test": "^7.6.15",
"@storybook/web-components": "^7.6.15",
main.js
import { join, dirname } from 'path';

/**
 * This function is used to resolve the absolute path of a package.
 * It is needed in projects that use Yarn PnP or are set up within a monorepo.
 */
function getAbsolutePath(value) {
  return dirname(require.resolve(join(value, 'package.json')));
}

/** @type { import('@storybook/html-vite').StorybookConfig } */
const config = {
  stories: [
    '../src/**/*.mdx',
    '../src/**/*.stories.@(js|jsx|mjs|ts|tsx)',
  ],
  typescript: {
    // Overrides the default Typescript configuration to allow multi-package components to be documented via Autodocs.
    reactDocgen: 'react-docgen',
    skipBabel: true,
    check: false,
  },
  addons: [
    getAbsolutePath('@storybook/addon-links'),
    getAbsolutePath('@storybook/addon-essentials'),
    getAbsolutePath('@storybook/addon-interactions'),
    getAbsolutePath('@pxtrn/storybook-addon-docs-stencil'),
  ],
  framework: {
    name: getAbsolutePath('@storybook/html-vite'),
    options: {},
  },
  core: {
    builder: '@storybook/builder-vite',
    disableTelemetry: true,
  },
  docs: {
    autodocs: 'tag',
    defaultName: 'Documentation',
  },
  staticDirs: ['../www/build']
};

export default config;

Preview.jsx:
// Required by webcomponents
import { defineCustomElements } from '../dist/esm/loader';

import { extractArgTypes, extractComponentDescription, setStencilDocJson } from '@pxtrn/storybook-addon-docs-stencil';
import docJson from '../custom-elements-2.json';
if(docJson) setStencilDocJson(docJson);

export const parameters = {
  controls: { hideNoControlsWarning: true }
}

// Required by webcomponents
defineCustomElements();

/** @type { import('@storybook/html').Preview } */
const preview = {
  parameters: {
    actions: { argTypesRegex: '^on[A-Z].*' },
    controls: {
      expanded: true,
      matchers: {
        color: /(background|color)$/i,
        date: /Date$/i,
      },
    },
    docs: {
      toc: true,
      page: DocumentationTemplate,
      extractArgTypes,
      extractComponentDescription,
    }
  },
};

export default preview;

documentationTemplate.mdx:
import { Description, Meta, Title, Primary, Controls, Stories, Subtitle } from '@storybook/blocks';

<Meta isTemplate />

Title: <Title />

Subtitle: <Subtitle />

# Default implementation

Description: <Description />

Primary: <Primary />

## Inputs

The component accepts the following inputs (props):

Controls: <Controls />

---

## Additional variations

Listed below are additional variations of the component.

Stories: <Stories />

stencil.config.ts:
    {
      type: 'docs-json',
      file: 'custom-elements-2.json'
    },

The generated custom-elements-2.json generates the following entry for my component:
    {
      "filePath": "src/components/avatar/avatar.tsx",
      "encapsulation": "shadow",
      "tag": "avatar",
      "readme": "# avatar\n\n\n",
      "docs": "Generate avatars with initials from names.\nUses third party service",
      "docsTags": [],
      "usage": {},
      "props": [],
      "methods": [],
      "events": [],
      "listeners": [],
      "styles": [],
      "slots": [],
      "parts": [],
      "dependents": [],
      "dependencies": [],
      "dependencyGraph": {}
    },

From your code the description is generated using:
/**
 * @param {string} tagName - stencil component for which to extract description
 */
export const extractComponentDescription = (tagName: string): string => {
  const metaData = getMetaData(tagName, getStencilDocJson());
  return metaData && (metaData.readme || metaData.docs);
};

As because the readme has some data, it generates the wrong description as shown:

Stencils docs-json output contains two properties in the component meta data:

readme: content of readme.md in the directory where the component is located
docs: doc block of the components class

You have two options to fix your issue:

remove the readme.md that sits in the directory as your component sits (metaData.readme will be empty then)
write a custom component description extractor (requires version >=6.4.2 of this addon)

//.storybook/preview.js

import { getComponentMetaData } from '@pxtrn/storybook-addon-docs-stencil';

export const parameters = {
  docs: {
    extractComponentDescription: (tagName) => {
      const metaData = getComponentMetaData(tagName);
      return metaData && (metaData.docs || metaData.readme);
    }
  }
}

authors: mcrodriguezb pixtron

repo: pixtron/storybook-addon-docs-stencil


text:
[REQ] FastFlag Pausing

Acknowledgement of preliminary instructions

[X] I have read and acknowledged the preliminary instructions.

What idea do you have?
Quite simple tbh, a button in the Bloxstrap Menu that if pressed, will stop fastflags/ClientAppSettings from being loaded when Roblox launches.

This is already planned to be added since this is going to be necessary for troubleshooting problems and stuff.

closed because of recent updates

repo: pizzaboxer/bloxstrap


text:
-b hexclock  sets the background based on the time

Inspired by http://www.jacopocolo.com/hexclock/
Feel free to run in the background:
while [ 1 ]; do wasko -p hexclock; done &

Wasko is stupid!

repo: pjaspers/wasko


text:
(Suggestion) Skeletons will attack by jumping and doing a 360 and when in mid-air shoot you.

The title sums it up. Instead of normal attacking, skeletons will jump and rotate them self 360 degrees. Then during the jump or when in mid-air shoot you.

Uhh.. Try something like this:
public final class MyPlugin extends JavaPlugin {
    @Override
    public void onEnable() {
        getServer().getPluginManager().registerEvents(new Listener() {
            @EventHandler
            public void onSkeletonShoot(EntityShootBowEvent event) {
                if (event.getEntityType() != EntityType.SKELETON) {
                    return;
                }
                Skeleton skeleton = (Skeleton) event.getEntity();
                LivingEntity target = skeleton.getTarget();
                if (target == null) {
                    return;
                }

                skeleton.setJumping(true);

                new BukkitRunnable() {
                    int count = 0;

                    public void run() {
                        if (count > 10) {
                            cancel();
                            return;
                        }
                        Location loc = skeleton.getLocation();
                        loc.setYaw(loc.getYaw() + 36);
                        skeleton.teleport(loc);
                        count++;
                        skeleton.rangedAttack(target, 1);
                    }
                }.runTaskTimer(MyPlugin.this, 1, 1);
            }
        }, this);
    }
}

authors: BillyGalbreath Piki-dev


text:
Modifications (and tests) to allow the extension to cache optimization between runs.

The caching consists of two stages.

On the first run, after optimization, the extension will generate a
manifest file containing the modified timestamp for each image in the build
directory.  On subsequent runs, if the timestamp of the file has not changed,
we will not try to optimize it again.  The manifest is stored in the build
directory and is called imageoptim.manifest.bin.

By default Middleman will overwrite optimized images with the source image
on every build.  The extension now inspects the sitemap for image resources
and looks for an existing file in the build directory.  If the file exists and
if it is newer than the source file, we fake out Middleman by changing the
source to point to the existing file in the build directory.  This causes
Middleman to see the file as unchaned and we avoid overwriting it.

The following cucumber scenarios have been added.
Scenario: Basic optimization
Scenario: Storing timpestamps to avoid re-optimization
Scenario: Skipping optimization when the timestamp hasn't changed
Scenario: Regenerating the build image if the source has changed
To run the scenarios just run cucumber.
$ cucumber

Woo-hoo! :smile:

@jagthedrummer Heh, got there eventually :/ I’m working on a bit of a cleanup branch now and will then ship a new version. Thanks for your work on this. <3

No problem! I was scratching my own itch, and it's been working great for me ever since I submitted the PR. Glad others will be able to use it too.

authors: jagthedrummer plasticine

repo: plasticine/middleman-imageoptim


text:
OATH Support

I wrote OATH (HOTP and TOTP) support for a project, and I'm now in the process of extracting it. Should I integrate it into devise and make a pull request, or make it a separate gem?
Micah Gates
Table XI

Hey @mgates. This seems really interesting, please do move it into a gem. Don't forget to mention it here:
https://github.com/plataformatec/devise/wiki/Extensions
Thanks!

authors: josevalim mgates

repo: plataformatec/devise


text:
Parent mailer + undefined method

Hi,
I'm trying to create a mailer to send emails through Sengrid API, so I created a SendgridMailer class with the mail method and update the Devise.parent_mailer to my SendgridMailer.
When I try call user.send_confirmation_instructions an error is raised.
*** NoMethodError Exception: undefined method `confirmation_instructions' for Devise::Mailer:Class

I'm using the devise_token_auth gem but it calls the super method:
send_devise_notification(:confirmation_instructions, @raw_confirmation_token, opts)

The stacktrace is:
from /Users/thiago/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/devise-4.2.0/lib/devise/models/authenticatable.rb:188:in `send_devise_notification'
	from /Users/thiago/.dotfiles/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/devise_token_auth-0.1.39/app/models/devise_token_auth/concerns/user.rb:75:in `send_confirmation_instructions'
	from (irb):5
	from /Users/thiago/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands/console.rb:65:in `start'
	from /Users/thiago/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands/console_helper.rb:9:in `start'
	from /Users/thiago/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:78:in `console'
	from /Users/thiago/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:49:in `run_command!'
	from /Users/thiago/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands.rb:18:in `<top (required)>'
	from /Users/thiago/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
	from /Users/thiago/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `block in require'
	from /Users/thiago/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:259:in `load_dependency'
	from /Users/thiago/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
	from /Users/thiago/Projects/rails/carrot/bin/rails:9:in `<top (required)>'

Does anyone know why this error?

I think the ActionMailer::Base "converts" the instance methods from mailer to class methods because here it is calling the class method and it works.


text:
Devise syntax errors in ruby 2.5.0

Environment

Ruby 2.5.0
Rails 5.x
Devise 4.3.0

Current behavior
Starting a Rails server with ruby 2.5.0 yields these syntax errors:
[36171] ! Unable to load application: SyntaxError: /Users/vwoo/.gem/ruby/2.5.0/gems/devise-4.3.0/app/controllers/devise/sessions_controller.rb:5: syntax error, unexpected '{', expecting keyword_end
...ion only: [:create, :destroy] { request.env["devise.skip_tim...
...                              ^
/Users/vwoo/.gem/ruby/2.5.0/gems/devise-4.3.0/app/controllers/devise/sessions_controller.rb:5: syntax error, unexpected '}', expecting keyword_end
..."devise.skip_timeout"] = true }
...

Expected behavior
The app starts normally

Oh, this is apparently fixed with https://github.com/plataformatec/devise/commit/1009096172f2cbc86bcd54d053c89a09be67fb9f.
Can we get a release?

Duplicate of #4738 , #4736, #4719, #4703 . Devise is currently not compatible with latest stable version of ruby

@tegon @carlosantoniodasilva @rafaelfranca Since the change is already on master, what is the expected timeframe for releasing this?

Hi everyone, sorry for the delay. I had a lot of work to do lately. I was only able to work on this today. Anyway, version 4.4.0 is out.
Thanks

authors: redtachyons rusterholz tegon vincentwoo


text:
delayed deliver / sidekiq

Hello,
Is there any way to use this gem with a sidekiq worker ?
(as with the deliver_later method with Devise gem)

+1

+1

Not right now. This can only be sent in foreground.

authors: JamesAndresCM mad42 mikeover rafaelfranca


text:
Could you please help me adapt to the new ui?

Hello, thank you very much for creating this theme, but I encountered a problem, that is, the run configuration cannot be displayed under the new ui, as shown in the picture. If possible, please help adapt it. If you don’t have time, Can you tell me how to modify it?

i'll check how to improve it.

i'll check how to improve it.

Thank you, I tried it and this problem does not exist on the 2023.3.2 version. The phenomenon in the screenshot above appeared on the 2022.3 version.

authors: immadolf plateaukao


text:
Error creating Azure cluster

Using the terraform script I am trying to create a basic cluster with my Azure cloud provider. The terraform apply command is returning success but in the P9 console I get the below error on the "Node Health" page. I tried providing the ssh key name as well as the entire key itself. Both returned error.
TF
terraform {
  required_providers {
    pf9 = {
      source  = "platform9/pf9"
      version = "0.1.5"
    }
  }
}

provider "pf9" {}

resource "pf9_cluster" "cluster_1" {
  project_uuid = "ba442e7eb91f4497ba7acc3e3b84e3b5"
  cloud_provider_uuid = "62022325-1bc0-418f-a57a-9220ba5ca176"
  name = "tf-az-4"
  containers_cidr = "10.20.0.0/16"
  services_cidr = "10.21.0.0/16"
  num_masters = 1
  num_workers = 1

  location = "eastus"
  zones = ["1", "2"]
  master_sku = "Standard_A4_v2"
  worker_sku = "Standard_A4_v2"
  ssh_key = "ddieruf"
}

Error:
Command failed: /opt/pf9/qbert/bin/terraform apply -auto-approve=true -refresh=true -state=/mnt/mysqlfs/qbert/cloud/azure/6ba69e7f-d11e-46cb-b2d1-e64fdf95b940.tfstate -var-file=/mnt/mysqlfs/qbert/cloud/azure/6ba69e7f-d11e-46cb-b2d1-e64fdf95b940.tfvars.json -no-color -input=false

Error: compute.VirtualMachineScaleSetsClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="InvalidParameter" Message="The value of parameter linuxConfiguration.ssh.publicKeys.keyData is invalid." Target="linuxConfiguration.ssh.publicKeys.keyData"

  on ../../modules/autoscaling/autoscaling.tf line 85, in resource "azurerm_virtual_machine_scale_set" "scale_set":

  85: resource "azurerm_virtual_machine_scale_set" "scale_set" {

Error: compute.VirtualMachineScaleSetsClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="InvalidParameter" Message="The value of parameter linuxConfiguration.ssh.publicKeys.keyData is invalid." Target="linuxConfiguration.ssh.publicKeys.keyData"

  on ../../modules/autoscaling/autoscaling.tf line 85, in resource "azurerm_virtual_machine_scale_set" "scale_set":

  85: resource "azurerm_virtual_machine_scale_set" "scale_set" {

Turned out you have to provide the SSH public key value, not the name.
This helped:

Learn how to create and save a key-pair on Azure. Once created download the private for your records and provide the public key as this value.


text:
Running a stack from Docker Hub

When selecting an official image from Docker Hub, for instance Mongo, I can try it in PWD thanks to the new Chrome extension but I cannot see the stack that I'm about to deploy.
Could there be a link to see the stack definition beforehand ?
PWD rocks btw 👍

You should be able to click on the tag and that will link you to the stack.
On Mon, May 22, 2017, 10:29 Luc notifications@github.com wrote:

When selecting an official image from Docker Hub, for instance Mongo, I
can try it in PWD thanks to the new Chrome extension but I cannot see the
stack that I'm about to deploy.
Could there be a link to see the stack definition beforehand ?
PWD rocks btw 👍
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/play-with-docker/play-with-docker/issues/146, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAIhp6CjV7epmwKYoT2qLPE8kb-4FTkoks5r8Y2ogaJpZM4NiW4O
.

@lucj when using the Chrome extension, when you click in the "Try in PWD" a dialog opens. As @xetorthio said, if you click in the tag name, it'll take you to the stack that's going to be deployed.

Sorry, my bad, that was obvious :(
On Mon, May 22, 2017 at 4:58 PM, Marcos Nils notifications@github.com
wrote:

@lucj https://github.com/lucj when using the Chrome extension, when you
click in the "Try in PWD" a dialog opens. As @xetorthio
https://github.com/xetorthio said, if you click in the tag name, it'll
take you to the stack that's going to be deployed.
[image: image]
https://cloud.githubusercontent.com/assets/1578458/26314953/f739a71a-3ee5-11e7-8b48-0dbf425993a2.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/play-with-docker/play-with-docker/issues/146#issuecomment-303125556,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AALIhqEsBdxhM0c0DNMQdA7YcJ6chYuuks5r8aKWgaJpZM4NiW4O
.

--
Luc Juggery
about.me/lucjuggery

authors: lucj marcosnils xetorthio

repo: play-with-docker/play-with-docker