No contrast in org mode code block with doom-monokai-octagon when highlighting code.

Describe your request
For the doom-monokai-octagon, which is wonderful by the way, when I select text in an org-mode code block, the highlighted text is the same color as the background so there's no visual indication of what text is being selected.
I believe the background color of the org code block needs to changed or the selected text color for the theme.
If you do not want to fulfill request, could you let me know how I can do this locally?
I can upload a screencast if it would help.
Briefly explain its use-case

Install doom-themes
Select the doom-monokai-octagon theme
Create a code block with the code in it.
Highlight the code in the block and notice that the background color is the same color as the highlight color.

The doom-monokai-* themes are really nice but this is a minor annoyance.
I'm not sure if this a valid way for all the themes, but setting the following (in the face overrides) could be one way to solve this.
((org-block &override) :background base2)
((org-block-background &override) :background base2)
((org-block-begin-line &override) :background base2)

This is what is done in many other themes.


Make it possible that announceServerStart and announceServerStopped can be accessed when installing Ghost as NPM module

In Ghost 2.0 we have introduced two new functions:

announceServerStart
announceServerStopped

Both functions have the task to signalise that Ghost has fully bootstrapped.
Cases:

Ghost is migrating your database and Ghost is in maintenance mode. We have to ensure that the server.start event is triggered when Ghost is out of maintenance mode, because no database queries should be executed during migration.
Ghost is bootstrapping without database migrations.
Ghost is initialising the database.

The announceServerStart and announceServerStopped has two tasks:

trigger server.start
notify IPC process (CLI in development)
notify bootstrap socket if available (CLI in production)

Currently, when using Ghost as NPM module, you'll have a hard time to access both functions, because we do not expose them (they are static module functions). The design must change. I have updated our docs for now, which makes it possible to announce the server start, but it's not really nice.
The reason i was using a static function is that we don't always we have access to the ghost server instance e.g. error is thrown before the ghost server was created.
Could we put the execution of announceServerStart and announceServerStopped into Ghost core?
Who is currently subscribing to the server.start event?

themes will get initialised
url service is currently listening on db.ready, which could be changed to use server.start (the idea was to start generating urls as early as possible)
any component in Ghost can listen to this event - we want to move to more async bootstrap initialisation in the future

I think the solution is to move the execution of both functions into core/index.js.
Using Ghost as NPM module should not require to execute these function - especially because it's also dependent on the maintenance mode.


Do we have a plan to publish the new version of NPM package?

I think many our guys are waiting for the fix of sending file

Yes, we should!
Would you like to send a PR to do this? ;-)

I mean we should publish a new npm package to include this fix PR#106 . I don't know how I can publish a NPM package by creating a PR. @huan

Create a PR to upgrade the version, then the new version will be published after your PR.

#111 here we go!

Can this one be closed now?

@suntong Appreciate for the kindly house cleaning noticing!
I have added a Triage ROLE to our @wechaty/contributors so that all the contributors can help the community to manage the Issues because I trust @wechaty/contributors as we are all professional open-source developers.
So please feel free to help the community to manage Issues when you believe it's necessary, from the professional open-source developers perspective.
Thank you very much.

Sure. Let me perform my first honorable duty, which is in my best judgement, that this issue can be close. :)


M33983: Possible typo - "managed" vs "manage"

Hello @VanMSFT,
Translator has reported possible source content issue.
Description: Assume this was supposed to say "Assign permissions to Azure AD users and manage database security" (not: "...and managed database security"). Translated accordingly. Could you please confirm this is correct? Thanks! Otherwise, please clarify the meaning of the source (i.e. does it mean that permissions are assigned to the managed database security or does the user learn about assigning permissions and about managed database security?)
Please review and merge the suggested proposed file change to avoid this error. If you make related fix in another PR, then share your PR number, so we can confirm and close this PR.
Many thanks in advance.

@v-makoud : Thanks for your contribution! The author, @VanMSFT, has been notified to review your proposed change.


Rotation for the Monthly TSC Meeting Manager/Coordinator

During the #1 we decided to plan periodic StackStorm TSC meetings every month (first Tuesday of the each month). @armab was conducting the first couple of meetings to start the wheels rolling.
Now the idea and proposal is to set up rotation for the monthly StackStorm TSC meeting Manager/Coordinator who will be conducting the talk and load-balance the team efforts.
StackStorm team rotation history
Historically we already did some rotations at StackStorm:

"release manager rotation" between team members running the automation to get the new release out and lead the release efforts. We'll keep this tradition.
"support rotation" was a duty for the team members to help st2 community, maintain CI/CD automation, answer emails, twitter, forums, Slack questions, triage Github issues, PRs, etc, etc during the week.

This kind of rotations greatly improved team collective knowledge about the st2 system and skillset. It also gets everyone involved in every single part of the system, eventually helping understanding priorities, raising important questions and making better decisions as a team.
The TSC Meeting Manager responsibilities
Now the proposed responsibilities for the TSC Meeting Manager (rotated every month):

