Get Data from the Internet

URL of codelab:
https://developer.android.com/codelabs/basic-android-kotlin-compose-getting-data-internet?continue=https%3A%2F%2Fdeveloper.android.com%2Fcourses%2Fpathways%2Fandroid-basics-compose-unit-5-pathway-1%23codelab-https%3A%2F%2Fdeveloper.android.com%2Fcodelabs%2Fbasic-android-kotlin-compose-getting-data-internet#7
Specify the language of the codelab if it is not English:
Spanish
In which task and step of the codelab can this issue be found?
Add kotlinx.serialization library dependencies
Describe the problem
In this step you tell us to implement id("org.jetbrains.kotlin.plugin.serialization") version "1.8.10" and if this doesn't match the version of Kotlin you are using you would get an error trying to run the app at the end of the codelab.
Steps to reproduce?

Go to... the device to run the app at the final step of the codelab.
Click on... the app icon to run it.
See error... the error in the logcat says: Caused by: kotlinx.serialization.SerializationException: Serializer for class 'MarsPhoto' is not found. Please ensure that class is marked as '@Serializable' and that the serialization compiler plugin is applied.

Versions
_Android Studio version:_17.0.11+0--11852314
_API version of the emulator:_35
Additional information
Include screenshots if they would be useful in clarifying the problem.

I encountered the same error here. This step is not mentioned in the codelab, but in my case, I managed to proceed by adding the plugin to the build.gradle at the project level as well:
id("org.jetbrains.kotlin.plugin.serialization") version "1.8.10" apply false


Request: Update repository source (1.12)

Latest commit 51aead9  on 23 Nov

Can you commit and push to the repository latest source please?

Thanks!


Error when specifying nonexistent environment

I've run into small issue when I accidentally specified wrong environment name which triggers this error:
upgrade --environment env --service betag-wb-frontend
Traceback (most recent call last):
  File "/usr/local/bin/upgrade", line 11, in <module>
    load_entry_point('rancher-gitlab-deploy==1.2', 'console_scripts', 'rancher-gitlab-deploy')()
  File "/usr/local/lib/python2.7/site-packages/click-6.7-py2.7.egg/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/click-6.7-py2.7.egg/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python2.7/site-packages/click-6.7-py2.7.egg/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python2.7/site-packages/click-6.7-py2.7.egg/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/rancher_gitlab_deploy-1.2-py2.7.egg/rancher_gitlab_deploy/cli.py", line 68, in main
    if not environment_id:
UnboundLocalError: local variable 'environment_id' referenced before assignment

Would be great to get same feedback as for nonexistent service:
Error: Unable to find a service called 'betag-wb-frontend', does it exist in Rancher?

Thanks, I'll fix that

Fixed in 542ab54


Error running mongoose-gen

Trying out mongoose-gen to see if I can save myself some time generating quite a few relatively large schemas. Getting this error after installing monoose-gen, mongoose and adapting your index.js example.
    node_modules/mongoose-gen/lib/generator.js:173
    return new connection.Schema(definition, options);
                         ^
TypeError: Cannot read property 'Schema' of undefined

Is there something more I can furnish you to help troubleshoot this?

Hi @elewis33. Yeah, can you give me some details about your environment, more precisely the version of nodejs and mongoose you just installed?

npm list mongoose -g
/usr/local/lib
├──<EMAIL_ADDRESS>└─┬<EMAIL_ADDRESS>  └──<EMAIL_ADDRESS>node --version
v4.2.3

Right! Thanks for pointing this out!
It seems I need to do some work on it to make it compatible with mongoose
v4+ and node v4+. I can't give you a close ETA, because of the holidays,
but the new version should be out by the 4th of January.
If you want to, you can help out with that. There is a contribution guide
you may want to follow
https://github.com/topliceanu/mongoose-gen#contributing.
Again, thanks for reaching out,
Alex
On Tue, Dec 22, 2015 at 1:14 PM, elewis33<EMAIL_ADDRESS>wrote:

npm list mongoose -g
/usr/local/lib
├──<EMAIL_ADDRESS>└─┬<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>node --version
v4.2.3
—
Reply to this email directly or view it on GitHub
https://github.com/topliceanu/mongoose-gen/issues/18#issuecomment-166613126
.

--
Alexandru Topliceanu

@elewis33 My worry was that the new versions of mongoose/node would not be backward compatible.
I updated to node lts v4.2.4 and mongoose v4.3.4.
I checked the tests and the examples and they all work fine.
Consequently, I published a new PATCH of this lib with latest mongoose package.
Looking at your error, it  may be the case that you are using the getSchema method without providing the mongoose connection object. See the new api. This was not required in mongoose-gen v1, so it's a breaking change in v2. Passing an external connection instance gives more flexibility and makes testing easier.
Is that the case in your code?


Get-DSCPullServerAdminStatusReport throws "Cannot open any more tables" error

I know I mentioned this on Slack but I thought it would probably be best to raise it here instead.
I am using version 0.4.2 on a Server 2012 R2 pull server and have stopped IIS with iisreset /stop before making a copy of the Devices.edb file to a temporary location. Then against this copy of the DB I run the following commands and get the error as shown below.
Import-Module DSCPullServerAdmin
New-DSCPullServerAdminConnection -ESEFilePath '.\TempDevices.edb'
Get-DSCPullServerAdminStatusReport

Get-DSCPullServerESERecord : Cannot open any more tables (cleanup already attempted)
At line:2092 char:17
+                 Get-DSCPullServerESERecord @eseParams
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : OperationStopped: (:) [Write-Error], EsentTooManyOpenTablesException
+ FullyQualifiedErrorId : Microsoft.Isam.Esent.Interop.EsentTooManyOpenTablesException,Get-DSCPullServerESERecord

Have you any idea why I am running into this?
As I mentioned today on Slack I had no issues when using the Copy-DSCPullServerAdminData command to create a fresh DB and import all my node registrations across. This temp DB is a copy of the fresh DB so there shouldn't be any old StatusReports hanging around only ones sent since this morning.
Cheers.

Did you copy all the other files to your temporary location as well? jfm, chk, log and jrs files should all be in the same directory before creating the connection

I have to admit only copied the .edb file. That seemed to work on its own for the registration data so I had assumed I didn't need the logs files etc. I will try again later will all files and let you know the outcome.

Unfortunately, I have just tried again and am getting the same error. This time, to rule out my copying of the database being an issue, I just ran iisreset /stop and then tried to run the Get-DSCPullServerAdminStatusReport command directly against the live DB i.e. C:\Program Files\WindowsPowerShell\DscService\Devices.edb. As I say, no change in the outcome unfortunately, still getting the error.

Ok. I'll need the files to check what is going on. Could you attach a zip or mail them to me at<EMAIL_ADDRESS>

For reference when people are having the same / similar issue and find this one
The files that came in via mail where 2 sets of files combined (this is a guess but the errors indicated as such). From the original (full edb) and from the new one. This created another issue where esent api was unable to mount at all.
I managed to fix edb access by isolating devices.edb without any other files in the directory.
Next I ran New-DSCPullServerAdminConnection -ESEFilePath .\Devices.edb which throws an error but recreates new chk, jrs and other files.
Now I could run esentutl.exe /p .\Devices.edb to repair the edb
New-DSCPullServerAdminConnection will now succeed and registrations are accessible.
I was still not able to get all the reports out because of the too many tables open issue. After some manipulation of esent params I did not succeed to get any further and decided to just copy out the registrations into a new edb and stop troubleshooting.

I may have found a way to solve the issue by preloading the column definitions instead of doing it for each entry. I have opened pull request #59 for it.


Serve images, JS & HTML through Nginx rather than Node server

Ignore mention above, the two issues are not related


chore(deps): massive major deps update

Description
This is a try to update all missing dependencies.
This could potentially introduce hidden breaking changes :thinking: So a careful review and maybe a beta version is needed to test the future stability.
Additional context
Some deps could still not be updated successfully due to major breaking changes:

ws

needs new TS type updates

cac
estree-walker
strip-ansi

needs esm

What is the purpose of this pull request?

[ ] Bug fix
[ ] New Feature
[ ] Documentation update
[x] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[x] Read the Pull Request Guidelines and follow the Commit Convention.
[x] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[ ] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

For protocol: https://stackoverflow.com/a/64723740/6897682

Fuuu**** :rage: I don't know how to solve this. Don't want to downgrade to v15 :confused:
    scripts/jestPerTestSetup.ts:59:23 - error TS2339: Property 'page' does not exist on type 'typeof globalThis'.

    59   const page = global.page
                             ~~~~

Seems we need to switch to esm soon...

SOME GREEN TICKS :heavy_check_mark: finally :partying_face:
... starting with some migrations and cleanups :smiley:


investigate switching to signed URLs

We currently rely on public read backing stores, we should probably make these private and instead only serve them through signed URLs
This may be less relevant if we move to #194 / proper CDNs in general versus routing to regional cloud storage. TBD if that's actually cost effective cc @ameukam
/priority backlog
/sig k8s-infra
xref: #196

/lifecycle frozen
I think this should remain on the backlog, this remains a gap in the current implementation but not one that is currently giving us real world problems ... yet


[Feature]: Please add hyperlink support for terminal blocks

Feature description
I am migrating from Warp and have noticed a missing feature in Wave. Seeing the output of a test run which may contain a stack trace, I have become accustomed to being able to cmd-click a source code reference and have that open up in my ide.
In the snapshot shown, using Warp, I would be able to cmd-click any source code reference, eg:

/Users/plastikfan/dev/github/snivilised/pants/worker-pool-func-manifold_test.go:155
/Users/plastikfan/dev/github/snivilised/pants/worker-pool-func-manifold.go:108
/Users/plastikfan/dev/github/snivilised/pants/worker-pool-func-manifold.go:116

etc...
The same goes for web links that may appear in console output, they should also be cmd-clickable in a simlar fashion.
Implementation Suggestion
No response
Anything else?

Fyi this was a bug, there was a regression in v0.8.11. The linked PR should fix this. There's still some improvements we could make like linking file paths to a preview widget, but that'll be a future enhancement


Name node installations

Right now the node installations are identified by their version number. This totally makes sense if the version is all you care about. But if you really want to know what is installed inside that node (via npm install -g) you have no way of knowing.
It would be great if we maybe could "name" our node installations that are shown together with the version numbers on nvm list.

