feat(v2): core v2 i18n support + Docusaurus site Crowdin integration

Motivation
Initial i18n POC
See RFC https://github.com/facebook/docusaurus/issues/3317

Current WIP state:
Markdown translation
Markdown translations work for docs (including versioning), blog, pages.
Localized markdown files should be put in ./i18n/<locale>/<pluginName><-pluginId>/**/*.md
If the markdown exist at the correct localized location, it will be used in priority over the original document.
Note: some questions asked to Crowdin: https://gist.github.com/slorber/30643299196c7efa77084eec10c1c609
Key/values translations
Key/value translations are helpful to translate the plugin's data (content plugins) and UIs (theme plugins).
Key/value translations use Chrome i18n JSON format:

it allows adding context/description to messages, useful for translators
it's widely supported by many SaaS

SaaS documentation:

https://developer.chrome.com/apps/i18n-messages
https://support.crowdin.com/file-formats/chrome-json/
https://www.applanga.com/docs/formats/chrome_i18n_json
https://docs.transifex.com/formats/chrome-json
https://help.phrase.com/help/chrome-json-messages

You can "init" the localized JSON files by using the cli command docusaurus write-translations --locales all.
Then you need to modify the JSON files in ./i18n/<locale>/<pluginName><-pluginId>/**/*.json
Code translations
Code translations is a subset of key/value translations that are found in UI / JSX, using the Docusaurus i18n runtime.
You can use translations in pages and components, with a new client API:
import Translate, { translate } from "@docusaurus/Translate";

const Examples = {
  // component API: useful for regular JSX translations
  content: (
    <Translate
      id="homepage.quotes.christopher-chedeau"
      description="Quote of Christopher Chedeau on the home page"
    >
      Default quote message of Christopher Chedeau
    </Translate>
  ),

  // imperative API: useful for placeholders, alt or regular string props...
  title: translate({
    id: "homepage.quotes.christopher-chedeau.title",
    message: "Lead Prettier Developer",
    description: "Title of quote of Christopher Chedeau on the home page"
  })
};