lead the ST2 TSC meeting (prepare the agenda, questions, review progress based on previous meetings, etc)
put the TSC meeting report together after the meeting took place (like #1 #2)
connect the dots, oversee the balance
distribute team members involvement: encourage less active maintainers to be more active, ask for help
raise & follow-up on important questions that were unresolved before
make sure we go together towards the StackStorm roadmap, encourage discussions about what are project priorities

Personally I had fun doing TSC meetings and believe it's an interesting responsibility that would be advantageous to do by everyone in the Maintainers team.
Practically this will bring more diversity to our meetings, balance priorities, inspire development and bring more energy.
@StackStorm/tsc please provide your feedback/ideas so we can polish this and execute better based on everyone's opinion.

I'd propose to start experimenting with this and see how it goes.
For example, TSC Meeting Coordinator rotation could be based on current release manager responsibility so he can raise discussions around priorities during the meeting. Ex:

v3.2 release responsibility is @armab and @punkrokk. If we'll have any 3.2 items left @punkrokk may coordinate next meeting.
v3.3 release could be ran by someone else. This way they can conduct the monthly meeting, being interested in discussions around release plans/efforts.
We could get even more creative, for example preparing agenda/conducing monthly meetings in pairs.
In case of no immediate release plans/agenda, we can just rely on a sorted list of @StackStorm/maintainers for this kind of rotation.

I would love to have some tooling around this to remind people that they are on rotation.
Just spit balling ideas:

Maybe we could have rotations setup in the st2community pack stored in the datastore? Have it round-robin based on a list and post messages to Slack?
Not sure if there are external tools that we could use for this purpose or not?

Per discussion TSC Meeting is best conducted by the Release Manager in rotation, - someone responsible for getting StackStorm Release out.
Release Management and Rotation is now covered by the WIKI page:
https://github.com/StackStorm/discussions/wiki/Release-Management-Rotation

Per @punkrokk proposal during the https://github.com/StackStorm/discussions/issues/31#issuecomment-637734748 Jun 2 TSC meeting this approach had its downsides like missing continuity and we returned back to the previous model with adjustments to run TSC Meetings by the elected TSC chair for at least 3 months. cc @dzimine

2 things that come to mind to resolve with this are:

Ensure there is an up-to-date list of TSC members who are candidates for rotation so that at the end of one TSC meeting, we can look at the list and call out who's next.  To @nmaludy's point above, perhaps we could have some tooling around this to remind folks who are scheduled for rotation (maybe an action/workflow in the same pack that notifies of the tsc call to read the rotation list and notify #tsc ?).
Ensure that there is opportunity for a fallback if the active person on rotation becomes unavailable or unable to fulfill the responsibilities.

Assign the meeting host for the next meeting in the current meeting.


Dev - Console error after sign in

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

User A requests money from user B
User B opens the chat with A. Verify in user B you see the green button Pay in the last message
User B signs out from the app
User B reloads the app
User B signs in
Verify when user B is signed in, the chat with user A is open

Expected Result:
No console error
Actual Result:
Console error (invalid prop payPalMeData) shows
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

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

Version Number:
Reproducible in staging?: Dev
Reproducible in production?: Dev
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/43996225/e0576c30-7b87-4aea-8fc9-606e24df14aa
Expensify/Expensify Issue URL:
Issue reported by: @bernhardoj
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1687776393036369
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~018d0dd3fea0bd5872
Upwork Job ID:<PHONE_NUMBER>365277696
Last Price Increase: 2023-07-14

Reassigning another bug team member, I'm going OOO until Monday, July 10, and will take it back if it's still open by my return date.
Required action from the 🐛 team: I've run out of time and haven't tested this one yet. This needs testing to confirm if it's a bug, check if it's a dupe, and then assign the applicable labels. Thank you!

Slammed with bug reports. I'll close the loop on these today.

@JmillsExpensify -- I'm back online. Were you able to test this one or should we close since it's about 2 weeks old now?

It's a DEV issue so we can't reproduce. @mountiny Are you going to touch Paypal stuff anytime soon? I know we talked about this one recently and what the future looks like.

I will look into this one

Pr in review

Thank you @JmillsExpensify for pushing this one forward. I'm going to take it back over since we have a plan in place.

PR is still in review

The PR was merged!

@mountiny - this one moved to production, are we good to issue the payment for the review here? Thanks!

@alexpensify yes please $250 to @bernhardoj

Alright, I've prepared the payment in Upwork for @bernhardoj. Please accept and then I can complete the process. After that, I'll close this GH. Thank you!

All set @bernhardoj has been paid via Upwork. Thank you for your help here! I'm going to close this GH now.


⚡ Upload sqlite file in separate process

There is a problem with the sync notebook, but i don't really understand why this happens now, the update of local sqlite file should not be affected.

Now it is probably better not to run this notebook at all.

Running locally it fails on Windows. I have no idea why it still work on linux / CI on main.

I reproduce the error on CI locally on my mac depending on how fast I run the notebook 😆 - if I run it slowly and allow the upload process to finish everything is good. If I run it fast and the upload process hasn't yet finished and the time stamp is written, it evidently fails

This makes me think: OMG, this is dangerous without any await logic among processes.
And that makes me think: OMG, this is going to be complicated...


Current user is not stored

Current user is needs to be stored to be able to see the profile page and authenticate that the user is logged in.

API added in #45 but needs a user interface

Added function for getting current user from API.


Strange behavior when using multiplug badges

Here is an example of the part of my readme where I tried to compare the sizes of packages

Package
Base API
Minified size
Minified and gzipped size

yumi-fetch
fetch

wretch
fetch

ky
fetch

axios
XMLHttpRequest

got
XMLHttpRequest

At first it was working fine, but now it sticks and shows the previous size. Maybe it is cache issue or something else. I've tried opening it from different devices and it work the same way

Yeah, that was a caching issue, it would've resolved itself in about a day, but I've manually cleared the cache so the issue should now be resolved, let me know what you think

Now some of them are correct, but still some are jumbled up in a random order.

I've had this problem for more than a day. At first I also thought it would go away on its own, but it wasn't. So I decided to write the issue.

I think for some reason it's strongly caching the badges, I'll have to look into that. Thus far I've cleared all the badges so it should now work please open the table above in an incognito window to confirm. I'll work on a permanent fix for it's strongly held cache

Okay, thanks for response
Still doesn't work, even in the incognito window. Although, now they are in a different order 😆

It is a caching issue but it's specific to badges not the JSON response and I can't replicate it anymore, but it definitely does occur, I'll look further into this tmrw

Wait, nvm I've now created a fix, give it a try

Yes, it's working well now. And it looks like I had some kind of error with the axios treeshake export. Thanks!


Binaries for Thanos 0.18.0

Hi,
I have noticed that the latest tagged release for Thanos (0.18.0) does only include the source code. Usually, previous versions did include the binaries for different platforms and a set of Release Notes (see 0.17.0 and 0.17.0-rc.0).
The release candidate 0.18.0-rc.0 does include them, will you be updating tagged version 0.18.0 with them too?

Yes it looks like the release is somehow in.. progress? 🤔 cc @squat
Thanks for pointing!

Thanks for bringing this up.  I think the release job in circle CI failed and had to be retried! It's released now :))))

<3


Runtime Netcode Patcher Depreciated

I noticed that this mod got updated but the RNP is still depreciated. Can we still use it regardless and it will work or no?

Should still work fine.

Merging into #30 to track any future changes with this


Bug: Selection has been lost when I replace node

Hello, I want to maintain the selection of a specific TextNode after changing it. For example, if I click and change the first selected sentence like this, the selection moves elsewhere.
My goal is to select the same changed sentence even if the corresponding node is changed to a recommended sentence. However, the node after being changed is unpredictable.
How can I continue selecting the changed TextNode? This is my code.

Lexical version:  ^0.11.1
export function $replaceTextNode(
  selection: RangeSelection,
  text: string
): void {
  const node = selection.anchor.getNode();
  const textNode = $createTextNode(text);
  node.replace(textNode);
  node.select();
  return;
}

The replacement works smoothly, but the selection does not work

So if I process the code like this, Select the last sentence. The node key of selection is changed to the key of the last sentence.
export function $replaceTextNode(
  selection: RangeSelection,
  text: string
): void {
  const node = selection.anchor.getNode();
  const textNode = $createTextNode(text);
  const newNode = node.replace(textNode);
  newNode.select();
  return;
}

If I change only the text with splice, save the key of the node, and then try to maintain the select again with that key, const node = $getNodeByKey(key); node of represents null.
export function $replaceTextNode(key: string, text: string): void {
  console.log(key);
  const node = $getNodeByKey(key);
  //If I try like this, node will be null
  node.spliceText(0, node.__text.length, text, false);
  node.select();

  return;
}

Is there really no way to keep that node selected after changing the text of that node?
Please help me 😂

I don't think the built-in selection API enables multiple node selection like how you want. But I think it might be possible to call selection.getNodes() and add the nodes to an array to have the selection saved using useState. Then you can have a method in the node class that allows to select all the nodes in the array. Your nodes needs to have a unique id that allows for selection within the array for this work.
 const [selNodes, setSelNodes] = useState([]); // Use state to hold the nodes
// ... Nodes are saved in array
   const selection = $getSelection();
   if (!$isNodeSelection(selection)) {
     return null;
   }
   const nodes = selection.getNodes();
setSelNodes(e => [...e, nodes]); // Adding nodes

// ...  Get targeted ids and something with nodes

targetIds = [...someUniqueIds];
const targetNodes = selNodes.filter(e => targetIds.includes(e.id));

export function $replaceTextNode(
  selection: RangeSelection,
  text: string
): void {
  const node = selection.anchor.getNode();
  const textNode = $createTextNode(text);
  const newNode = node.replace(textNode);
  newNode.select();
  return;
}

This is the right way. In your first example, you're selecting a node that you replaced, so that will fail because you tried to move Selection to a node that is no longer in the EditorState.
I think the missing piece here for you is that you need to pass an anchor and focus offset to newNode.select to select the whole node like newNode.select(0, newNode.getTextContentSize())


Set default unit with Interval query

Current Interval code can generate wrong query When all value is unset.
(e.g Interval(days=0).get_sql())
So just check that all value is unset, and set default with DAY.
This is small fixing, you may don't like this solution.
Maybe we need to consider as exception when all value is unset.
Please check it and review plz. Thank u :)
Fixed : #389

Coverage increased (+0.002%) to 97.741% when pulling 98461026fa6e7943c40b48b1a7507cd0625605cb on lntuition:set_default_interval into 1dcb28b240c689cf5a72f783fd72e10cbc0fcfdd on kayak:master.

Good catch! Thanks for the fix :)


Storage

AMP doesn't provide anything related to storage. We need to study what could be provided. For instance:

Provision distributed file system (i.e. NFS) at deployment time?

Provide persistence storage (i.e. Portworx, etc.)?

[x] #1739 NFS endpoint

For persistence storage, #1414 provided the DockerPlugins option that allows to deploy a list of Docker plugins (mostly storage plugins, such as RexRay) on each node of the swarm.
That's something that we should refine once we implement the node management commands (different sets of plugins for different group of workers).


Create a Scaffold for a Daily Airflow DAG for retrieving dynamic list of MARC BIB records from various vendors

Create an Airflow DAG that runs daily and queries the Dataloader Management App and possibly FOLIO Organizations  for a dynamic list of vendors that includes connection information (FTP, SFTP, username, passwords) and Data Import Profile for MARC BIB records along with specific pre- and post- processing tasks to be preformed on these records.
This ticket should trigger secondary DAGs for each vendor load.
Specific tasks to be accomplished will be ticketed separately.

this ticket would be complete if a skeleton DAG with the right placeholder tasks is created, with task implementation TBD based on dataloader management app API.

on a daily basis, queries the data management app.
gets back a list of vendors
vendors have a list of interfaces (connection info and creds for e.g. FTP to remote system for data load files to retrieve)
this app retrieves those interfaces
for each interface, trigger a DAG that loads data from that vendor.

For this ticket, just create placeholder Tasks using the EmptyOperator that can be replaced with  PythonOperators once those tickets are implemented.

Here are the follow-up tickets:

https://github.com/sul-dlss/libsys-airflow/issues/279
https://github.com/sul-dlss/libsys-airflow/issues/280
https://github.com/sul-dlss/libsys-airflow/issues/281


Update x509.h

Issue #20663
CSR v1 certificates should always be used. If other versions are used,  it will result in CSRs that are invalid. Therefore, all instances of setting the version were changed to use version 0, always.
CLA: trivial

Checklist

[ ] documentation is added or updated
[ ] tests are added or updated

@bbbrumley
I took on an issue where certificate signing requests were able to use different versions, even though only one version worked. I hardcoded all instances of the version to use 0, which is CSR v1 based on RFC 2986, and the only version that works.

@ducksinc thanks for identifying this open issue
Some other gripes with the PR, but high level .. isn't Issue #20663 solved by PR #23965 ? (Maybe the Issue was errantly left open?)

Yes, @bbbrumley is right. This was already fixed.


Product saved; product not shown in admin/catalog/products and/or website "No products available in this category"

Issue Description
When i add a product using /admin/catalog/products/create the product is saved (green message product saved) after that a redirect to admin/catalog/products/edit/2
I fill in what is required, hit save. Again, the green box said saved. Then a redirect to admin/catalog/products; but no products.
On the public site (i added several products to main category and subcategory). When i visit category i get:
Whoops!
No products available in this category
Bagisto Version
1.4.3
PHP8.1 / MySQL  / latest composer
Ubuntu server
Steps To Reproduce
See above.
Actual Result
Using the debugbar i found a query with a possible error:
select count(*) as aggregate from (select product_flat.locale, product_flat.channel, product_flat.product_id, products.sku as product_sku, product_flat.product_number, product_flat.name as product_name, products.type as product_type, product_flat.status, product_flat.price, product_flat.url_key, attribute_families.name as attribute_family, SUM(product_inventories.qty) as quantity from product_flat left join products on product_flat.product_id = products.id left join attribute_families on products.attribute_family_id = attribute_families.id left join product_inventories on product_flat.product_id = product_inventories.product_id where product_flat.locale in ('nl') and product_flat.channel in ('default') group by product_flat.product_id, product_flat.locale, product_flat.channel) as aggregate_table
when i run this in phpmyadmin:
#1055 - Expression #5 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'product_flat.product_number' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
Expected Result
The products in database should show up somewhere

Hi there,
I guess the status of the product is inactive so the products are not listed in the shop.
Please verify it and let me know.

I cannot edit the stored products because they are not visibile in the admin (admin/catalog/products).
Then i have to type in the address bar "admin/catalog/products/edit/1" to edit my products.
Yes, the status was grey; i changed it to blue. Saved; but still no products in admin and/or website.

@lukasmedia
Is it possible to share the screen recording for the same it will help me to reproduce the issue?

Not really a lot to show but here is the admin:
https://ibb.co/KGDNc3L
and here product detail (remember, i have to type "admin/catalog/products/edit/1" in address bar)
https://ibb.co/fd0L4tJ

Also, database is filled with data. What do you need more? This seems like a major bug to me.

Not able to reproduce this, have you done some customization or added some modules?

No; clean install.

Hi there,
Please enable Visible Individually, the issue will be resolved.

Hi @Sanjaybhattweb thank you; but that didnt help. There is a query error.
The source seems to be "sql_mode=only_full_group_by" so i removed "only_full_group_by" in the my.cnf from Mysql. Restarted mysql but the issue is still there.