First, I think this is a great idea. However; I think this is more of a workflow thing and I see NVM4W being more utilitarian. Implementing something like this requires metadata about each installation, which isn't a bad thing, but I think this is a "tip of the iceburg" situation with much more to it.
That said, I have been prototyping a visual desktop app for managing Node environments in my spare time. Since my time is pretty limited right now, not a lot of progress has been made. However; I do have it detecting npm modules and different versions of Node.

I'm also experimenting with a JSON reporting feature in NVM4W. I'm not yet sure if it really makes to have this in NVM4W or the desktop tool, but the broader point is I'm experimenting with a few different ideas around this subject.

Thanks.
As I read my own suggestion again, here is an idea for a lightweight way to implement something like that:

nvm annotate "contains CLI v2.3" (or similar) creates a file nvm.config in the currently used node version's folder.
nvm list then reads these and outputs them in the list.

That's it ;)

Noted and appreciated. I like the annotation concept.


proto(popup): @mentions

proto(popup): @mentions
NO NEED TO REVIEW, WON'T BE MERGED
This Draft PR shows users how they could achieve @mentions scenario.
Steps to test:

build with yarn and yarn start
navigate to: http://localhost:8080/prototype-mentions
type text into editable are; use the '@' key to mention people

1. with Dropdown
Main files:

react/docs/src/prototypes/mentions/MentionsEditor.tsx
react/docs/src/prototypes/mentions/MentionsDropdown.tsx

2. with Popup
Main files:

react/docs/src/prototypes/mentions/MentionsEditor.tsx
react/docs/src/prototypes/mentions/MentionsPopup.tsx

This PR won't be merged because we do not recommend the version with Popup. We recommend using the Dropdown. This prototype is already merged.

Warnings

:warning:
There are no updates provided to CHANGELOG. Ensure there are no publicly visible changes introduced by this PR.

  Generated by :no_entry_sign: dangerJS


Fix typo.

Add quotation mark.

Thanks for this, but can you please target it against the next branch instead? You might need to re-submit the PR, so I'll close this for now.


Eslint Migration - Nextjs

Environment information
CLI:
  Version:                      1.7.3
  Color support:                true

Platform:
  CPU Architecture:             aarch64
  OS:                           macos

Environment:
  BIOME_LOG_DIR:                unset
  NO_COLOR:                     unset
  TERM:                         "xterm-256color"
  JS_RUNTIME_VERSION:           "v20.13.1"
  JS_RUNTIME_NAME:              "node"
  NODE_PACKAGE_MANAGER:         "npm/10.5.2"

Biome Configuration:
  Status:                       Loaded successfully
  Formatter disabled:           false
  Linter disabled:              false
  Organize imports disabled:    false
  VCS disabled:                 false

Workspace:
  Open Documents:               0

What happened?

Started a new Nextjs Project with Eslint
Installed biome following the get-started guide.
ran npx biome migrate eslint --write

Received Error:
Migration has encountered an error: The module '..../node_modules/eslint-config-next/index.js' cannot be loaded. Make sure that the module exists.
Expected result
It should migrate Nextjs Eslint config
Code of Conduct

[X] I agree to follow Biome's Code of Conduct

Please provide us with a minimal reproduction

Some idea: If you use a package manager that doesn't make accessible indirect dependencies, then Biome cam not be able to load these dependencies. Anyway we need more info to understand your issue.

the repro is very simple:
npm create next-app # Yes to everthing
npm install --save-dev --save-exact @biomejs/biome
npx @biomejs/biome init
npx @biomejs/biome migrate eslint --write