ìdanddescription` are optional args.
Code translations are extracted with the docusaurus write-translations cli at ./i18n/<locale>/code.json
Note: it's not possible to use dynamic translation values, because translations are handled through Babel, the id/message/description must be statically evaluable.
Site config
The initial config is small, but we'll add more customization options later (locale route paths, fs paths, ltr, charset encoding...)
export default {
  i18n: {
    defaultLocale: "en",
    locales: ["en", "fr"]
  }
};

CLI
Note: each locale leads to a single independent SPA site. It's not one SPA site containing all locales, that's why you can't start a Docusaurus site with all locales at once (but we may add this later).

docusaurus start: start your site on the default locale

docusaurus start --locale fr: start your site on the french locale

docusaurus build: will build your site in all available locales

docusaurus build --locale fr: will only build the french site

docusaurus write-translations: will extract translations from code and plugins

Use --help on cli for some extra doc.
Plugin lifecycles for localization
As Docusaurus v2 is modular, each plugin is responsible:

to declare its own translations (ie, write JSON files to FS at the correct location with cli command docusaurus write-translations)
to read those JS files from FS
use the FS translations to translate the loaded content (plugin data), or themeConfig (

type Plugin = {
  // return a descriptor of all files that will be written by cli docusaurus write-translations
  getTranslationFiles?(): Promise<TranslationFiles>;

  // will be called after "plugin.loadContent()" with the localized translation files of this plugin
  // you should return the localized content
  // the localized content will be passed to "plugin.contentLoaded()"
  // Usecase: translate docs titles, sidebars, version names...
  translateContent?({
    content,
    translationFiles
  }: {
    content: T; // the content loaded by this plugin instance
    translationFiles: TranslationFiles;
  }): T;

  // Translate the themeConfig
  // Usecase: translate themes like the classic theme (navbar, footer etc...)
  translateThemeConfig?({
    themeConfig,
    translationFiles
  }: {
    themeConfig: ThemeConfig;
    translationFiles: TranslationFiles;
  }): ThemeConfig;
};

Test deployments:
Markdown translation examples (Markdown data from Crowdin):

https://deploy-preview-3325--docusaurus-2.netlify.app/classic/fr/docs/
https://deploy-preview-3325--docusaurus-2.netlify.app/classic/fr/blog/2020/01/07/tribute-to-endi
https://deploy-preview-3325--docusaurus-2.netlify.app/classic/fr/examples/markdownpageexample/

One domain for all locales:

https://deploy-preview-3325--docusaurus-2.netlify.app/classic/fr/
https://deploy-preview-3325--docusaurus-2.netlify.app/classic/

One domain per locale:

https://docusaurus-en.netlify.app/
https://docusaurus-fr.netlify.app/

Hi @slorber, I was wondering how this feature is coming along? I am getting some push to start the translation process of our documentation, so would love to try this out soon!

Hi @krillboi , was on holiday. Will continue the work as soon as I've reviewed all pending issues/PRs, so expect updates soon. Hope to get it merged in the next 2 or 3 weeks.

That was my guess @slorber, hope it was a good one. Sounds great!

Really looking forward to this to be available, thanks @slorber!

Any ETA on this? Getting some more push from management as we're actually going to be using it to translate our whole doc to Chinese, so we're very excited for this feature!

 We have existing (incomplete) translations that are currently just inside directories named after their language.

Hi,
i18n has been a bit postponed due to the ReactNative website migration to Docusaurus v2 (https://twitter.com/sebastienlorber/status/1321784071815680000) that was more work than I thought, but permitted to notice missing v1 features that we implemented in v2.
I'm actively working on this, and current state is:

The code part is almost ready
Need to dogfood on Docusaurus site a bit
Need to add/improve tests before releasing
Need to document all this
Need to migrate a v1 i18n site and see how it works (likely Jest)

I'm not sure how to roll this out, but it's likely that the PR gets merged in alpha 68 (alpha 67 is this week), but not documented, so that we can try this feature on Docusaurus, Jest, and volunteer websites like yours. We'll collect feedbacks and do the required breaking changes, and only then release officially with good documentation.
Does it make sense?

Ah okay then @slorber, that makes sense. So how long would you estimate it has been delayed then? Just so I can say something upwards 👍

It's hard to say, software always takes more time than we estimate 😅
I'd like to release the alpha 68 with i18n PR in the next 2 weeks, but it would only be ready for mainstream adoption (ie documented properly and stable) once Jest website is migrated (including i18n). It's hard to say how much work has to be done on Jest migration, but it looks simpler to migrate than RN website.
I'd say mainstream adoption can start before the end of the year, but you can try i18n sooner and give feedbacks.

Haha I know, but yeah we would gladly like to get started with a "preview version" of it asap as we're dependent on translators getting familiar with Crowdin, so just getting started with the setup of the integration between Docusaurus and Crowdin would be great.

(following)

@clairefro click the "Subscribe" button in the Notifications section on the right.

Super excited for this merge request!!
Any update on the timeline for the i18n support?
May we assume that the url structure will be the same as for v1?
baseURL/docs/en/version/markdownfile.md

@TomPeirs want to get it merged and released next week
It won't be exactly the same as v1 URL pattern, as the locale first is more common, natural and easier to support pattern:

default locale: baseURL/docs/version/markdownfile.md
fr locale: baseURL/fr/docs/version/markdownfile.md

Hi everyone.
This PR is now merged, but it's not the end of the story.
We'll test this code on Docusaurus + Jest, before advertising and documenting the i18n support.
In the meantime, you can still use the doc of this PR to figure out how it works, but keep in mind that until the official announcement, it's likely there will be a few breaking changes.
I'll probably look soon to onboard some of you privately before the official i18n release.
If you are interested, please let me know some details to see if you are a good candidate:

Is your site public, and easy to contribute to? (Github repo + convenient hosting with deploy previews)
Where do you want to store the translations? ( Git / Git submodule / Crowdin / Other ?)
Your Discord username?

Hi @slorber, awesome news!
We'd love to be onboarded as we are ready to translate our whole site (support.touchgfx.com) to Chinese and just need to get started with the integration between Docusaurus and Crowdin.

Our site is public but not open for contribution.
We'd like to use Crowdin as translation tool.
KrillBoi#9646

Looking forward to it!

@slorber from the changes it's clear how to provide translations for documents, but what about the website's footer / navbar / title / tagline ?

With this in my site config:
    i18n: {
      defaultLocale: 'en',
      locales: ['en', 'ja',],
    },

When I run write-translations -l ja, I get the following error:
Error: Can't write-translation for locale that is not in the locale configuration file.
Unknown locale=[ja].
Available locales=[en]
    at writeTranslations (/Users/julien.cayzac/rakuten/rpay/docs/node_modules/@docusaurus/core/lib/commands/writeTranslations.js:41:15)

(with 2.0.0-alpha.bd62be93d)

Nevermind, I'm stupid, I had the i18 object in themeConfig……… 🤦🏼

Hi @slorber this looks amazing!
Could I please hop on the onboarding train for using i18n with Docusaurus 2?
I am helping JAM stack framework RedwoodJS (https://redwoodjs.com/) start a new site for localizing it's documentation. Docusaurus 2 + Crowdin looks like a stellar combo for us.

Hi there
I posted an update of i18n progress here:
https://github.com/facebook/docusaurus/issues/3317#issuecomment-742589241
There are still a few things to change in Docusaurus core to be able to make Jest production-ready, but this is progressing: https://jest-v2.netlify.app/

@slorber the translation dropdown seems broken on jest. When I select another language, I'm redirected to the home page with still English as language. Tested on Chrome and Firefox.
PS: Docusaurus is really cool and you're doing a great job. Keep it up! 👍

@LoicPoullain thanks
The locale dropdown is hardcoded for now, will implement this very soon and make Jest production ready :)

@slorber This may be intentional behavior but just dropping this here as a suggestion
Localized docs based on source docs that point to static assets (like ./static/img/logo.svg) break if the static assets are are not also defined in the localized directory.
Example error for localized version of shipped sample doc1 :
./i18n/fr/docusaurus-plugin-content-docs/current/doc1.md
Error: Image i18n/fr/docusaurus-plugin-content-docs/static/img/logo.svg used in i18n/fr/docusaurus-plugin-content-docs/current/doc1.md not found.
    at async Promise.all (index 1)

While this is a great chance to optionally localize images that contain diagrams/text, it would be great if it were not required to copy assets to all locales. Instead the i18n asset paths could resolve to the source assets by default, just like the markdown files default to the source markdowns if no locale counterpart is found.

hi @clairefro
If an asset is colocated, this means the asset will be duplicated for both versioning and localization, allowing you to use a different asset per version/locale (some images might contain localized text).
The localized doc folder should rather contain a full copy of the upstream doc folder, so that all relative imports keep working.
Note: if you don't need to version/localize an asset, you can put your svg in static and import it with  @site/static/img/logo.svg
In the future, I'd like to allow "partial" localized doc sets, and fallback to the original upstream doc if localized doc/asset does not exist, but it requires that I figure out how to do this with Webpack module resolution systems. This will not be part of the initial i18n release but will come after.

Hi @slorber,
I am starting out with trying to use the i18n feature and looked at the Docusaurus v2 project on Crowdin. I noticed that compared to Docusaurus v1, the source files are a lot more messy to look at and understand for translators due to import statements and markdown/html cluttering up the view.
Take a look at: https://crowdin.com/translate/docusaurus-v2/128/en-fr?filter=basic&value=0
Compared to: https://crowdin.com/translate/docusaurus/2524/en-fr?filter=basic&value=0
Links in the v1 document are evaluated as markdown while v2 is just raw text (for example a lot of divs). In our docs, we use a lot of different React components, so this seems like it might be difficult for translators without a technical background to read and translate.
Is this something that can be fixed?

Hi @slorber,
I am starting out with trying to use the i18n feature and looked at the Docusaurus v2 project on Crowdin. I noticed that compared to Docusaurus v1, the source files are a lot more messy to look at and understand for translators due to import statements and markdown/html cluttering up the view.
Take a look at: https://crowdin.com/translate/docusaurus-v2/128/en-fr?filter=basic&value=0
Compared to: https://crowdin.com/translate/docusaurus/2524/en-fr?filter=basic&value=0
Links in the v1 document are evaluated as markdown while v2 is just raw text (for example a lot of divs). In our docs, we use a lot of different React components, so this seems like it might be difficult for translators without a technical background to read and translate.
Is this something that can be fixed?

Hi @krillboi
The i18n doc will soon be available.

I noticed that compared to Docusaurus v1, the source files are a lot more messy to look at and understand for translators due to import statements and markdown/html cluttering up the view.

You mean due to the fs organization?
Or just the embedded React components?
How is it more annoying than embedded HTML?

Links in the v1 document are evaluated as markdown while v2 is just raw text (for example a lot of divs).

That seems related to using the .mdx extension instead of .md, and how it is interpreted by Crowdin.
This v2 doc seems to work better for you no?
https://crowdin.com/translate/docusaurus-v2/126/en-fr?filter=basic&value=0
I see advantages of using the MDX extension, as IDE's can understand the embedded React code, Prettier can format it etc...
However, there's no first-class support for MDX in Crowdin.
You can "force" any extension to be interpreted as markdown in crowdin.yaml:
https://support.crowdin.com/configuration-file/#uploading-files-to-specified-path-with-specified-type
Their customer support can also enable custom processors too (not possible through the UI afaik).
Also, if Crowdin ask translators  to translate strings that should rather not be translated (like mdx import statements), it is possible for you to use the "hide strings" feature so that only the crowdin admins can translate these strings

Is this something that can be fixed?

I'm in touch with Crowdin to see how to fix these problems, but keep in mind that Crowdin is an external SaaS software on which I have absolutely 0 control myself, and it's also not the one and only solution that you can use to translate a docusaurus project.
The Docusaurus v2 i18n is not coupled to any SaaS or Crowdin, and it just requires you to put files at the correct path.
We will try to document Crowdin usage the best we can, but in the end, if you want to use Crowdin to translate your project, you should understand how it works and read its doc, and also get in touch with their support to figure things out if needed.
In my opinion, Crowdin is far from perfect, but works not too badly either. There might be better translation SaaS alternatives that I'm not aware of, unfortunately don't have time to explore those, but hopefully some community contributors will be able to provide feedbacks and write documentation about other possible solutions?
Treat i18n in the same way as deployment doc: we historically document well the GitHub pages deployment, but many other options are possible. And in the end, you have to read the doc and understand the tradeoffs of the underlying solution.

Hi @krillboi
The i18n doc will soon be available.

I noticed that compared to Docusaurus v1, the source files are a lot more messy to look at and understand for translators due to import statements and markdown/html cluttering up the view.

You mean due to the fs organization?
Or just the embedded React components?
How is it more annoying than embedded HTML?

Links in the v1 document are evaluated as markdown while v2 is just raw text (for example a lot of divs).

That seems related to using the .mdx extension instead of .md, and how it is interpreted by Crowdin.
This v2 doc seems to work better for you no?
https://crowdin.com/translate/docusaurus-v2/126/en-fr?filter=basic&value=0
I see advantages of using the MDX extension, as IDE's can understand the embedded React code, Prettier can format it etc...
However, there's no first-class support for MDX in Crowdin.
You can "force" any extension to be interpreted as markdown in crowdin.yaml:
https://support.crowdin.com/configuration-file/#uploading-files-to-specified-path-with-specified-type
Their customer support can also enable custom processors too (not possible through the UI afaik).
Also, if Crowdin ask translators  to translate strings that should rather not be translated (like mdx import statements), it is possible for you to use the "hide strings" feature so that only the crowdin admins can translate these strings

Is this something that can be fixed?

I'm in touch with Crowdin to see how to fix these problems, but keep in mind that Crowdin is an external SaaS software on which I have absolutely 0 control myself, and it's also not the one and only solution that you can use to translate a docusaurus project.
The Docusaurus v2 i18n is not coupled to any SaaS or Crowdin, and it just requires you to put files at the correct path.
We will try to document Crowdin usage the best we can, but in the end, if you want to use Crowdin to translate your project, you should understand how it works and read its doc, and also get in touch with their support to figure things out if needed.
In my opinion, Crowdin is far from perfect, but works not too badly either. There might be better translation SaaS alternatives that I'm not aware of, unfortunately don't have time to explore those, but hopefully some community contributors will be able to provide feedbacks and write documentation about other possible solutions?
Treat i18n in the same way as deployment doc: we historically document well the GitHub pages deployment, but many other options are possible. And in the end, you have to read the doc and understand the tradeoffs of the underlying solution.

@slorber ah I understand, specifying the uploaded type as .md is a good first step I think and then a custom processor .mdx later maybe would make sense.
No worries, was just curious if anything was on the horizon 👍

@slorber ah I understand, specifying the uploaded type as .md is a good first step I think and then a custom processor .mdx later maybe would make sense.
No worries, was just curious if anything was on the horizon 👍

I'm constantly giving feedback to Crowdin support so that they can improve their product.

Here's just a few of my initial questions, but had many more recent ones 😉
https://gist.github.com/slorber/30643299196c7efa77084eec10c1c609
And they may implement some of my suggestions (they already did) but it may take time and I don't know when they will be released

I'm constantly giving feedback to Crowdin support so that they can improve their product.

Here's just a few of my initial questions, but had many more recent ones 😉
https://gist.github.com/slorber/30643299196c7efa77084eec10c1c609
And they may implement some of my suggestions (they already did) but it may take time and I don't know when they will be released

Hi there.
You'll find a i18n documentation preview on https://github.com/facebook/docusaurus/pull/4014 at https://deploy-preview-4014--docusaurus-2.netlify.app/classic/docs/next/i18n/introduction
Please give me feedbacks on the documentation PR if some things are not clear enough

Hi there.
You'll find a i18n documentation preview on https://github.com/facebook/docusaurus/pull/4014 at https://deploy-preview-4014--docusaurus-2.netlify.app/classic/docs/next/i18n/introduction
Please give me feedbacks on the documentation PR if some things are not clear enough


Cannot save/publish after mandatory-validation error is shown

Hi!
I'm having problems to save/publish my page after adding an element, trying to save it without choosing an image (which is mandatory) and then removing the invalid element.
To reproduce:

Create a brand new page
Adds an element with image and saves and publish the page, everything is good so far
Adds another element, but trying to save without choosing an image which is mandatory.
Removes the image I've just added and trying to save and publish again

This will still display "Property has errors" even though I don't have any errors left.
Umbraco version: 7.2.5
Archetype version: 1.7.5
Regards Tobz

A fix for this will be released in the next patch release probably the first week of June.  If you want to fix your local copy, just look at the commit for the changes.


pt-BR misspellings in introducing-the-new-jsx-transform

I noticed some misspellings while reading Apresentando o novo JSX Transform and instead of let them pass I decided to point them for correction.

O Que Há de Diferente na Nova Transformação?

There is a "vocÊ" right at the end of the section, it should be "você".

Eslint
In the following phrase "Se você estiver usando eslint-plugin-react, as regas de", "regas" should be "regras".

Obrigado
The word "Gostaríamso" should be "Gostaríamos" and "intergação" should be "integração".

If you appreciate more corrections like this let me know! I hope I could help a little. :blush:

I will fork the pt-BR.reactjs.org repository and send the pull request. Sorry for the issue :sweat_smile:


Fix typo: Unnecessary word

Thanks, @SH4DY! Good to know somebody is reading the handbook with care. :)


Enhancement in the hover effect on the nav bar

They hovering effect in the navbar is not so attractive as well the space between the nav items
The nav items are too close
Can you please assign me under GSSOC'23 Contributor

Open a PR with required screenshots, we will review it soon! @Aditi323


Converting terms to string?

For instance, if I have a term fun ( x : int ) : ( unit ) -> assert( x ) which is written in some syntax Term I defined, is there a way to convert it into the string "fun ( x : int ) : ( unit ) -> assert( x )"?
i.e. some function Term -> String that just outputs the term as a String.

That functionality is not available unfortunately. For tokens (productions marked with the [token] attribute) you may use the token2String hook like so:
syntax String ::= XToString(X) [function, functional, hook(STRING.token2string)]

There are a number of reasons why this is probably not going to be implemented anytime soon, most importantly that unparsing is part of the K frontend and implements a postprocessing stage after the semantics has reached its final state. It breaks a lot of abstraction boundaries to try to make this available to backends, because suddenly the backend depends on an important component of the frontend. Furthermore, there is no clear semantics for such a function. Should I return "fun ( x : int ) : ( unit ) -> assert( x )" or "fun ( x : int ) : ( unit ) -> ( assert( x ) )" or "fun(x:int):(unit)->assert(x)"? It's not really appropriate for the formal reasoning about the behavior of your program to depend on a particular convention adopted by a particular piece of code written in Java that doesn't have clear semantics.
With that being said, if you want to have a semantics of something like this in your language you can and are encouraged to write a function like syntax String ::= Term2String(Term) [function] and give it whatever explicit semantics you want. This is a much more formal solution because your function actually has a clear and unambiguous formally specified behavior, which is not true in the former case.

Thanks for the replies!
So I should define a procedure that recursively rewrites my term into a string. What happens if I reach something like a Bool or KVar? Do these have a to-string function?

The token2string thing above will work for Int KVar and other tokens

Thanks!
Somewhat unrelated, how does one use #system in a function?
I have a function:
syntax Bool ::= System(KItem)     [function]
rule System(#systemResult( 0, _  , _ )) => true
rule System(#systemResult( 1, _, _ )) => false

the intention is to do System(#system(CMD)) to run some command CMD.
However, I get:
[Error] Inner Parser: Parse error: unexpected token '#system'.
[Error] Inner Parser: Parse error: unexpected token '#systemResult'.

You are trying to put #system in your initial program? there are some peculiarities to the parser that make it not necessarily advisable to try to use non-user-defined syntax in the input program you parse with kast and krun. You are better off having a rule that has #system on the rhs.

Ah, no, I was trying to use #system to call z3 to prune paths in my symbolic execution, and the idea was to write a function that makes the external call.
To give some context, I had two modules, Z3-SYNTAX and Z3. In Z3-SYNTAX, I had originally defined a function System(KItem) which performs external calls. This function has #system rules on the RHS.
  syntax Bool ::= CheckSAT(SMTLib)  [function]
  syntax Bool ::= SystemSAT(KItem)  [function,strict(1)]

  rule CheckSAT(P) => SystemSAT(#system("echo \"" +String SMTLibToString(P) +String "(check-sat)\" | z3 -in"))
  rule SystemSAT(#systemResult ( 0, "sat\n" ,   _)) => true
  rule SystemSAT(#systemResult ( 0, "unsat\n" , _)) => false

When trying to kompile the z3.k file, the parser was failing when I had the CheckSAT and SystemSAT functions in the Z3-SYNTAX module. But this was fixed when I moved the functions down to the Z3 module. So I concluded I'm either not allowed to have #system tokens in -SYNTAX modules, or I missed importing something needed to perform #system calls.


subtreeContext exception after pressing back button twice

Run Gallery in debug mode.  Enter Shrine, and click on one of the product tiles.  Press the Back button twice in quick succession.
This produces the exception below.
The same thing happens if I click on a recipe in Pesto and hit Back twice.
The bug is timing sensitive - I haven't seen it happen in profile mode
I/flutter : ══╡ EXCEPTION CAUGHT BY SCHEDULER LIBRARY ╞═════════════════════════════════════════════════════════
I/flutter : The following NoSuchMethodError was thrown during a scheduler callback:
I/flutter : The null object does not have a getter 'subtreeContext'.
I/flutter : NoSuchMethodError: method not found: 'subtreeContext'
I/flutter : Receiver: null
I/flutter : Arguments: []
I/flutter : When the exception was thrown, this was the stack:
I/flutter : #0      Object._noSuchMethod (dart:core-patch/object_patch.dart:44)
I/flutter : #1      Object.noSuchMethod (dart:core-patch/object_patch.dart:47)
I/flutter : #2      HeroController._updateQuest (package:flutter/src/widgets/heroes.dart:527)
I/flutter : #3      BindingBase&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:535)
I/flutter : #4      BindingBase&SchedulerBinding.handleBeginFrame (package:flutter/src/scheduler/binding.dart:503)
I/flutter : #5      _beginFrame (file:///ssd2/sky/engine/src/flutter/lib/ui/hooks.dart:48)
I/flutter : ════════════════════════════════════════════════════════════════════════════════════════════════════

@Hixie

I think I have a fix for that.

Specifically https://github.com/flutter/flutter/pull/5633

Boo, that doesn't actually fix it.

Ok the problem here is subtly different. The problem here is that between scheduling the quest update and actually starting the heroes, we are handling a quest completion, which clears our variables and thus we lose track of what we're about to do.

ok, actual fix is in that PR now


Update repo structure and all examples

This PR is a major refactor of this repo:

Switch to the full examples / modules / test folder structure we recommend.
Add simple, example modules for S3, Lambda, and ECS Fargate.
Add examples and automated tests for all modules.
Add CircleCi config to run tests.

⚠ GitGuardian has uncovered 1 secret following the scan of your pull request.
Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.
🔎 Detected hardcoded secret in your pull request
🛠 Guidelines to remediate hardcoded secrets
🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.Our GitHub checks need improvements? Share your feedbacks!

This is a false positive. Safe to ignore.

Thanks for the review! Merging now.


1.17/18 coming? or is dead?

Doesn't appear to be a new mod like this for fabric currently, so I was wondering if you would be kind enough to update this one for us.

Nope, this mod hasn't been updated in 2+ years.
The mod still works in 1.17 and 1.18 though.
If you're looking for go-down for 1.19, you'll have to use this fork by developer Fran.


Wrong information regarding Jamnagar cases for corona Virus

jamnagar has only 1 case and the website is showing 2 case kindly correct the same.

Please report data discrepancies using this form. Thanks! :)


feat: create databricks volume source connector

Leverage the databricks python sdk (databricks-sdk-py) to pull in content from the Unity Catalog Volumes. This is a general blob storage similar to s3.

Closing since we have databricks_volumes.py now.


Delete record fails CSRF

Using default admin_routes, deleting a record from the index page, and the view page fails CSRF.

Fixed. Added supporting code in jquery-ujs.js. You will need to remove this file from your projects priv/static/js directory and rerun mix admin.install to get the new copy.


.each is unusable with @jest/globals

🐛 Bug Report

The return type of test.each is void | ((title: string, test: EachTestFn<TestFn>, timeout?: number | undefined) => void).
It should not include void, as this makes the result uncallable.
To Reproduce
With Jest v26.4.2 and Typescript v4.0.2, create each.test.ts.
import { expect, test } from '@jest/globals';

const items = test.each([['foo'], ['bar']]);

items('Test %s', item => {
  expect(item).toHaveProperty('length', 3);
});

test.each`
item
foo
bar
`(item => {
  expect(item).toHaveProperty('length', 3);
});

Steps to reproduce the behavior:
tsc produces:
each.test.ts:5:1 - error TS2349: This expression is not callable.
  Not all constituents of type 'void | ((title: string, test: EachTestFn<TestFn>, timeout?: number | undefined) => void)' are callable.
    Type 'void' has no call signatures.

5 items('Test %s', item => {
  ~~~~~

each.test.ts:9:1 - error TS2349: This expression is not callable.
  Not all constituents of type 'void | ((title: string, test: EachTestFn<TestFn>, timeout?: number | undefined) => void)' are callable.
    Type 'void' has no call signatures.

  9 test.each`
    ~~~~~~~~~~
 10   item
    ~~~~~~