I have this same problem. +1

Is it possible to share the screen recording for the same?

Not able to reproduce this, please use Bagisto forum.


horizontally swipeable VictoriaBar

Hello,
is there any option to make <VictoriaBar/>'s container horizotally swipeable such that i can put 9 elements out of 12 elements and then swipe to see others?

I recommend using the VictoryZoomContainer component. https://formidable.com/open-source/victory/docs/victory-zoom-container


Striim documentation update

Hi, Sneha and Theano, I'm the docs person at Striim. I have some additional information for you, please email me at<EMAIL_ADDRESS>
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 92ee2601-48a3-58b0-1c39-c8a761f74482
Version Independent ID: e6eaac91-41ce-c4dc-5342-636d26183a5d
Content: Migrate data to Azure Cosmos DB SQL API account using Striim
Content Source: articles/cosmos-db/cosmosdb-sql-api-migrate-data-striim.md
Service: cosmos-db
GitHub Login: @SnehaGunda
Microsoft Alias: rimman

@rlauriston we have closed the following issue as duplicate.
https://github.com/MicrosoftDocs/azure-docs/issues/37265
@SnehaGunda We are assigning this case to you for further action. Please find the links shared by @rlauriston in the other thread.
https://www.striim.com/docs/en/replicating-oracle-data-to-azure-cosmos-db.html
https://www.striim.com/docs/en/cosmos-db-writer.html

@rlauriston Sent you an email for more context.
@kanshiG  FYI


Usage with MonacoWebpackPlugin?

I tried multiple solutions, mostly around trying to integrate the worker loading phase into an existing webpack, and it didn't work for me (ForgeinModule errors, or issues with monaco is undefined).
I managed to make it work with MonacoWebpackPlugin only when I modify the built-in languages array of MonacoWebpackPlugin before loading it:
const { languagesArr } = require('monaco-editor-webpack-plugin/out/languages');

const yamlLang = languagesArr.find(t => t.label === 'yaml');

yamlLang.entry = [
  yamlLang.entry,
  '../../monaco-yaml/esm/monaco.contribution'
];
yamlLang.worker = {
  id: 'vs/language/yaml/yamlWorker',
  entry: '../../monaco-yaml/esm/yaml.worker.js'
}

const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin');

// later in your code, register MonacoWebpackPlugin in your webpack plugins

This is the only way I managed to get the worker loaded correctly with MonacoWebpackPlugin, because all registration, imports of monaco.contribution , loading the worker, and configuring the MonacoEnvironment  is managed by the plugin automatically.
Maybe this should be documented? or improved somehow?

Thanks for your workaround to make this working. I also have another way to do this, by loading the monaco-editor by worker-loader or worker-plugin in webpack and override the monaco environment object. Check the example, notice the MonacoEnvironment:
// Lazy load monaco-editor by webpack dynamic-imports.
const monaco = await import(/* webpackChunkName: "editor.main" */"monaco-editor/esm/vs/editor/editor.api");

// @note: This is lazy-loading for css files, will be compiled at
// angular-cli side. And no need for typescript to understand this.
// @ts-ignore
const styles = await import(/* webpackChunkName: "editor.styles" */"style-loader?injectType=lazyStyleTag!@monaco-editor-styles")

// Load styles on-demand.
this.styles = styles;
this.styles.use();

// Load monaco-yaml plugin
if (this.options.language === "yaml") {
    // @ts-ignore
    await import(/* webpackChunkName: "yaml.contribution" */"monaco-yaml/esm/monaco.contribution");

    // @ts-ignore
    const yamlWorkerUrl = await import(/* webpackChunkName: "yamlWorker.url" */"worker-plugin/loader?name=yaml&esModule!monaco-yaml/esm/yaml.worker");

    // monaco-editor add `MonacoEnvironment` to window object.
    const getWorkerUrl = (window as any).MonacoEnvironment.getWorkerUrl;

    // Add yaml worker to other workers provided by monaco-editor.
    (window as any).MonacoEnvironment.getWorkerUrl = (module: string, label: string) => {
        if (label === "yaml") {
            return yamlWorkerUrl.default;
        }

        return getWorkerUrl(module, label);
    };
}

Thanks @yazaabed , I tried this approach with the loaders, but I got tons of errors about loading the worker, and looks like my Webpack setup was missing something. I'm using Docusaurous v2 as base setup, so maybe the default settings of it might effect it as well.

Thanks @yazaabed , I tried this approach with the loaders, but I got tons of errors about loading the worker, and looks like my Webpack setup was missing something. I'm using Docusaurous v2 as base setup, so maybe the default settings of it might effect it as well.

I can help with it if you are intrested in make it work with loader. Are you using webpack v2?

@yazaabed I think it might be better to consider to add an example for using it with MonacoWebpackPlugin? it seems like it's the simplest way to integrate it easily (especially if you can only extend the Webpack configuration and you are not writing it from scratch).
The project I applied it to is here: https://github.com/dotansimha/graphql-code-generator/blob/master/website/monaco-plugin.js , it's based on Docusaurous v2, with webpack 4).

@yazaabed I think it might be better to consider to add an example for using it with MonacoWebpackPlugin? it seems like it's the simplest way to integrate it easily (especially if you can only extend the Webpack configuration and you are not writing it from scratch).
The project I applied it to is here: https://github.com/dotansimha/graphql-code-generator/blob/master/website/monaco-plugin.js , it's based on Docusaurous v2, with webpack 4).

Yes I agree your way to fix this is much simpler than my way to fix it. Maybe you can create a PR and add an example in the examples folder.

In the new version from web pack plugin, a newly option added called customLanguages which can be used to define the yaml editor. As we now support the new version of Monaco-editor.

@yazaabed Do you have any reference or example about the customLanguages option? I have no idea what it is.

I've gotten this to work with the following config:
module.exports = {
  webpack: {
    plugins: [
      new MonacoWebpackPlugin({
        languages: ['json', 'yaml', 'graphql'],
        customLanguages: [{
          label: 'yaml',
          // TODO: restore once https://github.com/pengx17/monaco-yaml/pull/48 is merged
          entry<EMAIL_ADDRESS>          worker: {
            id: 'vs/language/yaml/yamlWorker',
            // TODO: restore once https://github.com/pengx17/monaco-yaml/pull/48 is merged
            entry<EMAIL_ADDRESS>          }
        }]
      })
    ]
  }
}

⚠  There's currently an issue with more recent versions of monaco that is fixed by #48. My example uses a forked module that will not be up to date. Replace with the non namespaced version of monaco-yaml once that is merged ⚠

There is a globalAPI: true available in<EMAIL_ADDRESS>now, this could be a workaround before #48.


inconsistent capitalization of output column names in differential_expression module

Currently we save the two DeSeq2 parameters in the output .tsv with inconsistent capitalization:
colnames(deseq2_coef) = c("Deseq2_Intercept", "DeSeq2_Coef")
This should ideally use the more common DeSeq2_Intercept name.

Per Dante, we should use DESeq2.
When this is fixed, we will need to update pipelines that use de results for further analysis as the column names will have changed. For Nathan this includes:
TNBC_Target_Discovery
PRAD_TNBC_2024

done


center toast notification on mobile

Describe your changes
Describe the purpose + content of these changes
center toast notification on mobile devices

Link the related issue
Closes #0000
Checklist before requesting a review

[ ] Is this PR ready for merge? (Please convert to a draft PR otherwise)
[x] I have performed a self-review of my code.
[x] Did I request feedback from a team member prior to the merge?
[x] Does my code following the style guide at docs/CODING-STYLE.md?

@Jadessu, could we add a wrap to the text in the toast?


Need to handle special characters when the test-folder and test-files contains them as their file names.

Currently the test-case generator code fails to work when a special chars. like " ", "-" ,"_" exists in the name of the test-folder or files. This need to be handled properly.

closing it . as already an issue exists for the same.


Add support for configuring the acking behaviour

Related to plataformatec/broadway#108, plataformatec/broadway#109 and plataformatec/broadway_rabbitmq#42 (where I got my inspiration for this PR)
I added the basic operations,

:ack, current behaviour for success messages
:ignore, current behaviour for failed messages, and set as the default for them
{:no_ack, integer} Maybe it's better :set_deadline or :deadline ?
:no_ack, a shortcut for {:no_ack, 0}, it probably can be removed

This looks really good, thank you @rockneurotiko!
What do you think @mcrumm?

Thanks @josevalim and @mcrumm I applied the suggested changes 😄

We are discussing supporting {mod, fun, args} in these callbacks as well. If we do so, we should probably add the same feature here, so your opinion is welcome: https://github.com/plataformatec/broadway_sqs/pull/35


updated hairpin NAT KB

updated hairpin NAT KB

@aschoenfeld please review and note any changes you wish to have.


Remember last open page

would be nice if there was setting to enable to remember last open page and reopen on app relaunch

seems to work, thx


The logo

Hey everyone,
I set up a design contest for the Giraffe logo and I have filtered down all logos to what I believe are the 3 best options so far and I would like you to help me pick the right logo!
All 3 designers still have a bit more than a day to make any changes to the logos. If you really like a logo, but think it deserves a few more changes then please let me know and I will forward the feedback.
These are the options:

Thanks for helping!

These are looking great.
I'm not a fan of A, it's not as striking as the others, and looks more suited to a fashion brand than a tech logo.
B is very nice, and closest to your original concept. It's simple while very well executed.
C is very clever, and again well executed. It has a great balance between simplicity and being recognisable as a giraffe. I'm a big fan of this one.
For me my preference is from favourite to least: C, B, A

I'm in favor of B.

C >= B > A

I would say A is the more classic of the three.

For those who like C, there is this variation which just came in:

The new variants are awesome, nice font and colour. My vote is for the one on the left.
My daughter (4 yrs) says she like giraffe A, "cause it's doing the splits" (she's now running around doing the splits)

lol kids are awesome :) Thanks for the help!

Thanks everyone for the help. C was the winner and even though it wasn't my first choice in the beginning I think it is a fantastic logo now.


Add screenshots to SciCalc app

Per advisement, I added some screenshots to the README file. Did not bump the version since the app code remains unchanged.

