caller of func called by goroutine is goexit

What version of Go are you using (go version)?

$ go version
go1.14.8

Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env

What did you do?

get caller of some func
https://play.golang.org/p/gKjf1xNTCOK
What did you expect to see?
see the correct caller
What did you see instead?
for func called in goroutine mode, the caller is goexit

This is caused by inlining. I don’t believe there is a bug here.
Unlike many projects, the Go project does not use GitHub Issues for general discussion or asking questions. GitHub Issues are used for tracking bugs and proposals only.
For asking questions, see:

Stack Overflow with questions tagged "go"

The Go Forum, a web-based forum

Gophers Slack, use the invite app for access. The #general channel is a good starting point.

Go Community on Hashnode with questions and posts tagged with "go"

The golang-nuts mailing list

IRC channel #go-nuts on Freenode

I don't think this has anything directly to do with inlining. It's just that in
func f() {
    go g()
}

f is not the caller of g. At least, not according to the runtime. For instance, the stack frame of f can be long gone while g is still running.
The caller of the function g is goexit. That's just a placeholder, we could just as well have decided that g doesn't have a caller. But goexit makes it clear that when g returns, the goroutine is going to exit (ala runtime.Goexit).
If you want to know where a goroutine was spawned from, that information is available in the output of runtime.Stack.

@randall77 thanks for your detail explanation!
What I want to do is to create a helper function to track caller in log without any injection code. After investigation, I did find runtime.Stack could do the trick, but somehow it is not elegant, and also performance.
It could be better to have a new function to get the spawner.


Revert last moved item

In my drop event handler I want the user to confirm the move with Ok/Cancel. If the user says "Cancel" , I'd like the item to be moved back to where it came from.
Maybe the new API could be as simple as: drake.revert().
Sort of related to #188, but that conversation is more about wanting to update the DOM themselves. I'm happy to let dragula update my DOM, but I just want the ability to revert moves.

+1

I need that function too! Somebody has a fix or a workaround?

+1
I'd like a "revert last drop" feature as well, but this project seems dead?

+1

+1

+1

@leif81 @LorenzoZaccagnini a workaround I did for this is to have a on drop listener so you have a chance to revert manually.
Example
drake.on('drop', function (el, container, source) {
  if (condition) {
    source.appendChild(el);
    return;
  }
});

I'm looking to solve this issue as well, but the last comment here doesn't fix it. This will just put it as the last element in the container since it's a simple append, just a heads up if anyone else comes across this.
I'm going to try and identify the index it came from in the container and insert it back to that location if possible. Will post again if I solve it.

Following piece of code can help you revert the last drop asynchronously
`var originalParent, originalNextSibling;
drake.on('drag', function (el, source) {
// Store the original parent and next sibling of the dragged element
originalParent = el.parentNode;
originalNextSibling = el.nextElementSibling;
});
drake.on('drop', function (el, target, source, helper) {
setTimeout(function () {
// move back the card
if (originalNextSibling) {
originalParent.insertBefore(el, originalNextSibling);
} else {
originalParent.appendChild(el);
}
}, 2000);
});`

Following piece of code can help you revert the last drop asynchronously, to its origional location
var originalParent, originalNextSibling;
drake.on('drag', function (el, source) {
	// Store the original parent and next sibling of the dragged element
	originalParent = el.parentNode;
	originalNextSibling = el.nextElementSibling;
});

drake.on('drop', function (el, target, source, helper) {
	setTimeout(function () {
		// move back the card
		if (originalNextSibling) {
			originalParent.insertBefore(el, originalNextSibling);
		} else {
			originalParent.appendChild(el);
		}
	}, 2000);
});


how to use it without paper-wormhole ?

hi ,i want to use this component without paper-wormhole,
i just dell this line "destinationId: 'paper-wormhole'," in paper-swiper.js,
can you just add this usecase as an option ?