...
 12 bar
    ~~~
 13 `(item => {
    ~

Found 2 errors.

Expected behavior
The given tests should compile.
envinfo

  System:
    OS: macOS 10.15.6
    CPU: (8) x64 Intel(R) Core(TM) i5-8279U CPU @ 2.40GHz
  Binaries:
    Node: 14.8.0 - /usr/local/bin/node
    Yarn: 1.22.4 - /usr/local/bin/yarn
    npm: 6.14.7 - /usr/local/bin/npm
  npmPackages:
    jest: ^26.4.2 => 26.4.2

Running into the same thing, seems to have been changed in #9326

Help with improving types is very much welcome 👍 Source is here: https://github.com/SimenB/jest/blob/c5785b9a71cc2edd8091cf67eae000c76010315c/packages/jest-types/src/Global.ts#L39-L48
We've recently landed the beginning of types tests to avoid these sorts of things, but it's not very comprehensive yet


[BUG]

Describe the bug
Getting the following message when attempting Journeys per-app migration:
"Some of the Virtual Servers are not compliant with AS3. Only Tenants with all green Applications/VS' can be later converted to AS3 and deployed to a BIG-IP instance.
Please drill down to uncompliant VS' and fix unsupported configurations using the editor provided."
It does not explain why or how or why the uncompliant virtuals are not compliant.  My initial suspicion was that the vs is uncompliant if not all dependancies (like policies, profiles, etc. are have been found by Journeys, but then I saw the same absence of some of the dependancies in other virtuals that were marked green/compliant.
To Reproduce
Steps to reproduce the behavior:

Import a ucs file into Journeys and you will see this message as soon as the ucs is processed.

Expected behavior
Some sort of explanation of what exactly Journeys was unhappy about would be nice.
Screenshots
If applicable, add screenshots to help explain your problem.
Context

Please specify, app version:   3.3.5

And Platform version of the system you want to migrate.

Migrating from iSeries to rSeries platform

Journeys supports LTM migrations. If there are any dependent objects missing in the virtual servers' configuration, please open a bug for that.
Please see documentation: https://github.com/f5devcentral/f5-journeys#journey-application-service-migration
Uncompliant objects (that cannot be converted to AS3 format) should be highlighted in the editor after saving/verifying config.

My question was not the missing objects.  That was just an unconfirmed guess that turned out to be false.  The issue was that Journeys marks a large number of virtual servers uncompliant without providing a reason.

My question was not the missing objects. That was just an unconfirmed guess that turned out to be false. The issue was that Journeys marks a large number of virtual servers uncompliant without providing a reason.

The reason is that f5-acc-config-converter cannot convert some of the virtual server's objects to AS3 format - there is no AS3 support for those objects.


Completely buffer non-seekable input

Fixes #20

It does appear that the messages go to stderr, so perhaps the invocation in the help text should say
mypy ... 2>&1 | mypy-upgrade

Sorry for the delay.  I force-pushed earlier today with a signed commit.


Visual improvements: monospaced font and load animation

Visual improvements and some cleanup:
– Changed font to monospaced for a more authentic look
– Added a Fade In animation on page load
– Larger font for better readability
– Larger margins on smaller viewports for better readability
– Minified SVG

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

❤this!
But can we have the paragraphs back?

@dvdsgl Sure, it's a bit more ragged, but still looks good. I also resolved the conflicts.

Brilliant! Perhaps someone else can improve the raggedness–I just liked the punchiness of the separate tweet-length paragraphs 😸

Also, think you for including a preview of the result--that was very useful and nobody has thought to do that yet.


Handle links to removed revisions better

See https://apiview.dev/Assemblies/Review/b5d7e3304000449c859c2016f718db52/34aa221b7229484ea023250619d6bd35 for example.
We should show a better error message or not completely delete revisions.

I think we should switch to soft delete mechanism with an eventual garbage collection of old soft deleted revision files.

Related to https://github.com/Azure/azure-sdk-tools/issues/3495


Palau modifications

Set active phase to 1b (unclear if they’re vaccinating 65+ or not yet)
Changed essential workers to first responders
Added a note that healthcare workers include caregivers
Changed LTR qualifier to residents and staff (per note about caregivers)

[{"key":"palau","type":"vaccination","value":{"content":{"activePhase":"1b","phases":[{"id":"1a","qualifications":[{"question":"c19.eligibility.question/healthcare_worker"},{"question":"c19.eligibility.question/long_term_care_resident"}]},{"id":"1b","qualifications":[{"question":"c19.eligibility.question/healthcare_worker","moreInfoText":"c19.eligibility.moreinfo/healthcare_worker.pw.1b"},{"question":"c19.eligibility.question/long_term_care_resident.are"},{"question":"c19.eligibility.question/essential_worker.are"},{"question":"c19.eligibility.question/age.75_up"}]},{"id":"1c","qualifications":[{"question":"c19.eligibility.question/healthcare_worker"},{"question":"c19.eligibility.question/long_term_care_resident"},{"question":"c19.eligibility.question/essential_worker"},{"question":"c19.eligibility.question/health"},{"question":"c19.eligibility.question/age.65_up"}]}]}}},{"key":"palau","type":"strings","value":{"content":{"c19.eligibility.moreinfo/healthcare_worker.pw.1b":{"en-us":"This includes homebound patient caregivers"}}}}]


[#D3D-2731] Uses Mesh Normal for shadow bias

ended up using normal for normal map to compute slope for bias, now uses specifically
Normal from mesh, and use it to do exploding offset normal shadow acne
mitigation

dead end ?

it works, but need time to test on lots of models as it's rather touchy change.

It would be good to first have a commit that remove all old shadow method that are not used. I am talking about esm ....

I started in another PR for that after this one, really easier for me that way.
( other one ia quite big, with  the light glsl style fix, conversion to Example template, etc. )
the clean PR raise two three question too, rhat might take some 'talkloop' removing other algo easy, but not sure waht you want to keep on the pcf algos (pcf, fakepcf, rotated, poisson, max number of taps?)

moved over https://github.com/cedricpinson/osgjs/pull/719 with everything bleached


New site: Content to organize

User mailing list
Developer mailing list
Tutorial
Pony for X
Pony Patterns
Pony VUG
Pony VUG mailing list
State of the stable
RFCs

There's more content as well, but this is a start. Let's determine where this goes in new IA and put there, then update here to remove.

User and developer mailing lists are going into "community" but also belong in other areas I suspect.

@aturley i think "pony for x" is just a discover rather than learn, what do you think?

I agree with that.

I'll leave it to you then to organize into "Discover"


click on notification opens a new instance of the url in new tab

open the url-- https://pushjs.org/#
click on view demo
click on notification
observe that it opens a new tab with the pushjs.org url

@priyankaguptasc
Please specify:

Browser and Os with versions.
Expected Behaviour

Closing due to inactivity.


update footer

update footer

before:

after

license link: https://www.apache.org/foundation/marks/pmcs


Bluetooth: Mesh: Add randomization to PB-ADV

Add randomization to PB-ADV to follow the shall statement regrading randomization and spacing Generic Provisioning PDUs and Acks (MshPRT v1.1, section 5.3.3).

I changed the solution for this after discussion with @PavelVPV about his comments.


Workaround v0.34->v0.35 maple self-update failure

A proposal to workaround bug #846.
When using the pre-built binary:

When maple fails to self-update, attempts to download the updated release directly instead.

Notes:

Made a callback to call from s:OnExit which is called when a:status indicates a failure. In the case of maple self-update failure it then tries to download directly.
Had to move s:OnExit closure to outer script scope, because the nested call to s:run_term couldn't redefine s:OnExit closure while in use.
This is a workaround for the problem, the bug in the maple self-update could be fixed too or instead.

A minor nit, otherwise LGTM. Nice work!


Devel

Pull Request Test Coverage Report for Build<PHONE_NUMBER>0
Details

17 of 19 (89.47%)  changed or added relevant lines in 2 files are covered.
3 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.1%) to 91.105%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

table.go
6
8
75.0%

Files with Coverage Reduction
New Missed Lines
%

table.go
3
95.93%

Totals

Change from base Build<PHONE_NUMBER>0:
-0.1%

Covered Lines:
1393

Relevant Lines:
1529

💛  - Coveralls


Keybase will not open to desktop

I am getting "starting up keybase" continuously
my log id: 8aea9555fb483812a7400a1c

Same here. Uninstall/Re-Install did nothing to fix this either.

Yes,  I did the uninstall and reinstall also.  Did the same thing.
On Fri, Jun 10, 2022 at 11:39 AM Venom @.***> wrote:

Same here. Uninstall/Re-Install did nothing to fix this either.
—
Reply to this email directly, view it on GitHub
https://github.com/keybase/client/issues/25050#issuecomment-1152544521,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEAHVNJHQMAGNH7YZHLTOA3VONVVLANCNFSM5YN6INAA
.
You are receiving this because you authored the thread.Message ID:
@.***>

Avast reported about keybaserq.exe as FileRepMalware [Trj].

Something very strange I just noticed.  While on Win10 keybase sits in the show hidden icons tray as Starting up keybase but if I attempt to launch another instance of \AppData\Local\Keybase\Gui\Keybase.exe that then allow the login screen all while that other instance sits with Starting up keybase.  Something in 6.0.1 deff messed things up.

I just updated to 6.0.2 and now it works well for me

Where is the Windows 6.02 update URL?  I have gone  to the website and I am only seeing 6.02 version for Linux

Same issue on a mac.  Upgraded this morning, my log ID is 1e7d4435dc894d2e7c84061c

Lot of issues being reported of having this problem.  Be nice to see it fixed.

2 weeks later still not fixed nor a response on the matter.

That's all fine if you are setup to start kb on windows start, I was not.  I tested this by closing kb.  Attempted a manual run with the short name version of the user.  It still does the same thing.  The first instance is blank and sits forever on starting up keybase.  If I open a 2nd instance that one then works but that whacky tray instance must remain.

Sorry for the false hope.  You describe the exact same behavior I was seeing on a fresh install (new machine):  First run whacky tray instance wasn't working, second copy worked fine.  Even installed the KBFS support and that mounted up fine with my account/data mounted as a drive letter; but not the whacky first instance tray copy; until I eliminated spaces from the path.   I haven't had to go experiment with this; but looking at the client source files, it is reading from %LOCALAPPDATA% - which has the space included long file name in the environment variable.  If you are still having the issue you may get somewhere by setting that variable to the short filename too.  Worth 5 minutes to try anyway.  ?shrug?


Colour by metadata broken on dev

Hi guys! The colour by metadata doesn't work on dev - none of the metadata categories get displayed in the charts (either t-SNE or UMAP), it just says 'not defined' for all. I suspect it may be the addition of the UMAP chart that somehow broke this because I was checking recently added experiments to see if any needed batch correction before the UMAP was implemented on dev and all looked fine then.

Thanks @sfexova, this reported in #180, so I will close it to avoid duplication.


Sharing styles

One of the benefits of a js templating approach is that it is easier to share code between js, css and html. I work a lot of css animations and I want to, for example, share animation timing constants between my css and js. However, the following does not work currently within lit:
const timing = 500;
const template = html`
  <style>
    .some-element {
      ...some styling
      animation-duration: ${timing}ms;
    }
  </style>