Thanks! You can also add the screenshots to metadata.json so they appear when scrolling in the app loader - I'll do that now though

Ah, thanks. In my (weak) defense, I read most of your (excellent, btw)
documentation on the app loader, etc. almost 2 years ago when I got my
Bangle 1 and haven't really kept up with a lot of the changes....
On Tue, May 3, 2022 at 4:18 AM Gordon Williams @.***>
wrote:

Thanks! You can also add the screenshots to metadata.json so they appear
when scrolling in the app loader - I'll do that now though
—
Reply to this email directly, view it on GitHub
https://github.com/espruino/BangleApps/pull/1774#issuecomment-1115845672,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA7K5O5N6GNS6XASVLAZIX3VIDOOHANCNFSM5UV6ZVHQ
.
You are receiving this because you authored the thread.Message ID:
@.***>


Logging Not Full Downloaded When Log is Large

If you have a piece of code that takes less time to run than to download the log, the SASStudioOperator will not finish downloading the log. This is due to how the method _run_job_and_wait works. It will continue to loop until the status of the job changes out of running or pending (let's ignore the unknown logic for a moment). While it is looping it will call the method stream_log which will download the log for Airflow. However, if the job completes before the log can be downloaded, the log will be incomplete.
The SAS code to run to replicate this is rather simple, it spits out a ton of NOTEs to the log intentionally trying to see how far the log can be pushed before breaking. If the uncommented 500000 does not work to see the issue, just change it to a higher number and try again.
%macro test_log_lines();
    /* %do i = 1 %to 250000; */
    %do i = 1 %to 500000;
    /* %do i = 1 %to 1000000; */
    /* %do i = 1 %to 2000000; */
    /* %do i=1 %to 40000000; */
    /* %do i=1 %to 80000000; */
        %put NOTE: hi mom &i.!;

        /* data _null_;
            sleep(1);
        run; */
    %end;
%mend test_log_lines;

%test_log_lines;

The solution to this is to have a second check after the while loop on line 347 to check if the num_log_lines < job['logStatistics']['lineCount']. This logic should be a while loop replace the logic on line 379 because that will only grab the last 99999 lines of the log, not ALL the rest.
Lastly, here is a screen shot of the log from the code I ran above in Airflow UI. You can see how the log abruptly stops.

Polling the job status in the operator is suboptimal. Implementing defer operator is a better choice. Because it frees up the precious CPU task slot and let the Triggerer takes care of polling.


docs: Remove INSTALL-CC-WITH-IBM-SE.md

As the documentation has been migrated to the confidential-containers repo, (see https://github.com/confidential-containers/confidential-containers/pull/241) this commit removes the migrated installation guide for IBM SE.
Signed-off-by: Hyounggyu Choi<EMAIL_ADDRESS>

Could you please also modify the https://github.com/confidential-containers/operator/blob/main/docs/INSTALL.md?plain=1#L173 link to point to https://github.com/confidential-containers/confidential-containers/blob/main/guides/ibm-se.md ?

Thanks for the catch. The PR has been updated. 👍

Well it's not a blip, it's because the ccruntime e2e tests for PR have paths-ignore: docs/**... Which is logical, but stock github requirements do not cope with that.

... perhaps the operator needs something like https://github.com/kata-containers/kata-containers/pull/9637 as well ;-)

... perhaps the operator needs something like kata-containers/kata-containers#9637 as well ;-)

Yes, I didn't realise we had that skip here as well as in kata (which we had to remove as it forced us to admin push PRs like this.


[openwrt] add mdns support

Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is.
The current OpenWRT build doesn't publish Thread mDNS.
Describe the solution you'd like A clear and concise description of what you want to happen.
Integrate with mdnsd
Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.
Integrate with umdns
Additional context Add any other context or screenshots about the feature request here.

Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. The current OpenWRT build doesn't publish Thread mDNS.
Describe the solution you'd like A clear and concise description of what you want to happen. Integrate with mdnsd
Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered. Integrate with umdns
Additional context Add any other context or screenshots about the feature request here.

Hi, do i need any more configuration after installing umdns?
Thank you.

@mrninhvn  mdns support on OpenWRT platform is missing, it will be great if you could contribute!

@mrninhvn mdns support on OpenWRT platform is missing, it will be great if you could contribute!

I still don't quite understand, How will the lack of mdns affect?
I have 2 border routers, 1 running on openwrt and 1 running on raspberry, openwrt border router cannot run alone without the raspberry router.

@mrninhvn

I have 2 border routers, 1 running on openwrt and 1 running on raspberry, openwrt border router cannot run alone without the raspberry router.

What do you mean openwrt border router cannot not run? What's the phenomenon? What's you detail setup?
@caipiblack you need to provide an implementation of the mdns.hpp interface for openWRT. Just as mdns_avahi.cpp for Linux/Raspberry Pi and mdns_mdnssd.cpp for Mac OS. You should use OTBR_MDNS to specify which mDNS implementation should be used for your platform when building OTBR.

@caipiblack For why we need a mDNS implementation:

The Thread interface doesn't process multicast packets to handle mDNS queries.
In Thread network, we use the unicast SRP protocol to register services to the Border Router. This is for avoiding multicast packets in Thread network as it will exhaust battery of end devices.
End devices' SRP services are registered to a SRP server running on the Border Router.
There is an Advertising Proxy which helps publish the SRP services on the infrastructure link (e.g. WiFi and Ethernet) as mDNS services.
Hosts (or mobile devices) on the infrastructure link uses mDNS queries to discover the services registered by end devices.

What do you mean openwrt border router cannot not run? What's the phenomenon? What's you detail setup?

I got same problem with @caipiblack, thread device can ping to router, but can't ping to wifi device and vice versa.

Update:
Since this pull-request ot-br-posix works with avahi backend for mDNS stuffs.
We can also discover thread devices using avahi-browse from the router or the LAN network of the router.
Is there anything else to check ?
Is there still something to do ?

@caipiblack , thanks for helping to address this issue.

We can also discover thread devices using avahi-browse from the router or the LAN network of the router.

This validates the Advertising Proxy, where Thread devices can publish services and devices on the LAN can discover those services.

Is there anything else to check ?

We should also validate the other direction - Discovery Proxy, where Thread devices can discover services on published by devices on the LAN.

Closing stale issue.


Background cleanup task

Need a background task for system maintenance type concerns

Purging pending attachments
Removing push notification data from db
admin settings to control when/if

What about using hangfire for this?

Hangfire is my go-to library for this type of thing.


Hello World first update.

Added a little about myself in the readme description.

Learned to create and merge pull requests :)


Unclear where to set options of "Clean the local repo on the agent"

The note above this section suggests "Click Advanced settings in the Get Sources task to see some of the above options".
However

"Get Sources" task is very hidden (Pipeline -> Edit -> "..." -> Triggers -> YAML Tab -> Get Sources task)
The "Get Sources" task found here does have the mentioned clean options (after setting Clean to true), but they do not have an effect on the agent.

And most importantly: How can a clean be enforced interactively when starting a job manually?
Like it was possible by overriding the Build.Clean variable.
Also the clean-option of the YAML checkout keyword only accepts true/false literals, but no variables. This again prevents any interaction.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 800c5477-b39f-48e6-6f9c-aa7994b2ec2a
Version Independent ID: db9e2e97-d44d-734e-6a6f-b01f60f01c95
Content: Options for Git repositories - Azure Pipelines
Content Source: docs/pipelines/repos/pipeline-options-for-git.md
Product: devops
Technology: devops-cicd-repos
GitHub Login: @steved0x
Microsoft Alias: sdanie

Investigating

@KarstenSchaeffer I will get that page updated, here is the information on cleaning, there are a couple ways to do it.
There are 3 clean options for workspace in a job:
- job: myJob
  workspace:
    clean: outputs | resources | all # what to clean up before the job runs

These are detailed here: https://docs.microsoft.com/en-us/azure/devops/pipelines/process/phases?view=azure-devops&tabs=yaml#workspace
You can also specify a clean option in the Pipeline settings UI, as you describe above, which is the same thing as specifying clean: true in the checkout step in your pipeline:
https://docs.microsoft.com/en-us/azure/devops/pipelines/yaml-schema?view=azure-devops&tabs=schema%2Cparameter-schema#checkout
The Build.Clean variable is deprecated so let me see what an alternative would be to to specifying this when manually running a pipeline, you should be able to use parameters but let me test it first.

You can add a parameters section at the top of your pipeline and use that value in the clean step. In this example it is false by default but you can override that when manually running a pipeline by checking the box for checkout clean. You could also use this same approach using one of the workspace clean options:
parameters:
- name: clean
  displayName: Checkout clean
  type: boolean
  default: false
  values:
  - false
  - true

trigger:
- main

pool: FabrikamPool

steps:
- checkout: self
  clean: ${{ parameters.clean }}

I will get the documentation updated


Minify pulltorefresh.js

Minify pulltorefresh.js for better performance.

IMO minification doesn't add any performance, it save bytes only.
I totally agree with you: we lacks of proper minification so I think we can accept a PR for that or just wait until the next release.
Thanks for your feedback!

@programmer5000-com as @pateketrueke says, we do appreciate PRs!


Native bridge serialization error when drawerLabel is a React node

If I implement drawerLabel as a function that returns a React node, e.g.
navigator.navigationOptions = {
  drawerLabel: ({ focused, tintColor }) => (
    <Text>something</Text>
  ),
}

I get a bridge serialization error because DrawerNavigationItems attempts to pass the React node as the accessibilityLabel prop on the TouchableItem
https://github.com/react-navigation/react-navigation-drawer/blob/master/src/views/DrawerNavigatorItems.js#L42

Can you send a PR adding a check to send it only if it's a string?


Fix TypeAdapter bug where config isn't respected for Annotated types.

Change Summary
Fix bug where config isn't respected for Annotated types. Also, disallow config specification when initializing a TypeAdapter when the annotated type has config already.
Related issue number
Fix #8214
Checklist

[x] The pull request title is a good summary of the changes - it will be used in the changelog
[x] Unit tests for the changes exist
[x] Tests pass on CI
[ ] Documentation reflects the changes where applicable
[ ] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

Closing bc I got branches mixed up, will reopen shortly.


geiser detects a file as chicken due to the word use in geiser-chicken-builtin-keywords

geiser-chicken-builtin-keywords contains use which causes any file that contains the word use, even in a comment, as a chicken buffer. I suggest that the detection needs to be slightly more complex than a regex over the file.

#130 may be of use to you.
Basically, geiser looks for key words that are related to a scheme in order to attempt to discern the nature of the scheme buffer. This sometimes works, often doesn't; and so I suggest declaring to geiser what scheme you intend to use.


Decision Table - fishing intensity

Last row of last scenario is all 0's.

I just looked at the forecast file and it has a catch of zero for 2025. This could take a while to figure out since it's the same code that's been used every year

I figured this out, have to re-run the catch levels and forecasting for the stable catch case

And also for n (default HR), to fix the NA in Table k:

These are fixed once you get the new base mode with corrected forecasting

So we have to download the new .rds file anyway, yes?


Disable future 'days'

Is it possible to 'gray-out' all days in the future eg. make them look differently and make them not-clickable?

Of course, you just need to customize the style of days. and do not do anything on the onDateSelect event. Is that what you want?

Haha, interesting feature,  @christopherdro do you think this is a necessary feature?

I've got calendar that is responsible for displaying logs. Logs in their nature - are showing only events from the past. In such situation - having calendar allowing future days has no point.

Yeah, it is very useful to add date range configuration.

Agree, I have a use case where user selects previous period date. This is not possible with future dates.


Fix BAM to FASTQ - 85e72912-9f91-4489-8169-3b43cc65a16a

SOP: https://ebi-ait.github.io/hca-ebi-wrangler-central/SOPs/update_ena_runs_SOP.html

SOP Step 8 is Done

SOP Step 9: Downloading FASTQ file from https://data.humancellatlas.org/ - is ongoing
File Size: 1.19 TB
Files: 762

Step 9 - Done

Step 10 - Checksum generation is done.

Step 11 - Upload FASTQ files to ENA FTP server. -> Started in a while

Step 11 - Upload FASTQ files to ENA FTP server -> Finished

Step 12 - FASTQ files has been submitted to ENA archive.
I attached the 2 report files.

I filed a ticket to ENA HelpDesk:
ENA DATA STATUS #566957
Submitter: Broker
Name: Karoly Erdos
Email<EMAIL_ADDRESS>CCEmails<EMAIL_ADDRESS>Subject: Suppressing old ENA runs
Attachment: filereport_read_run_PRJEB39470_tsv.txt
Query is related to: Suppression
I work on: Humans
Organisms classification: Not applicable
The work is: Other/not sure (Raw sequencing reads)
Message Body:
Hi,

Could you please suppress the ENA runs from this study (ERP122984/PRJEB39470) that the attached files contains?

These were BAM files and they had been replaced with FASTQ files.
Please DO NOT delete/suppress the experiment and the new FASTQ files, ONLY the ones that the attached file contains.

Many thanks,

Karoly

Here is the ENA project URL: https://www.ebi.ac.uk/ena/browser/view/PRJEB39470?show=reads
Submitted FASTQ files are there, but BAM files are not yet suppressed.

The bam files are suppressed. Moving to done.


feat: converted console.log to use the new logging service

Description
Converted almost* all console logs so that they're sent to the backend and not displayed in prod/staging.  In development, these logs should also remain in the console.
Resolves #(issue)
https://github.com/DARPA-ASKEM/TERArium/issues/624
https://github.com/orgs/DARPA-ASKEM/projects/3?pane=issue&itemId=17790439

I wonder if this will be better achieved with Augmenting Global Properties?
Like that there is no need to import loggers everywhere and we can just use $logger() when needed.

It certainly can.  Will do that.

Sorry I don't quite understand the description. logger.[info | warn | error\ does not send anything to the backend API right?  As most of these console.logs are not events we want to capture.

Sorry I don't quite understand the description. logger.[info | warn | error\ does not send anything to the backend API right? As most of these console.logs are not events we want to capture.

I wonder if this will be better achieved with Augmenting Global Properties?
Like that there is no need to import loggers everywhere and we can just use $logger() when needed.

I can't seem to get this to work as expected when trying to add to the global properties.  Anyone know what might gives?
app.config.globalProperties.$logger = ... but I can't seem to access $logger in any capacity.

Sorry I don't quite understand the description. logger.[info | warn | error\ does not send anything to the backend API right? As most of these console.logs are not events we want to capture.

Right now it captures all these logs into a buffer to be sent back to the server.  I agree that a lot of these are likely not desirable.

I wonder if this will be better achieved with Augmenting Global Properties?
Like that there is no need to import loggers everywhere and we can just use $logger() when needed.

It certainly can. Will do that.

Definitely spoke too soon.  As I mentioned yesterday, using global properties for this purposes seems to be frowned upon in VueJS3.  You can do it by loading the app context and pulling on the variable itself but it's the last thing from elegant lol.

Okay, I agree with your initial judgement. Nuke the idea and revert to your original PR. Thank you for doing the research on the matter. It was a gret learning experience.

Don't need to revert.  The original PR was importing it incorrectly.  The right way to use the logger service is to do it like this.
import { useLogger } from 'vue-logger-plugin';

const logger = useLogger();```

This is the way :P  We can/should do a proper audit of messages we want the backend to receive.


clone: git rebase causes rsl to point to missing commits

What happened?
@adityasaky @neilnaveen
I was poking around and debugging this error trying to run gittuf clone and ended up stumbling into a deeper issue.
Basically, because I have called git rebase at some point in my local repository there exist commits which have been orphaned. But a few reference entries still point to these commits. Although these commit are still in my local repositories' object store at .git/object/.../... they do not end up getting pushed into the remote repository. GitHub only accepts commits which can be tracked. This causes an issue in clones of remote repositories with missing commits as missing commits can break some verification functions. Like in this case clone uses VerifyRelativeForRef which is the function that prints that last debug log listed below.
Let me know if ya'll a want a way to reproduce this specific error on your machine, I can set things up for that.
Relevant log output
Command: gittuf clone https://github.com/haotran-california/test.git

Last Debug Log: Checking if entry is for policy reference...

Error: unable to inspect if object is commit: exit status 128 when executing `git --git-dir test/.git cat-file -t 1bcb5bd96aca91ceecab3d40572fc4d7d3785789`: fatal: git cat-file: could not get object info

Code of Conduct

[x] I agree to follow this project's Code of Conduct

@patzielinski
Thank you for clarifying. That explains exactly what I was trying to get at. I didn't realize that the gittuf workflow section of the design doc had this notion of syncing. Nice to see the gittuf on the forge extension as well.

Just realized this was the point of gittuf rsl skip-rewritten as the comments for that function explicitly mentions after rebase to run the command to sync facepalm


search dropdown escaped text

Search for "slurpy", one of the results says
Slurpy params \/

where the \/ is an escaped / - should just be rendered as / here.

this is resolved


[Twitter] Support STREAMABLE embed

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like that [x])
Use Preview tab to see how your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2<IP_ADDRESS>. If it's not read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2<IP_ADDRESS>

Before submitting an issue make sure you have:

[x] At least skimmed through README and most notably FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add -v flag to your command line you run youtube-dl with, copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
C:\>youtube-dl.py -v "https://twitter.com/FutbolsaCountry/status/790253463028568
065"
[debug] System config: []
[debug] User config: []
[debug] Command-line args: ['-v', 'https://twitter.com/FutbolsaCountry/status/79
0253463028568065']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2<IP_ADDRESS>
[debug] Python version 3.5.1 - Windows-7-6.1.7601-SP1
[debug] exe versions: ffmpeg 3.1.4, ffprobe 3.1.4
[debug] Proxy map: {}
[twitter]<PHONE_NUMBER>28568065: Downloading webpage
[twitter:card]<PHONE_NUMBER>28568065: Downloading webpage
ERROR: No video formats found; please report this issue on https://yt-dl.org/bug
 . Make sure you are using the latest version; type  youtube-dl -U  to update. B
e sure to call youtube-dl with the --verbose flag and include its complete outpu
t.
Traceback (most recent call last):
  File "C:\youtube-dl.py\youtube_dl\YoutubeDL.py", line 694, in extract_info
    ie_result = ie.extract(url)
  File "C:\youtube-dl.py\youtube_dl\extractor\common.py", line 356, in extract
    return self._real_extract(url)
  File "C:\youtube-dl.py\youtube_dl\extractor\twitter.py", line 175, in _real_ex
tract
    self._sort_formats(formats)
  File "C:\youtube-dl.py\youtube_dl\extractor\common.py", line 923, in _sort_for
mats
    raise ExtractorError('No video formats found')
youtube_dl.utils.ExtractorError: No video formats found; please report this issu
e on https://yt-dl.org/bug . Make sure you are using the latest version; type  y
outube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and
include its complete output.
...
<end of log>

If the purpose of this issue is a site support request please provide all kinds of example URLs support for which should be included (replace following example URLs by yours):

Single video: https://twitter.com/FutbolsaCountry/status/790253463028568065

Description of your issue, suggested solution and other information
Pointing directly to the streamable video DOES work correclty:
https://streamable.com/l5zg
Thanks
Ringo

https://streamable.com/l5zg is dead. Any new example?

Closing as no new example for a long time. Feel free to leave comments below or open a new issue if there's a new one.


Update retry policy information

Include information on retry policy configurations based on upcoming changes to change the default policy.

@llistephanie : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@MSFTMan : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@MSFTMan : Thanks for your contribution! The author(s) have been notified to review your proposed change.


[FEATURE REQ] LogAnalyticsWorkspaceResource

Library name
Azure.ResourceManager.LogAnalytics? (Not Existing, yet)
Please describe the feature.
Currently, it's not supported to create a LogAnalyticsWorkspace.

Label prediction was below confidence level 0.6 for Model:ServiceLabels: 'ARM:0.37925398,Cognitive - Text Analytics:0.2747832,Compute:0.059170283'

Thank you for your feedback.  Tagging and routing to the team member best able to assist.

Please use Azure.ResourceManager.OperationalInsights 1.0.0 and the Log Analytics Workspace resource is named OperationalInsightsWorkspaceResource.

Works 💪


Fix filter query string

[x] Changes have been thoroughly tested to not break existing functionality.

Possible fix for #7129.

Unfortunately, this does not appear to fix #7129. Not sure if it solves a different problem, but the main problem with #7129 is when there are more than one filter (like two dates filters), setting one adds the others to the query string with null values, which then can causes errors on a page refresh.


update to latest google changes, sub instead id, abandoning google pl…

some chages that google introduced reflected in this PR:
'sub' field instead of 'id' in profile
correct url to get profile instead of abandoned google plus url
correct email handling, profile.email instead of profile.emails

Hey @demosglok, many thanks! I think these issues were resolved in v0.2.0 with the merge of #15 just now. Feel free to revisit this if you think otherwise!


doesn't build as a dependency with the package manager

Last couple lines of swift build  below.
I don't think its a "me" issue, because I got RXSwift to work, and then all I did was add Alamofire.
thanks a lot if anyone has any ideas.
                                                             ^
/Users/Joe/Projects/Mine/Apollo/Packages/Alamofire-4.0.0/Source/SessionDelegate.swift:117:61: note: add @available attribute to enclosing class
    open var streamTaskBetterRouteDiscovered: ((URLSession, URLSessionStreamTask) -> Void)?
                                                            ^
/Users/Joe/Projects/Mine/Apollo/Packages/Alamofire-4.0.0/Source/SessionDelegate.swift:120:70: error: 'URLSessionStreamTask' is only available on OS X 10.11 or newer
    open var streamTaskDidBecomeInputAndOutputStreams: ((URLSession, URLSessionStreamTask, InputStream, OutputStream) -> Void)?
                                                                     ^
/Users/Joe/Projects/Mine/Apollo/Packages/Alamofire-4.0.0/Source/SessionDelegate.swift:120:70: note: add @available attribute to enclosing class
    open var streamTaskDidBecomeInputAndOutputStreams: ((URLSession, URLSessionStreamTask, InputStream, OutputStream) -> Void)?
                                                                     ^
<unknown>:0: error: build had 1 command failures
error: exit(1): /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-build-tool -f /Users/Joe/Projects/Mine/Apollo/.build/debug.yaml

@joedaniels29 Looks like you're trying to build for an OS which doesn't support URLSessionStreamTask. Update your project to meet the minimum deployment requirements of Alamofire 4 and it should work.

error: 'URLSessionStreamTask' is only available on OS X 10.11 or newer.  I'm trying to build on OS X on Sierra. This should work. it looks like the minimum target is not being set right.

I'm seeing this too. Setting Alamofire as a dependency in Package.swift as .Package(url: "https://github.com/Alamofire/Alamofire", majorVersion: 4).
Here's the output at build time. I put it on pastebin due to how long it is

spoke too soon, this dupes #1544


Update Composer dependencies (2022-04-28-00-11)

Visual regression test passed!
View the visual regression test report


[Bug]:  Redesign Contact Us Section and Integrate Feedback Form in Footer

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the bug
The current placement and elements of the contact us section on our website need to be redesigned for better usability and visual coherence. The issues include improper button styling, poor visibility of the input box, and the need to integrate the feedback form into a more accessible area of the website, away from the footer.
Current Issues:

Button Styling: The buttons within the contact us section lack proper styling, which affects their consistency with the overall website design.
Input Box Visibility: The input box for user contact details is not prominently visible or clearly distinguishable from surrounding elements.
Feedback Form Integration: The feedback form is currently located in the footer, which makes it less accessible and disrupts user interaction flow.

Expected behavior
Desired Corrections:

Button Design: Ensure that buttons in the contact us section are styled consistently with the website's design language, including hover and active states for improved user feedback.
Input Box Visibility: Enhance the visibility and usability of the input box, making it more prominent and user-friendly.
Optimal Feedback Form Placement: Integrate the feedback form into a more prominent and accessible area of the website, such as the sidebar or a dedicated contact page, to improve user engagement and usability.

The redesigned contact us section should be visually appealing, easy to use, and seamlessly integrated into the website's navigation and user experience. Users should find it straightforward to locate and utilize the contact options provided.
Add ScreenShots

On which device are you experiencing this bug?
No response
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[ ] I'm a VSOC'24 contributor
[X] I have starred the repository

@AsmitaMishra24 I have assigned u , just want to request u that can u provide the SS of the new contact us section after your contribution , so that it will be helpful

@AsmitaMishra24 I have assigned u , just want to request u that can u provide the SS of the new contact us section after your contribution , so that it will be helpful

@apu52, Sure, also I will move the feedback section to the footer. Is that okay, or should I keep the feedback as it is?

@AsmitaMishra24 I have assigned u , just want to request u that can u provide the SS of the new contact us section after your contribution , so that it will be helpful

@apu52, Sure, also I will move the feedback section to the footer. Is that okay, or should I keep the feedback as it is?

no keep it as it is .or maybe u can implement this button in more advanced UI

@AsmitaMishra24 I have assigned u , just want to request u that can u provide the SS of the new contact us section after your contribution , so that it will be helpful

@apu52, Sure, also I will move the feedback section to the footer. Is that okay, or should I keep the feedback as it is?

no keep it as it is .or maybe u can implement this button in more advanced UI

ok


[WFLY-17514] NPE when -ds.xml file included in deployment contains va…

…lidation configuration
https://issues.redhat.com/browse/WFLY-17514

Hello, simkam. I'm waiting for one of the admins to verify this patch with /ok-to-test in a comment.

this is ok to test

AFAICT tests failures are unrelated to this

/retest


Per-language support summaries

Some WIP docs that make it easier for users to tell what's supported the language(s) they're interested in.
Looking for feedback on the general idea of these docs before I get too much further in writing them up.
Overview
Goals:

Make language used to describe features (host bindings, guest bindings) more consistent and define them.
Make it easier for users to get a general overview of which languages are supported
Describe the support for each language independently of each other (e.g. go users shouldn't have to understand how Python is supported to get how go is supported)
Provide more prose, examples, and links for each language

TODO:

[ ] Write more prose for go
[ ] Write more prose for C++

Thanks for the PR! This is somewhat similar to https://github.com/bytecodealliance/wit-bindgen/pull/126 in the sense that I don't really know the best way to document everything in this repository right now. I'm a bit wary of having too many language-specific docs in lots of places as it can get sort of difficult to update everything and/or remember what needs updating. Things are honestly still pretty early for wit-bindgen and I expect a fair amount will change as the component module and/or interface types matures and more concrete use cases for that continue to arise.
Basically I don't know how to balance things. This repository hasn't seen many major updates in awhile but that's because lots of work on other parts of the component model has been going on in the background (a spec, async, implementation in Wasmtime, etc). This repository sort of represents a snapshot of a "this is one trajectory we could go in" where lots still needs to be filled out but at the same time a lot of other pieces also work pretty well. I'm a bit hesistant to lock in too quickly to one trajectory when it's likely that things will alter course over time.

In that case, I'm happy to leave this here for now and revisit it when the direction becomes more clear.

I think this is relatively outdated at this point so I'm going to close this. Lots has changed in the interim about where things live and such. I have at least a rewrite of the README for this repo  to push up once https://github.com/bytecodealliance/wit-bindgen/pull/463 lands which should cover some of the basics intended here.
That being said things are starting to settle nowadays and the component model is a bit more final then it was last year. The wit-bindgen repo here now hosts only guest generators which I think makes more sense to fill out documentation for perhaps. I'm still not certain that this is the final state of things but I'd hope that new-ish documentation wouldn't bitrot so quickly at this point.

I agree with closing this PR, but I do still want to carry on the spirit of what I wrote here somewhere. I think people want to know how and to what extent it's possible to use component model tooling from the guest and host side in each applicable language and that having somewhere central that provides that is useful.
wit-bindgen is no longer that central place and I think even the guest generators may split apart eventually to be incorporated into languages tooling, and what we really need is some other place in the Bytecode Alliance that documents this information.

Yep I definitely agree, although I'm not sure where such a good central location would be at this point.


Add ability to jump to any page

Usability enhancement.
In addition to the "Next/Previous" navigation, it would be really helpful to be able to jump directly to a specific page. The menu/link should include the page number and title, e.g. "Page 5 About the system".
Currently, if I'm on page 9 and need to go back to change Business Drivers (page 2), I need to hit previous 7 times, and the button moves on every page.

Good Idea! Tagging as enhancement

this has been implemented :)


detailed rest-server log in case of misconfig

https://github.com/Microsoft/pai/blob/master/rest-server/src/config/launcher.js#L110
https://github.com/Microsoft/pai/blob/master/rest-server/src/config/launcher.js#L122

https://github.com/Microsoft/pai/pull/660


Limboole parsing and parenthesis

There is some strange behavior with parsing of Limboole either in the frontend or in general:

This formula clearly has an issue with too many parentheses in the last line, however, removing them produces syntax errors.
When removing the quotation marks in the comment in l. 2, the parenthesis parsing appears to work as expected.

It seems like the problem is with Unicode character parsing (replacing the smart quote (“) with a normal quote (") solves the issue). Even though the native code can handle the Unicode characters, either web assembly or JavaScript raises the issue during parsing.


Add tid() to ThreadId interface

Signed-off-by: Auni Ahsan<EMAIL_ADDRESS>Description: A few use cases have come up where we need to get a unique thread id as an integer, and the ThreadId had some problems with copyability I think. I went with int so support both the unsigned DWORD as well as the signed pid_t we use internally.
Risk Level/Testing: Low I hope, but I have no idea how to build or test the ThreadIdImplWin32 class.

came from discussion w @curiouserrandy @mergeconflict @htuch

@sesmith177 does this work on Windows? Is the DWORD a unique identifier of the thread on Windows?

Please read this:
https://linux.die.net/man/3/pthread_self
And in particular:

POSIX.1 allows an implementation wide freedom in choosing the type used to represent a thread ID; for example, representation using either an arithmetic type or a structure is permitted. Therefore, variables of type pthread_t can't portably be compared using the C equality operator (==); use pthread_equal(3) instead.
Thread identifiers should be considered opaque: any attempt to use a thread ID other than in pthreads calls is nonportable and can lead to unspecified results.
Thread IDs are only guaranteed to be unique within a process. A thread ID may be reused after a terminated thread has been joined, or a detached thread has terminated.
The thread ID returned by pthread_self() is not the same thing as the kernel thread ID returned by a call to gettid(2).

Also, I think copying thread IDs is an operation you could add, but you may be able to just share references or use shared_ptr.

Agreed on test coverage, tbh I'm not sure on what the invariants should be. As well, there's no ThreadIdImplTest; should I add one?
@jmarantz will respond to your first post later, need to read it in more detail to understand it. I did recall it wasn't an issue of copy/moving, but rather if you pull a ThreadId out of the ThreadFactory that gets created as a temporary object which was causing problems. I suppose I could wrap that in a smart pointer and store it, but seems odd to me when I only need a unique integer representation. (My implementation just uses the debugString() right now.)

Basically it says "you can't assume anything about the rep for a thread ID". Only valid operation is the functional compare for equality.

@jmarantz : The requirement this PR is responding to is "We need a unique per-thread integer identifier for lookup purposes".  Given that, I'm inclined to just change the name of the method in response to your concerns.  Would uniqueId() satisfy those concerns?  Then figuring out how to create a unique id could be done on a per-implementation basis.  (In all implementations I'm aware of so far it would just be a cast.)
@mergeconflict : My only requirements were "per-thread unique", and I'm not sure how to test that other than creating a lot of threads and making sure there aren't any collisions, which as far as tests go is a bit ... lacking :-}.  Any other ideas?

How about using debugString() as the map key, or if that doesn't feel write, add new 'std::string mapKey()' method whose impl in posix may just return debugString()?

This effort was started because I strongly objected to relying on debugString() for the uniqueness property (or, indeed, for any property that needed to be true in production code).  I would have no objection to the mapKey() method to solve this problem.

@jmarantz : The requirement this PR is responding to is "We need a unique per-thread integer identifier for lookup purposes". Given that, I'm inclined to just change the name of the method in response to your concerns. Would uniqueId() satisfy those concerns? Then figuring out how to create a unique id could be done on a per-implementation basis. (In all implementations I'm aware of so far it would just be a cast.)
@mergeconflict : My only requirements were "per-thread unique", and I'm not sure how to test that other than creating a lot of threads and making sure there aren't any collisions, which as far as tests go is a bit ... lacking :-}. Any other ideas?

How about declaring ThreadId::operator== and std::hash<ThreadId>?

@mergeconflict I like it. That sounds more efficient than returning a string key.

Yep, that sounds good to me as well.

+1

Ummmm defining specializations for std::hash seems to be prohibited by Google C++, if I'm reading this correctly. Instead I'll define absl::Hash which is apparently safer.

What's the status of this?
For the record I vote for not using a specialization for std::hash or absl::Hash, but instead defining a hash/compare functor, passed as template parameters 3 and 4 to absl::flat_hash_map.  See me if this is not clear. I think this should be very straightforward to do.

My bad, this is still on my radar but I got pulled into other things! Will post another PR with the right absl::hash implementation soon.

You don't need another PR -- I just re-opened this one so there is comment continuity. I think this is pretty simple; you just need a using declaration pointing to a hash() method you add to ThreadId.


Implement v2 of Pokemon API

This is a re-implementation of the pokemon retrieval API in an attempt to:

Improve consistency and ease of use of API
Remove reactmap specific workarounds
Provide an equivalent (experimental) grpc implementation as a fore-runner to streaming/subscription support
Retain the high performance of the v1 api

It is largely mygod's work from #134 with a slightly modified API, and re-factored code to allow the v1 api to exist in its original form until it can be deprecated.
Implementation details: The matching logic is as follows:

All rulesets are categorized by Pokemon and form, the form is optional, or you can match against all pokemon
If the current Pokemon matches a specific Pokemon-form, that ruleset will be used, if not found then an attempt will be made against Pokemon/all forms, otherwise the default (everything else) ruleset is used.
A row is returned in the result if any rule in the ruleset is matched.
A rule is matched if every single set standard is satisfied by the current row. (Therefore, overall it is an OR of AND's, and hence a Disjunctive Normal Form.)
A consequence of this logic is that an empty ruleset will match nothing. To include everything, one could, for example, have a rule matching IV in range [-1, 100].

Path to merge:

Working implementation somewhere (eg https://github.com/WatWowMap/ReactMap/pull/809 updated)
Performance check against v1 on the same database to see performance is in line with previous solution (proving both performance adequate, and v1 implementation continues to behave as expected)
GRPC does not need to be proven working, and will be considered experimental for now, and streaming support will absolutely be a seperate PR

Updated https://github.com/WatWowMap/ReactMap/pull/809 but I think this PR is buggy and I conveniently cannot push to this branch.

Updated WatWowMap/ReactMap#809 but I think this PR is buggy and I conveniently cannot push to this branch.

You can submit a PR to this branch, no problem - I didn't want to push changes this extensive into your branch given that at least some of them may need to be reverted.
What problems are you experiencing?

Seems working now. :+1:

Seems working now. 👍

Excellent. Now we just need to find someone with a big enough system to run a v1/v2 comparison so we can see if we have maintained the performance for some equivalent filters and dive in if not.

 Can you just confirm a little about what you were matching on in each case?
And I assume v1 is from this PR against a current develop/main branch of reactmap?

This is excellent feedback. Can you just confirm a little about what you were matching on in each case? And I assume v1 is from this PR against a current develop/main branch of reactmap?

Yes, these are both against the same Golbat. V1 on my prod map and V2 in my dev env.
I was just using pretty standard global settings:

This is zoomed out to pretty unreasonable levels, as you can see, over a million records were searched.

I was just using pretty standard global settings:
This is zoomed out to pretty unreasonable levels, as you can see, over a million records were searched.

Can you try a little bit more complex search that would

This is excellent feedback. Can you just confirm a little about what you were matching on in each case? And I assume v1 is from this PR against a current develop/main branch of reactmap?

Yes, these are both against the same Golbat. V1 on my prod map and V2 in my dev env.
I was just using pretty standard global settings:
This is zoomed out to pretty unreasonable levels, as you can see, over a million records were searched.

This is quite a good search because the DNF would have multiple things to match (ie 0-0%, 100-100%, top1 of each of three leagues).
Have you/mygod tested whether per pokemon advanced filtering is also working at the like-for-like performance levels?


Please stop print this stack trace

Exception in thread "bt-peer(..616563)-recv" java.nio.channels.CancelledKeyException
        at sun.nio.ch.SelectionKeyImpl.ensureValid(Unknown Source)
        at sun.nio.ch.SelectionKeyImpl.readyOps(Unknown Source)
        at java.nio.channels.SelectionKey.isReadable(Unknown Source)
        at com.turn.ttorrent.client.peer.PeerExchange$IncomingThread.read(PeerExchange.java:284)
        at com.turn.ttorrent.client.peer.PeerExchange$IncomingThread.run(PeerExchange.java:322)

I'm just closing Client and face this ST sometimes, even inside a TRY..CATCH block.

could you submit the try catch block

even inside a TRY..CATCH block. I think the author is printing the stack trace... e.printStackTrace() inside PeerExchange.IncomingThread.read(). Maybe related to #142

I cannot find printStackTrace() in the latest source code. Are you referring to version 1.4?

This happens just sometimes and I can tell what is causing the error to raise. I think is because I'm trying to stop clients when serving to peers.
My try..catch block is very simple:
try {
client.stop();
} catch ( Exception e ) {
// ignore
}
Where client is com.turn.ttorrent.client.Client.
As you can see in my first post, there is no references to my code. Is all stack trace shown.


Resurrect old WRT54G wifi router, swap out optimum router

Scheduled for 3pm Wednesday Oct 3rd.
So you can return the equipment and get debt collectors off your back
See #10

Swapped out. We now have shitty 10 mbps on 2.4GHz (doesn't pass through extra walls as well) until we get a replacement router.


Port environments.js to @flow.

Fixes #859.
Sits on top of PR 860, which needs to be submitted first!

@marcianx thanks for the PR.  It's exciting to see all of these implicit types being made explicit.


Include line number in cargo insta review

Hello! Thank you for this wonderful tool!
When reviewing changes to snapshots I often want to refer to the test that produced them. Currently the review tool prints the source like so:
Reviewing [1/4]:
Package: gleam-core (0.17.0-dev)
Snapshot file: compiler-core/src/javascript/tests/snapshots/gleam_core__javascript__tests__bools__shadowed_bools_and_nil.snap
Snapshot: javascript__tests__bools__shadowed_bools_and_nil
Source: compiler-core/src/javascript/tests/bools.rs

It would be great to have the number number as well as the source file so one could click on it in their editor and see the code used to produce the snapshot.
Thanks again!

Oh! They started showing up. Not sure what changed.

Ah, I think it is when there are multiple assertions? Would be nice to always have them


Stuck at retransmitting syn

Hi, this might be an error on my side, but it seems weird.
I have following code:
...mcu initialization ommited
	info!("Initializing spi");
	let spi = {
		let miso = gpiob.pb14.into_alternate();
		let mosi = gpiob.pb15.into_alternate();
		let sck = gpiob.pb13;

		hal::spi::Spi2::new(dp.SPI2, (sck, miso, mosi), enc28j60::MODE, 1.MHz(), &clocks)
	};
	let mut delay = Timer::delay(Timer::syst(cp.SYST, &clocks));

	info!("Initializing enc28j60 driver");
	let enc28j60 = {
		let mut ncs = gpioa.pa4.into_push_pull_output();
		ncs.set_high();
		let mut reset = gpioa.pa3.into_push_pull_output();
		reset.set_high();

		enc28j60::Enc28j60::new(
			spi,
			ncs,
			enc28j60::Unconnected,
			reset,
			&mut delay,
			7168,
			SRC_MAC,
		)
		.ok()
		.unwrap()
	};

	info!("Initializing smoltcp");
	let mut rx_buf = [0u8; 1024];
	let mut tx_buf = [0u8; 1024];
	let mut eth = Phy::new(enc28j60, &mut rx_buf, &mut tx_buf);

	let local_addr = Ipv4Address::new(192, 168, 128, 131);
	let ip_addr = IpCidr::new(IpAddress::Ipv4(local_addr), 24);

	let mut config = smoltcp::iface::Config::new(HardwareAddress::Ethernet(EthernetAddress(SRC_MAC)));
	config.random_seed = DWT::cycle_count() as u64;
	let mut iface = smoltcp::iface::Interface::new(
		config,
		&mut eth,
		smoltcp::time::Instant::from_micros(DWT::cycle_count()),
	);
	iface.update_ip_addrs(|ipa| {
		ipa.push(ip_addr).unwrap();
	});
	iface
		.routes_mut()
		.add_default_ipv4_route(Ipv4Address::new(192, 168, 128, 1))
		.unwrap();
	info!("smoltcp initialized");
	use smoltcp::socket::tcp;

	let mut tcp_rx_buffer = [0u8; 1500];
	let tcp_rx_buffer = tcp::SocketBuffer::new(&mut tcp_rx_buffer[..]);
	let mut tcp_tx_buffer = [0u8; 1500];
	let tcp_tx_buffer = tcp::SocketBuffer::new(&mut tcp_tx_buffer[..]);
	let tcp_socket = Socket::new(tcp_rx_buffer, tcp_tx_buffer);
	let mut sockets_storage: [_; 1] = Default::default();
	let mut socket_set = SocketSet::new(&mut sockets_storage[..]);

	let handle = socket_set.add(tcp_socket);
	let socket = socket_set.get_mut::<Socket>(handle);

	// socket.set_keep_alive(Some(Duration::from_secs(5)));
	// socket.set_timeout(Some(Duration::from_secs(3)));
	socket
		.connect(
			iface.context(),
			IpEndpoint::new(
				IpAddress::Ipv4(Ipv4Address::new(192, 168, 128, 81)),
				9999,
			),
			get_ephemeral_port(),
		)
		.unwrap();

	info!("Initialized");
	let mut time: i64 = 0;
	let mut prev_conn_state = false;
	loop {
		time += 1;
		iface.poll(
			smoltcp::time::Instant::from_millis(time),
			&mut eth,
			&mut socket_set,
		);
		let socket = socket_set.get_mut::<Socket>(handle);
		if socket.is_active() && !prev_conn_state {
			info!("connected: {}", socket.state());
		} else if !socket.is_active() && prev_conn_state {
			info!("disconnected");
		}
		prev_conn_state = socket.is_active();

		if socket.may_recv() {
			let can_send = socket.can_send();
			let data = socket
				.recv(|data| {
					if !data.is_empty() {
						let str_repr =
							core::str::from_utf8(data.as_ref()).unwrap_or("(invalid utf8)");
						info!("recv: {:?} ({})", data, str_repr);
					}
					(data.len(), data)
				})
				.unwrap();
			if can_send && !data.is_empty() {
				info!("Sending reply");
				socket.send_slice("Hello world!\n".as_bytes()).unwrap();
			}
		}
		delay.delay_ms(1);
	}

It is basically the "client" example merged with enc28j60 driver. On my computer I have a nc process listening on port 9999. In wireshark, I can see SYN sent to my PC and nc responding with ACK, however, smoltcp is not registering this and is "flooding" my PC with SYN packets. The entire wireshark pcap is here: https://www.mediafire.com/file/fs7g7tffyb917l9/smoltcp.pcap/file (will be deleted on 28/10/23)
Here are the logs from the MCU:
INFO  Initializing spi
INFO  Initializing enc28j60 driver
INFO  Initializing smoltcp
INFO  smoltcp initialized
TRACE [0]: adding
TRACE state=Closed=>SynSent
INFO  Initialized
INFO  Received packet
TRACE filled <IP_ADDRESS> => Ethernet(Address([80, 235, 246, 190, 108, 173])) (was empty)
INFO  Received packet
INFO  Received packet
INFO  Received packet
INFO  Received packet
INFO  Received packet
INFO  Received packet
INFO  Received packet
INFO  Received packet
INFO  Received packet
INFO  Received packet
INFO  Received packet
INFO  Received packet
TRACE outgoing segment will send data or flags
TRACE sending SYN
TRACE rtte: sampling at seq=3722885587
INFO  Received packet
INFO  connected: SynSent
INFO  Received packet
DEBUG unacceptable RST (expecting RST|ACK) in response to initial SYN
INFO  Received packet
INFO  Received packet
DEBUG retransmitting at t+0.700s
TRACE rtte: abort sampling due to retransmit
TRACE outgoing segment will send data or flags
TRACE sending SYN
INFO  Received packet
INFO  Received packet
INFO  Received packet
DEBUG retransmitting at t+0.700s
TRACE outgoing segment will send data or flags
TRACE sending SYN
INFO  Received packet
INFO  Received packet
DEBUG unacceptable RST (expecting RST|ACK) in response to initial SYN
DEBUG retransmitting at t+0.700s
TRACE rtte: too many retransmissions, increasing: rtt=600 dev=100 rto=1000
TRACE outgoing segment will send data or flags
TRACE sending SYN
INFO  Received packet
INFO  Received packet
INFO  Received packet
DEBUG retransmitting at t+1.000s
TRACE outgoing segment will send data or flags
TRACE sending SYN
INFO  Received packet
INFO  Received packet
DEBUG retransmitting at t+1.000s
TRACE outgoing segment will send data or flags
TRACE sending SYN
INFO  Received packet

The physical connection to the enc28j60 is working, I added a log statement every time a packet is received.
The fun part is that this setup is working in like 1/20 runs.
Any idea why this is happening? What I have done wrong?

My further attempts on debugging this revealed that the same sometimes happens with ARP and does not even get to the SYN part.
INFO  Initializing spi
INFO  Initializing enc28j60 driver
INFO  Initializing smoltcp
INFO  smoltcp initialized
TRACE [0]: adding
TRACE state=Closed=>SynSent
INFO  Initialized
TRACE outgoing segment will send data or flags
TRACE sending SYN
DEBUG address <IP_ADDRESS> not in neighbor cache, sending ARP request
TRACE SocketHandle(0): neighbor <IP_ADDRESS> missing, silencing until t+1.000s
INFO  connected: SynSent
TRACE SocketHandle(0): neighbor <IP_ADDRESS> silence timer expired, rediscovering
TRACE outgoing segment will send data or flags
TRACE sending SYN
DEBUG address <IP_ADDRESS> not in neighbor cache, sending ARP request
TRACE SocketHandle(0): neighbor <IP_ADDRESS> missing, silencing until t+1.000s
TRACE SocketHandle(0): neighbor <IP_ADDRESS> silence timer expired, rediscovering
TRACE outgoing segment will send data or flags
TRACE sending SYN
DEBUG address <IP_ADDRESS> not in neighbor cache, sending ARP request
TRACE SocketHandle(0): neighbor <IP_ADDRESS> missing, silencing until t+1.000s
TRACE SocketHandle(0): neighbor <IP_ADDRESS> silence timer expired, rediscovering
TRACE outgoing segment will send data or flags
TRACE sending SYN
DEBUG address <IP_ADDRESS> not in neighbor cache, sending ARP request
TRACE SocketHandle(0): neighbor <IP_ADDRESS> missing, silencing until t+1.000s
TRACE SocketHandle(0): neighbor <IP_ADDRESS> silence timer expired, rediscovering
TRACE outgoing segment will send data or flags
TRACE sending SYN

check that get_ephemeral_port() is returning a different port every run, for example from a hardware RNG. If it returns the same port after a reboot, you can get fun issues when the same 4-tuple is reused, because the state for it on the PC side is left over from previous runs.
Otherwise it might be a bug in the enc28j60 driver, check if it's dropping packets. if it is I'd suggest filing an issue against it, since it's not a smoltcp issue.
If it's this one, it's unmaintained since 2019. Embassy has another newer, maintained driver based of a fork of the japaric one, See example (for nRF, you can port it to stm32 combining it with stm32 spi). I can personally confirm that one works well, I've been using in production for a few years.

Thanks for the ideas!
I found out that get_ephemeral_port() was always returning the same port, so I changed it to be somewhat random (my MCU doesn't have HW RNG). However, it still doesn't work.
I will try to change the library (I am using japaric's) and hopefully it will start working

I have ported my app to embassy and can confirm the driver is working


Address.isValid() fails on valid IPv6 address

I am attempting to parse the IPv6 address 2600:5800:f2a2:0000:0000:0000:0000:002c and it fails with this error when I call .isValid() on the Address6 object:
TypeError: undefined is not an object (near '...for (i = 0; i < address.length;...')
If I add it to your unit test data, I get:
  1) Valid IPv6 addresses 2600:5800:f2a2:0000:0000:0000:0000:002c is correct:

      AssertionError: expected false to equal true
      + expected - actual

      -false
      +true

      at Context.<anonymous> (test/address-test.js:111:39)

My production code that's failing is passed through webpack so it's hard to tell exactly where it's bailing, but I get this error in the browser backtrace:
Error: undefined is not an object (evaluating 'slice')
compact
correctForm

fn
regularInterceptedExpression

As far as I can tell, this is actually a valid IPv6 address (it certainly has been handed out by my router at work <g>).  Any ideas what's going wrong?  It seems to be bombing out in the compact() method.

hm, what runtime are you using? (node, browser, other?)
I ask because I can't replicate this locally:
> a.canonicalForm()
'2600:5800:f2a2:0000:0000:0000:0000:002c'
> a.correctForm()
'2600:5800:f2a2::2c'
> a.isValid()
true

the unit test is a red herring; that failure is because 2600:5800:f2a2:0000:0000:0000:0000:002c is not the "correct" form of the address, 2600:5800:f2a2::2c is. "correct" here just means "the most compact representation, without leading zeroes, with only lower-case letters".
the runtime you're using & the smallest snippet that causes the error would be helpful in debugging this :)

This is inside a Cordova (WkWebView) browser on iOS that I'm seeing it.  So far I'm not able to replicate it in a simpler script so my first thought is webpack is doing something funky, but I'm seeing it even when I'm not doing any minification.  I've tried to replicate it with a simple one-liner that I hit with mobile safari and it doesn't happen.  My next step is to make a simple cordova project that just calls it immediately in index.html without any other junk to see if I can reproduce it there.

@RangerRick is this still an issue for you?

please reopen if you can replicate this again :)


start: Replace dvc run references in data-pipelines

This replaces dvc run examples in data-pipelines.
Related #3309

Related https://github.com/iterative/dvc.org/issues/3309

It doesn't close it?