You can use the component {{#paper-swiper-inline that won't render the swiper as a dialog.
Hope it helps.


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_96gu7tywe0/clone/recipe/meta.yaml:14: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_96gu7tywe0/clone/recipe/meta.yaml:20: missing_wheel: For pypi packages, wheel should be present in the host section
WARNING: /tmp/abs_96gu7tywe0/clone/recipe/meta.yaml:36: missing_description: The recipe is missing a description
ERROR: /tmp/abs_96gu7tywe0/clone/recipe/meta.yaml:36: missing_documentation: The recipe is missing a doc_url or doc_source_url
ERROR: /tmp/abs_96gu7tywe0/clone/recipe/meta.yaml:36: missing_license_family: The recipe is missing the about/license_family key.
ERROR: /tmp/abs_96gu7tywe0/clone/recipe/meta.yaml:36: missing_dev_url: The recipe is missing a dev_url
Errors were found


[RFC]uart: Add support for RS485

Adds support for configuring and enabling RS485 signalling
on supported uarts.
Signed-off-by: Nachiketa Kumar<EMAIL_ADDRESS>

Detail on RS485 signalling requirements can be found at https://en.wikipedia.org/wiki/RS-485
This change provides enabling and configuration options for different parameters of RS-485

May i suggest to include also a general binding like the one present in the Linux kernel to allow for example setting the 485 mode at compile time?
Thanks
https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/serial/rs485.yaml

Is the a driver side or new driver that would utilize RS485 that you can also post?

want to see how the params here would work in a simpler UART case that uses RTS to the transciever.

Need to see how we scale the UART api to multiple instances but ones that do an don't support the feature.  (This is a general problem that also exists for async support).

API meeting:

Would be great to pull more information from Devicetree
Does the Kconfig option enable this functionality for all UART instances?

This applies to the async option as well, so should be fixed for both

Is the a driver side or new driver that would utilize RS485 that you can also post?
The RS485 driver would be a part of a new board with dependencies on external  HAL module and thus not added to this change.

Need to see how we scale the UART api to multiple instances but ones that do an don't support the feature. (This is a general problem that also exists for async support).
Explored more on this  and   found that it would be problem for instances that do not support  RS485.

API meeting:

Would be great to pull more information from Devicetree

Does the Kconfig option enable this functionality for all UART instances?

This applies to the async option as well, so should be fixed for both

Modified the pull request to include rs485 configuration from the device tree and removed the changes introduced in headers.
On enabling CONFIG_SERIAL_SUPPORT_RS485 driver implementations can use the uart-rs485-controller.yaml  options to enable instance specific configurations.  Enabling functions would be private implementations let to drivers.

May i suggest to include also a general binding like the one present in the Linux kernel to allow for example setting the 485 mode at compile time?
Thanks
https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/serial/rs485.yaml

Made change to add uart-rs485-controller.yaml . Can you please take a look.
Thanks

API meeting:
bindings are looking good. Please revisit the types and see whether you can find better ones, like bool to turn on/off something.
@kumarnac mentioned that the Linux bindings are incomplete, so we cannot use them as they are.
@galak, can you check against the Linux driver and give your acknowledgment for not following it exactly?

@kumarnac will you pick up this PR again to complete the work?
@anthonytex failing the above, would you consider picking it up yourself?

Hello @carlescufi , Yes i'm going to continue the work if this pr will be closed thanks

@carlescufi i've opened a new PR, mentioning this please see https://github.com/zephyrproject-rtos/zephyr/pull/40907


Print output with plain text--i.e. not color formatted

Just a suggestion but it might be useful to print the output without color-formatted text. While I am actually in support of more color support throughout the project as a whole, it could be useful to have a --no-color option for those wanting to print the output for the use of commands not yet supporting color formatting.
Case in point: I currently set up keybindings for each of my calendar-linked task list which prints the output to dunst via notify send. Dunst, as far as I can tell, cannot intemperate the color formatting being output by todo. Before doing this I have to strip away all of the color formatting with something along the lines of notify-send "$(echo -e "\t\t\tComputer\n"; todo list computer --no-reverse --status ANY | tr -dc '[:print:]\n\r\t' | sed 's/\[[0-9][0-9];.*\[0m//g;s/\[[0-9][0-9]m//g;s/\[0m//g')". Calling this command from xmonad via haskell gets even more ugly.
In sum, while not a deal breaker, I could certainly see some utility in having the option to output text without color formatting

I think todo --colour=never should do the trick.
For scripting. todo --porcelain piped with jq might also be worth looking at.

Thanks, I'll have to take a look at that. I could have sworn that I had gone over the docs a couple of time looking for a no color option; I must have missed it.


Update to PDK 2.6.0

It's still an extremely old version of facterdb.. :(

Maybe not? Looks like facterdb-1.20 is included but 1.18 is mentioned in Gemfile.

Maybe not? Looks like facterdb-1.20 is included but 1.18 is mentioned in Gemfile.

doesn't '~> 1.18' mean equal or bigger ?

Seems like ~> means that it should be 1.18 or higher. But it's not allowed to be bigger than 1.99 (or it should be less than 2.0)


Register a new method in expr()

I have an entity with a $filepath property,
And I have a getWebPath() method which gives the relative web path (currently, uploads/some/sub/folders/the-file-name.extension)
But instead of serializing this relative web path :
{
    "id": 1,
    "filepath": "uploads/some/sub/folders/the-file-name.extension"
}

I would prefer to serialize the absolute web one :
{
    "id": 1,
    "filepath": "http://example.com/uploads/some/sub/folders/the-file-name.extension"
}

So I was just wondering, would it be a good practice to register a new method (asset() for instance) inside expr() ?
/**
 * @Hateoas\Relation(
 *      "filepath",
 *      href = "expr(asset(object.getWebPath(), true))"
 * )
 */

Then how to register it in expr() ?

You can use the link expression from the Hateoas library and set the third parameter to true.
/**
 * @Hateoas\Relation(
 *         "filepath",
 *         href = "expr(link(object.getWebPath(), "self", true))"
 * )
 */


Warning during startup: Detected code that calls async_forward_entry_setup during setup without awaiting async_forward_entry_setup, which can cause the setup lock to be released before the setup is done

2024-10-16 20:43:23.006 WARNING (MainThread) [homeassistant.helpers.frame] Detected code that calls async_forward_entry_setup for integration iqua_softener with title: iQua SL00285A213634 and entry_id: 01J9J1FFAJW91RDJB9XATS6SGK, during setup without awaiting async_forward_entry_setup, which can cause the setup lock to be released before the setup is done. This will stop working in Home Assistant 2025.1. Please report this issue.
Stack (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/usr/src/homeassistant/homeassistant/__main__.py", line 223, in <module>
    sys.exit(main())
  File "/usr/src/homeassistant/homeassistant/__main__.py", line 209, in main
    exit_code = runner.run(runtime_conf)
  File "/usr/src/homeassistant/homeassistant/runner.py", line 189, in run
    return loop.run_until_complete(setup_and_run_hass(runtime_config))
  File "/usr/local/lib/python3.12/asyncio/base_events.py", line 674, in run_until_complete
    self.run_forever()
  File "/usr/local/lib/python3.12/asyncio/base_events.py", line 641, in run_forever
    self._run_once()
  File "/usr/local/lib/python3.12/asyncio/base_events.py", line 1990, in _run_once
    handle._run()
  File "/usr/local/lib/python3.12/asyncio/events.py", line 88, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 2223, in async_forward_entry_setup
    _report_non_awaited_platform_forwards(entry, "async_forward_entry_setup")
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1192, in _report_non_awaited_platform_forwards
    report(
  File "/usr/src/homeassistant/homeassistant/helpers/frame.py", line 155, in report
    _LOGGER.warning(msg, stack_info=True)

I’m having the same issue


Figure out how many requests per second result from each event type, per validator

Context: https://github.com/vegaprotocol/devops-infra/issues/707
The old implementation of the event queue was hitting an Infura rate limit. No finger pointing here - this incentive is the first time we’ve had a decent number of people depositing and withdrawing at once, and it has highlighted a weakness. While there are other mitigations for this, it would be interesting to know for the future if we had left our config as it was, if we’d have hit the same limit?
tl;dr: come up with a rough estimate of ETH node requests per second the new bridge uses. This information may be useful to other validators.
Tasks (suggestion)

[ ] Create a deposit on Ethereum, log the number of requests to Ethereum this causes
[ ] Create a withdrawal on Ethereum, log the number of requests to Ethereum this causes
[ ] Log over an hour how many requests the new event forwarder makes to Ethereum
[ ] Work out how this scales with 1 deposit/second, 2 deposits/second, etc.

The max we saw in the inventive was around 5 in a block.
Output

We should be able to put a number on roughly how many Ethereum requests a day someone can expect to be making while running a validator. This is obviously totally dependent on traffic, but will help guide someone in making infrastructure choices.

This project is deprecated and no longer supported, because it is now part of the Vega core node.


Get the Current unpaid electricity bill

Checklist

[X] I have filled out the template to the best of my ability.
[X] This only contains 1 feature request (if you have multiple feature requests, open one feature request for each feature request).
[X] This issue is not a duplicate feature request of previous feature requests.

Is your feature request related to a problem? Please describe.
Not a problem
Describe the solution you'd like
Adding support the
(currentKWHReading - lastPaidKWH) * tariff
In order to see what is the current bill status
Describe alternatives you've considered
N/A
Additional context
N/A

You don't need a sensor for this. Create your own TemplateSensor:
template:
  - sensor:
      - name: "Current Unpaid Electric Balance"
        unit_of_measurement: "₪"
        state: >
          {% set last_read = states('sensor.iec_latest_meter_reading') | float %}
          {% set bill_read = states('sensor.last_iec_bill_meter_reading') | float %}
          {% set tariff = states('sensor.iec_kwh_tariff') | float %}

          {{ ((last_read - bill_read) * tariff) | round(2, default=0) }}

Indeed, this is possible to get that from a template - but since this is coming back from the API or this could be calculated - I though that this should be a nice to have feature.

@benji1703, in my perspective, this is somewhat a duplication of data - I don't see a main reason for the component to include this.
A valid idea would be to add this example to the readme as a nice-to-have idea


cmd/go: repeating packages for "go test" is racy

I accidentally typoed go test . ./... in a build script and noticed an interesting trap: the first . may be executing tests while the second . from ./... tries to open the same executable for writing, leading into a "text file is busy" message, if the timing is just right.
I would have expected either different temp file names, or go test to only run test for a package once, even if it was listed twice.
It was pointed out to me that go test fmt fmt fmt already runs the fmt tests just once, so this probably is about the ... logic not participating in the uniquify.

[0 tv@brute ~/go/src/bazil.org/bazil/kv]$ go test . ./...
fork/exec /home/tv/tmp/go-build973088303/bazil.org/bazil/kv/_test/kv.test: text file busy
FAIL	bazil.org/bazil/kv	0.001s
fork/exec /home/tv/tmp/go-build973088303/bazil.org/bazil/kv/_test/kv.test: no such file or directory
FAIL	bazil.org/bazil/kv	0.001s
ok  	bazil.org/bazil/kv/kvfiles	0.002s
?   	bazil.org/bazil/kv/kvmock	[no test files]
ok  	bazil.org/bazil/kv/kvmulti	0.002s
?   	bazil.org/bazil/kv/kvpeer	[no test files]
ok  	bazil.org/bazil/kv/untrusted	0.004s

Interesting find. I think the go command should normalize the list of input packages before doing anything.

I'll take this

Fixed by CL 16136

Thanks @nodirt! Sorry I forgot to ask you to add the "Fixes #13005" line to the change description.

I forgot to add it :)
On Tue, Oct 20, 2015, 11:57 PM Andrew Gerrand<EMAIL_ADDRESS>wrote:

Thanks @nodirt https://github.com/nodirt! Sorry I forgot to ask you to
add the "Fixes #13005 https://github.com/golang/go/issues/13005" line
to the change description.
—
Reply to this email directly or view it on GitHub
https://github.com/golang/go/issues/13005#issuecomment-149798938.


bug: Return field write on useContractWrite does not take expected params

Is there an existing issue for this?

[X] I have searched the existing issues

Package Version
1.0.2
Current Behavior
The docs mention using write to pass dynamic params.
  const { data, isLoading, isSuccess, write } = useContractWrite({
    address: '0xecb504d39723b0be0e3a9aa33d646642d1051ee1',
    abi: wagmigotchiABI,
    functionName: 'claim',
  } as UseContractWriteConfig)

  return (

      <button
        disabled={!write}
        onClick={() =>
          write({
            args: [69],
            from: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
            value: parseEther('0.01'),
          })
        }
      >
        Claim
      </button>
      {isLoading &&
Check Wallet
}
      {isSuccess &&
Transaction: {JSON.stringify(data)}
}

  )

However, the type of write is () => void

Which doesn't allow the above code to compile.
Expected Behavior
write should be of type ((args?: WriteContractConfig) => void) | undefined like the docs mention.
https://wagmi.sh/react/hooks/useContractWrite#return-value
Steps To Reproduce
No response
Link to Minimal Reproducible Example (StackBlitz, CodeSandbox, GitHub repo etc.)
No response
Anything else?
No response

Can't seem to reproduce this in a minimal environment: https://www.typescriptlang.org/play?target=8#code/JYWwDg9gTgLgBAbzgVwM4FMDCEB2MoCGAxjAOpTAzoA0c6URA7AEwCMAggEICScAvnABmUCCDgByAO4EA5iGDiAUIqK5U8JJIpV+cALwoM2PIRLlK6ABQJFAeltxHTgHoB+RU7gEARsABcdAwsHDzUHk4EACaRUOioqAHiAAwAHuJhnoLIOCTAuAByBCDoiagEgugAKoQ4qBVQAGIiIOnhjgRQMgkoOJHogsA46JFhfACUQA
Do you think you could share a minimal reproducible example (via separate repo or https://new.wagmi.sh) with your tsconfig.json? Will re-open the issue when provided!

Related https://github.com/wagmi-dev/wagmi/issues/2328#issuecomment-1546592846


rel: Prepare 3.0.0 pre-release

Prepares an "internal" release of the chart for us to test Refinery 3.0.0.

:warning: We do not recommend any customer use this version of the chart and we do not support it.

Changes:

The commits from https://github.com/honeycombio/helm-charts/pull/278 (thanks @zenon-was-here!)
Updated default refinery configuration
Updated resource values
A new Statefulset Redis deployment option

This is the refinery value I used in my local testing environment
CentralStore:
    Type: redis
    SpanChannelSize: 10_000

  RedisPeerManagement:
    # Host is the host and port of the Redis instance to use for peer cluster membership management.
    Host: '{{include "refinery.redis.fullname" .}}:6379'
    MaxIdle: 30
    MaxActive: 100

  Collection:
    # AvailableMemory is the amount of system memory available to the Refinery process.
    MaxAlloc: '{{ .Values.resources.limits.memory }}'
    AvailableMemory: '{{ .Values.resources.limits.memory }}'
    MaxMemoryPercentage: 75
    # TraceFetcherConcurrency: 2
    ProcessTracesBatchSize: 1000
    DeciderBatchSize: 1000

replicaCount: 6

resources:
  limits:
    cpu: 5
    # This value is used by default for config.Collection.AvailableMemory
    memory: 2Gi
  requests:
    cpu: 500m
    memory: 500Mi


Feature request: auto-create new branch if no --branch-name flag is supplied

Describe the solution you'd like
Add functionality to create a new random branch name if one was not provided via the --branch-name command. This could make it easier to use git-xargs because many new users get tripped up on needing to iterate against new branch names when testing out their jobs.
The branch name generation could use a UUID-like string algorithm to avoid collisions with existing branch names.

Closing as I'm no longer working at Gruntwork and this issue is stale.


Enable mllm in CI

Refer to this PR https://github.com/intel/llm-on-ray/pull/107 and add one of the models to CI.

Will work on it with @KepingYan


tools/gke-disk-image-builder: Fails with Message: Quota 'CPUS_ALL_REGIONS' exceeded.

What happens?
The image-build script (both the go script and through gcloud builds....)  fails with error Quota 'CPUS_ALL_REGIONS' exceeded:
[...]
[secondary-disk-image]: 2024-10-14T22:45:07+02:00 Step "create-disk" (CreateDisks) successfully finished.
[secondary-disk-image]: 2024-10-14T22:45:07+02:00 Running step "create-instance" (CreateInstances)
[secondary-disk-image.create-instance]: 2024-10-14T22:45:07+02:00 CreateInstances: Creating instance "secondary-disk-image-instance".
[secondary-disk-image]: 2024-10-14T22:45:14+02:00 Error running workflow: step "create-instance" run error: operation failed &{ClientOperationId: CreationTimestamp: Description: EndTime:2024-10-14T13:45:15.481-07:00 Error:0xc000328230 HttpErrorMessage:FORBIDDEN HttpErrorStatusCode:403 Id:3138785068221217850 InsertTime:2024-10-14T13:45:09.545-07:00 InstancesBulkInsertOperationMetadata:<nil> Kind:compute#operation Name:operation-1728938708258-62475e98b4d71-14d19ec0-defb4629 OperationGroupId: OperationType:insert Progress:100 Region: SelfLink:https://www.googleapis.com/compute/v1/projects//zones/europe-west4-a/operations/operation-1728938708258-62475e98b4d71-14d19ec0-defb4629 SetCommonInstanceMetadataOperationMetadata:<nil> StartTime:2024-10-14T13:45:09.546-07:00 Status:DONE StatusMessage: TargetId:7167288959635045435 TargetLink:https://www.googleapis.com/compute/v1/projects/<PROJECT_ID>/zones/europe-west4-a/instances/secondary-disk-image-instance User:<MY_EMAIL> Warnings:[] Zone:https://www.googleapis.com/compute/v1/projects/<PROJECT_ID>/zones/europe-west4-a ServerResponse:{HTTPStatusCode:200 Header:map[Alt-Svc:[h3=":443"; ma=2592000,h3-29=":443"; ma=2592000] Cache-Control:[private] Content-Type:[application/json; charset=UTF-8] Date:[Mon, 14 Oct 2024 20:45:15 GMT] Server:[ESF] Vary:[Origin X-Origin Referer] X-Content-Type-Options:[nosniff] X-Frame-Options:[SAMEORIGIN] X-Xss-Protection:[0]]} ForceSendFields:[] NullFields:[]}:
Code: QUOTA_EXCEEDED
Message: Quota 'CPUS_ALL_REGIONS' exceeded.  Limit: 12.0 globally.
[secondary-disk-image]: 2024-10-14T22:45:14+02:00 Workflow "secondary-disk-image" cleaning up (this may take up to 2 minutes).
[secondary-disk-image]: 2024-10-14T22:45:15+02:00 Workflow "secondary-disk-image" finished cleanup.
2024/10/14 22:45:15 unable to generate disk image: step "create-instance" run error: operation failed &{ClientOperationId: CreationTimestamp: Description: EndTime:2024-10-14T13:45:15.481-07:00 Error:0xc000328230 HttpErrorMessage:FORBIDDEN HttpErrorStatusCode:403 Id:3138785068221217850 InsertTime:2024-10-14T13:45:09.545-07:00 InstancesBulkInsertOperationMetadata:<nil> Kind:compute#operation Name:operation-1728938708258-62475e98b4d71-14d19ec0-defb4629 OperationGroupId: OperationType:insert Progress:100 Region: SelfLink:https://www.googleapis.com/compute/v1/projects/<PROJECT_ID>/zones/europe-west4-a/operations/operation-1728938708258-62475e98b4d71-14d19ec0-defb4629 SetCommonInstanceMetadataOperationMetadata:<nil> StartTime:2024-10-14T13:45:09.546-07:00 Status:DONE StatusMessage: TargetId:7167288959635045435 TargetLink:https://www.googleapis.com/compute/v1/projects/<PROJECT_ID>/zones/europe-west4-a/instances/secondary-disk-image-instance User:<MY_EMAIL> Warnings:[] Zone:https://www.googleapis.com/compute/v1/projects/<PROJECT_ID>/zones/europe-west4-a ServerResponse:{HTTPStatusCode:200 Header:map[Alt-Svc:[h3=":443"; ma=2592000,h3-29=":443"; ma=2592000] Cache-Control:[private] Content-Type:[application/json; charset=UTF-8] Date:[Mon, 14 Oct 2024 20:45:15 GMT] Server:[ESF] Vary:[Origin X-Origin Referer] X-Content-Type-Options:[nosniff] X-Frame-Options:[SAMEORIGIN] X-Xss-Protection:[0]]} ForceSendFields:[] NullFields:[]}:
Code: QUOTA_EXCEEDED
Message: Quota 'CPUS_ALL_REGIONS' exceeded.  Limit: 12.0 globally.
panic: unable to generate disk image: step "create-instance" run error: operation failed &{ClientOperationId: CreationTimestamp: Description: EndTime:2024-10-14T13:45:15.481-07:00 Error:0xc000328230 HttpErrorMessage:FORBIDDEN HttpErrorStatusCode:403 Id:3138785068221217850 InsertTime:2024-10-14T13:45:09.545-07:00 InstancesBulkInsertOperationMetadata:<nil> Kind:compute#operation Name:operation-1728938708258-62475e98b4d71-14d19ec0-defb4629 OperationGroupId: OperationType:insert Progress:100 Region: SelfLink:https://www.googleapis.com/compute/v1/projects/<PROJECT_ID>/zones/europe-west4-a/operations/operation-1728938708258-62475e98b4d71-14d19ec0-defb4629 SetCommonInstanceMetadataOperationMetadata:<nil> StartTime:2024-10-14T13:45:09.546-07:00 Status:DONE StatusMessage: TargetId:7167288959635045435 TargetLink:https://www.googleapis.com/compute/v1/projects/<PROJECT_ID>/zones/europe-west4-a/instances/secondary-disk-image-instance User:<MY EMAIL> Warnings:[] Zone:https://www.googleapis.com/compute/v1/projects/<PROJECT_ID>/zones/europe-west4-a ServerResponse:{HTTPStatusCode:200 Header:map[Alt-Svc:[h3=":443"; ma=2592000,h3-29=":443"; ma=2592000] Cache-Control:[private] Content-Type:[application/json; charset=UTF-8] Date:[Mon, 14 Oct 2024 20:45:15 GMT] Server:[ESF] Vary:[Origin X-Origin Referer] X-Content-Type-Options:[nosniff] X-Frame-Options:[SAMEORIGIN] X-Xss-Protection:[0]]} ForceSendFields:[] NullFields:[]}:
Code: QUOTA_EXCEEDED
Message: Quota 'CPUS_ALL_REGIONS' exceeded.  Limit: 12.0 globally.

How to reproduce?
In a new project, create a bucket for logs
gcloud storage buckets create gs://<BUCKET_FOR_LOGS>/ --location europe-west4

Enable services:
gcloud services enable cloudbuild.googleapis.com compute.googleapis.com

Add IAM policy bindings as instructed:
gcloud projects add-iam-policy-binding <PROJECT_ID> --member<EMAIL_ADDRESS>--role roles/compute.serviceAgent

gcloud projects add-iam-policy-binding <PROJECT_ID> --member<EMAIL_ADDRESS>--role roles/compute.admin

Add the bucket access:
gcloud storage buckets add-iam-policy-binding gs://<BUCKET_FOR_LOGS>/ --project=<PROJECT_ID><EMAIL_ADDRESS>--role=roles/storage.objectCreator

Create the credentials with
gcloud auth application-default login

and run the script:
go run ./cli --project-name=<PROJECT_ID> --image-name=<MY_IMAGE_NAME> --zone=europe-west4-a --gcs-path=gs://<BUCKET_FOR_LOGS> --disk-size-gb=50 --container-image=<MY_SOURCE_IMAGE> --timeout 100m

What I would expect?
I used the script successfully some weeks ago (on Sept 21) in the same region and it went smoothly. The output around that point was:
[...]
[secondary-disk-image]: 2024-09-21T14:18:25+02:00 Step "create-disk" (CreateDisks) successfully finished.
[secondary-disk-image]: 2024-09-21T14:18:25+02:00 Running step "create-instance" (CreateInstances)
[secondary-disk-image.create-instance]: 2024-09-21T14:18:25+02:00 CreateInstances: Creating instance "secondary-disk-image-instance".
[secondary-disk-image.create-instance]: 2024-09-21T14:18:31+02:00 CreateInstances: Streaming instance "secondary-disk-image-instance" serial port 1 output to https://storage.cloud.google.com/pfnano-disk-image-build-logs/daisy-secondary-disk-image-20240921-12:18:17-ny44j/logs/secondary-disk-image-instance-serial-port1.log
[secondary-disk-image]: 2024-09-21T14:18:31+02:00 Step "create-instance" (CreateInstances) successfully finished.
[...]

It is not clear to me why the CPU limit would be an issue for this script.
Any suggestions on how to get this fixed?
Thank you!

Replying to my own question:
This was due to no resources (type of machines) available in the requested zone.
Changing --zone and/or --machine-type solves the problem.
The error message
Code: QUOTA_EXCEEDED
Message: Quota 'CPUS_ALL_REGIONS' exceeded.

or
Code: QUOTA_EXCEEDED
Message: Quota 'N2_CPUS' exceeded.

is misleading and most likely got distorted by Cloud Build from the original message from the VM creation which is of type:
ERROR: (gcloud.compute.instances.create) Could not fetch resource:
---
code: ZONE_RESOURCE_POOL_EXHAUSTED
errorDetails:
- help:
    links:
    - description: Troubleshooting documentation
      url: https://cloud.google.com/compute/docs/resource-error
- localizedMessage:
    locale: en-US
    message: A e2-standard-2 VM instance is currently unavailable in the europe-west4-a
      zone. Alternatively, you can try your request again with a different VM hardware
      configuration or at a later time. For more information, see the troubleshooting
      documentation.
- errorInfo:
    domain: compute.googleapis.com
    metadatas:
      attachment: ''
      vmType: e2-standard-2
      zone: europe-west4-a
      zonesAvailable: ''
    reason: resource_availability
message: The zone 'projects/<PROEJCT_ID>/zones/europe-west4-a' does not have
  enough resources available to fulfill the request.  Try a different zone, or try
  again later.

May I suggest that someone paid by Google propagates this to the Cloud Build team so that they can make sure that Cloud Build errors retain the original content of the VM error? That would help users understand what happens.


result stream closed error

I create a result_stream with the function neo4j_run.
When i close this stream i get the signal SIGARBRT with the following error message:

result_stream.c:549: run_rs_close: Assertion `results->refcount == 0' failed.

But if i run my code multiple times, it work in the end.
In my code i do some insertion and fetch with different  threads (connection and session different)
The fetch and add are not on node of same label.

Hi! Can you share the test code for this issue?

Hi!
It's a bit difficult to generate some sample code.
But with perror i had more insight of the error. It tell me that i can't have concurrent session.

I'll need some way to reproduce the issue to really understand what is going on. Can you please try to create some code that reproduces it?

I'll try to have some sample code to reproduce the issue.

issue_libneo4j.zip
For the moment i have this sample, but it doesn't show the error i got.
For now it send some std::system_error

Thanks. I've copied that code to https://gist.github.com/cleishm/ba8ddc3775795bc074b613ddb0b9148c/4229130305b2f08134dd082a2185b9079a160247.
The first thing I notice is that you're cleaning up vector_thread_insert before cleaning up vector_thread_fetch. However, the threads stored in vector_thread_fetch depend on the threads in vector_thread_insert (they join these threads). Because of the cleanup order, the thread in vector_thread_insert could be deleted before it is joined in the vector_thread_fetch thread, causing an error.
Swapping the cleanup order fixes this, and now I cannot reproduce any error.
However, I suggest being very, very careful using a neo4j_connection across multiple threads. The connection, session or result streams are not synchronised and should not be accessed concurrently from multiple threads.

Ok thank you for your quick reply.
In my project i have to use multiple thread. With your warrant i'll make some change about the access of the database. But i have one question.
I understand that the connection and session cannot be accessed concurrently, but can i generate a result streams in each threads ? or do i need to create only one stream at a given time ?

No, you should not concurrently access result streams from the same connection+session.
While you can send multiple statements on a single connection+session, and thus have multiple open result streams, they are actually processed in serial. Each result stream is completely retrieved before the next.
If you want true concurrent access, you must use separate connections. This is a constraint of the underlying protocol (BOLT).

I try your solution and it resolve my problem. I had a thread race.
Thank you very much.


dbsize grows instead of reduce when removing large amount of data!

I'm experiencing a very weird behaviour of ssdb.. I have a large ssdb database (about 100Gb) that contains millions of keys, hashes and sorted sets. Because I have embedded in the key names a count that represents the time, I'm able to know what key/hash/sorted-set I need to remove (because the data can be expired given it is too old) from the name of the key.
So I have created a scripts that cycles through the key names (using scan, zlist, and hlist commands) and determines if the keys has to be removed from its name.
I have run the script and it has removed millions of keys, hashes and sorted sets, however very surprisingly the size of the database has increased instead of decreasing!
I do understand that every now and then ssdb triggers compresssion, and i do understand that ssdb doesn't write things immediately in disk... but still after running my script for so long and removing so much data i really expect the db size to decrease.
Can you please suggest what could be the cause?

could this be related to the issue of leveldb described here:
https://github.com/google/leveldb/issues/603
?

I also saw this issue and test case:
https://github.com/ideawu/ssdb/blob/master/deps/leveldb-1.20/issues/issue178_test.cc
so I wonder, is this  related to the problem I described?

Hi, this issue is related to leveldb. As I know, deleted keys will not be actually removed from disk immediately, they may be removed after a compaction or may not. It depends on leveldb's policy.

while it is acceptable that they are not removed immediately, for me it is very crucial to make sure that they will eventually be removed.. otherwise an ever growing database will be unusable for me.
Could you please tell me how to set leveldb policy in a way that deleted keys will be removed for sure?

Manually invoke a compact operation will actually remove delete keys from disk, execute compact in ssdb-cli, do compact when server is not busy.

Unfortunately my server is busy 24h a day :(
Actually I’m running 2 masters in “mirror” and My server only uses one of them actively. So I was wondering, will it be better to run “compact” on the second master, the one that it is not actively used? Will this immediately affect the performance on the primary master?
And after having compacted the data on the second master, will the data on the first master also reduce through syncing ?

Compact on a server will not affect on another server.

Does the “compact” command of ssdb support key ranges and type (kv,hash,sorted set, list)? If it does then I could slowly split the compaction in smaller ranges in order not to affect the performance too much

@ideawu just as it might be useful for others, considering that I'm running with a master-master configuration with sync=mirror,  I was able to solve this by doing the following:

removing data on MasterB (the one that is normally not actively used)
wait for MasterA and MasterB to be fully in sync again
run "compact" command on MasterB (this won't affect performance as this is not actively used)
switch my application to use MasterB
run "compact" command on MasterA
switch back my application to use MasterA

after doing the above the size of my database was reduced from all the data that I had deleted.


Fix parsing of extension name to include special characters

There is an issue with the bundle-catalog script which can not properly parse extension names with special characters, for example neuvector-ui-ext.
A previous action failed when syncing the neuvector extension:
Sync Catalog Image with Registry step:
 + Syncing: neuvector-ui-ext
jq: error: ui/0 is not defined at <top-level>, line 1:
.extensions.neuvector-ui-ext.repo
jq: error: ext/0 is not defined at <top-level>, line 1:
.extensions.neuvector-ui-ext.repo
jq: 2 compile errors
jq: error: ui/0 is not defined at <top-level>, line 1:
.extensions.neuvector-ui-ext.branch
jq: error: ext/0 is not defined at <top-level>, line 1:
.extensions.neuvector-ui-ext.branch
jq: 2 compile errors
jq: error: ui/0 is not defined at <top-level>, line 1:
.extensions.neuvector-ui-ext.versions[]
jq: error: ext/0 is not defined at <top-level>, line 1:
.extensions.neuvector-ui-ext.versions[]
jq: 2 compile errors
     Repository:
     Branch:
     Versions  :

  .. Cloning repository
Cloning into 'neuvector-ui-ext'...
remote: Not Found

This can be fixed if the NAME key is enclosed in double quotes to ensure it is correctly parsed as a string:
After:
$ ./scripts/bundle-catalog -t test-tag
Syncing Extension Catalogs
 + Syncing: neuvector-ui-ext
     Repository: neuvector/manager-ext
     Branch: gh-pages
     Versions  : 1.0.0

  .. Cloning repository
Cloning into 'neuvector-ui-ext'...

Nice catch! I must have missed that change 😀


Release 2.1.0

There was a major release that includes some major changes but it looks like it was never actually released. Can we get a release please? @eheydrick

the last release I see is 1.0.2 we should release 2.0.0 and 2.1.0

yes, we should release 2.0.0. will try to work on that tomorrow.

@eheydrick ping

@sstarcher can we get a release please?

Apologies for the delay, working on cutting a release.

2.0.0 has been released.


k8s: allow limiting k8s instance to a particular namespace

By default pyrra-k8s attempts to read ServiceLevelObjectives on cluster scope. We might want to scope these to a particular namespace, so that
a) multiple pyrras could be deployed
b) each instance would require less privileges

Nice, very cool contribution!
We should probably support having a flag that takes multiple namespaces, much like the Prometheus Operator has it:
https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/cmd/operator/main.go#L186
Now, I'm happy merging this for now and then add support for multiple namespaces in a follow up PR!? What do you think?

Right, I'd follow prometheus-operator here.
I wonder if we can start with cluster scope - and fall back to a single namespace if auth error is received? That would cover 95% of cases. Multiple namespaces can be provided with a flag

Very helpful feature, any chance of this getting merged?

Are you still interested in finishing this PR @vrutkovs?

I'm not too familiar with prometheus-operator and sadly don't have much time to implement a more extensive change :(
I don't mind landing a change to support single namespace (read "rebase until it passes tests")


CreateImage soeed uo x10; turn off image cache

After create special non stream implementation of
MemoryRandomAccessStream images is created ten times faster.
That is why the cache is not necesary and I think it wasn't working
because of problem with hashCode.

The image creation was slow indeed, if this fixes the issue there shouldn't be a need for a cache. Thanks !


community-operators infinispan (2.1.4)

Thanks submitting your Operator. Please check below list before you create your Pull Request.
New Submissions

[x] Does your operator have nested directory structure?
[x] Have you selected the Project Community Operator Submissions in your PR on the right-hand menu bar?
[x] Are you familiar with our contribution guidelines?
[x] Have you packaged and deployed your Operator for Operator Framework?

[x] Is your submission signed?
[x] Is operator icon set?

Updates to existing Operators

[x] Did you create a ci.yaml file according to the update instructions?
[x] Is your new CSV pointing to the previous version with the replaces property if you chose replaces-mode via the updateGraph property in ci.yaml?
[x] Is your new CSV referenced in the appropriate channel defined in the package.yaml or annotations.yaml ?
[x] Have you tested an update to your Operator when deployed via OLM?
[x] Is your submission signed?

Your submission should not

[x] Modify more than one operator
[x] Modify an Operator you don't own
[x] Rename an operator - please remove and add with a different name instead
[x] Submit operators to both upstream-community-operators and community-operators at once
[x] Modify any files outside the above mentioned folders
[x] Contain more than one commit. Please squash your commits.

Operator Description must contain (in order)

[x] Description about the managed Application and where to find more information
[x] Features and capabilities of your Operator and how to use it
[x] Any manual steps about potential pre-requisites for using your Operator

Operator Metadata should contain

[x] Human readable name and 1-liner description about your Operator
[x] Valid category name1
[x] One of the pre-defined capability levels2
[x] Links to the maintainer, source code and documentation
[x] Example templates for all Custom Resource Definitions intended to be used
[x] A quadratic logo

Remember that you can preview your CSV here.
--
1 If you feel your Operator does not fit any of the pre-defined categories, file an issue against this repo and explain your need
2 For more information see here

@ryanemerson you have to put your operator to correct directory (community-operators/operator_name). You have it in root directory. https://github.com/ryanemerson/community-operators/tree/infinispan_community_2.1.4/2.1.4

@mvalarh Updated so the files are under  community-operators/infinispan/2.1.4, I must have been on auto-pilot.

/merge possible


throw an Error with type: 'asset', parser.dataUrlCondition.maxSize

Bug report

What is the current behavior?
I got an TypeError: Cannot read property 'get' of undefined when rebuild with config type: 'asset', parser.dataUrlCondition.maxSize=1000
If the current behavior is a bug, please provide the steps to reproduce.

webpack.config.js

module.exports = {
  module: {
    rules: [
      {
        test: /\.png/,
        type: 'asset',
        parser: {
          dataUrlCondition: {
            maxSize: 10000
          }
        }
      }
    ]
  }
}

require a image with size under 10000
rebuild and got error

ERROR in [entry] [initial]
Cannot read property 'get' of undefined
TypeError: Cannot read property 'get' of undefined
    at /Users/cdchenliqiang/workspace/4a-bdp-fe/mkt-cpm-ui/node_modules/webpack/lib/asset/AssetModulesPlugin.js:183:29
    at Hook.eval (eval at create (/Users/cdchenliqiang/workspace/4a-bdp-fe/mkt-cpm-ui/node_modules/tapable/lib/HookCodeFactory.js:19:10), <anonymous>:10:16)
    at Hook.CALL_DELEGATE [as _call] (/Users/cdchenliqiang/workspace/4a-bdp-fe/mkt-cpm-ui/node_modules/tapable/lib/Hook.js:14:14)
    at Compilation.getRenderManifest (/Users/cdchenliqiang/workspace/4a-bdp-fe/mkt-cpm-ui/node_modules/webpack/lib/Compilation.js:3774:36)
    at /Users/cdchenliqiang/workspace/4a-bdp-fe/mkt-cpm-ui/node_modules/webpack/lib/Compilation.js:3793:22
    at symbolEach (/Users/cdchenliqiang/workspace/4a-bdp-fe/mkt-cpm-ui/node_modules/neo-async/async.js:2444:9)
    at Object.each (/Users/cdchenliqiang/workspace/4a-bdp-fe/mkt-cpm-ui/node_modules/neo-async/async.js:2849:16)
    at Compilation.createChunkAssets (/Users/cdchenliqiang/workspace/4a-bdp-fe/mkt-cpm-ui/node_modules/webpack/lib/Compilation.js:3787:12)
    at /Users/cdchenliqiang/workspace/4a-bdp-fe/mkt-cpm-ui/node_modules/webpack/lib/Compilation.js:2548:14
    at /Users/cdchenliqiang/workspace/4a-bdp-fe/mkt-cpm-ui/node_modules/webpack/lib/Compilation.js:2680:5

What is the expected behavior?
rebuild without error
Other relevant information:
webpack version:  5.45.1
Node.js version: 12.20.1
Operating System: macOS 10.14.4
Additional tools:

Seems you have broken data URI

it works fine if i comment codes below
// webpack/lib/NormalModuleFactory.js

cleanupForCache() {
  for (const module of this._restoredUnsafeCacheEntries) {
    ChunkGraph.clearChunkGraphForModule(module);
    ModuleGraph.clearModuleGraphForModule(module);
    // works fine if comment this line
    // module.cleanupForCache();
  }
}

never do it

Please provide code

webpack-learn.zip
Here is my code and reproduce steps:

run npm start
type some words in ./src/index.js and save
get error TypeError: Cannot read property 'get' of undefined

cache.type = 'filesystem' and devServer.hot = true are the key

Update webpack to v5.45.1, can't reproduce using your repo, works fine


Pass pre-commit checks

Hi @carlthome
I was going to do this after a few merges that are happening to avoid conflicts, thank you though!!


Incorrect Icons

I just updatedto 1.6.11 and my Python file has the JS icon.

thanks for submitting an issue, we have a few closed issues regarding that problem and a restart of atom fixes it.
Please let me know if this doesn't fix your issue.

Thank you for your advice. Restarting Atom did fix my problem.

I've updated the readme to let people know about this issue.


Revert "Add more structure rook code"

This breaks the CaaSP kubernetes deployment with:
ModuleNotFoundError: No module named 'tests.lib.rook.ses'
Reverts SUSE/rookcheck#69

Closing in favor of https://github.com/SUSE/rookcheck/pull/72


Enable access to one of the region EAST US 2 or CENTRAL US 2 or CENTRAL US ?

Is your feature request related to a problem? Please describe.
I am seeing playwright beta service has restrictions on “region”.
At my organization, our team is enforcing us to use certain regions. I was not able use current available regions which our org doesn't approve.
Describe the solution you'd like
Could you please enable EAST US 2 or CENTRAL US 2 or CENTRAL US ?
Describe alternatives you've considered
Additional context
AB#1896441

Thank you for filing the request, Pavan.
To everyone: we will expand to more regions based on user demand. Upvoting a specific region will greatly assist us in gauging that demand. Thanks!

Would like to add that (along with the ones requested by @PavanMudigondaTR) availability for the below regions will be super beneficial for us, since we have resources hosted in these specific regions and testing in the same will help overcome some potential latency issues -

Brazil South
South East Asia

Regards,
Raj

@johnsta  Just following up on my request. Could you please let me know if its possible to do this ?

Australia/East
upvote meh


Show x-axis time labels in charts

Hey hey, this is a neat little tool - good stuff! :bow:
It would be immensly helpful to show not only the y-axis labels but also the x-axis time labels; this would make it much more useful.

This is definitely something I've wanted to add. The API gives me the timestamps for each data point so that won't be too hard.
The challenge I see for this one will be figuring out how to format the date/times for each time frame and how many labels are able to fit within the view and make sense as to which column they are actually for.
Are you thinking just a start / middle / end label like on the Y axis?

@daniel-j-h Hey, I pretty much have this finished! You can pass the following flag at runtime:
-x, --show-x-labels    Show x-axis labels

You can also press x inside the application to toggle the labels. Below are a couple screenshots. A couple things to note:

The label is right justified, so the right side of the label lines up with the datapoint its related to. This is apparent with how the very first label lines up on the right side with the start of the graph.
The number of labels shown will dynamically change based on the width of the application.
The accuracy of the label placement isn't 100%. This is just a limitation of how the underlying TUI library gives me control on how to render labels. However, it should be close enough for this type of application.

Let me know how you like it and if you'd prefer different formatting for the date/times displayed!

 They look dynamically created and are sometimes hard to use for orientation. For example in the 5Y view it would be great to see start of the year for orientation :thinking:
Maybe a more natural and intuitive way could be to use for

1D -  1 hour increments
1W - 1 day increments
1Y - 1 month increments
5Y - 1 year increments

What are your thoughts here? :hugs:

I'm very limited with the library on how I can create labels. And if I create too many and the width of those labels is wider than the program, they just don't display :/
I have to pass an array of strings to use as the labels and the library renders them evenly from left to right. So if I pass an array of 2, it'll render at start and end. If I pass 3, it'll be start / middle / end.  For 5, it'd be start, 25%, 50%, 75%, end.
So depending on how many labels I can make, I have to calculate which datapoints exist at those increments so they lineup somewhat accurately. Does this make sense? I honestly don't know how I can do it differently while guaranteeing the labels line up AND will display.

I just had a thought on something I could try. I can push single space strings into the array to better control where the labels show up.
I can see if I can find a way to do that with the increments you recommended.

@daniel-j-h I'm not having any luck getting the labels to work any differently than I currently have them. This is the best solution I can come up with using the library I'm using.
Do you think this is good to merge in it's current state, or should this be held off until a better solution comes along? It's currently opt in (labels aren't shown by default), so I don't see any issue merging it in the current state and improving it down the road if possible.
Regardless, I'll create a new release today to get out all the changes from this week later today.

:wave: Hey hey - not sure I can give you input here, I don't know the limitations of the underlying plotting lib :see_no_evil:  I'm wondering if we have to show actual labels, or if we can just show a marker like a + or a | on the x axis for the "natural increments"?

Yeah, I can't even do that unfortunately because I just can't guarantee placement of the labels line up with those "natural increments". I'm stuck just dividing up the dataset into equal chunks and  creating a label for the first datapoint of each chunk since that's how the labels will get evenly rendered.
Ok, I'll go ahead and merge this. I think it's better to have it in its current state than not! Thanks for all your suggestions and feedback!!

@daniel-j-h new release is published to the repo and to Crates.io

Checking it out! Thanks a lot, this is amazing! :bow:


[NTR] nonparenchymal liver cell

Preferred term label:
nonparenchymal liver cell
Synonyms
nonparenchymal cell
non-parenchymal cell
non-parenchymal liver cell
hepatic non-parenchymal cell
Definition
Hepatocytes constitute about 80% of the mass of the liver. The remaining tissue is made up of nonparenchymal liver cells such as Kupffer cells, stellate cells and liver sinusoidal endothelial cells. These cells play an important role in liver regeneration and recovery from inflammatory liver injury. [PMID: 8743919]
Parent cell type term:
CL:0000000 (cell)
What is the anatomical structure that the cell is a part of?
UBERON:0002107 (liver)
Your nano-attribution (ORCID)
0000-0002-0819-0473
Any additional notes or concerns
This is not a distinct entity but all liver cells that are not hepatocytes.
Not clear to which term must be related to in CL.
This term can be mapped to BTO:0005265

Thank you for the new term request, @paulacalipho.
I propose we make the parent cell type CL:0002371 'somatic cell'.
For synonyms, do you agree with the following types?
nonparenchymal cell (broad)
non-parenchymal cell (broad)
non-parenchymal liver cell (exact)
hepatic non-parenchymal cell (exact)

@bvarner-ebi Yes, many thanks

Couple of potential issues here:

We also don't typically make terms with negative definitions.  I think in this case we may be able to as may be able to list all subclasses cleanly.  However, I'd like to discuss further on the upcoming CL call.

Parenchyma is a rather broad/vague term.  As a result, the parenchyma terms in Uberon are poorly populated with tissues and so classification in CL based on part relationships to parenchyma terms is unreliable.  There is demand for these terms though, especially from clinical users.  We need to discuss a strategy for supporting these terms.  Let's also add this to the CL meeting agenda.

In the meantime,  please put this request on hold.
Thanks, David

This term was discussed in today's CL meeting.
@addiehl and @paolaroncaglia shared thoughts. There is concern that this term is problematic due to it being too general and based on a negative ('everything else') definition, which is not good practice for ontologies. There are also many cell types outside the scope of the term that are involved in liver regeneration.
@paulacalipho, consensus is that we will not proceed with creating this term at the moment. We would like to understand your use case better so that we could offer other potential solutions. Is it to map cell types in Cellosaurus to CL?

@bvarner-ebi, thanks for reviewing this term. I understand your concern.
It is to map the cell line NPC2-hTERT (synonym: NPC-hTERT) described in PubMed=20456367. Derived from sampling site: Fetal liver. Cell type=Non-parenchymal cell. This cell line will be release today in Cellosaurus. The paper is not really helpful, it only states "NPC2, non-parenchymal cells"

@paulacalipho cc @bvarner-ebi

It is to map the cell line NPC2-hTERT (synonym: NPC-hTERT) described in PubMed=20456367. Derived from sampling site: Fetal liver. Cell type=Non-parenchymal cell. This cell line will be release today in Cellosaurus. The paper is not really helpful, it only states "NPC2, non-parenchymal cells"

The abstract of the paper you cite says "Here, we established two new cell lines, telomerase immortalized human fetal hepatocytes, Hc3716-hTERT, and telomerase immortalized hepatic stellate cells, NPC-hTERT." so why not use CL:0000632 'hepatic stellate cell'?
Note (for Bradley), the "mapping" here really means "derived from".

Thanks @paolaroncaglia for your input. Indeed in the abstract is indicated this cell type. Material and methods indicate non-parenchymal cells and further analysis indicates has stellate cell markers. We will analyze to what this term will be mapped. Many thanks again, Paula