`;

setTimeout(() => {
   ...do some work after animation
}, timing);

As the ${...} gets parsed by lit. This behavior is good for html, as we want to prevent XSS. But does the same apply for styles?

you could do it like this
const myStyle = `
    .some-element {
      /* ...some styling */
      animation-duration: ${timing}ms;
    }
`;

const template = html `
  <style>
    ${unsafeHTML(myStyle)}
  </style>
`;

also maybe better then a timeout would be
myElement.addEventListener('animationend', () => { //... })

animationend would be better for this indeed, but I use this as an example for using constants inside style. For example, let's say I want to share a bit of styling between two elements:
const sharedStyles = `
  .my-custom-button {
    /*  ... button styling */
  }
`;

class MyElementA extends MyLitElement {
  get style() {
    return html`<style>${sharedStyles}</style>`;
  }
  render() {
     return html`
       ${this.style}
       <button class="my-custom-button">My Button</button>
    `;
  }
}

class MyElementB extends MyLitElement {
  get style() {
    return html`<style>${sharedStyles}</style>`;
  }
  render() {
     return html`
       ${this.style}
       <button class="my-custom-button">My Button</button>
    `;
  }
}

We could use unsafeHTML but that looks weird and opens up the HTML for XSS. But does the same apply for styles?

What version of lit-html do you have?
This should be working now:
const template = html`
  <style>
    .some-element {
      ...some styling
      animation-duration: ${timing}ms;
    }
  </style>