The reported error is not so informative and even misleading. I will open a PR to fix that.
With a proper error propagation I am getting the following error:
  ✖ Migration has encountered an error: `node` was invoked to resolve '/playroom/my-app/node_modules/eslint-config-next/index.js'. This invocation failed with the following error:
    /playroom/my-app/node_modules/@rushstack/eslint-patch/lib/_patch-base.js:167
                throw new Error('Failed to patch ESLint because the calling module was not recognized.\n' +
                      ^

    Error: Failed to patch ESLint because the calling module was not recognized.
    If you are using a newer ESLint version that may be unsupported, please create a GitHub issue:
    https://github.com/microsoft/rushstack/issues
        at Object.<anonymous> (/playroom/my-app/node_modules/@rushstack/eslint-patch/lib/_patch-base.js:167:19)
        at Module._compile (node:internal/modules/cjs/loader:1455:14)
        at Module._extensions..js (node:internal/modules/cjs/loader:1534:10)
        at Module.load (node:internal/modules/cjs/loader:1265:32)
        at Module._load (node:internal/modules/cjs/loader:1081:12)
        at Module.require (node:internal/modules/cjs/loader:1290:19)
        at require (node:internal/modules/helpers:188:18)
        at Object.<anonymous> (/playroom/my-app/node_modules/@rushstack/eslint-patch/lib/modern-module-resolution.js:11:23)
        at Module._compile (node:internal/modules/cjs/loader:1455:14)
        at Module._extensions..js (node:internal/modules/cjs/loader:1534:10)

    Node.js v22.0.0

Under the hood Biome executes the ESLint configuration files.
The problem may come from using different ESLint version in the dependency tree.
This is clearly not a Biome issue.

Even though it is not a Biome issue, it is an issue with the migration tool, no? Maybe I am misunderstanding.
The ESLint config that comes with Next works, thus the migration tool, if perfect, should be able to migrate it(?)
I just want what is best for adoption of Biome. Next is a really popular framework and i believe that if the migration tool works for Next, the adoption would increase a lot.

Our migration tool is a best effort tool.
While we try to do our best to accommodate possible bugs on our end, bugs that could come from other plugins can't be solved on our end.

Ok, and how can we migrate manually ?

The issue seems to be the same as https://github.com/microsoft/rushstack/issues/4301
Biome uses node to run the file. If you execute the following command, you will get the same error.
node ./node_modules/eslint-config-next/index.js

I think that ESLint encounters the issue, but silence this?

Ok, and how can we migrate manually ?

Reading the stack trace, you could just remove the line 56in ./node_modules/eslint-config-next/index.js and executes biome migrate sslint. This results in the following config:
{
	"linter": {
		"enabled": true,
		"rules": {
			"recommended": false,
			"a11y": {
				"noAriaUnsupportedElements": "warn",
				"noBlankTarget": "off",
				"useAltText": "warn",
				"useAriaPropsForRole": "warn",
				"useValidAriaProps": "warn",
				"useValidAriaValues": "warn"
			},
			"correctness": {
				"noChildrenProp": "error",
				"useExhaustiveDependencies": "warn",
				"useHookAtTopLevel": "error",
				"useJsxKeyInIterable": "error"
			},
			"security": { "noDangerouslySetInnerHtmlWithChildren": "error" },
			"suspicious": { "noCommentText": "error", "noDuplicateJsxProps": "error" }
		}
	}
}

The reported error is not so informative and even misleading. I will open a PR to fix that.
With a proper error propagation I am getting the following error:
  ✖ Migration has encountered an error: `node` was invoked to resolve '/playroom/my-app/node_modules/eslint-config-next/index.js'. This invocation failed with the following error:
    /playroom/my-app/node_modules/@rushstack/eslint-patch/lib/_patch-base.js:167
                throw new Error('Failed to patch ESLint because the calling module was not recognized.\n' +
                      ^

    Error: Failed to patch ESLint because the calling module was not recognized.
    If you are using a newer ESLint version that may be unsupported, please create a GitHub issue:
    https://github.com/microsoft/rushstack/issues
        at Object.<anonymous> (/playroom/my-app/node_modules/@rushstack/eslint-patch/lib/_patch-base.js:167:19)
        at Module._compile (node:internal/modules/cjs/loader:1455:14)
        at Module._extensions..js (node:internal/modules/cjs/loader:1534:10)
        at Module.load (node:internal/modules/cjs/loader:1265:32)
        at Module._load (node:internal/modules/cjs/loader:1081:12)
        at Module.require (node:internal/modules/cjs/loader:1290:19)
        at require (node:internal/modules/helpers:188:18)
        at Object.<anonymous> (/playroom/my-app/node_modules/@rushstack/eslint-patch/lib/modern-module-resolution.js:11:23)
        at Module._compile (node:internal/modules/cjs/loader:1455:14)
        at Module._extensions..js (node:internal/modules/cjs/loader:1534:10)

    Node.js v22.0.0

Under the hood Biome executes the ESLint configuration files. The problem may come from using different ESLint version in the dependency tree. This is clearly not a Biome issue.

I am having the same issue how can i fix it.

I don't have ./node_modules/eslint-config-next/index.js in my repo

I am having the same issue how can i fix it.
I don't have ./node_modules/eslint-config-next/index.js in my repo

Could you open a new issue with detailed information? It is hard to help without any information.

Reading the stack trace, you could just remove the line that imports @rushstack/eslint-patch/modern-module-resolution in ./node_modules/eslint-config-next/index.js and executes biome migrate sslint. This results in the following config:

It might be worthwhile adding this as a note in the migration doc, as this fix is likely applicable for any given NextJS project.

The issue seems to be the same as microsoft/rushstack#4301
Biome uses node to run the file. If you execute the following command, you will get the same error.
node ./node_modules/eslint-config-next/index.js

I think that ESLint encounters the issue, but silence this?

Ok, and how can we migrate manually ?

Reading the stack trace, you could just remove the line that imports @rushstack/eslint-patch/modern-module-resolution in ./node_modules/eslint-config-next/index.js and executes biome migrate sslint. This results in the following config:
{
	"linter": {
		"enabled": true,
		"rules": {
			"recommended": false,
			"a11y": {
				"noAriaUnsupportedElements": "warn",
				"noBlankTarget": "off",
				"useAltText": "warn",
				"useAriaPropsForRole": "warn",
				"useValidAriaProps": "warn",
				"useValidAriaValues": "warn"
			},
			"correctness": {
				"noChildrenProp": "error",
				"useExhaustiveDependencies": "warn",
				"useHookAtTopLevel": "error",
				"useJsxKeyInIterable": "error"
			},
			"security": { "noDangerouslySetInnerHtmlWithChildren": "error" },
			"suspicious": { "noCommentText": "error", "noDuplicateJsxProps": "error" }
		}
	}
}

These steps work for me, but using the following command:
npx @biomejs/biome migrate eslint --write

I'm using next 15.0.1

Thank you for checking and addressing the issue (#4528) I posted  last week.
I wanted to test the fixes, so I compiled the Rust files from the main branch and integrated them into my project, then ran the migration command.
However, the same error occurred and I was unable to migrate.
If I want to test the functionality, should I wait for a release that includes the fixed code rather than replacing it with compiled files?

@maronnjapan I just released a new nightly version of Biome. You can use it for testing the fixes :)

@Conaclos
Thank you for releasing the nightly version.
I tried installing it and running the migration command, and the "ERR_MODULE_NOT_FOUND" error no longer occurs!
Thank you very much !!!!


centralized general css classes

          A library would be too much - but i think we can create some custom classes like `ml-0`, `ml-1` ... in a centralized css-file. But this should be done in a separate issue

Originally posted by @langehm in https://github.com/it-at-m/muc-patternlab-vue/pull/297#discussion_r1822533209

This is probably something for css - we don't use this here so ...


Add CodeCov to travis

Signed-off-by: TomSweeneyRedHat<EMAIL_ADDRESS>Adding CodeCov to generate Code Coverage numbers to Buildah.

where can we see the code coverage results?

It seems like the CI failure is unrelated to this change.

It's doing nothing at the moment.  I thought I'd find a link to the report on codecov.io that would basically be blank or next to blank.  But it's not there.  I contacted codecov.io support Thursday, haven't heard back yet.  I was going to try and add some instrumentation to one of our tests today to see if that massaged it along further.

bot, retest this please

@TomSweeneyRedHat Did you ever get this to give us some benefit, or should we just close.

@rhatdan no benny yet.  The latest issue that I'm trying to solve is the coverage report.  It appears to be getting created in the container during the build process, but the one that's retained at the end of it all in travis is empty.  Trying to figure that out, but haven't looked into it for a bit now.


feat(icons): added asterisk-off icon

Closes #2606
What is the purpose of this pull request?

[x] New Icon

Description
Added new asterisk-off icon.
Icon use case

To indicate that an item is optional, or to set an item as optional
Alternative icon designs

Icon Design Checklist
Concept

[x] I have provided valid use cases for each icon.
[x] I have not added any a brand or logo icon.
[x] I have not used any hate symbols.
[x] I have not included any religious or political imagery.

Author, credits & license

[ ] The icons are solely my own creation.
[ ] The icons were originally created in # by
[x] I've based them on the following Lucide icons: asterisk
[ ] I've based them on the following design:

Naming

[x] I've read and followed the naming conventions
[x] I've named icons by what they are rather than their use case.
[x] I've provided meta JSON files in icons/[iconName].json.

Design

[x] I've read and followed the icon design guidelines
[x] I've made sure that the icons look sharp on low DPI displays.
[x] I've made sure that the icons look consistent with the icon set in size, optical volume and density.
[x] I've made sure that the icons are visually centered.
[x] I've correctly optimized all icons to three points of precision.

Before Submitting

[x] I've read the Contribution Guidelines.
[x] I've checked if there was an existing PR that solves the same issue.

Not sure about this one, is it not better to use color/opacity to indicate if something is optional or not?

Not sure about this one, is it not better to use color/opacity to indicate if something is optional or not?

Not really, but I'm not sure about the use case for this icon either. Indicate where?

On the item itself? Just explicitly state (optional) or (required) (depending on which are in minority on the form)
On a UI where the "required-ness" is set? Just use a checkbox or toggle switch that explicitly states ☑ Required


All unowned Steam DLCs are listed as 'Free'

All unowned Steam DLCs appear as 'Free'. This might be related to the Steam account region. My Steam region is set to India.
Origin DLCs appear to show the correct price.

Do you have examples?

Sure. These are two random titles from my recently played games.

The extensions log does not contain any information about what's happening here:
28-12 18:19:38.869|INFO |CheckDlc#PluginDatabaseObject`4:RefreshNoLoader(A Plague Tale: Innocence - e9d1edf0-1197-4ae4-8848-d0fe4ac701c7)
28-12 18:19:38.875|INFO |CheckDlc#GenericDlc:Get dlc for A Plague Tale: Innocence with Steam
28-12 18:19:45.314|INFO |CheckDlc#GenericDlc:Find 1 dlc
28-12 18:21:40.133|INFO |CheckDlc#PluginDatabaseObject`4:RefreshNoLoader(Euro Truck Simulator 2 - fe3df27d-cb91-4b4d-ac14-43c2244164c9)
28-12 18:21:40.133|INFO |CheckDlc#GenericDlc:Get dlc for Euro Truck Simulator 2 with Steam
28-12 18:22:13.802|INFO |CheckDlc#GenericDlc:Find 81 dlc

The json files it creates for each game do seem to contain the correct price information. Perhaps it has trouble parsing the Rupee symbol ₹  before the numbers. This is extracted from the file fe3df27d-cb91-4b4d-ac14-43c2244164c9.json:
{"DlcId":"1056761","Name":"Euro Truck Simulator 2 - Actros Tuning Pack","Description":"Truck tuning is something that is close to the heart of all truckers. If you have ever been to a truck show, you would see that the amount of love and effort that some drivers are willing to devote to their vehicles is unbelievable. Tons of chrome, expensive hand-made parts, lights and paints - they can turn a regular truck into a work of art!

Explore this phenomenon yourself, and trick up your Actros trucks in Euro Truck Simulator 2 with a million possible combinations of aftermarket parts including:
Exterior

Front Mudflaps

Front Bumper

Bull Bar

Front Grille

Front Grille Addon Lights

Front Mask

Mask Addon Lights

Front Logo

Windshield Frame

Stoneguard

Sun Visor

Front Fender

Door Handles

Corner Deflectors

Door Trim

Window Trim

Side Stripe

Sideskirts

Rear Exhaust

Chassis Cover

Rear Fender

Rear Fender Top

Rear Mudflaps

Rear Bumper

Interior

Dashboard Sets

Driver's Plate / Co-Driver's Plate / Windshield Center

Curtains

Light Board

","Image":"https://cdn.akamai.steamstatic.com/steam/apps/1056761/header.jpg?t=1567616696","Link":"https://store.steampowered.com/app/1056761/?l=english","IsOwned":false,"Price":"₹ 92","PriceBase":"₹ 185"}


Data visualization

Hi guys, how about data visualization, do you already chat about? It could be a good way to show to people who haven't any technical skills or are from different field how the project would save a lot of money. I started develop some charts using D3. I'm curious to know about the kind of features you think is relevant to show (?). At this time I'm trying the money by person, by state and by subquota, what do u think about it?

That's a great topic — thanks @pmargreff!
I'm aware @filipelinhares was working on something visual, and @vilapedro might be interested in this material for communication purposes.
Maybe this is a topic to be discussed in the serenata-website repo in the near future — when we consolidate a structure for a website focused on communication this repo here tends to narrow its focus to data science, while the other one will embrace many communication related topics I guess.
Filipe and Pedro — what do you think?
Pablo would you mind sharing something you already have? Maybe some screenshots would be nice to give more substance to what can be done from it.

Hey @pmargreff!
I'm studying data vis and starting to dive in D3 and other tools. As @cuducos said, when we consolidate a structure for the new website we can use visualizations to improves the experience and interaction with the data.
Data visualization is an awesome field to explore in this project :heart:. @pmargreff If you are interested we can schedule a Hangouts to talk more about it :smile:

We think on three basic kind of visualizations to startup.
First: Compare total values by states monthly, we do that dynamically using [D3 Bar Charts] (http://bl.ocks.org/mbostock/3885304).

Second: A heatmap, to show companies who have received most piece of money, the heatmap show the value, company name, cnpj and ranking position on mouse hover event. We use Hightcharts heatmap because we have found only D3 heatmap using days and months to index the values (calendar heatmaps), maybe in near future we can adapt this one to accept a simple matrix and use that.

Third: A D3 Radar Chart to each congress person. The radar contain 18 axes with subquota categories and the money spent in the each category. Maybe in a second moment we can join 2 or more persons in the same radar to compare (example here). We have tried use this model, but the problem is, it was build in D3 V3 and it isn't compatible with D3 V4, would be awesome if someone help or refactor this model to version 4, because this Radar looks better in compare with all others.
After finish an reasonable model and documenting the basic (maybe on the next week) I can open the repo to anyone get it and add new visualizations.

Another thing, maybe show the values by person in this tree map, where each color is a sub-quota group and inside we can set the companies and correspondent value in the proportion. What do you think about that?

@pmargreff Those pieces of dataviz are awesome! I think we should fit it somewhere, sure thing. @filipelinhares do you think the new website has an section for that? @vilapedro any thoughts on that?

Hey, here is (temporary) a first version, you can check the repo with a basic documentation to start up the project. Feel free to suggestions or ideas.

@cuducos I understand, it could point to the wrong way if u don't have all details, but I don't think it's hard.
For the first suggestion is possible divide the state value by the number of congress people from this state, it will show the mean, and show the number of congress person and total value in the tooltip.
I'm only a little confuse with the second one, you say the possible total (number of people by state * max possible value) or the sum(all values)/state value? And the suggestion is about generate a number equalizing this two metrics in the same one or divide in two different views/charts?
About the HTTP 503 - it's probably because it isn't a server, in the really is something like by backup computer and it isn't properly prepare to maintain a website stable. I have another problem with the size of json from the third view, I thinking how compact or make this file smaller (1.3 MB on this moment), but I haven't any good idea yet.

About the second one, I suggest (it's merely a suggestion, I haven't put a lot of thought on it) dividing:

the mean of expenses by state (the sum of every expense of a given state divided by the number of congresspeople representing this state)
by the max allowance for this given state

On a second stage dataviz could show who (within this given state) pushes the mean up or down…
About the 503 it was com camera.gov.br (not on your server). I was trying to link the max allowance by state for you ; )

Yes, I get it and make some sense, but I don't know if will have some impact if the people don't have an idea from the value itself. Maybe a line or something marking the max limit could representing almost the same.
I really like about the suggestion to see the outliers. I'll think in something and exec when I have some time.
I updated to mean value, and it really equalize much better, but some weird things happen' like in the lasts months of year (2014/2015) we can see the value bit the max. I'll try to find why and when it's happen to try explain this point.
Another observation, I was checking the last behavior and the net_value value isn't consistent for all occurrences, you can find the new value easily using Julia.

Maybe a line or something marking the max limit could representing almost the same.
♥

I'll try to find why and when it's happen to try explain this point.

Good. I couldn't spend some time on that today, I'm sorry about it.

Another observation, I was checking the last behavior and the net_value […]

We're debating this on #85, but we haven't reached a decision yet. Hold on a while longer ; )

Why don't you use tools like kibana for data visualization ?

@cuducos About the net_value bit the roof, I did found any reason, but I send a request to like you suggest on #85.
@ronydj Hello, I never use that, the only thing I know: the people use that with Elastic Search (and it doesn't mean nothing to me). If you know, you don't care about teach, you have free time, contact me on: pmargreff at gmail dot com.
UPDATE: I added two new charts on site, monthly value and average by party(really like this one).

About the net_value bit the roof, I did found any reason, but I send a request to like you suggest on #85.

👍 Looking forward to check what they're gonna say ; )

UPDATE: I added two new charts on site, monthly value and average by party(really like this one).

There's a small typo (Montly instead of Monthly in one of the titles). But overall it's very good ; )

Hi Guys,
Friend of mine told my about this great project. I got interested on this subject.
Is there anywhere that can I see what you want to show ?
I read this topic but didn't found the storytelling or the analysis that need to be done.

Em atenção ao solicitado, o Departamento de Orçamento, Finanças e Contabilidade (Defin) da Câmara dos Deputados já se pronunciou no seguinte sentido:
Com relação ao questionamento de que o gasto médio em um determinado mês apresenta valor superior ao da cota mensal disponibilizada ao parlamentar, o Ato da Mesa n° 43/2009, de 21/05/2009, que institui a Cota para o Exercício da Atividade Parlamentar estabelece:
“Art. 13. O saldo da cota não utilizado acumula-se ao longo do exercício financeiro, vedada a acumulação de saldo de um exercício para o seguinte.”
Portanto, caso o parlamentar não tenha utilizado todo o saldo acumulado durante os primeiros meses do ano, poderá utilizá-lo até o final do exercício financeiro.
Em caso de dúvidas, estamos à disposição.

A simple translate to english:

In meeting as follow Ato da Mesa n° 43/2009, de 21/05/2009 means if the total value isn't used in a month it will be cumulative to the next months. The value only expires when the finance year ends.

And the 13th paragraph say that. I believe it could impact on some other metrics too.

Great, @pmargreff — many thanks for sharing their response.
Welcome @kassimorra. Sorry about not getting back to you sooner.

Is there anywhere that can I see what you want to show?

We were discussing that these days and probably @vilapedro will be in touch — he's focused on communication and probably you both could better discuss what would be interesting in terms of dataviz.

Closing this as dataviz is more relevant at serenata-website repo now.


Add workflow inheritance for Teams

Service request for team will automatically use the approval workflow set by the parent organization

Close #731, #730, #733 #734 ,#735,#738


Add CUDA atomic.{max, min, compare_and_swap}

Extends min, max for  float64, float32, int32, int64, uint32, uint64
Add compare_and_swap for int32

Codecov Report

Merging #2278 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #2278   +/-   ##
=======================================
  Coverage   86.63%   86.63%
=======================================
  Files         314      314
  Lines       58163    58163
  Branches     6011     6011
=======================================
  Hits        50392    50392
  Misses       6813     6813
  Partials      958      958

Continue to review full report at Codecov.

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

Looks good now.  Merging.


Create a hybrid Regexp implementation with Rust regex crate and oniguruma

I fixed the linker errors this ticket was trying to address in GH-68, but in the process I put together a branch that built a ruby/spec passing implementation of Regexp with regex crate.
https://github.com/artichoke/artichoke/tree/regex-crate
In many cases, regex crate is faster, but it does not support back references or lookahead. Additionally, it has some pathologically bad performance when combining \b and non-ASCII text - https://github.com/rust-lang/regex/issues/604
To support the rest of ruby/spec (like uri which requires lookahead), I'd like to build a hybrid Ruby Regexp compiles both an oniguruma and regex regular expression and chooses which one to use based on lookahead and unicode.
This ticket should result in a comprehensive benchmark that shows Artichoke beating MRI on both Unicode and non-unicode text.
Because this no longer blocks the Wasm build, I'm reassigning this ticket to the Core milestone.

GH-325 is an attempt to revive this dead branch.
Since the last comment on this thread, fancy-regex reached 0.2.0 and intends to build an onigurma frontend on top of the regex crate.
https://www.reddit.com/r/rust/comments/djv01f/fancyregex_020_pure_rust_library_for_regexes_with/

With GH-341 and GH-342 merged, this is done.
There is some additional work to do like adding support for binary haystacks in the Regex backend, but the core of this feature is delivered.


Adding dependency with project merge doesn't work

Create project with web dependency, then run boot add --from jpa.
Somehow recent changes in below doesn't give results:
https://github.com/spring-projects/spring-cli/blob/07a2213c2f82c7ab560aedac10d07c1f4f94f325/src/main/java/org/springframework/cli/merger/ProjectMerger.java#L387

👀


Make CheckPin.IsMouseOverListViewItemProperty public

CheckPin.IsMouseOverListViewItemProperty is currently private which leads to errors during design time listed in the Error Lost.
While compilation and program execution work fine, hot reload does not work since an error is present in the Error List.

I think you got the wrong property (or repository) here as I cannot find  any property by the name of 'IsMouseOverListViewItemProperty '. :-(

The property is in source/MRULib/Controls/CheckPin.xaml.cs


Sometimes High-speed Rail overrides Sparse Structure's Config

Minecraft generates the same config file for both mods. (Not sure which mod causes it so i made a report in both repos https://github.com/pcal43/highspeed-rail/issues/15)
Steps to reproduce:

Minecraft 1.20.1
Fabric 0.15.3
Fabric API 0.91.0
Install High-speed Rail 0.4.0+1.20.1
Install Sparse Structures 2.1.1
Start mc
check config files

Both config files (highspeed-rail.json5 and sparsestructures.json5) have the same content.
Its either this
{

  //
  // List of blocks and how they affect a train travelling on top.  cartSpeed is in blocks-per-second.
  //
  'blocks' : [
    {
        'blockId': 'minecraft:gravel',
        'cartSpeed': 40
    }
  ],

  // Whether a speedometer should be displayed when you get in a minecart.
  //
  // The mod must be installed on the client for this to work.
  'isSpeedometerEnabled'     : true,

  // Whether the 'true' speed should also be displayed on the speedometer.  The deafult speedometer just shows your
  // approximate speed; this precisely measures distance travelled every tick.  It's more resource-intensive
  // and also flickers sort of annoyingly, so disabled by default.  There's usually not much difference, anyway.
  'isTrueSpeedometerEnabled' : false,

  // Whether Vanilla ice boats should be allowed.  Set to 'false' to limit ice boats to ground speed; 'true'
  //
  // The mod must be installed on the client for this to work.
  'isIceBoatsEnabled'        : false
}

or this
// ### THE MOD REQUIRES A RESTART OF THE GAME TO APPLY CHANGES ###
{
  // this is the main spread factor (default is 2)
  //
  // tips : a spread factor can be a decimal number (such as 1.5)
  //        a spread factor of 1 means all structure's placement are not modified (useful if you want to use only custom spread factors)
  //        a spread factor above 1 means all structures are rarer
  //        a spread factor below 1 means all structure are more common
  "spreadFactor": 2,

  // this is a list of custom spread factors
  "customSpreadFactors": [
    // example of the mansion being doubled in rarity (the mod's default)
    {
        "structure": "minecraft:mansion",
        "factor": 2
    },
    // add the structures you want to modify in the format:
    // {
    //     "structure": "namespace:structure_name",
    //     "factor": number
    // },
    // where "structure" is a structure_set or the name of a structure
    // /!\ if you put the name of a structure, all structures in its set will be modified
    // (example : "minecraft:village_plains" will modify all structures in the "villages" set)
    // see https://minecraft.wiki/w/Tutorials/Custom_structures#Structure_Set for more info
    //
    // tip : the same spread factors rules apply here
  ]
}

Minecraft logs (No errors here) : https://mclo.gs/lulisJF

Hmm that's a really weird issue, I too use highspeed rail and I don't think I've encountered this issue... I'll check and see if I can reproduce it and fix it.
Thank you for reporting this

Oh I think I know why, highspeedrail and my mod both use the same default config name. I'm curious as why it's happening since they are not located in the same directory, but I'll change the default config name to something specific to sparse structures, I think that might fix the issue.


Add next point release of Spin

Content must go through a pre-merge checklist.
Pre-Merge Content Checklist
This documentation has been checked to ensure that:

[ ] The title, template, and date are all set
[ ] Does this PR have a new menu item (anywhere in templates/*.hbs files) that points to a document .md that is set to publish in the future? If so please only publish the .md and .hbs changes in real-time (otherwise there will be a menu item pointing to a .md file that does not exist)
[ ] File does not use CRLF, but uses plain LF (hint: use cat -ve <filename> | grep $'\r' | wc -l and expect 0 as a result)
[ ] Has passed bart check
[ ] Has been manually tested by running in Spin/Bartholomew (hint: use PREVIEW_MODE=1 and run npm run styles to update styling)
[ ] Headings are using Title Case
[ ] Code blocks have the programming language set to properly highlight syntax and the proper copy directive
[ ] Have tested with npm run test and resolved all errors
[ ] Relates to an existing (potentially outdated) blog article? If so please add URL in blog to point to this content.

Pushed https://github.com/fermyon/developer/pull/1306/commits/2020ed845920fef86290789c4b93458ca0f254b8 since @tpmccallum may still be away during the forthcoming release.
cc @itowlson any other details to add to this PR?  (Larger docs updates of course can/should be in separate PRs)

We can also mention:

The new registry option for component.source.  This affects the manifest reference and, potentially, the writing applications page.  It should be described as experimental at this stage, because the registry configuration stuff is not yet very friendly.
spin up -f can point to a Wasm file instead of a manifest, e.g. spin up -f mymoduie.wasm.  This could be mentioned on the "running applications" page.  Although the uses are very limited outside test apps, because apps run this way have no access to files, storage, HTTP, etc.
There's a convenience tweak to spin templates install where you can pass a GH repo id instead of the full URL e.g. spin templates install --git fermyon/spin.  Not a big thing but could fit in an aside.

That's all I can see although my eyes did glaze over a bit trying to scan the commit list...!


integration with i18n

Hi, how would you integrate this setup with i18n?
I'm reading this https://www.swyx.io/writing/netlify-redirects-i18n/ and I see that your starterkit doesn't have pages, they get generated dynamically

No looking at supporting this right now. Let me know if you getting up and running and we can look at setting up some options to integrate it.


Collapse array from start

I'm working on a array to display questions and answers. Is there any way to start the tree collapsed by default?

I have to use the collapsed option. "collapsed - If set to true, the editor will start collapsed (works for objects and arrays)"


ListAllImageSets endpoint returns installer,commit and packages as 'n…

Description
Fixes THEEDGE-1500
Type of change
What is it?

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Documentation update
[ ] Tests update
[ ] Refactor

Checklist:

[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] I run go fmt ./... to check that my code is properly formatted
[x] I run go vet ./... to check that my code is free of common Go style mistakes

Codecov Report

Merging #679 (2d7f7f9) into main (b9d186b) will increase coverage by 0.02%.
The diff coverage is 38.46%.

@@            Coverage Diff             @@
##             main     #679      +/-   ##
==========================================
+ Coverage   33.20%   33.22%   +0.02%
==========================================
  Files          40       40
  Lines        4171     4183      +12
==========================================
+ Hits         1385     1390       +5
- Misses       2598     2605       +7
  Partials      188      188

Impacted Files
Coverage Δ

pkg/routes/imagesets.go
29.61% <38.46%> (+0.74%)
:arrow_up:

Continue to review full report at Codecov.

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


[8.x] Fixed Doc-Block in 'Route' Facade

Route::resources() accepts 2 parameters. But, there was 1 parameter listed in the doc block of 'Route' Facade.

Thanks


Add support for Github Actions

Closes #878
This PR adds support for building the library on Github Actions, which is a step in us migrating off Jenkins.
TODO:

[x] Parallize builds.

[x]  Be able to build only artifacts required for a specific host machine (Linux, Windows, Android, M1, MacOS)
[x] Including Dokka in publications seems to trigger full builds of native code. Answer: It depends on the compile* tasks for some reason. So only publish metadata from Linux which avoids Gradle attempting to build all macos binaries in Core .
[x] Be able to combine and publish JVM artifact with all supported platforms

[x] Verify that we can release to Maven Central. (Snapshots work)
[x] Rerunning commits does not seem to reuse caches effectively

Future tasks:

[ ] Measure build time to guide optimizations and caching. Some work has already been done, but I suspect it can be further improved.
[ ] Support for BAAS testing both on CI and locally. We should create some shell scripts we can run on either GHA or locally. Currently, these are hardcoded in the GHA scripts.
[ ] Support for Firebase Device testing on CI and locally. Currently only supported on GHA.

Dev notes

There seems to be a lot of issues sharing logic between jobs. It seems that all approaches have tradeoffs that make them more or less unusable

Composite actions have bad logging: https://github.com/orgs/community/discussions/21276
Composite actions do not support pre/post steps: https://github.com/actions/runner/issues/1478
Reusable workflows cannot call each other: https://docs.github.com/en/actions/using-workflows/reusing-workflows#limitations

Finally marking this PR ready for review


[Feature]  please support scala to write UDF function

Search before asking

[X] I had searched in the issues and found no similar issues.

Description
I am using doris 1.2.1, short commit is 45a8cee, currently we are trying to use scala develop UDF/UDAF in doris, and found underlying doris UDF/UDAF framework only support java, please support scala either
Use case
No response
Related issues
No response
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

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

@zhangguichuan do you have the needs to write udf with Python？


PLAT-85965: Support for IconButton Spinner

Add size="huge" to Spinner with additional tweaks to the spinner size.
Add support for IconButton with spinners

Usage:
// normal IconButton usage:
<IconButton>home</IconButton>

//IconButton with Spinner
<IconButton>
  <Spinner />
<IconButton>

After shifting things around, I opened up iconComponent as a prop so that now IconButton is more simplified. We can just plug in Spinner as a child.

Usage changed a bit from the initial version of this, with the demise of IconButton. Here's the currently supported approach:
<Button iconComponent={Spinner} icon=" " />

The icon=" " is currently a workaround for the logic in ui which unnecessarily expects icon to be assigned to a truthy string. It needs to be updated to support booleans as well, so you could simply put <Button iconComponent={Spinner} icon /> or something like that. Open to ideas on this implementation as I'm not settled on this cleverness, unsure of it being intuitive enough.
If you wanted the loading spinner you can easily enough create a proxy method:
const Loader = (props) => <Spinner {...props} type="loading" />;

// and then do

<Button iconComponent={Loader} icon=" " />


Add scope decorations to std.socket

This is to fix issues with compiling projects with dip1000.
I'm not sure how to add appropriate tests, since dip1000 is a compiler switch.

Is there a way to check if dip1000 compiles phobos? We must be checking this somewhere...

Worth noting that this is a breaking change so it will need to be called out in the documentation, but the transition is easy so it is surely worth the minor hassle.

Is there a way to check if dip1000 compiles phobos?

I think it adds the flag automatically already: https://github.com/dlang/phobos/blob/master/posix.mak#L138

For reference, I discovered this when trying to build mysql-native with my new safe patch with dip1000 turned on. Adam is right that this is a breaking change. I have it in draft until I can think about how to properly do the deprecation (if it's even possible).

Why is it a breaking change? Without dip1000 scope does nothing here right?

Because if you derive from std.socket (e.g. to make a SSL socket), then you have to repeat the scope attributes, or it breaks. So if you haven't already done that, then your code won't compile with this version.

On Fri, Apr 22, 2022 at 01:58:45PM -0700, Steven Schveighoffer wrote:

Because if you derive from Socket (e.g. to make a SSL socket), then you have to repeat the scope attributes, or it breaks. So if you haven't already done that, then your code won't compile with this version.

Worth noting this is quite minor breakage that you can probably just rip
the band-aid off.

cc @ikod

cc @ikod

Thanks!
Sorry if this is wrong place to ask. If I understand correctly I only have to change overrided Socket calls and this should work?
diff --git a/source/requests/streams.d b/source/requests/streams.d
index b1e54d0..b78e044 100644
--- a/source/requests/streams.d
+++ b/source/requests/streams.d
@@ -898,17 +898,17 @@ else {
             return this;
         }
         @trusted
-        override ptrdiff_t send(const(void)[] buf, SocketFlags flags) scope {
+        override ptrdiff_t send(scope const(void)[] buf, SocketFlags flags) scope {
             return openssl.SSL_write(ssl, buf.ptr, cast(uint) buf.length);
         }
-        override ptrdiff_t send(const(void)[] buf) scope {
+        override ptrdiff_t send(scope const(void)[] buf) scope {
             return send(buf, SocketFlags.NONE);
         }
         @trusted
         override ptrdiff_t receive(void[] buf, SocketFlags flags) scope {
             return openssl.SSL_read(ssl, buf.ptr, cast(int)buf.length);
         }
-        override ptrdiff_t receive(void[] buf) scope {
+        override ptrdiff_t receive(scope void[] buf) scope {
             return receive(buf, SocketFlags.NONE);
         }
         this(AddressFamily af, SocketType type = SocketType.STREAM, SSLOptions opts = SSLOptions()) {

On Sat, Apr 23, 2022 at 12:36:49AM -0700, ikod wrote:

Sorry if this is wrong place to ask. If I understand correctly I only have to change overrided Socket calls and this should work?

Yes, and it should compile now, even without the phobos pr, meaning you
can make the change any time without breaking old compiler
compatibility.
I gotta do the same thing to my lib.

On Sat, Apr 23, 2022 at 12:36:49AM -0700, ikod wrote: Sorry if this is wrong place to ask. If I understand correctly I only have to change overrided Socket calls and this should work?
Yes, and it should compile now, even without the phobos pr, meaning you can make the change any time without breaking old compiler compatibility. I gotta do the same thing to my lib.

fixed in v2.0.5

fixed in v2.0.5

Thanks for the quick response!

Damn, still broken, I think some functions got missed. @ikod I'll see if I can make a PR.

Damn, still broken, I think some functions got missed. @ikod I'll see if I can make a PR.

sorry! merged, released 2.0.6

Thanks @ikod for your help! Hopefully all done. I had to force push, as buildkite seemed to be stalled.

should be green now (dlang-requests now passing). I need either a bug report or a changelog now...

Please review changelog entry before merging.

If making the interface defined by Socket more strict is deemed an unacceptable breaking change in general, are there any blockers to defining a new derived class (say SafeSocket or RefinedSocket (well, not the best name)), that would have a more strict interface (perhaps that class could even be final)?

An alternative solution would be to move the implementation to struct SocketImpl with as tight attributes as possible and then have the Socket class act as a backwards compatibility proxy interface.

It depends on what attributes you are doing. Scope is pretty easy - you can always just .dup  it if you need to store it and it is unlikely anyone would; it seems like I've written most the subclasses of Socket in the wild myself..........
On the other hand, something like nogc would be a tougher sell here (though a possibility for socket) since if you have existing code that actually relies on it that's a lot harder to escape; you can't just .dup and get back to work.

I'm OK with having a "SafeSocket" etc, if that's what needs to happen. But we are still going to run into a brick wall.
Adding scope to Socket methods seems like a no-brainer, and I'm not exactly sure why a derivative cannot add these as well. Yes, it's a breaking change, but that train is headed towards existing projects anyway when dip1000 is going to be the default. E.g. I currently have mysql-native marked @safe, but it will not build with dip1000 unless Socket is marked with scope decorations. No changes are needed in my project, there's nothing unsafe about it, it's just Phobos that has the problem (I'm not deriving any sockets). So it's going to break code one way (adding scope decorations) or another (turning on dip1000 by default).
It might be time to reconsider, if we are serious about making dip1000 the default.

We've previously rejected pull requests which cause breakage of this type.

Do you have links to such rejections if you can remember them?

Do you have links to such rejections if you can remember them?

Here's what I found:

https://github.com/dlang/phobos/pull/4273 (tried to add @nogc, was reverted)
https://github.com/dlang/phobos/pull/5496 (tried to add in on the parameters)
https://github.com/dlang/phobos/pull/6204 (tried to add scope on the method)
https://github.com/dlang/phobos/pull/6730 (tried to add @nogc)
https://github.com/dlang/phobos/pull/7433 (tried to add @nogc)
https://github.com/dlang/phobos/pull/8438 (tries to add scope on the parameters - this pull request)

It might be time to reconsider, if we are serious about making dip1000 the default.

Would it make sense to somehow add these attributes only if -dip1000 is in effect?

Thanks.

Would it make sense to somehow add these attributes only if -dip1000 is in effect?

Is there a way to do that? That would solve my problem for sure.

Is there a way to do that?

Well, technically, string mixins is a way... Not sure if we have anything better right now.

I agree with @schveiguy here. Since dip1000 will become the default we might as well swallow the pill and move on. cc @atilaneves what are your thoughts on this?

I think that's the most reasonable way forward as well, we're just delaying the inevitable otherwise.
Though, I've been thinking if it was possible to do so in a way so that such breakage will happen just once. We may be able to isolate it by dividing the use case of Socket classes into two categories:

Code which just uses instances of the Socket class as it is declared in std.socket, and will want to benefit from future language additions that will further tighten its methods' signatures.
Code which needs to expand the Socket class and is therefore bound to the contracts decided when the Socket class was written.

So, maybe something like this would work:

Introduce BaseSocket with the original lax requirements of Socket.
Make Socket a final class which has the new strict signatures.
BaseSocket should still have the behavior of Socket; I don't think we can do that with inheritance here, so maybe it could forward calls to a private scoped Socket instance.

It wouldn't allow interoperability with code which accepts Socket types, though. I don't know how much of a concern that is.
Would be nice to get feedback from users of std.socket who subclass Socket. @ikod, perhaps you could share your thoughts on this?

I'm thinking of using this kind of template. I can use this to define the methods as needed. What do you think?
template isDip1000Enabled()
{
    void foo(const(char)[] buf) @safe {}
    void bar()(char[5] x) @safe { foo(x[]); }
    enum isDip1000Enabled = !__traits(compiles, bar!());
}

Where would this template go? std.traits? This is really a compiler feature.

I'm also good not having to check for this specific case, but I'm assuming that other cases will also have similar problems.

Would be nice to get feedback from users of std.socket who subclass Socket. @ikod, perhaps you could share your thoughts on this?

Hello,
I didn't have any problems, just added scope in proper places. As Adam said - it just make sense. I do not expose any socket internals to  API users, so no changes in requests API required.

Is this unittest even being run? I don't see how this passes with dip1000 enabled: https://github.com/dlang/phobos/blob/3443e0080d9617c9282265dfd6a8fd5f0297d462/std/socket.d#L2648-L2649
It's guarded by debug (std_socket), so I'm not sure what that is for.

OK, I think that test would not pass if compiled with dip1000. I think that's a coincidence, since the debug switch was added 2 years ago (probably long before dip1000 testing was added to phobos).

OK, so give me a path forward. My current plan was to change the virtual functions to skinny wrappers with the "correct" attributes around the real implementation, based on detection of dip1000. I'd have to do that to the unittest wrapper socket as well.
Is that satisfactory?

OK, I think that test would not pass if compiled with dip1000

Without looking at the specifics, I think the intention of debug(std_socket) is to test (our bindings to) network functionality, not things like lifetime or const-correctness. So, it might be a bug (or at least something fixable) in the test, or then again it might be that the test is representative of code using std.socket.
Looking at the specifics, it looks a lot like the second case. Sending a single byte is a common pattern to e.g. wake up an event loop, and a static array makes sense for that.

My current plan was to change the virtual functions to skinny wrappers with the "correct" attributes around the real implementation, based on detection of dip1000. I'd have to do that to the unittest wrapper socket as well.

I can't picture how this would look like and work. Could you make a simple example with one method?
The idea of the TestSocket class is that it represents a worst-case scenario of someone subclassing Socket in their project. Any changes that need to be done to TestSocket would therefore (in this worst-case scenario) have to be done in users' code. I think ideally we would want to look for a solution which doesn't require overly complicated changes on behalf of users.
I can do the same for my proposal in https://github.com/dlang/phobos/pull/8438#issuecomment-1114678551 if you want.

I think we should change all debug(std_socket) blocks to always compile the code, but never run it unless debug=std_socket.

Wait, I don't think this is going to work. Scope is in the mangling. So if Phobos is compiled with dip1000, but when you compile against it, you have dip1000 off, it won't link.
So that idea is no good... damn.

Not sure if this approach will work with all relevant language changes; I think it should at least work with const, @nogc, and scope.

I don't know that const or @nogc are appropriate for sockets. E.g. a buffered socket derivative might want to use the GC to allocate buffers, and store them in the socket instance.
However scope is a declaration that the socket class won't squirrel away a reference to the buffer you hand it, which has always been implied for sockets.

Rereading that comment, I'm not loving this idea. If Socket is final, then you can't derive from it, and get all the enforcement of attributes that we would put there. You'd have to derive from BaseSocket, and then add those attributes manually yourself.

Yes. But that simultaneously gives us the freedom to keep tightening the Socket interface.

It also would break any code that accepts a Socket, but you want to pass in your special flavor of socket to. All that could would have to change to accepting BaseSocket, which is now breaking a lot more code than just socket derivatives.

Yes, I mentioned this as well in my comment above. The benefit is that this breaking change will happen once.

I don't know that const or @nogc are appropriate for sockets. E.g. a buffered socket derivative might want to use the GC to allocate buffers, and store them in the socket instance.

This is a good point.
If we don't foresee many other necessary changes to Sockets interface, then simply changing it does make the most sense.
There is also https://github.com/dlang/phobos/pull/5496, which tried to add const to some Address parameters, which I think still does make sense.

There is also #5496, which tried to add const to some Address parameters, which I think still does make sense.

It does make sense, and it also doesn't. But not because of Address (all methods have a const overload requirement), but because of the pain of using const class references in D. Since all Address methods are const, you can assume that Address is essentially a const class.
Overloads based on const are possible, but of course, you'd have to overload both, so it still breaks using that path.
But I'm not sure it's important to do. If not for that single name method, then it wouldn't even be a problem to cast away const in order to call the functions. And the amount of code that keeps a const Address is probably near zero.

I think it's much more likely that Address will be const by transitivity (e.g. you have some struct Context which you have no business writing to, and you're given a const pointer to it, but you can't use context.address in the socket code).

yeah, good point. Perhaps worth doing now, which means we would have to have the current derivers update their types again.

Good points about breakage and what got rejected earlier, but adding @nogc is very different I think since it's not going to be the default, whereas dip1000 is. I'm in favour, especially after @adamdruppe 's investigation into possible breakage.

Thanks for the thoughtful discussion. This really opened my eyes as to what is coming when dip1000 becomes the default, we need to tread cautiously!


Test 835 - FLR test should poll for device readiness after reset

BSA ACS Test 835  tests PCIe FLR as follows:

Check if FLR PCIe capability is set
If so, initiate FLR
Wait 100 ms
Read back the VID register from config space
If value is 0xFF, fail with the message "BDF 0x%x not present"

This results in a failure such as this:
835 : Check Function level reset
    BDF 0x2010000 not present

The PCIe spec requires that a function completes the FLR operation within 100ms, but subsequent function initialization may need more time. The function is allowed to return Request Retry Status (RRS) Completion Status indicating it needs more time.
The Linux FLR code pcie_flr()  does the following:

Check if FLR PCIe capability is set
If so, initiate FLR
Wait 100 ms
Then call pci_dev_wait()
pci_dev_wait() polls every 1 ms, until the timeout (which in this case, PCIE_RESET_READY_POLL_MS, 60 seconds!)
For every poll, it reads the PCI_COMMAND register, and looks for FFs (PCI_POSSIBLE_ERROR ) to determine it should keep polling.

This test should be modified to follow the PCIe spec. One suggestion is to do the following:

Check if FLR PCIe capability is set
If so, initiate FLR
Wait 100 ms
Read back the VID register from config space
If value is 0xFF, delay for 1 ms, then read again
Keep polling until a maximum arbitrary timeout occurs

The Linux code uses 60 seconds because of issues seen in some NVMe drives. For the BSA ACS test, a timeout value of 5 seconds should be is more than enough.
The test can be further enhanced so that instead of assuming FFs is a fialure, check for a completion timeout/UR/CA on seeing all FF’s. If we do not get a completion timeout or other error like UR or CA, then we can assume that the  device returned RRS.

Test confirmed to pass with the fix implemented in test build: https://github.com/Sujana-M/bsa-acs/blob/main/test_image/Bsa_timeout.efi. Thank you @gowthamsiddarthd. Will the patch wit hthe fix get committed ?

Hi @samerhaj,
Thank you for confirming the patch. The fix has been raised by the PR: https://github.com/ARM-software/bsa-acs/pull/196
Regards,
Gowtham,
ACS Team


how to upgrade v1.1.2 to v1.5.1?

Harbor upgrade and database migration guide says From v1.5.0 on, the migration tool add support for the harbor.cfg migration, which supports upgrade from v1.2.x, v1.3.x and v1.4.x.
Can I upgrade harbor from v1.1.2 to v1.2 and then from v1.2 to v1.5.1?

Yes, you can upgrade in that way.

@ywk253100
thx~ but how to upgrade v1.1.2 to v1.2.0?/
i can not found harnbor-migratpr:v1.2.0


Add continuous security analysis

LGTM integrates with github checks (see also this PR's checks). However, so far it does not analyse C++. That is because we need a custom extraction step, which is just introduced with this branch - and hence not enabled on the main repository.
This PR will enable C++ analysis on master.

LGTM integrates with github checks (see also this PR's checks). However, so far it does not analyse C++. That is because we need a custom extraction step, which is just introduced with this branch - and hence not enabled on the main repository.
This PR will enable C++ analysis on master.

This is the direct link to a successful LGTM run with C++ extraction
https://lgtm.com/logs/3a95781801eace2193259800a06bdf29478085ac/lang:cpp


Feature/multiple storage classes

Fixes https://github.com/rancher/local-path-provisioner/issues/38
Fixes https://github.com/rancher/local-path-provisioner/issues/348

While is is currently possible to deploy multiple instances of the provisioner to support multiple storage classes, as well as to support both RWO, RWX, and ROX volumes at the same time, the additional resource consumption and deployment complexity are undesirable.
This patch adds an additional field to the config.json named storageClassConfigs, which is mutually exclusive with the existing nodePathMap and sharedFilesystemPath fields. This field is an object, whose keys are the names of storage classes, and its values are nested objects that contain either nodePathMap or sharedFilesystemPath. When a volume request is received, if this field is set, it is consulted for the configuration to use based on the name of the storage class, otherwise the original configuration fields are used.
This patch also updates the helm chart to add a matching option, which also deploys multiple storage class objects if selected.
This change is backwards compatible, installing this version of the provisioner should not break any existing installs.
One advantage of this change is that single-node k3s/k3d/kind clusters will be able to provide RWX and ROX storage classes out of the box.

Can you help rebase the commit and update the README.md as well? Thank you.

Rebased. Can you elaborate on what sort of update to the README you're looking for? I did update the config.json definition section to include the new field I added.
FYSA I will be away from home for the next week, so if you'd like to put this on hold until then, I don't mind.

@meln5674
Sorry, I missed the README.md is updated.
BTW, it would be nice if you would be able to add a test for the feature. Thank you.

Sorry for the delay on this, I ended up falling seriously ill after getting back from my trip.
I can't seem to find any information on how the tests here are supposed to work.
My default guess of make test shows [no test files]. I found scripts/test to be running go test -cover -tags=test ./..., which produces the same result. I noticed in test/pod_test.go its only being built when the e2e tag is present, so I tried go test -cover -tags=e2e ./..., which at least did something, but that produced the error ERROR: a list of image names is required which also happens on the master branch.
I did in fact write tests while writing this, though since I ran into the above issues since the start, I just wrote them in a shell script, which I've put into this gist. If you give me any pointers on how to actually run the tests, as well as any on how best to integrate what I've written into the existing test setup, I'd really appreciate it.

Hey @meln5674 , hope you are well again. I don't have any experience with Go and am still somewhat new to kubernetes, but as I'm looking forward to this feature I played around with the repo a bit. I checked how the CI is running the tests using the .drone.yaml file: It runs them using dapper e2e-test. I think dapper will be installed within the dir when executing the make file, so I ran ./.dapper e2e-test. This actually runs a lot of tests (takes some time to get started though), but TestPodWithRWOPVolume is already failing on master in my case (even though CI is green). Hope this helps.

@timvahlbrock Thanks for the detective work, and I am in fact in better health again, thank you for your concern.
@derekbit I think I've worked out how the tests are structured now, and I've added a test which creates two storage classes, two matching PVC's, and mounts them to a single pod to match how the other tests work so I wouldn't have to re-work how the tests are structured. Let me know if you'd prefer I go back and do a 2-pod test instead.

@meln5674 is this pr possibly not being reviewed because the pipeline is red (even though that's because it was killed...)?

I saw there were a few other PR builds that were killed, each because they never started their s390x build, so I assumed the project was working through some CI/CD issues.

Can you set @derekbit as a reviewer explicitly or something? Or try to push something again to get the pipeline green? I don't wanna be too annoying or something, but other PRs seem to be getting merged.

@meln5674 do you have permission to request a review on this PR?

Can you set @derekbit as a reviewer explicitly or something? Or try to push something again to get the pipeline green? I don't wanna be too annoying or something, but other PRs seem to be getting merged.

@timvahlbrock Sorry for the late reply. Busy at Longhorn project.

Or try to push something again to get the pipeline green

The error is due to that the s390x machine doesn't work.
amd64 and arm64 passed the tests.
Are all updates ready to review? If yes, I will fix it and review the PR. soon.

Yes, everything should be ready for review.

@derekbit  Slipped out of ToDo's again?

Is there anything I can help with to progress this further?

@timvahlbrock
The PR looks good to me and is included in the upcoming v0.0.27. I will merge it after the broken CI is fixed. Thank you. :)

how nice, thanks! I'm waiting for this to be released!

When is v0.0.27 version getting released with this change..?

@timvahlbrock The PR looks good to me and is included in the upcoming v0.0.27. I will merge it after the broken CI is fixed. Thank you. :)


Support wildcard maps

escape map names appropraitly to allow *
improve robustness (regex matching)
fixed a bug with the handling of fstype

kitchen test passes for all suites.

@damacus would you mind tagging and releasing this to supermarket? Thanks!

I've done that now James - sorry, I forgot to do it after merging earlier!


Possibilty to install a (Profitbricks) image on a server

Is it already possible to install a Profitbricks image like Linux Ubuntu 14.04 LTS by creating a new server? It's already possible to set a licensetype, but I believe, it's not possible to set a installer ISO/image, right?
You may can add a parameter to the volume create feature:
    profitbricks volume create --datacenterid 3fc832b1-558f-48a4-bca2-af5043975393 --size 12 --bus VIRTIO --licencetype LINUX --name "Demo Srvr 1 Boot"
    profitbricks volume create --datacenterid 3fc832b1-558f-48a4-bca2-af5043975393 --size 12 --bus VIRTIO --licencetype LINUX --name "Demo Srvr 1 Boot" --install-image linux-ubuntu-14.04-lts

But if you implement this feature, we'll also need a further parameter, which displays a list of available images. Maybe like this:
    profitbricks image [list|upload|delete|rename|install]

Images can already be listed as I saw yet:
   profitbricks image list

Following command does not work:
   profitbricks volume create --datacenterid [dcid] --size 15 --bus VIRTIO --licencetype LINUX --name "Demo Srvr 1 Boot" --imageid dc182ab0-9813-11e5-b6a2-52540066fee9

The volume will be created, but no Ubuntu 14 LTS will be installed on it.

It is possible to create a volume with one of the existing images.
Profitbricks API doesn't allow creation of Images. Details are here: https://devops.profitbricks.com/api/rest/#images
At the end of every create|update you will get request ID at the end of the command.
That request ID can be used to query the status of that request. There is a possibility that you used an image from a different location than the datacenter.

Sorry, what?
On the one hand, you tell me, that it is possible to create a volume with an existing image and on the other hand, you tell me, that it isn't possible yet, except I would use an image from a different location than the datacenter.
Well... How I'm able to install a Linux image from an other location than the Profitbricks datacenter, if I have to tell the API the ID of the image?!
If it's possible, please document it better, that other developers understands it and please give me/us an example.
Please notice, that I was talking to the Profitbricks support and they told me, that this described issue (installing an linux image on a volume/server) isn't possible by the CLI yet. They also told me, that they have tried to create a script for me, but they weren't able to build such a script.

@Sebi94nbg - I was able to successfully create a volume from an existing public image without any problems.
profitbricks volume create --datacenterid 9e6709a0-6bf9-4bd6-8692-60349c70ce0e --size 15 --bus VIRTIO --name "Test" --imageid 157259e3-97d2-11e5-b6a2-52540066fee9

In the above command line, I had to remove --licencetype as the licence type is not necessary when you specify an existing image to use. In fact, the CLI returns the following message from the API when I mistakingly include the licence type parameter:
[(root).properties.licenceType] Attribute must not be set if 'image' is set
Also, as @jasminSPC stated, the datacenter referenced by the CLI must be in the same location as the image being used. In my example above, both datacenter 9e6709a0-6bf9-4bd6-8692-60349c70ce0e and image 157259e3-97d2-11e5-b6a2-52540066fee9 were in the us/lasdev location.
Both profitbricks datacenter list and profitbricks image list will show the resource's location beneath the Location column. The location of both resources have to match. You will notice each image is listed four times; one image for each available location. For example:
$ profitbricks image list | grep Ubuntu-15.10-server
0b764cee-97e7-11e5-b6a2-52540066fee9  Ubuntu-15.10-server-2015-12-01                AVAILABLE  HDD   de/fra     true
83318119-97e6-11e5-b6a2-52540066fee9  Ubuntu-15.10-server-2015-12-01                AVAILABLE  HDD   de/fkb     true
71179507-97df-11e5-b6a2-52540066fee9  Ubuntu-15.10-server-2015-12-01                AVAILABLE  HDD   us/las     true
78ad9179-97df-11e5-b6a2-52540066fee9  Ubuntu-15.10-server-2015-12-01                AVAILABLE  HDD   us/lasdev  true

Now, there is one caveat worth noting. There is an existing REST API bug that prevents a ProfitBricks multi-user account that is not the primary admin account from accessing public images. My above test succeeded because I was using my primary ProfitBricks user account. If I create another user within the DCD and attempt the same operation with that new user, then the above test will fail.
This bug affects the REST API, but not the DCD. ProfitBricks is aware of this bug and I have been told it should be fixed in the next API update which should be released soon.

Thx, @edevenport ! I'll check this tomorrow. I can't remember, that the location of the images was displayed in my case and I'm also using the main account.
I'll give a feedback tomorrow. Thx in advance!

@edevenport I don't get the location for the images as you can see:
    # profitbricks image list --datacenterid 545aa6cb-d4e4-4081-a3e3-2b16041be281 --location de/fkb | grep -i ubuntu | grep -i lts
    925c1c23-97db-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T03:28:21Z  AVAILABLE
    8fe38ce7-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:13:58Z  AVAILABLE
    51775363-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:12:13Z  AVAILABLE
    b8b476c9-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:15:06Z  AVAILABLE
    8b2f68d1-97db-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T03:28:09Z  AVAILABLE
    89270085-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:13:46Z  AVAILABLE
    53c8fe98-9813-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T10:07:28Z  AVAILABLE
    dc182ab0-9813-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T10:11:16Z  AVAILABLE
    1087680b-6cc3-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-07T07:14:35Z  AVAILABLE
    77ea2eaf-6da7-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-08T10:29:34Z  AVAILABLE
    6cc1511c-6da8-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-08T10:36:25Z  AVAILABLE
    f6b87d47-6da7-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-08T10:33:07Z  AVAILABLE

    # profitbricks image list --datacenterid 545aa6cb-d4e4-4081-a3e3-2b16041be281 | grep -i ubuntu | grep -i lts
    925c1c23-97db-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T03:28:21Z  AVAILABLE
    8fe38ce7-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:13:58Z  AVAILABLE
    51775363-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:12:13Z  AVAILABLE
    b8b476c9-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:15:06Z  AVAILABLE
    8b2f68d1-97db-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T03:28:09Z  AVAILABLE
    89270085-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:13:46Z  AVAILABLE
    53c8fe98-9813-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T10:07:28Z  AVAILABLE
    dc182ab0-9813-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T10:11:16Z  AVAILABLE
    1087680b-6cc3-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-07T07:14:35Z  AVAILABLE
    77ea2eaf-6da7-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-08T10:29:34Z  AVAILABLE
    6cc1511c-6da8-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-08T10:36:25Z  AVAILABLE
    f6b87d47-6da7-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-08T10:33:07Z  AVAILABLE

    # profitbricks image list | grep -i ubuntu | grep -i lts
    925c1c23-97db-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T03:28:21Z  AVAILABLE
    8fe38ce7-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:13:58Z  AVAILABLE
    51775363-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:12:13Z  AVAILABLE
    b8b476c9-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:15:06Z  AVAILABLE
    8b2f68d1-97db-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T03:28:09Z  AVAILABLE
    89270085-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01                    2015-12-01T03:13:46Z  AVAILABLE
    53c8fe98-9813-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T10:07:28Z  AVAILABLE
    dc182ab0-9813-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01                    2015-12-01T10:11:16Z  AVAILABLE
    1087680b-6cc3-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-07T07:14:35Z  AVAILABLE
    77ea2eaf-6da7-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-08T10:29:34Z  AVAILABLE
    6cc1511c-6da8-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-08T10:36:25Z  AVAILABLE
    f6b87d47-6da7-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS                      2015-10-08T10:33:07Z  AVAILABLE

Can you please provide me the image-id of the Ubuntu-14.04-LTS-server-2015-12-01 image at the location de/fkb? Thanks!

Here is the ID you requested
53c8fe98-9813-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01 AVAILABLE  HDD   de/fkb     true
It seems you are using an older version of the CLI. Current version is
1.1.1```
Can you please update your npm package by doing this:
```npm update -g profitbricks-cli```

I hope this helps

Oh, lol. :D
Yes, there was an older version installed:
    # profitbricks --version
    0.0.1

I've updated the CLI with your command, but some files couldn't be fetched and returned an error. Hope, it doesn't matter.
    npm ERR! fetch failed https://registry.npmjs.org/request/-/request-2.67.0.tgz
    npm ERR! fetch failed https://registry.npmjs.org/request/-/request-2.67.0.tgz
    npm ERR! fetch failed https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz
    npm ERR! fetch failed https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz
    npm ERR! fetch failed https://registry.npmjs.org/once/-/once-1.3.3.tgz

By re-running the command, it just returns following:
    npm http GET https://registry.npmjs.org/profitbricks-cli
    npm http 304 https://registry.npmjs.org/profitbricks-cli

Great! Now I also can see the locations of the images. Nice! :)
    # profitbricks image list --datacenterid 545aa6cb-d4e4-4081-a3e3-2b16041be281 --location de/fkb | grep -i ubuntu | grep -i lts
    925c1c23-97db-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01  AVAILABLE  HDD   us/lasdev  true
    8fe38ce7-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01  AVAILABLE  HDD   us/lasdev  true
    51775363-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01  AVAILABLE  HDD   de/fkb     true
    b8b476c9-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01  AVAILABLE  HDD   de/fra     true
    8b2f68d1-97db-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01  AVAILABLE  HDD   us/las     true
    89270085-97d9-11e5-b6a2-52540066fee9  Ubuntu-12.04-LTS-server-2015-12-01  AVAILABLE  HDD   us/las     true
    53c8fe98-9813-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01  AVAILABLE  HDD   de/fkb     true
    dc182ab0-9813-11e5-b6a2-52540066fee9  Ubuntu-14.04-LTS-server-2015-12-01  AVAILABLE  HDD   de/fra     true
    1087680b-6cc3-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS    AVAILABLE  HDD   us/lasdev  true
    77ea2eaf-6da7-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS    AVAILABLE  HDD   us/las     true
    6cc1511c-6da8-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS    AVAILABLE  HDD   de/fra     true
    f6b87d47-6da7-11e5-b680-52540066fee9  Bacula-8.2.7-EE-Ubuntu-14.04-LTS    AVAILABLE  HDD   de/fkb     true

Just one question regarding this: Why is it not possible to filter for images just in the location like in my example above? The parameter/option "--location de/fkb" has no effect on the command, but also doesn't return an error message or something else.

I'm glad I could help.
Currently ProfitBricks API doesn't support filtering images by any parameter. I believe this is planned to be released soon.

Great and thanks for the support!
    # profitbricks volume create --datacenterid 545aa6cb-d4e4-4081-a3e3-2b16041be281 --size 15 --bus VIRTIO --name "p-v00321-boot" --imageid 53c8fe98-9813-11e5-b6a2-52540066fee9 --json
    [{"Id":"7baca292-d411-495c-b880-235a5674484a","Name":"p-v00321-boot","Size":15,"Licence":null,"Bus":"VIRTIO","State":"BUSY"}]
    RequestID: c268e736-26e2-4f98-a7e8-8b9f249c8fff

One last question regarding this topic. For what are the request IDs? What can I do with them?

The "RequestID" that was returned can be used to check on the status of any create or update operations.
Status: DONE
Message: Request has been successfully executed```

Ah, ok. Thanks for the information!
    # profitbricks request get -i c268e736-26e2-4f98-a7e8-8b9f249c8fff
    Status: DONE
    Message: Request has been successfully executed

#closed


[iOS][Android] Prevent transitionConfig's useNativeDriver value being overwritten.

Why
When using a custom transitionConfig to describe transition animations, its useNativeDriver value is ignored by the stack view. This change ensures that the stack view will honour the value from the transitionConfig.
How
I just changed the order of the properties in _configureTransition, so it will return the default USE_NATIVE_DRIVER value if the user does not override it.

this seems fine! i wouldn't recommend disabling native driver but if you absolutely must then i suppose this couldn't hurt

Haha yes I don't think it's the best thing to do, but sometimes the solution isn't always the best!


Hotbot sometimes nukes all permissions

Hotbot sometimes nukes all permissions
Priority:
3
Suggested solution:
At some point it's voiding out all of the permissions and then committing them. I think it's to do with the command being added to the CommandContainer and it not knowing what that is (I don't see how, but it only came about after adding this).

Additional details: Seemed to happen after invocation of ++exit.

Fixed as of a55bc43dfad3a76ec9bfe2fefc6b2454504bff42


GitHub Actions: Apple Silicon (M1) powered macOS runners (Public Beta)

Summary
Apple developers will get the hardware and performance they need for their CI/CD operations with GitHub-hosted macOS runners powered by Apply silicone in an OSX arm64 runtime. The new runner options will make certain their apps are compatible with past, present, and future software requirements and have the performance they need to increase development velocity.
Intended Outcome
Developers that want to build and deploy their applications using the latest Apple technologies will be able to do so with ease using GitHub Actions.
How will it work?
To get started using M1 powered GitHub-hosted macOS runners, update the runs-on: key in your Actions workflow YAML to have those jobs target the new runner.

🚢 This has shipped: https://github.blog/2023-10-02-introducing-the-new-apple-silicon-powered-m1-macos-larger-runner-for-github-actions/


Version v0.8.0

Just bumping the version for release.

Codecov Report

Merging #116 into master will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master     #116   +/-   ##
=======================================
  Coverage   81.84%   81.84%
=======================================
  Files         211      211
  Lines       13654    13654
  Branches     1125     1125
=======================================
  Hits        11175    11175
  Misses       2213     2213
  Partials      266      266

Impacted Files
Coverage Δ

flytekit/__init__.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


A brief description of the fields in netbox_agent.yaml that netbox-agent can work with.

I'm just getting started with netbox-agent and can't figure out the fields in the netbox_agent.yaml file. I figured out how to connect the agent to the server. However, I could only transfer: role and 1 interface (L0) without an ip address. Is there an example of filling in the netbox_agent.yaml file? Or documentation on its fields? This is my config file right now and I just have no idea how to add new variable fields because the names I tried to use don't work. And the fields that are described in the template configuration file are not enough.

This my conf file now:

Hi, sorry for such a long answer, I was sick.

I tried to use the network setup option you suggested. And I get an error at the time of agent launch. It looks like this, I don't have any ideas what's going wrong.

About the parameters that netbox-agent supports. There are no problems with adding server_role. But I would like to control all fields when I add device. For example: device name, device type, Description and some hardware parameters. I tried to pick up the keys to fill in myself, but each time I got an error, such as for the name "KeyError: 'No action for key"device.name " to check its value.' ". Can you tell me the exact names of the fields that I can specify in the netbox-agent config?
Similar problem with custom_fields. I try to use it as in the example

, but I get the error " KeyError: 'No action for key "device.custom_fields" to check its value.' " . Can you show a working example of filling in custom_fields?


Improve neighborhoods

User story
I would like to start using neighborhoods, but I am unable to because they are lacking some functionality I need. Adding the following features would make it so that I could use them.

Control the visibility and opacity/fill of neighborhoods using a layerController (similar to cells and molecules)
Provide labels for neighborhoods using obsLabels.csv or similar.
Color neighborhoods based on labels when they are provided.
Add tooltips to neighborhoods when they are moused over so that users can view the labels for neighborhoods.

Hi, can you clarify what you mean by neighborhoods in this context?
For background, if you see references to "neighborhoods" in the JS code in this repo, they refer to visualization of the output of a delaunay triangulation (see https://github.com/vitessce/vitessce-data/blob/002f5046fe5cad43fd6e842ab10f61bb97b0919e/python/cell_reader.py#L138).
It was an unfortunate choice of naming on our team's part.  This is not really how the term "neighborhoods" is being used in spatial 'omics these days (for instance, https://doi.org/10.1038/s41586-023-05915-x), which is part of the reason this is kind of a legacy feature that is not documented on https://vitessce.io/docs/data-types-file-types/

Hello! Thank you for the context, that's helpful.
I'm referring to the neighborhoods datatype that is being used in this Codeluppi example config. I was wondering why it wasn't documented, so it makes sense that it's a legacy feature.
Our use case is that we have segmentation for cells, and we also have some segmentation for larger regions or structures. We'd like to be able to view both at the same time, but the standard spatial component doesn't support displaying multiple segmentation datasets simultaneously. However, when playing around with the above Codeluppi I was able to get neighborhoods and segmentation to be displayed at the same time. Based on the name and looking at the code, it seemed like neighborhoods could be used for this, but would need the additional functionality I mentioned to work.
With all of that in mind, would you be open to those improvements, or renaming the datatype to something more appropriate and adding those datatypes?

Our use case is that we have segmentation for cells, and we also have some segmentation for larger regions or structures. We'd like to be able to view both at the same time, but the standard spatial component doesn't support displaying multiple segmentation datasets simultaneously

I see, thank you for the clarification. This was the motivation for developing the spatialBeta and layerControllerBeta views. If you have not already seen them, we have some demos like https://vitessce.io/#?dataset=kpmp-2023 (segmentations of multiple types of larger structures) and https://vitessce.io/#?dataset=codex-2023 (segmentations of cells and nuclei)

I had seen it, but I wasn't using it because of the lack of support for the image.raster.json filetype. I just poked around the examples some more after your comment, and I realized that image.raster.json isn't needed anymore. I'll try it out with multiple segmentations to see how it works. Thanks!


allow waiting on process exit without requiring a mutable borrow and without dropping stdin

in an async program, it is pretty common to want to be able to wait on something like read.or(write).or(exit), which isn't actually possible with the current api, since calling status closes stdin, and also requires exclusive access to the child. this kind of structure avoids the deadlock issues that wait in the standard library has, and so the decision to close stdin makes a bit less sense.
i added this as a new method to avoid breaking the api, but i would also not be opposed to just changing the semantics of the existing status method. alternate names for status_no_drop would also be good (i couldn't think of anything off the top of my head).

hey, i was just curious what the status of this was - is there anything i can do to help get it merged?

Also, the signature change of try_status is a breaking change for users who use .as_mut().map(Child::try_status) on Option<Child> or cast Child::try_status as fn(&mut Child) -> ....