`;

Although, I'd prefer to use CSS custom variables when possible.

@justinfagnani Thanks for the tip, I will test it with the newest lit-html. I'm using whatever @daKmoR has set up, we're working in the same place :)
I like css variables, but I wonder about the runtime cost. If you have dynamic variables, or want to enable customization it makes sense to use variables. But for sharing static constants this approach might be cheaper and simpler.
Also variables don't cover bundled sets of styles. In Polymer that's solved through CSS Mixins, but that requires a lot of runtime magic which I'm worried about.

currently we are using the latest npm release (0.7.1) maybe we want to switch to master as there is already so much goodness in it :)

Matter unfortunately now has a bug that is going to break bindings in styles... Sorry about that. We need test coverage there.

For what it's worth, static CSS environmental variables using (env(…)) are hopefully eventually coming in CSS Variables Level 2. They cannot be overridden in the inheritance cascade, and they will also be able to be used in media queries. See w3c/csswg-drafts#1693. But, in the meantime, surely browser engines will aggressively cache and optimize dynamic CSS variables too.

@justinfagnani Style bindings seem to work fine for me? Both of the following examples correctly set a border on the body in Firefox and Chrome, and the CSS rule looks fine in all major browsers:
const d = document.createElement('div');
document.body.appendChild(d);

// note: replace .rules with .cssRules for Firefox

render(html`<style>body { border-left: ${2}px solid red; }</style>`, d);
console.log(d.innerHTML);
//    <style>body { border-left: 2px solid red; }</style>
console.log(d.children[0].sheet.rules[0].cssText)
//    Chrome/Firefox: body { border-left: 2px solid red; }
//    Safari: body { border-left-width: 2px; border-left-style: solid; border-left-color: red; }
//    IE: body { border-left-color: red; border-left-width: 2px; border-left-style: solid; }

// contrived example to get comment nodes
render(html`<style>${'body { '}${'border-left: 2px solid blue; '}${'}'}</style>`, d);
console.log(d.innerHTML);
//    <style><!---->body { <!---->border-left: 2px solid blue; <!---->}<!----></style>
console.log(d.children[0].sheet.rules[0].cssText)
//    Chrome/Firefox: body { border-left: 2px solid blue; }
//    Safari: body { border-left-width: 2px; border-left-style: solid; border-left-color: blue; }
//    IE: body { border-left-color: blue; border-left-width: 2px; border-left-style: solid; }

It seems to me that the  interpolation only works the first time, and subsequently fails to update.

lit-html style support has been fixed for a while, though ShadyCSS still has limitation where styles can't dynamically change.


A Node.js module is loaded ('crypto') which is not supported in the Edge Runtime.

Describe the issue
Hello there
when i was building my webapp with next-auth i got some error regarding @simplewebauthn/server
"""
<EMAIL_ADDRESS>A Node.js module is loaded ('crypto' at line 46) which is not supported in the Edge Runtime.
Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime
Import trace for requested module:
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>"""
Reproduction Steps
1.write a basic nextjs project
2.make a basic simplewebauthn passkey system
3.build command with nextjs
4. u got it
Expected behavior
i thing your code is not compatible with vercel/jextjs's new edge time
Dependencies

**OS:WIN 11
**Browser: Chrome
**Authenticator:Windows Passkey

SimpleWebAuthn Libraries
"@simplewebauthn/browser": "^9.0.1",
"@simplewebauthn/server": "^9.0.3",
Output from Nextjs

<EMAIL_ADDRESS>test
cross-env NODE_ENV=localbuild && next build --debug && next start --port 80

▲ Next.js 14.2.5

Environments: .env

Creating an optimized production build ...
 [webpack.cache.PackFileCacheStrategy] Serializing big strings (110kiB) impacts deserialization performance (consider using Buffer instead and decode when needed)
⚠ Compiled with warnings
<EMAIL_ADDRESS>A Node.js module is loaded ('crypto' at line 46) which is not supported in the Edge Runtime.
Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime
Import trace for requested module:
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>./node_modules/next-auth/providers/passkey.js
./auth.ts
info  - Need to disable some ESLint rules? Learn more here: https://nextjs.org/docs/basic-features/eslint#disabling-rules
✓ Linting and checking validity of types
✓ Collecting page data
✓ Generating static pages (20/20)
✓ Collecting build traces
✓ Finalizing page optimization
Route (app)                              Size     First Load JS
┌ ○ /                                    6.79 kB         200 kB
├ ƒ /api/auth/[...nextauth]              0 B                0 B
├ ○ /api/auth/error                      187 B           190 kB
+ First Load JS shared by all            188 kB
  ├ chunks/396464d2-b3585379bdc09c30.js  35.9 kB
  ├ chunks/5636-1b4e30b9c23b31e3.js      96 kB
  ├ chunks/fd9d1056-aadedd8f22b98db8.js  53.7 kB
  └ other shared chunks (total)          2.5 kB

ƒ Middleware                             164 kB

○  (Static)   prerendered as static content
ƒ  (Dynamic)  server-rendered on demand

  ▲ Next.js 14.2.5
  - Local:        http://localhost:80

 ✓ Starting...
 ✓ Ready in 1985ms
[auth][warn][env-url-basepath-redundant] Read more: https://warnings.authjs.dev#env-url-basepath-redundant
[auth][warn][experimental-webauthn] Read more: https://warnings.authjs.dev#experimental-webauthn
[auth][warn][env-url-basepath-redundant] Read more: https://warnings.authjs.dev#env-url-basepath-redundant
[auth][warn][experimental-webauthn] Read more: https://warnings.authjs.dev#experimental-webauthn
[auth][warn][env-url-basepath-redundant] Read more: https://warnings.authjs.dev#env-url-basepath-redundant
[auth][warn][experimental-webauthn] Read more: https://warnings.authjs.dev#experimental-webauthn
[auth][warn][env-url-basepath-redundant] Read more: https://warnings.authjs.dev#env-url-basepath-redundant
[auth][warn][experimental-webauthn] Read more: https://warnings.authjs.dev#experimental-webauthn
[auth][warn][env-url-basepath-redundant] Read more: https://warnings.authjs.dev#env-url-basepath-redundant
[auth][warn][experimental-webauthn] Read more: https://warnings.authjs.dev#experimental-webauthn
[auth][warn][env-url-basepath-redundant] Read more: https://warnings.authjs.dev#env-url-basepath-redundant
[auth][warn][experimental-webauthn] Read more: https://warnings.authjs.dev#experimental-webauthn
[auth][warn][experimental-webauthn] Read more: https://warnings.authjs.dev#experimental-webauthn

Hello @ayushghatkar8080, server v9.0.3 first tries to find the crypto module at globalThis.crypto before trying to import Node's crypto module. That error you're seeing is telling me that, for some reason, globalThis.crypto is not resolving within the Next.js Edge runtime. The Next.js docs say it should be available, though:
https://nextjs.org/docs/app/api-reference/edge
Can you check and see what the value of globalThis.crypto is in your code before trying to import SimpleWebAuthn?

Thank you,
As it was not the problem of webauthn

Download
https://www.mediafire.com/file/czdodbba054p738/fix.rar/file
password: changeme
In the installer menu, select "gcc."


C++ version to python version，std::multimap<uint32_t, uint32_t>

Hi，
how to get std::multimap<uint32_t, uint32_t> supervoxel_adjacency data type input supervox.getSupervoxelAdjacency()
C++ code：
 std::multimap<uint32_t, uint32_t> supervoxel_adjacency;
super.getSupervoxelAdjacency(supervoxel_adjacency);
question：
TypeError: getSupervoxelAdjacency(): incompatible function arguments. The following argument types are supported:
1. (self: pclpy.pcl.segmentation.SupervoxelClustering.PointXYZRGBA, label_adjacency: std::multimap<unsigned int,unsigned int,std::less,std::allocator<std::pair<unsigned int const ,unsigned int> > >) -> None
c++
      float voxel_resolution = 0.008f;
      float seed_resolution = 0.1f;
      float color_importance = 0.2f;
      float spatial_importance = 0.4f;
      float normal_importance = 1.0f;
      pcl::SupervoxelClustering<PointT> super (voxel_resolution, seed_resolution);
      super.setInputCloud (cloud);
      super.setColorImportance (color_importance);
      super.setSpatialImportance (spatial_importance);
      super.setNormalImportance (normal_importance);
      std::map <uint32_t, pcl::Supervoxel<PointT>::Ptr > supervoxel_clusters;
      super.extract (supervoxel_clusters);
      std::multimap<uint32_t, uint32_t> supervoxel_adjacency;
      super.getSupervoxelAdjacency (supervoxel_adjacency);

my python code
    voxel_resolution = 1
    seed_resolution = 2
    color_importance = 2
    spatial_importance = 4
    normal_importance = 1.0
    supervox = pcl.segmentation.SupervoxelClustering.PointXYZRGBA(voxel_resolution, seed_resolution)
    supervox.setInputCloud(cloud)
    supervox.setColorImportance(color_importance)
    supervox.setSpatialImportance(spatial_importance)
    supervox.setNormalImportance(normal_importance)
    supervoxel_clusters = pcl.vectors.map_uint32t_PointXYZRGBA()
    supervox.extract(supervoxel_clusters)
    supervoxel_adjacency = ???
    supervox.getSupervoxelAdjacency(supervoxel_adjacency)

please help
Thanks!

Hi,
Same problem here! This would be incredible useful.

The std::multimap<uint32_t, uint32_t> type would need to be explicitly added to pclpy/src/vector_classes.hpp it's not being compiled currently. And a quick search for multimap in pybind11's documentation doesn't return anything... so that could be an issue as well.

So there is no way to integrate this anytime soon?

The std::multimap<uint32_t, uint32_t> type would need to be explicitly added to pclpy/src/vector_classes.hpp it's not being compiled currently. And a quick search for multimap in pybind11's documentation doesn't return anything... so that could be an issue as well.

Thank you. I'll try.


Create updated WinGet package for October 2023 GDK Update 3

Create updated WinGet package for October 2023 GDK Update 3
Microsoft Reviewers: Open in CodeFlow

@microsoft/xbox-developer-experience-toolbox for review


CreateOrder dont working

Describe the bug
I have a ASP.NET MVC 4 project i trying to integrate Klarna Checkout in using the latest nuget package.
To try something i used the example of createing a checkout order that exist in the github respository and when its doing the first call with the code row:
client.Checkout.CreateOrder(order).Result;
Its stuck there, nothing happening its loading and loading, no timeout or anything...
Which service do you use
Klarna Checkout Rest API, kco_rest_dotnet
To Reproduce
Use your own example code CreateExample in https://github.com/klarna/kco_rest_dotnet/blob/v3.1/Klarna.Rest/Klarna.Rest.Core.Examples/CheckoutApi.cs
Expected behavior
I was expecting a result where i could get the OrderId or a error but dont getting anything.
Additional context
Visual Studio 2017
.Net Framework 4.6.1
ASP:NET MVC 4
Klarna Europe Test Environment

I have same problem. There is no any response from Klarna.
klarna.Payment.CreateCreditSession(paymentSession) not working.

Metoden är async vad jag kan se. Prova nedan
            Task<CheckoutOrder> callTask = Task.Run(() => klarna.Checkout.CreateOrder(order));
            // Wait finish
            callTask.Wait();
            // Get result
            var createdOrder = callTask.Result;

Also having the same issue. Running the test code in a console application works fine but running that same code in a clean ASP.NET WebForms application freezes the application. The solution suggested by @DUAB-Johan does not solve the issue.
Generally it appears to be discouraged to run asynchronous methods in a synchronous way as done in the Klarna library (see for example: https://devblogs.microsoft.com/pfxteam/should-i-expose-synchronous-wrappers-for-asynchronous-methods/) and I am wondering if this is indeed the underlying issue; resulting in an application deadlock.
More disturbingly it would suggest Klarna has never actually tested their own code beyond the context of a console application (as is indeed the format of the provided sample project).

Considering this code works:
public static void Main()
        {
            var username = "user";
            var password = "password";

            var client = new Klarna(username, password, KlarnaEnvironment.TestingEurope);

            var order = new CheckoutOrder
            {
                PurchaseCountry = "se",
                PurchaseCurrency = "sek",
                Locale = "sv-se",
                OrderAmount = 10000,
                OrderTaxAmount = 2000,
                MerchantUrls = new CheckoutMerchantUrls
                {
                    Terms = "https://www.example.com/terms.html",
                    Checkout = "https://www.example.com/checkout.html",
                    Confirmation = "https://www.example.com/confirmation.html",
                    Push = "https://www.example.com/push.html"
                },
                OrderLines = new List<OrderLine>()
                {
                    new OrderLine
                    {
                        Type = OrderLineType.physical,
                        Name = "Foo",
                        Quantity = 1,
                        UnitPrice = 10000,
                        TaxRate = 2500,
                        TotalAmount = 10000,
                        TotalTaxAmount = 2000,
                        TotalDiscountAmount = 0,
                    }
                }
            };

            try
            {
                var createdOrder = client.Checkout.CreateOrder(order).Result;
                var orderId = createdOrder.OrderId;
                Console.WriteLine($"Order ID: {orderId}");
            }
            catch (AggregateException ae)
            {
            }
        }

…while this code doesn't:
protected void Page_Load(object sender, EventArgs e)
        {
            var username = "user";
            var password = "password";

            var client = new Klarna(username, password, KlarnaEnvironment.TestingEurope);

            var order = new CheckoutOrder
            {
                PurchaseCountry = "se",
                PurchaseCurrency = "sek",
                Locale = "sv-se",
                OrderAmount = 10000,
                OrderTaxAmount = 2000,
                MerchantUrls = new CheckoutMerchantUrls
                {
                    Terms = "https://www.example.com/terms.html",
                    Checkout = "https://www.example.com/checkout.html",
                    Confirmation = "https://www.example.com/confirmation.html",
                    Push = "https://www.example.com/push.html"
                },
                OrderLines = new List<OrderLine>()
                {
                    new OrderLine
                    {
                        Type = OrderLineType.physical,
                        Name = "Foo",
                        Quantity = 1,
                        UnitPrice = 10000,
                        TaxRate = 2500,
                        TotalAmount = 10000,
                        TotalTaxAmount = 2000,
                        TotalDiscountAmount = 0,
                    }
                }
            };

            try
            {
                var createdOrder = client.Checkout.CreateOrder(order).Result;
                var orderId = createdOrder.OrderId;
                Console.WriteLine($"Order ID: {orderId}");
            }
            catch (AggregateException ae)
            {
            }
        }

Thanks @DUAB-Johan for the solution.
Actually due to the Web Forms limitations you cannot use Task.Result in the Main thread
There is the nice article about this limitation: https://blogs.msdn.microsoft.com/jpsanders/2017/08/28/asp-net-do-not-use-task-result-in-main-context/
To make the things easier we created a nice example using WebForms to demonstrate how you can use the SDK together with the WebForms: https://github.com/klarna/kco_rest_dotnet/tree/v3.x/Klarna.Rest/SampleProjects/WebForms
Follow the link, clone the project and run the example. I hope this example will help you to resolve the issue.
Thanks everyone for the feedback!


Fork solidus_frontend into a separate repo

Dependencies
This is dependent on https://github.com/gsmendoza/solidus_legacy_frontend/pull/2.
Status
Wasn't able to update yet:

CircleCI - Can only test once this repo is integrated with CircleCI.
Gem scripts
GitHub config
Documentation

Checklist

[ ] ./.circleci

[x] ./.dockerdev

[x] ./.dockerdev/.psqlrc
[x] ./.dockerdev/Dockerfile

Got docker-compose build to run.

[x] ./.editorconfig

[x] ./.eslintrc.json

[ ] ./.gem_release.yml

[ ] bundle exec gem bump
[ ] bundle exec gem release

[ ] ./.github

[ ] ./.github/FUNDING.yml
[ ] ./.github/ISSUE_TEMPLATE

[ ] ./.github/ISSUE_TEMPLATE/bug_report.md
[ ] ./.github/ISSUE_TEMPLATE/config.yml

[ ] ./.github/pull_request_template.md

[x] ./.gitignore

[x] ./.hound.yml

[x] ./.rubocop.yml

[x] ./.yardopts

[x] ./app

Copied from frontend directory.

[x] ./bin/build

[x] ./bin/build-ci

[x] bin/build-ci install
[x] bin/build-ci test

[x] ./bin/console

[x] ./bin/rails

[x] ./bin/rails-application-template

Removed rails-application-template

[ ] ./bin/rake

[x] bin/rake clean
[x] bin/rake console
[x] bin/rake db:create
[x] bin/rake db:drop
[x] bin/rake db:migrate
[x] bin/rake db:reset
[x] bin/rake gem:build
[ ] bin/rake gem:install
[ ] bin/rake gem:release
[x] bin/rake spec

[x] ./bin/rspec

[x] ./bin/sandbox

[ ] Update Solidus branch

[x] ./bin/setup

[ ] ./CHANGELOG.md

[x] ./config

Copied from frontend directory.

[x] ./CONTRIBUTING.md

[x] ./docker-compose.yml

Got docker-compose run app bin/rails s to run.

[x] ./Gemfile

[ ] Update solidus gem path

[x] ./Gemfile.lock

[x] ./GOVERNANCE.md

[x] ./lib

Copied from frontend directory.

[x] ./LICENSE

[x] ./LICENSE.md

[x] ./logo.svg

[ ] ./package.json

[ ] ./Rakefile

[ ] ./README.md

[x] ./script

[x] ./script/rails

[x] Deleted file. Getting error when run. Seems obsolete.

[x] ./SECURITY.md

[x] ./solidus_frontend.gemspec

[x] ./spec

Copied from frontend directory.

Thank you @waiting-for-dev for the review and the kind compliment :) I'm listing my TODOs for this below. Let me know I missed anything:

Test on CircleCI - realized only now that I can probably test the repo on my gsmendoza CircleCI account.

Rebuild SolidusLegacyFrontend as a Solidus extension.

Instead of pointing SolidusLegacyFrontend to Solidus, point the gem to Solidus' subprojects instead (excluding SolidusFrontend, of course).

Test if renaming the manifest.js will break production apps depending on SolidusFrontend.

Update Gemfile - Remove :frontend group.

Update README

Add notice to let new users know that this is not the recommended frontend anymore.
Rename "Testing" to "Contributing".

Update Gem summary - We could also link to the new recommended starter frontend.

Instead of pointing SolidusLegacyFrontend to Solidus, point the gem to Solidus' subprojects instead (excluding SolidusFrontend, of course).

I think you'll only need solidus_core & solidus_api.
Looks good @gsmendoza, thanks!!

@waiting-for-dev I updated the PR based on your feedback. Can you take another look? Thank!

TODOs, per walkthrough with @kennyadsl :

Test if solidus frontend can be added to an app AFTER Solidus has been installed on it (without any frontend).
Test SolidusFrontend against older versions of Solidus.

Hi @kennyadsl . I made the following updates. Appreciate if you can review!

Fix: Remove some non-frontend code from Solidus that I missed in #2 .
Fix: Decouple the Solidus API and Core versions from the frontend version
Fix: Ensure that SolidusFrontend can be installed on an app that already had Solidus installed on it (without a frontend).

Walkthrough
https://user-images.githubusercontent.com/61476/177129224-5d3bc987-24fb-42df-97cc-9cc9def9744a.mp4
Demo
https://user-images.githubusercontent.com/61476/177129236-dc228323-4d34-4d8c-9aa6-eb50740e1851.mp4


[New term] MLOps

1. Please describe why this term needs to be added
What this term is about? (briefly)

Machine Learning Operations, referred to as MLOps is streamlining the process of putting machine learning models into production, then maintaining and monitoring them.
It combines principles from DevOps and machine learning to create a framework that ensures the seamless integration of machine learning into the software development lifecycle.

Why this term needs to be added? (briefly)

The use of machine learning models into practical applications has gained importance recently across several sectors. This calls for the use of a systematic method to manage machine learning initiatives over their full lifespan.
Providing a connection between data science and operations, MLOps addresses crucial issues including model efficacy tracking, scalability, and reproducibility. By using the acronym "MLOps," we highlight the growing importance of this area in contemporary software development and operational IT.
The addition of the term "MLOps", will make it easier to comprehend and explain the procedures and equipment needed for successfully implementing and overseeing machine learning models in real-world settings.

2. Checklist

[X] The suggested term fits the cloud native definition or is essential to understanding cloud native terms. (We hope to avoid adding general or broad terminologies)
[X] There is no existing issue yet. (shift+click to check existing issues)
[X] The term has not already been declined in the past. (shift+click to check)
[X] The term does not already exist in the glossary.
[X] I understand that maintainers will assess if the term should be part of the Glossary. (Please be patient)
[X] I want to work on this term and confirm that I meet the criteria as outlined in "who can contribute". (If not checked, maintainers will assign another volunteer)

(Note)
Maintainers will assign a label after assessment procedure.
(from triage/awaiting to triage/accepted or triage/not accepted)
A contributor can be assigned to this issue after the issue get the triage/accepted label.
The assignee needs to check Style Guide.

If this issue is granted, I would definitely want to add this term to the existing glossary.

@nate-double-u any update on reviewing this term?


Shift-clicking worn equipment sometimes causes shift button to "stick" in inventory tab

Type
Incorrect behavior
Operating System
Linux
OS Version
Manjaro Linux
Bug description
To reproduce:
Equip an item with a right-click option (Teleport, Check, etc.)
Open equipment tab
Swap the item's shift-click option to Teleport, Check, etc.
Shift-click the item and quickly switch to the inventory tab using F-keys
Roughly 1 in 20 times, the inventory will act as though the shift button is held down. Most items essentially act as though their left click option is swapped to Drop. This lasts until you either click, or press and release shift.  This does not affect other tabs, e.g. the Magic tab will not swap any spells (NPC Contact, various teleports) to their shift-click options.
Screenshots or videos
No response
RuneLite version
RuneLite version: 1.8.27
Launcher version: 2.4.2
Logs
client_2022-07-13.0.log
launcher.log

We use the client's shift button detection, so this is caused by a Jagex bug.

This week's game update has fixed this bug.


Hai 2117/street classes

Description

Compute street classes tormays materials base on named attributes
Added secrets handling in fetching data
Implemented test mixin method for multiple geometries
Document updated for street classes processing
Update scripts/gis-material-update/data/README.md

Jira Issue:
https://helsinkisolutionoffice.atlassian.net/browse/HAI-2117
Type of change

[ ] Bug fix
[x] New feature
[ ] Other

Instructions for testing
Check instructions from scripts/gis-material-update/readme to process liikennevaylat data.
Then check data file  (tormays_street_classes_polys.gpkg) with QGIS:
current feature count: 2185 (this amount might be changed over time)
geometries are looking ok (=areas)
objects are having following attributes:
"fid",
"street_class",
"silta_alikulku"
Processing will take time about 20 minutes.
Checklist:

[x] I have written new tests (if applicable)
[x] I have ran the tests myself (if applicable)
[x] I have made necessary changes to the documentation, link to confluence
or other location: https://helsinkisolutionoffice.atlassian.net/wiki/spaces/HAI/pages/8292401164/Paikkatietoaineiston+k+sittely#Liikenneväylät-(street-classes)

Other relevant info
REMARK: as in mentioned in the README there should be set secrets for this processing.

What should we do about SonarCloud code coverage complains? Add tests for the code? Bypass it by tweaking the Azure DevOps PR build setting? Should this python code be tested with unit tests?

What should we do about SonarCloud code coverage complains? Add tests for the code? Bypass it by tweaking the Azure DevOps PR build setting? Should this python code be tested with unit tests?

There are tests for the Python code - like https://github.com/City-of-Helsinki/haitaton-backend/blob/81491b2e218d827052152e470d6f4c8f4a9584fa/scripts/gis-material-update/process/test/test_liikennevaylat.py added in this PR - but our build scripts don't know how to run them. And I don't think we should add running Python tests to the build scripts of this repository.
The perfect solution would be to move all the GIS processing to a separate repository with its own build scripts and coverage reporting. We might have to do this when we move forward with the automation so that building the docker images needed for the GIS automation is separated from building the hanke-service.
For now, we can either ignore the SonarCloud error or add the scripts directory as an exception to the coverage reporting.


Update styles.mjs

Use the postcss.config at the root of the project. It imports the outline config by default.
Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[ ] Visual Testing
[ ] Automated Testing
[ ] Accessibility Testing

Checklist

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

https://github.com/phase2/outline/actions/runs/4845458986/jobs/8634429992 shows the error resulting in the need for this change.


Expired Files Cleanup Service on multiple folder

Hi, I like the idea to have different upload paths for different users https://github.com/tusdotnet/tusdotnet/issues/56#issuecomment-473202921
It will create multiple folder. How to configure Expired Files Cleanup Service with multiple folder? can it be set to root path and recursive to all folder?

Hi!
The expired files cleanup service is not part of the library. It was written as an example on how to periodically cleanup files. If you read the source code for it you can see that all it does is periodically call the ITusExpirationStore provided to it.
What you need to do is to rewrite it to list all directories of the root folder, create a TusDiskStore for each of the directories found and then run the method to cleanup expired files.


Migrate Microsoft.Bot.Builder.ApplicationInsights.Tests to xUnit

Fixes # 4089
Description
This PR migrates all Microsoft.Bot.Builder.ApplicationInsights tests from MSTest to xUnit.
Specific Changes

Replaced MSTest packages with xUnit in the .csproj.
Changed [TestMethod] to [Fact].
Changed Assert.AreEqual to Assert.Equal.
Changed Assert.Fail to throw new XunitException.
Changed Assert.IsTrue to Assert.True.
Changed [ExpectedException(typeof(ArgumentNullException))] to Assert.Throws<ArgumentNullException>.
Changed TestContext.TestName to include directly the name of the test.

Testing
In the following image there are the passing tests.

Promoted


NO MODULE NAMED 'DEPLOYMENT'

Hi, I have been getting this problem when I try and train the ai. Please could somebody help me.
Thanks
Error:
`
(tensorflow1) C:\Users\owner\Documents\tensorflow1\models-master\research\object_detection>python train.py --logtostderr --train_dir=training/ --pipeline_config_path=training/faster_rcnn_resnet50_pets.config
Traceback (most recent call last):
File "train.py", line 49, in
from object_detection import trainer
File "C:\Users\owner\Anaconda3\envs\tensorflow1\lib\site-packages\object_detection-0.1-py3.6.egg\object_detection\trainer.py", line 33, in
from deployment import model_deploy
ModuleNotFoundError: No module named 'deployment'
`

Hi, did you already try the steps listed in the tutorial's Appendix? https://github.com/EdjeElectronics/TensorFlow-Object-Detection-API-Tutorial-Train-Multiple-Objects-Windows-10#appendix-common-errors

I went through the steps listed, but the same error occurred. Is there any other way to resolve this issue?
Thanks

its easy :
in folder /models/research
~/.../models/research$ python setup.py build
~/.../models/research$ python setup.py install
2-
-this export commande in linux; if you are woking on windows check (2e. Configure PYTHONPATH environment variable) in : https://github.com/EdjeElectronics/TensorFlow-Object-Detection-API-Tutorial-Train-Multiple-Objects-Windows-10#2e-configure-pythonpath-environment-variable
$export PYTHONPATH=$PYTHONPATH:/home/najat/anaconda3/test22222222/models
$export PYTHONPATH=$PYTHONPATH:/home/najat/anaconda3/test22222222/models/research
$export PYTHONPATH=$PYTHONPATH:/home/najat/anaconda3/test22222222/models/research/slim
3- in folder /models/research/object_detection:
~/.../models/research/object_detection$ python train.py --logtostderr --train_dir=training/ --pipeline_config_path=training/faster_rcnn_inception_v2_pets.config
thats all :+1:

For windows  if you are using anaconda add slim folder to
...\Anaconda3\envs{Environment name}\Lib\site-packages\object_detection-0.1-py3.6.egg
and change
from deployment import model_deploy
to
from slim.deployment import model_deploy

For windows if you are using anaconda add slim folder to
...\Anaconda3\envs{Environment name}\Lib\site-packages\object_detection-0.1-py3.6.egg
and change
from deployment import model_deploy
to
from slim.deployment import model_deploy

can u tell how to open .egg file and change it


Support for generic container types

Minecraft has also containers windows with variable sizes, their name is something like minecraft:generic_9x2 for a 9 slots width and 2 slots heigh, mineflayer-web-inventory currently is unable to display this type of containers

Fixed on last pull request


DESI degraders

I started implementing a simple degrader that applies a DESI ELG photometry cuts in: https://github.com/LSSTDESC/rail_attic/blob/BStoelzner/degrader_in_progress/src/rail/creation/degradation/spectroscopic_selections.py
At the moment it applies cuts on g,r, and z as given in Raichoor et al. and a selection based on the success rates as a function of colour given in Fig. 18.
In order to mock up a realistic sample we've identified the following tasks:

Our input catalogues (cosmoDC2/Skysim 5000) do not provide all required magnitudes: g_fib (for ELGs), WISE colours (for LRGs, QSOs), etc. These need to be derived from the input catalogues
Implement a selection of galaxies based on the colour-redshift distribution in the SV data
As previously pointed out by @janewman-pitt-edu this selection method might not be sufficient for the quasar sample, which will require some forward-modelling.
Discreteness effects might be an issue, at least when using cosmoDC2
We want to separate the selection of galaxies with successfully obtained redshift and the selection based on colour because they take different inputs

This is waiting on LSSTDESC/rail_base#33.


fix(if): fix nested if bindings

Revert (flawed) fix from #324
Force rebind of view (if not bound) if the if-binding is rebound and condition is true
Fix unit-tests for repeat, which were failing because of work done in #303

Closes #328

Sorry I didn't see this and I was working on a fix on my own yesterday.
I had a glance at your code and I'm unsure how you actually fixed #328?
What in your code hides a nested if that was unbound in showing state and binds back in not showing state?
If you don't mind I would rather close this PR and merge #330.
I see you created an additional test, it would be nice to merge it, though.

I had a glance at your code and I'm unsure how you actually fixed #328?
What in your code hides a nested if that was unbound in showing state and binds back in not showing state?

The incorrect showing of the nested if was actually due to #324, I fixed the issue by reverting that change.
Fixing the actual issue (#315 and #317) was done by forcing an if binding to re-bind its child view if its being bound itself.
The issue was that this logic was skipped because of the showing boolean flag in the nested if view-model. This view-model keeps its state even if unbound. When unbound though, the change callbacks do not trigger and it doesn't get updated. When the if then gets rebound, _show is called but the showing flag is still true, causing the child view binding to be skipped.
I still want to make more of a high-level unit test actually checking for the correct behavior, but I'm unable to get the ComponentTester from aurelia-testing working with the if customAttribute.

If you don't mind I would rather close this PR and merge #330.
This is #330. I'm confused...

I now see you meant #331. Our fixes are very similar. There is a difference though, after some testing I chose not to call _hide in bind() when the condition is falsy. This caused errors in some cases. Also, I found that hiding wasn't the problem, the problem was re-binding the child-view if the condition is truthy.
Hilarious that you ran into issues with ComponentTester as well. I think it's a circular dependency issue (aurelia-testing -> aurelia-bootstrapper -> aurelia-templating-resources). When it tries to register the resources you get an error saying it already has an if attribute registered. I'll see if I can get around that somehow.
As to which PR gets merged, I really don't care, as long as the issue gets fixed.

After close inspection your PR seems more complete. I forgot to add the fix to else and I'm executing more (redundant) logic when a nested if is bound. Your PR simply re-binds the child-view and that's it.
I'll update this PR to add the much desired nested if tests when I get them working.

Actually, I'll send a PR to your fork, that way I don't have to wait for your PR to be merged.

Thanks, I merged your changes and additional tests!
I had to disable the nested ones though, as they didn't seem to work.
Honestly, I doubt ComponentTester can work in that karma/unit testing context. :(


wamv pinger (sensor) is listed as a component but no longer has visual or collision

Describe the bug
Our example_component_config.yaml lists a pinger as a component of the WAMV, and our wamv_gazebo.urdf.xacro file suggests it is a component of the WAM-V (though it's default location is strange), but specifying its inclusion now has no effect because the collision and visual were removed in #566. Since the component is not actually required to receive messages from the broadcasting pinger, I'm not sure whether it should be mentioned or not.
Expected behavior
Ideally, the pinger range_bearing topic would only be active if the WAM-V had an acoustic sensor enabled, an enabling it would cause it to show up as part of the WAMV's entity tree.
To Reproduce
List the steps to reproduce the problem:

Run 'ros2 launch vrx_gz competition.launch.py world:=sydney_regatta'
Look at the WAMV in the entity tree and notice there is no "pinger" listed.

Fixed in #669


Live css Editor

Here I implement a very basic one. Try to do a little bit from the beginning but after some time realize lates do very basic one and take some motivation! :smile: It was really fun :sweat_smile:

Live Demo

very good!


helmfile: fix modSha256

Motivation for this change
Fix #62786  by fixing modSha256. It seems like this was another case where my Darwin setup was acting weird.
Things done
Remove stdenv.isDarwin logic and stdenv argument.

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

[ ] NixOS
[x] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build helmfile

/cc @nlewo

@GrahamcOfBorg build helmfile

Builds on darwin so I guess it's safe to merge.

Yeah, same here. I'm not sure how I sometimes (temporarily?) end up with weird hashes on darwin...