Granularity of permissions

Some contracts need to have an account with special permissions. An example is MintableToken, which has an address which is the only one allowed to mint tokens. These are currently implemented as Ownable, with the special permissions assigned to the owner (by marking some functions as onlyOwner).
Sometimes a single contract has more than one feature requiring special permissions. Imagine a MintableToken which is also a PausableToken. In such a case, the contract owner can both mint tokens and pause the token.
This goes against the security principle of least privilege, and also makes some requirements harder to implement. As an example of the latter, suppose we have the requirement to disable minting after a crowdsale, but want to retain the ability to stop the contract in an emergency.
For the two reasons stated above, I believe we need to provide greater granularity of permissions. This is kind of doable under the current ownership framework, by setting as owner a contract that can forward calls or not according to some logic. I don't dislike that, but I can see some problems with it.
We might want to provide the granularity directly, i.e. by making each privileged feature have a different address (or set of addresses) with permissions for it. At the same time it sounds like it could lead to an explosion of different permissions and roles which could be hard to manage.
Opening up the topic for discussion. Do you agree that permissions need to be more granular?

IMO we have to trade-off between granularity (ideally separate access control per-non-constant function) and easy of management (maybe a few roles to which we can subscribe accounts). Why not have a hasRole(x) modifier with some readable enum x and add that to every function? Disadvantage of that enum x is that is has to be known at compile time. Disadvantage of having super dynamic roles which we (or owner) can update at runtime is that security is hard to audit / continuously review.
I have the feeling that this discussion assumes a bit of current-centralised-world thinking: Won't DAO-style votes replace a good bit of hard coded user roles? If the majority (of e.g. investors / voters) wants the DAO to do something then the majority should have the right to do so - and not be restricted by some centralised agent that has the privilege of a specific role. I know, we wont get to that DAO world just tomorrow so a decent role architecture would probably be required for now.

The enum approach sounds good for a project-specific contract, and we could recommend that to developers, but I don't think it'll be useful for a general purpose library like OpenZeppelin. Aside from having to be known at compile time, they are also not extensible by subclasses. We would have to have a global enum with all of OpenZeppelin's roles.
Auditability is an important design objective, it's good you brought it up.
With respect to your second point, since a DAO is a smart contract it can be set as the owner itself, and other privileges can also be assigned to the DAO. Then it would have to go through the voting process to call any privileged function. Does that sound like what you had in mind? I think whatever role architecture we come up with will be equally applicable to a world were smart contracts are managed by DAOs.

TBH I had no perfect solution in mind but having an owner-DAO sounds like a reasonable way to go. It's probably more expensive in terms of gas (since we need another call), so maybe we could derive from that DAO instead of setting it as a (separate) owner account? Either way, having a well structured and abstracted DAO might come with little overhead compared to user roles: propose, vote, resolve (and take action if needed).
A tokenised voting DAO would have the additional benefit of (a) supporting liquid democracy out of the box, (b) also being able to limit voters to a smaller privileged group (by just giving them tokens, which might be non-transferrable).

I think there are multiple scenarios here. Having a distributed authorization model is very interesting and needs some design thinking. However - a simple Role Based Authentication Control is relatively simple to achieve. I have created sample code at https://github.com/duckranger/zeppelin-solidity/tree/rbac.
Inside the contracts/rbac directory you can find the RoleDirectory - which is the main role and user-role relationship repository.
The owner of the RoleDirectory may define system roles, and assign them to users.
There is also a Secured contract which allows for a withRole('..') modifier.
In contracts/examples - I added SampleRoleBasedAccess - which is Secured. Some methods there are then modified with the withRole modifier.
This should be easy enough to add more granular permissions if required.

I like it! I had taken a shot at RBAC with a Roles library here. There are a couple of things in your implementation that I like better:

I was planning to reimplement Ownable as a role like the rest, but I agree with your implementation now, in that it should remain a separate simpler ad-hoc role with the permission to manage roles itself.

I hadn't added a central directory of roles and so it wasn't easy for an owner to externally manage roles out of the box.

Do you feel that hierarchical levels are really needed? I think I'd rather keep things simpler, with no hierarchies, just a mapping of role names to role assignments.

Thanks @frangio :)

With owner I suppose you could do either, my concern was with existing code where you'd want to
plug the RBAC mechanism into - and ensure that things don't suddenly break. However- implementers can do either, so it might be worth it?
I don't think that a hierarchical role structure is absolutely necessary, but it can help in some situations, think team-lead and technical-manager situation for example - the technical-manager may have all the permissions of a team-lead, and some extra permissions. You could give the technical-manager 2 separate roles, or create a hierarchy where the technical-manager role is higher than the team-lead. This might be an overkill in some situations, so I created the 'short circuit' mechanism to make all roles the same level, and then you need to assign each individual role to users.

What do yoe say?

For the record, a solution for this was built in #580. I'm keeping this issue open because the rest of OpenZeppelin still uses Ownable for everything.


fix(storybook-preview): use fullscreen layout option

Update Storybook preview to use the fullscreen layout option so full bleed components work as expected.

:tada: This PR is included in version 1.0.0-beta.12 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Stream not embedding

First of all thanks for working on this, it's a great idea!
I did have some issues. When using the :
[tiktok_live_stream username="USERNAME"]
It just shows the user id, doesn't embed the stream and no errors in console.
When I use the other shortcode:
[tiktok_live_stream_with_feedback]
It just displays the actual shortcode text, like its not being rendered as a shortcode.
I'm using the latest WP and tried with the stock themes.

tiktok-live-stream-plugin-wordpress.zip
Just update it.


arch version handling

Reverts #9461 and provides an alternate fix to https://github.com/Homebrew/brew/issues/9449.
This makes OS::Mac::Version architecture aware and uses this logic to decide on which bottle to pour and which label to use for brew dispatch-build-bottle.

Review period will end on 2020-12-09 at 17:09:10 UTC.

Review period skipped due to critical label.

This is fixing the issue for me.
It does not install Intel bottles anymore, and continues to install available ARM bottles
I’ve tried a couple of options, and it seems to behave consistently

This makes OS::Mac::Version architecture aware

Can you add some tests for this? Just from looking at this it's not clear what an architecture-aware OS version even is.

Can you add some tests for this? Just from looking at this it's not clear what an architecture-aware OS version even is.

Done!


TypeError: unsupported format string passed to NoneType.format / statx

https://github.com/att/docker-forensics/blob/d50c444d59855e46ec5778942d0cad00cf722c75/mac-robber.py#L131
Traceback:
(... more data ...)
0|/etc/ld.so.conf|786616|-rw-rw-r--|0|0|34|1734440793.017330|1608116695.000000|1697471167.713379|1697471167.713379
0|/etc/rsyslog.conf|786654|-rw-rw-r--|0|0|1382|1734436377.488000|1640302499.000000|1697471167.721380|1697471167.721380
0|/etc/inputrc|786609|-rw-rw-r--|0|0|1748|1734679563.963715|1641486414.000000|1697471167.709378|1697471167.709378
0|/etc/magic.mime|786629|-rw-rw-r--|0|0|111|1697522640.364750|1648141629.000000|1697471167.713379|1697471167.713379
0|/etc/ethertypes|786596|-rw-rw-r--|0|0|1816|1577407331.000000|1577407331.000000|1697471167.705378|1697471167.705378
Traceback (most recent call last):
  File "/root/docker/mac-robber/orig/mac-robber.py", line 221, in <module>
    outstr = process_item(dirpath, filename)
  File "/root/docker/mac-robber/orig/mac-robber.py", line 131, in process_item
    btime = "{:17.6f}".format(statx.statx(fname).btime)
TypeError: unsupported format string passed to NoneType.__format__

I installed library: https://pypi.org/project/pystatx/ (Version: 0.1)
and there is following error in this underlying library:

Problem seems to be related with links:

But stat is working on this link:

I'm writing here as there is only single version of this library, which may be no longer maintained.
My dirty solution:

I also linked this issue on library repo: https://github.com/ckarageorgkaneen/pystatx/issues/5

For the moment, I've incorporated your workaround. Thanx for bringing this to my attention.


Torn theme

[ ] Post loop author names, add hover underline
[ ] 404 page button/link styles
[ ] Post loop author names spaces wrong
[ ] Search input font family inherit
[ ] Post page translations link styles. Separate the translations words and the language names.
[ ] Logo Styling
[ ] Clean up en.yaml
[ ] Review internationalization from beginning
[ ] Search x button not working
[ ] If post doesn't have a featured image, remove the line
[ ] RTL pagination buttons. Caret direction
[ ] Config issues

[ ] Font size
[ ] Remove font style and font weight
[ ] line height
[ ] Change "Grayscale of the images" to "Grayscale of the images %"
[ ] Remove blockquote border thickness
[ ] Post loop, title description mixed (config def)
[ ] Settings -> Post Page -> Authors title case
[ ] Remove Settings -> Post Page -> Show Language variants
[ ] Too many colors and colors are confusing (needs discussing)

Colors

[ ] Remove featured_color
[ ] Remove search_background_color, use background_color, add opacity if needed
[ ] Add two text colors: main_color and secondary_color (make sure to add descriptions)
[ ] Remove caption_color (use above)
[ ] Remove blockquote_border_color. Use main text color
[ ] Remove author_by_color
[ ] Remove accent

[ ] Search font family inherit
[ ] Post page - language comma is underlined
[ ] Post page - authors comma is underlined
[ ] Header logo needs vertical padding
[ ] Search x button
[ ] Font size, style not working
[ ] Font family not used
[ ] Remove toc_border_color use opacity instead
[ ] Mobile table of contents button. Inherit font styles
[ ] Search closing icon needs cursor pointer (both modal button and input clear button)

[ ] Add opacity to Toc
[ ] Config bring two font weights together
[ ] Add color descriptions
[ ] Fallback to sans serif in config

[ ] Nav icon vertical alignment (add to <i>)

middle;
    display: inline-flex;
    align-items: center;

[ ] Search close icon background color


Consider remove --tip flag from tx --help output

Context
When a user runs --help on a tx command, they observe information about a --tip flag
celestia-appd tx upgrade try-upgrade --help

      --tip string               Tip is the amount that is going to be transferred to the fee payer on the target chain. This flag is only valid when used with --aux, and is ignored if the target chain didn't enable the TipDecorator

Problem
Transaction tips aren't enabled on celestia so this flag in the help docs is just noise
Ref: https://docs.cosmos.network/v0.46/core/tips.html#transaction-tips
Proposal
Consider removing it. Ideally we can hide it with modifications strictly in celestia-app. If we have to make modifications in https://github.com/celestiaorg/cosmos-sdk then it may not be worth it because those modifications may be accidentally reverted when we pull from upstream.

I tried a few variations of
	cmd.Flags().MarkHidden("tip")
	cmd.PersistentFlags().MarkHidden("tip")

here with no luck so closing as won't do.


Added AAS, DAS; Fixed DAA

Sry for loop semantics lol, didn't notice.

Don't think AAS/DAS/DAA are valid in 64-bit mode, perhaps we should add a ->vemits("int 0x6") and comment out the logic just in-case we do x86 🤔 Will merge anyways since have DAA. @DefCon42?
 We'll need to add some stuff for instructions valid in x86 that aren't valid in x64, but should be easy enough.


Deprecate docker-based WASM GitHub action

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (b58fbde) 96.58% compared to head (9beae87) 96.06%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #20      +/-   ##
==========================================
- Coverage   96.58%   96.06%   -0.52%
==========================================
  Files         107      107
  Lines        8311     8256      -55
==========================================
- Hits         8027     7931      -96
- Misses        284      325      +41

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


No more TGZ build ?

why you not build anymore the tgz build in https://repo.yandex.ru/clickhouse/tgz/ ?

We will return it in two next releases.

We have turned them back! First testing version (<IP_ADDRESS>6) can be downloaded here https://repo.yandex.ru/clickhouse/tgz/. Each next testing/prestable/stable release can be downloaded in the same repo.

Reopened, because new tgz packages have not tested.
I don't see install script inside.

tgz packages are available and tested.

The usage example is available on the main website page: https://clickhouse.tech/ (see "Other Linux").


Circleci project setup

This will set up CircleCI to preview PR builds.

Example for this: https://12-293151248-gh.circle-artifacts.com/0/intersect-training.github.io/index.html
(nothing new there, but triggered from the previous commits)


unable to find source related to: "plugin"

The following program sample.go triggers an unexpected result
package main

import "github.com/buraksezer/olric"

func main() {
  // do something with olric
}

Expected result
Everything should work

Got
import "github.com/buraksezer/olric" error: plugins-local/src/github.com/user/project/vendor/github.com/buraksezer/olric/dmap.go:21:2: import "github.com/buraksezer/olric/internal/dmap" error: plugins-local/src/github.com/user/project/vendor/github.com/buraksezer/olric/internal/dmap/atomic.go:22:2: import "github.com/buraksezer/olric/internal/cluster/partitions" error: plugins-local/src/github.com/user/project/vendor/github.com/buraksezer/olric/internal/cluster/partitions/fragment.go:18:2: import "github.com/buraksezer/olric/internal/discovery" error: plugins-local/src/github.com/user/project/vendor/github.com/buraksezer/olric/internal/discovery/discovery.go:23:2: import "plugin" error: unable to find source related to: "plugin"

Yaegi Version
latest
Additional Notes
No response

Any update on this @mvertes


Endpoint url location

URL>> https://docs.microsoft.com/en-us/windows-server/failover-clustering/deploy-cloud-witness#to-view-and-copy-endpoint-url-links
"In the Azure portal, navigate to your storage account, click All settings and then click Properties to view and copy your endpoint URLs (see figure 5)."
This config has changed, Now its, Azure Portal > Storage Account >> Endpoints(under Settings)

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

ID: 7e6da99e-a148-b5ea-224d-8a4c48604945
Version Independent ID: a6a90a1f-870c-3501-ce6e-fbf52f802dfb
Content: Deploy a cloud witness for a Failover Cluster
Content Source: WindowsServerDocs/failover-clustering/deploy-cloud-witness.md
Product: windows-server
Technology: failover-clustering
GitHub Login: @JasonGerend
Microsoft Alias: jgerend

We hugely appreciate your contribution, feedback, and support to our technical documentation.
We’ve phased out GitHub Issues on this repository as the feedback mechanism for content and have replaced it with a new feedback system. For more information see, Content User Feedback. As part of this rollout, we are migrating your issue where our team will use your comments to improve the documentation experience. Unfortunately, this does mean you won't be able to access this issue after the migration is complete.
All issues will be migrated by Thursday 29th August 2024.
Once again, thank you for your valuable feedback, we hope you’ll continue to contribute using our new feedback system.


Fix incorrect timestamp when helm package

Fix #4158
The files contained in the tar file from helm package did not have
the correct timestamp. This lack of timestamp occurred because we were
not writing any time to the tar header file.

cc @adamreese, think we want to make a patch to Helm 3 with this fix?


Form field is now an HOC

This significantly cleans up the syntax for FormField, and really benefits from these changes:

There is no more "child" component in a FormField
FormField is solely responsible for providing the fieldApi and handling logic for updating performance
No more laborious proxying of props.

Apologies, it looks like Prettify had it's way with some of the files haha. Maybe we should eslint --fix the whole thing.

Fixes #133

Hey @tannerlinsley this looks sick.. i only have two things.

Maybe turn off prettify so we can see the actual things that changed in this PR. and we can talk about maybe doing a prettify commit after. That way its easier to look back at this PR and see the core changes instead of the files being filled with "changes" lol.
I really like this using the connected pattern. However, it will break many peoples projects ( including mine ) until i make the switch. So we have a few options here. 1: we make it backwards compatible... this may be actually really easy because we could just say if( formField has children ) then do it the old way ( we would not call this out in docs, just leave for backwards compatibility ) 2: we make this a minor version update ( but again that has breaking changes soo prob not good )

Yeah we should check the length of the keys first.
On Tue, Oct 31, 2017 at 8:27 AM arolson101<EMAIL_ADDRESS>wrote:

@arolson101 commented on this pull request.
In src/redux/utils.js
https://github.com/react-tools/react-form/pull/136#discussion_r148011984
:

@@ -67,9 +67,19 @@ function get(obj, path, def) {
return typeof val !== 'undefined' ? val : def;
}

+function isShallowEqual(obj1, obj2) {

for (var prop in obj1) {

what about props in obj2 that aren't present in obj1?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/react-tools/react-form/pull/136#pullrequestreview-73187885,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFUmCWd8vH36F-60iO19JDkzi3n0oDRHks5sxy5RgaJpZM4QMILz
.

I've removed the prettified content.  Actually, I straight up had to revert and just do it again. But no biggie. Github diffing still doesn't handle indentation changes very well though...


Not able to log in

I installed 0.9.34 this morning and found out it would not start. There was a error message about not able to log in. It was also not possible to configure the integration. So I deleted it and tried to install it new and fresh, but was not able to log in. I then installed the previous version, 0.9.33 and everything went smooth. Log in worked and configuring the integration worked as expected.

@SVH-Powel What version of HA are you using?

We haven't seen this problem here.
It would be helpful if you could assist in debugging by sending us logs. Please enable full debug log of the integration by entering following in configuration.yaml, restart homeassistant and repeat the failing procedure.
logger:
  default: warning
  logs:
    custom_components.easee: debug
    pyeasee: debug

I was able to solve it. But as said, this was not a problem with the previous version. And it would be easier if errors like this are presented to the end user :-)
`2021-10-04 12:06:34 DEBUG (MainThread) [pyeasee.easee] getting token for user: xxxxx@yyyyy
2021-10-04 12:06:37 ERROR (MainThread) [pyeasee.easee] Bad request service (400: {'errorCode': 727, 'errorCodeName': 'EmailNotVerified', 'type': None, 'title': 'Email address not verified', 'status': 400, 'detail': '[Empty in production]', 'instance': None, 'extensions': {}} https://api.easee.cloud/api/accounts/login)
2021-10-04 12:06:37 ERROR (MainThread) [custom_components.easee.controller] Authorization failed to easee
2021-10-04 12:06:37 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry xxxxx@yyyyy for easee
Traceback (most recent call last):
File "/config/custom_components/easee/controller.py", line 245, in initialize
await self.easee.connect()
File "/usr/local/lib/python3.9/site-packages/pyeasee/easee.py", line 185, in connect
await raise_for_status(response)
File "/usr/local/lib/python3.9/site-packages/pyeasee/easee.py", line 49, in raise_for_status
raise AuthorizationFailedException(data)
pyeasee.exceptions.AuthorizationFailedException: {'errorCode': 727, 'errorCodeName': 'EmailNotVerified', 'type': None, 'title': 'Email address not verified', 'status': 400, 'detail': '[Empty in production]', 'instance': None, 'extensions': {}}
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 304, in async_setup
result = await component.async_setup_entry(hass, self)  # type: ignore
File "/config/custom_components/easee/init.py", line 34, in async_setup_entry
await controller.initialize()
File "/config/custom_components/easee/controller.py", line 257, in initialize
raise Unauthorized from err
homeassistant.exceptions.Unauthorized: Unauthorized`


Potential for race condition in signing.java

The signing class keeps and uses an instance of an ICurl, but member functions are not synchronized. See here:
https://github.com/iotaledger/iota.lib.java/blob/fbacc5ae44e246b8361be3586ac6c0d28b6aac2f/jota/src/main/java/jota/utils/Signing.java#L32
For the most minimal change, I suggest to not keep an instance of an ICurl in this class - but, at the very least, change this to a SpongeFactory mode, and create an instance inside each method that uses it.

There are multiple calls to the curl object in this class, in every method its state is reseted. By one hand we can have one object and reuse it in the whole class; by the other hand we can have multiple object instances so that increasing the amount of memory consumed.
I can see a "livelock" problem here which is a kind of race condition problem. A Livelock problem happens when two or more threads are trying to complete a task over an object (state in this object to be more accurately) and they modify it altering the assumptions of the other thread on that object, this causes the non-finishing of the task by one thread or an anomalous execution finishing.
My recommendation is calling the SpongeFactory class every time an ICurl object is invoked in the Signing class.


Linker error when using DAISY.end()

Hi, when using DAISY.end() to stop the audio callback I get the following error:
undefined reference to 'dsy_audio_stop'
I think becasue this is declared as dsy_audio_stop in hid_audio.h but is called audio_stop in hid_audio.c
An easy workaround for now is to declare it in my own file as follows and call audio_stop directly:
extern "C" {
    void audio_stop(uint8_t intext);
}

audio_stop(DSY_AUDIO_INTERNAL);

Good catch! And sorry for the late response! We'll look into this and get it fixed ASAP.

Good catch! And sorry for the late response! We'll look into this and get it fixed ASAP.

This is/was resolved in PR #24
If you are working from git you can simply pull to master. Otherwise we'll have a new release very soon with this fixed up for installations using the Arduino Library Manager.


Does yaml have to define Output Variables

In GUI Pipelines there is a section named "Output Variables":

The "View YAML" seems not to export those values. But in this documentation is no note how to do it or that it is unsupported. I think this should added.

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

ID: 8098f527-ebdf-60d5-3989-5228b7a207c1
Version Independent ID: ce27c817-9599-00ef-5af2-3ac1dbad8dc6
Content: Build and Release Tasks in Azure Pipelines and TFS - Azure Pipelines
Content Source: docs/pipelines/process/tasks.md
Product: devops
Technology: devops-cicd
GitHub Login: @steved0x
Microsoft Alias: sdanie

@StefanSchoof Here is more information on using output variables from tasks in YAMLs. You may also find the reference to setting a multi-job output variable helpful.


Error: Building package liblma:x86-windows

Dear,
When I want to install package i meet this errors:

I don't know, why I have hash problem ?
I did all the recommendations
Many thanks for your help

This would happen if your download file is broken. If you can successfully extract the files in the archive and ensure the completeness of files in it, you can edit the SHA512 hash can make a pr.

In this case however, @mathieusr's downloaded xv.tar file 656 bytes long and contains an error message instead of the expected 1.5kb source for xz.  The current download source (sourceforge) is undergoing a dos attack.  Change the url in the portfile for any other source (cursory search on github gave me https://raw.githubusercontent.com/gnu-mcu-eclipse/files/1d5112ea3ac1d189e2bf017bece19d19ce269ec4/libs/xz-5.2.3.tar.gz) and close this issue.

It works thanks


Error: File exists and is not a directory

After updating to 0.11.2 (from 0.11.1), we seem to get this sort of thing a lot:
[error] {file:/Users/bruce/Development/foo/}bar/compile:compile: Could not create directory
   /Users/bruce/Development/foo/tools/bar/target/scala-2.9.1/cache/compile/compile:
   file exists and is not a directory.

Can you please do clean once before doing compile and see if the problem persists?

I've done cleans before and then later gotten this error. Or do you mean that a clean should allow me to re-run compile and have it work?

Do a clean after you have moved to 0.11.2. Subsequently, re-running compile should work every time. If that is not the case for you, put together an example project where you can recreate this and we'll see.

I've definitely done a clean since moving. And it happens seemingly randomly. I've no idea what the trigger is.

SBT's compile task always creates compile file under cache/compile directory. That is failing in this case because cache/compile is a file (you can verify when you encounter this). It could be possible that some plugin is creating such file. What plugins are you using?


Show file check status in editor title

I'm missing check status for currently edited file. My use case is this:
js file is edited and some syntax change is made that results in error/warning being reported but in part of file that is not visible. I have to scroll over entire file to make sure I didn't break anything by accident.
It would be nice if status is shown in editor title, for example as "leds" at the left side of file name, that are on when at least one error / warning is reported. If count could also be included it would be awesome.

Interesting idea, many other editors do this in the scroll bar. Doing it in the title/path bar would actually be easier although you get little indication of where to look for these warnings/errors.

It would be perfect to have both things (title bar and scroll bar) :) but just general "file status" indication provides useful information.

@zefhemel
+1 for error warning in the gutter, like caret editor shows for html


"I-9. Get-Printer-Attributes Operation (default)" failed due to expected "image/jpeg"

"image/jpeg" is optional for mono printer in ipp everywhere version 1.1
ipp-tests.sh
EXPECT document-format-supported OF-TYPE mimeMediaType IN-GROUP printer-attributes-tag WITH-VALUE "image/jpeg"

This is already addressed in master...


Error404: Watch downloadmoreram.com

Error404 requests the watch of the watch_keyword downloadmoreram\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

downloadmoreram\.com has been seen in 0 true positives, 0 false positives, and 0 NAAs.

Rejected by Spevacus in Charcoal HQ. Reason: 'While a joke site, it's not necessarily spam. There are some Q&A that link to it in a joking manner. I think we can leave this one for now.'


[Bug] formula if issue

Before you submit this issue, have you checked the following

[X] Is this really a problem?
[X] I have searched the Github Issues for similar issues, but did not find anything.

Affected packages and versions
0.3.0
Reproduction link
I don't know how to use the online template, so I provide the workbook data.
{
    "id": "XGBQ9r",
    "sheetOrder": ["esfePQ9lBZ68_24tVAVzo"],
    "name": "",
    "appVersion": "0.3.0",
    "locale": "zhCN",
    "styles": {
        "2rWMxl": {"bg": {"rgb": "#EFFBD0"}},
        "0B_XQP": {
            "ff": "Arial",
            "fs": 11,
            "it": 0,
            "bl": 0,
            "ul": {"s": 0},
            "st": {"s": 0},
            "ol": {"s": 0},
            "tr": {"a": 0, "v": 0},
            "td": 0,
            "bg": {"rgb": "#EFFBD0"},
            "ht": 0,
            "vt": 0,
            "tb": 0,
            "pd": {"t": 0, "b": 2, "l": 2, "r": 2},
            "cl": null,
            "n": null
        },
        "xNReZo": {
            "ff": "Arial",
            "fs": 11,
            "it": 0,
            "bl": 0,
            "ul": {"s": 0},
            "st": {"s": 0},
            "ol": {"s": 0},
            "tr": {"a": 0, "v": 0},
            "td": 0,
            "ht": 0,
            "vt": 0,
            "tb": 0,
            "pd": {"t": 0, "b": 2, "l": 2, "r": 2},
            "cl": null,
            "bg": null,
            "n": null
        }
    },
    "sheets": {
        "esfePQ9lBZ68_24tVAVzo": {
            "id": "esfePQ9lBZ68_24tVAVzo",
            "name": "Sheet1",
            "tabColor": "",
            "hidden": 0,
            "rowCount": 1000,
            "columnCount": 20,
            "zoomRatio": 1,
            "freeze": {"xSplit": 0, "ySplit": 0, "startRow": -1, "startColumn": -1},
            "scrollTop": 0,
            "scrollLeft": 0,
            "defaultColumnWidth": 88,
            "defaultRowHeight": 24,
            "mergeData": [],
            "cellData": {
                "6": {"2": {"v": "异常", "t": 1}, "4": {"v": "正常", "t": 1}},
                "7": {"2": {"s": "2rWMxl", "v": 1, "t": 2}, "4": {"v": 1, "t": 2, "s": "0B_XQP"}},
                "8": {"4": {"s": "xNReZo"}},
                "9": {"4": {"s": "xNReZo"}},
                "10": {"4": {"s": "xNReZo"}},
                "11": {"4": {"s": "xNReZo"}},
                "12": {"4": {"s": "xNReZo"}},
                "13": {"4": {"s": "xNReZo"}},
                "14": {"4": {"s": "xNReZo"}},
                "15": {"4": {"s": "xNReZo"}},
                "16": {"4": {"s": "xNReZo"}},
                "17": {"4": {"s": "xNReZo"}},
                "18": {"4": {"s": "xNReZo"}},
                "19": {"4": {"s": "xNReZo"}},
                "20": {"4": {"s": "xNReZo"}},
                "21": {"4": {"s": "xNReZo"}},
                "22": {"4": {"s": "xNReZo"}},
                "23": {"4": {"s": "xNReZo"}},
                "24": {"4": {"s": "xNReZo"}},
                "25": {"4": {"s": "xNReZo"}},
                "26": {"4": {"s": "xNReZo"}},
                "27": {"4": {"s": "xNReZo"}},
                "28": {"4": {"s": "xNReZo"}},
                "29": {
                    "2": {"f": "=IF(C8<0,IF(C31<1,1,0.8),IF(C31<1,0.95,1))", "v": 1, "t": 2},
                    "4": {
                        "s": "xNReZo",
                        "f": "=IF(E8<0,IF(E31<1,1,0.8),IF(E31<1,0.95,1))",
                        "si": "EDVgVn",
                        "v": 0.95,
                        "t": 2
                    }
                },
                "30": {"2": {"f": "=C32/100", "v": 0.01, "t": 2}, "4": {"s": "0B_XQP", "v": 0.01, "t": 2}},
                "31": {"2": {"s": "2rWMxl", "v": 1, "t": 2}, "4": {"s": "xNReZo"}}
            },
            "rowData": {
                "6": {"hd": 0, "h": 24, "ah": 24},
                "7": {"hd": 0, "h": 24, "ah": 24},
                "8": {"hd": 0, "h": 24},
                "9": {"hd": 0, "h": 24},
                "10": {"hd": 0, "h": 24},
                "11": {"hd": 0, "h": 24},
                "12": {"hd": 0, "h": 24},
                "13": {"hd": 0, "h": 24},
                "14": {"hd": 0, "h": 24},
                "15": {"hd": 0, "h": 24},
                "16": {"hd": 0, "h": 24},
                "17": {"hd": 0, "h": 24},
                "18": {"hd": 0, "h": 24},
                "19": {"hd": 0, "h": 24},
                "20": {"hd": 0, "h": 24},
                "21": {"hd": 0, "h": 24},
                "22": {"hd": 0, "h": 24},
                "23": {"hd": 0, "h": 24},
                "24": {"hd": 0, "h": 24},
                "25": {"hd": 0, "h": 24},
                "26": {"hd": 0, "h": 24},
                "27": {"hd": 0, "h": 24},
                "28": {"hd": 0, "h": 24},
                "29": {"hd": 0, "h": 24, "ah": 24},
                "30": {"hd": 0, "h": 24, "ah": 24},
                "31": {"hd": 0, "h": 24, "ah": 24}
            },
            "columnData": {"2": {"w": 88, "hd": 0}, "4": {"w": 88, "hd": 0}, "5": {"w": 88, "hd": 0}},
            "showGridlines": 1,
            "rowHeader": {"width": 46, "hidden": 0},
            "columnHeader": {"height": 20, "hidden": 0},
            "rightToLeft": 0
        }
    },
    "resources": [{"name": "SHEET_RANGE_PROTECTION_PLUGIN", "data": "{}"}, {
        "name": "SHEET_WORKSHEET_PROTECTION_PLUGIN",
        "data": "{}"
    }, {"name": "SHEET_WORKSHEET_PROTECTION_POINT_PLUGIN", "data": "{}"}, {
        "name": "SHEET_DEFINED_NAME_PLUGIN",
        "data": "{}"
    }, {"name": "SHEET_DATA_VALIDATION_PLUGIN", "data": "{}"}, {
        "name": "SHEET_AuthzIoMockService_PLUGIN",
        "data": "{}"
    }]
}

Expected behavior
formula if(..., if(...), if(...)) can work without any issue.
Actual behavior
try to reset the C8 using value "1"， we can get the correct result such as "the value of C30 is 0.95";
try to reset the C32 using value "1", we can get the incorrect result such as "the value of C30 is 1";
and on the other hand,
try to reset  the E8 using value "1", or reset the E31 using value 0.01, we can always get the correct result such as "the value of E30 is 0.95".

System information
No response

this issue is still existing!!!

pls try this example
https://github.com/zhaoziji/sheets-vite-demo

@zhaoziji If you have time, please help me check if there are any other cases with problems.
Preview link

@zhaoziji If you have time, please help us check if there are any other cases with problems. The corresponding pull request has a preview link

@zhaoziji If you have time, please help us check if there are any other cases with problems. The corresponding pull request has a preview link

it is my pleasure. I wanna confirm with you that, the preview link is https://univer-mnpyv8k6z-univer.vercel.app, all right ?

https://univer-d7czcjomz-univer.vercel.app/sheets/

https://univer-d7czcjomz-univer.vercel.app/sheets/

got it, I will check it soon.

it works correctly.

ok, will be released with the next version

i found another issue as the attachment

i found another issue as the attachment

@zhaoziji sumif pr is here: https://github.com/dream-num/univer/pull/3853


Adding CWE-400 README.md and updated main README.md

I have resolved the comments and merge conflicts. I am squashing the changes and merging them to the master branch.


Fail to highlight some flags in nvidia-smi --help

description

Some flags like --loop-ms is colorized but --loop is not.
$ bat --version
bat 0.24.0 fc95468
$ COMMAND --help
NVIDIA System Management Interface -- v470.129.06

NVSMI provides monitoring information for Tesla and select Quadro devices.
The data is presented in either a plain text or an XML format, via stdout or a file.
NVSMI also provides several management operations for changing the device state.

Note that the functionality of NVSMI is exposed through the NVML C-based
library. See the NVIDIA developer website for more information about NVML.
Python wrappers to NVML are also available.  The output of NVSMI is
not guaranteed to be backwards compatible; NVML and the bindings are backwards
compatible.

http://developer.nvidia.com/nvidia-management-library-nvml/
http://pypi.python.org/pypi/nvidia-ml-py/
Supported products:
- Full Support
    - All Tesla products, starting with the Kepler architecture
    - All Quadro products, starting with the Kepler architecture
    - All GRID products, starting with the Kepler architecture
    - GeForce Titan products, starting with the Kepler architecture
- Limited Support
    - All Geforce products, starting with the Kepler architecture
nvidia-smi [OPTION1 [ARG1]] [OPTION2 [ARG2]] ...

    -h,   --help                Print usage information and exit.

  LIST OPTIONS:

    -L,   --list-gpus           Display a list of GPUs connected to the system.

    -B,   --list-excluded-gpus  Display a list of excluded GPUs in the system.

  SUMMARY OPTIONS:

    <no arguments>              Show a summary of GPUs connected to the system.

    [plus any of]

    -i,   --id=                 Target a specific GPU.
    -f,   --filename=           Log to a specified file, rather than to stdout.
    -l,   --loop=               Probe until Ctrl+C at specified second interval.

  QUERY OPTIONS:

    -q,   --query               Display GPU or Unit info.

    [plus any of]

    -u,   --unit                Show unit, rather than GPU, attributes.
    -i,   --id=                 Target a specific GPU or Unit.
    -f,   --filename=           Log to a specified file, rather than to stdout.
    -x,   --xml-format          Produce XML output.
          --dtd                 When showing xml output, embed DTD.
    -d,   --display=            Display only selected information: MEMORY,
                                    UTILIZATION, ECC, TEMPERATURE, POWER, CLOCK,
                                    COMPUTE, PIDS, PERFORMANCE, SUPPORTED_CLOCKS,
                                    PAGE_RETIREMENT, ACCOUNTING, ENCODER_STATS,
                                    SUPPORTED_GPU_TARGET_TEMP, VOLTAGE
                                    FBC_STATS, ROW_REMAPPER
                                Flags can be combined with comma e.g. ECC,POWER.
                                Sampling data with max/min/avg is also returned
                                for POWER, UTILIZATION and CLOCK display types.
                                Doesn't work with -u or -x flags.
    -l,   --loop=               Probe until Ctrl+C at specified second interval.

    -lms, --loop-ms=            Probe until Ctrl+C at specified millisecond interval.

  SELECTIVE QUERY OPTIONS:

    Allows the caller to pass an explicit list of properties to query.

    [one of]

    --query-gpu=                Information about GPU.
                                Call --help-query-gpu for more info.
    --query-supported-clocks=   List of supported clocks.
                                Call --help-query-supported-clocks for more info.
    --query-compute-apps=       List of currently active compute processes.
                                Call --help-query-compute-apps for more info.
    --query-accounted-apps=     List of accounted compute processes.
                                Call --help-query-accounted-apps for more info.
                                This query is not supported on vGPU host.
    --query-retired-pages=      List of device memory pages that have been retired.
                                Call --help-query-retired-pages for more info.
    --query-remapped-rows=      Information about remapped rows.
                                Call --help-query-remapped-rows for more info.

    [mandatory]

    --format=                   Comma separated list of format options:
                                  csv - comma separated values (MANDATORY)
                                  noheader - skip the first line with column headers
                                  nounits - don't print units for numerical
                                             values

    [plus any of]

    -i,   --id=                 Target a specific GPU or Unit.
    -f,   --filename=           Log to a specified file, rather than to stdout.
    -l,   --loop=               Probe until Ctrl+C at specified second interval.
    -lms, --loop-ms=            Probe until Ctrl+C at specified millisecond interval.

  DEVICE MODIFICATION OPTIONS:

    [any one of]

    -pm,  --persistence-mode=   Set persistence mode: 0/DISABLED, 1/ENABLED
    -e,   --ecc-config=         Toggle ECC support: 0/DISABLED, 1/ENABLED
    -p,   --reset-ecc-errors=   Reset ECC error counts: 0/VOLATILE, 1/AGGREGATE
    -c,   --compute-mode=       Set MODE for compute applications:
                                0/DEFAULT, 1/EXCLUSIVE_PROCESS,
                                2/PROHIBITED
          --gom=                Set GPU Operation Mode:
                                    0/ALL_ON, 1/COMPUTE, 2/LOW_DP
    -r    --gpu-reset           Trigger reset of the GPU.
                                Can be used to reset the GPU HW state in situations
                                that would otherwise require a machine reboot.
                                Typically useful if a double bit ECC error has
                                occurred.
                                Reset operations are not guarenteed to work in
                                all cases and should be used with caution.
    -vm   --virt-mode=          Switch GPU Virtualization Mode:
                                Sets GPU virtualization mode to 3/VGPU or 4/VSGA
                                Virtualization mode of a GPU can only be set when
                                it is running on a hypervisor.
    -lgc  --lock-gpu-clocks=    Specifies <minGpuClock,maxGpuClock> clocks as a
                                    pair (e.g. 1500,1500) that defines the range
                                    of desired locked GPU clock speed in MHz.
                                    Setting this will supercede application clocks
                                    and take effect regardless if an app is running.
                                    Input can also be a singular desired clock value
                                    (e.g. <GpuClockValue>).
    -rgc  --reset-gpu-clocks
                                Resets the Gpu clocks to the default values.
    -lmc  --lock-memory-clocks=  Specifies <minMemClock,maxMemClock> clocks as a
                                    pair (e.g. 5100,5100) that defines the range
                                    of desired locked Memory clock speed in MHz.
                                    Input can also be a singular desired clock value
                                    (e.g. <MemClockValue>).
    -rmc  --reset-memory-clocks
                                Resets the Memory clocks to the default values.
    -ac   --applications-clocks= Specifies <memory,graphics> clocks as a
                                    pair (e.g. 2000,800) that defines GPU's
                                    speed in MHz while running applications on a GPU.
    -rac  --reset-applications-clocks
                                Resets the applications clocks to the default values.
    -pl   --power-limit=        Specifies maximum power management limit in watts.
    -cc   --cuda-clocks=        Overrides or restores default CUDA clocks.
                                In override mode, GPU clocks higher frequencies when running CUDA applications.
                                Only on supported devices starting from the Volta series.
                                Requires administrator privileges.
                                0/RESTORE_DEFAULT, 1/OVERRIDE
    -am   --accounting-mode=    Enable or disable Accounting Mode: 0/DISABLED, 1/ENABLED
    -caa  --clear-accounted-apps
                                Clears all the accounted PIDs in the buffer.
          --auto-boost-default= Set the default auto boost policy to 0/DISABLED
                                or 1/ENABLED, enforcing the change only after the
                                last boost client has exited.
          --auto-boost-permission=
                                Allow non-admin/root control over auto boost mode:
                                0/UNRESTRICTED, 1/RESTRICTED
    -mig  --multi-instance-gpu= Enable or disable Multi Instance GPU: 0/DISABLED, 1/ENABLED
                                Requires root.
    -gtt  --gpu-target-temp=    Set GPU Target Temperature for a GPU in degree celsius.
                                Requires administrator privileges

   [plus optional]

    -i,   --id=                 Target a specific GPU.
    -eow, --error-on-warning    Return a non-zero error for warnings.

  UNIT MODIFICATION OPTIONS:

    -t,   --toggle-led=         Set Unit LED state: 0/GREEN, 1/AMBER

   [plus optional]

    -i,   --id=                 Target a specific Unit.

  SHOW DTD OPTIONS:

          --dtd                 Print device DTD and exit.

     [plus optional]

    -f,   --filename=           Log to a specified file, rather than to stdout.
    -u,   --unit                Show unit, rather than device, DTD.

    --debug=                    Log encrypted debug information to a specified file.

 STATISTICS: (EXPERIMENTAL)
    stats                       Displays device statistics. "nvidia-smi stats -h" for more information.

 Device Monitoring:
    dmon                        Displays device stats in scrolling format.
                                "nvidia-smi dmon -h" for more information.

    daemon                      Runs in background and monitor devices as a daemon process.
                                This is an experimental feature. Not supported on Windows baremetal
                                "nvidia-smi daemon -h" for more information.

    replay                      Used to replay/extract the persistent stats generated by daemon.
                                This is an experimental feature.
                                "nvidia-smi replay -h" for more information.

 Process Monitoring:
    pmon                        Displays process stats in scrolling format.
                                "nvidia-smi pmon -h" for more information.

 TOPOLOGY:
    topo                        Displays device/system topology. "nvidia-smi topo -h" for more information.

 DRAIN STATES:
    drain                       Displays/modifies GPU drain states for power idling. "nvidia-smi drain -h" for more information.

 NVLINK:
    nvlink                      Displays device nvlink information. "nvidia-smi nvlink -h" for more information.

 CLOCKS:
    clocks                      Control and query clock information. "nvidia-smi clocks -h" for more information.

 ENCODER SESSIONS:
    encodersessions             Displays device encoder sessions information. "nvidia-smi encodersessions -h" for more information.

 FBC SESSIONS:
    fbcsessions                 Displays device FBC sessions information. "nvidia-smi fbcsessions -h" for more information.

 GRID vGPU:
    vgpu                        Displays vGPU information. "nvidia-smi vgpu -h" for more information.

 MIG:
    mig                         Provides controls for MIG management. "nvidia-smi mig -h" for more information.

 COMPUTE POLICY:
    compute-policy              Control and query compute policies. "nvidia-smi compute-policy -h" for more information.

 BOOST SLIDER:
    boost-slider                Control and query boost sliders. "nvidia-smi boost-slider -h" for more information.

 POWER HINT:    power-hint                  Estimates GPU power usage. "nvidia-smi power-hint -h" for more information.

 BASE CLOCKS:    base-clocks                 Query GPU base clocks. "nvidia-smi base-clocks -h" for more information.

Please see the nvidia-smi(1) manual page for more detailed information.

$ COMMAND --version
NVIDIA-SMI 470.129.06

Hi @ppwwyyxx, thanks for reporting this!
Seems easy to fix, I'll get to it straight away.


Subtyping across files not working

I am having issues extending a class which is defined in another file.
My simplest test case has two files:
test.js
/* @flow */
class A {}

class B extends A {}

var x: A = new B();

module.exports = A;

test2.js
/* @flow */
var A = require("./test.js");

class C extends A {}

var x2: A = new C();

The error is:
 /home/ethan/test2.js:7:21,21: C
This type is incompatible with
   /home/ethan/test.js:9:22,22: A

Found 1 error

Am I doing something wrong, or is this a bug?

This seems like a bug and we're looking into it. Thanks for the report and the simple repro!

Tried this with the latest version and got no errors. @Lalaland are you still having this issue?

This can be closed.


Added -Top and -Bottom aliases for -First and -Last

If you watch recorded demos of introductory PowerShell sessions delivered by people like @jpsnover, they inevitably show the famous select top 10 processes pipeline. When they do, they invoke something like this (with or without aliases, etc.):
Get-Process | sort WorkingSet64 -desc | select -first 10

As they are entering that line, they very often (almost always) say top 10 as they type "-first 10". It's a small thing, but it's how the mind works. We want the top 10 processes, and technically, in the output, we're getting the top 10 since they are output vertically. I've always felt this would be better if the -First parameter of Select-Object had a -Top alias and the -Last parameter of Select-Object had a -Bottom alias. Such a change would allow for this instead:
gps | sort WorkingSet64 -desc | select -top 10

Now that PowerShell is open source, I decided to add them, see what you think. New parameter aliases are defined and new Pester tests are included for verification.

Hi @KirkMunro, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;

I like the intent, but the problem is that top and bottom implies sorting unlike first and bottom which is not sorted.  So ideally you would have:
get-process | select -top 10

but is this top 10 by cpu usage, workingset, etc?
Now we would have to include sorting semantics but this breaks the "do one thing and do it well" principle unless we can determine significant common use cases to justify it.  For example would we want to support this?
get-process | select -top 10 -select workingset64 -desc

But that didn't really save much typing nor improve readability.

I agree with @SteveL-MSFT - -Top and -Bottom imply sorting whereas -First and -Last do not.
Now maybe it makes sense to add -Top and -Bottom to Sort-Object. That could even enable a faster sort by avoiding sorting elements that won't be written to the pipe.

I love @lzybkr idea of adding this to sort-object!

I'm "inside" this cmdlet last week and can say that it is very intuitive to the user UX, but it is a trick in the code, and any even slightly change this code can easily break down. In general I think this program should be replaced with a newer, which meets modern requirements to cmdlets (See #2421 ).
I like the idea of KirkMunro and I agree with @lzybkr that this idea should be implemented in Sort-Object.

I agree with all of the comments, and I sat on this idea for a while for exactly the reason that -Top and -Bottom might imply sorting. I had considered creating new parameter sets for Select-Object for -Top/-Bottom that included sorting, but I couldn't convince myself that baking sorting into Select-Object was the right solution since Select-Object is a pretty well defined atomic command. In the end I decided that as parameter aliases it wasn't so bad, and that if I was going to go the route of actually doing sorting and selecting I might create a different cmdlet instead. I hadn't thought about putting -Top/-Bottom as parameters on Sort-Object though, and I really like that idea -- it makes much more sense in the context of Sort-Object. Is that something you want to run with @lzybkr or do you mind if I have a look?

I have plenty on my plate, so consider the idea up for grabs.

@KirkMunro  You caught the game - you cook 😊
(I believe it would be appropriate to close this PR and open a new Issue with full description of the idea.)

@lzybkr Thanks, I'll have a look.
@iSazonov Of course, the proposed sort-object changes will be submitted under a new PR (and I can probably create an accompanying Issue as well).

https://github.com/PowerShell/PowerShell/blob/master/docs/maintainers/issue-management.md
I think it is a good practice to preliminary create a Issue (as  Issue-Enhancement in this time).
Waiting news from you @KirkMunro !

@iSazonov I agree about creating an issue. I needed to do some research/experimentation first though to see what the solution might look like, see how other parameters would play with this feature, etc. I'm also getting ready for a conference, so busy right now, but I will move this along as soon as possible.

@KirkMunro Create Issue now and ask PowershellTeam to assign you. This will eliminate possible conflicts. You and we can also get early feedback to the time when you will have the opportunity to code. Good luck!


⚠ Bofrost.de has degraded performance

In f0f769d, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1655 ms

Resolved: Bofrost.de performance has improved in ce54a47 after 34 minutes.


Freeze when repeatedly running Torch GPU version

In our application, when the user chooses a Cellpose task, there is code that includes Cellpose initialization and running:
model = Cellpose(gpu=True, model_type=model_type)
masks, flows, styles, diams = model.eval(
    image, diameter=diameter, channels=channels, flow_threshold=flow_threshold, cellprob_threshold=cellprob_threshold
)

When this task is run a second time (in the same application process), it hangs in the GPU initialization (cellpose/core.py:71):
        device = torch.device('cuda:' + str(gpu_number))
->      _ = torch.zeros([1, 2, 3]).to(device)

In the mxnet version, this was possible without freeze.

Can the Cellpose class be initialized only once? (Do we need to cache the instance somehow?)
Is the GPU still "reserved" by the previous instance of torch?

I'm just wondering if anyone else observed this. It might also just be a driver issue, but we see it on two different computers.
cellpose: 0.6.1
torch: 1.7.1
system: Ubuntu 18.04 / GeForce GT 730/PCIe/SSE2

I would recommend only initializing once, I've occasionally had this problem too when initializing many times, and had to restart my notebook (tried clearing GPU memory without success).
If initializing once doesn't solve the issue please let me know


Fixing typos

HELLO
IM LIBO
I HAVE GOT YOUR LETTER
PLEASE WAIT FOR REPLY

@deining Thanks for reporting, we will evaluate


Multiple renderers at the same time

We can probably export and import dma-bufs to do this one.

We have multiple options to solve this issue:

Always only use one renderer: that means there's only one EGL context and that textures can be shared between backends. That works if the "master" backend creates the renderer (can be DRM/X11/Wayland) and if the other "slave" backends don't need to create an EGL context. "Slave" backends could only be headless or RDP. That has the upside of being simple, allows hotplugging backends. However you can't have two "master" backends at the same time. This could be implemented very easily by adding an optional wlr_renderer argument to "slave" backends (the backend would use the parent renderer if provided, or create its own if not).
Try to use DMA-BUF export (#906). A texture will be uploaded to the first available renderer, and will be exported/imported via DMA-BUF if we want to use it on another renderer. It seems that it won't always work because the Mesa implementation is poor, will investigate further. This won't work if DMA-BUF isn't supported (this will be the case on software renderers), and we'll likely run into issues with supported formats.
Upload buffers to all renderers at the same time. It seems very inefficient at first because when uploading pixel buffers it means data will be duplicated. However for clients using wl-drm or the DMA-BUF protocol this won't happen, the client buffer will be directly used. This would work in all situations (even when there are mixed software/GL/Vulkan/whatever renderers). This could be implemented with e.g. a wlr_multi_renderer combining several renderers (just like wlr_multi_backend combines multiple backends).

(2) and (3) have issues with hotplugging: they change the set of supported formats.
Note that we could implement all options independently of each others. For instance we could use (1) when we hotplug a RDP backend, and fallback to (2) if we hotplug a X11/Wayland backend, and fallback to (3) if we can't use DMA-BUF.
Second side note: for screencasting (#709), we probably won't want to use (2), but instead use GBM export functions. See daniels' comment in the logs.
IRC logs: https://sr.ht/qMfS.txt


CrossConnect monitor tool

crossconnect-monitor is packaged as pod, listening for K8s NSM registered and starting looking for cross-connect events happening.
packaged as pod and deployed to test configuration.
make k8s-crossconnect-monitor-logs could be used to take logs.

Signed-off-by: Andrey Sobolev<EMAIL_ADDRESS>

@yf-yang we can leverage this PR, and the monitoring container to write the skydive probe. Thanks @haiodo

Please take a look to k8s/cmd/crossconnect-monitor is contains all you need to do


Improve explorer pagination and filtering

Problem
Current navigation in Explorer is quite difficult and we have gathered feedback from users recently
https://connextscan.io/transfers
Proposed Solution
a) Pagination
See the current UX https://www.awesomescreenshot.com/video/19605022?key=be26c507b004bf92655c729644c2b31a
We should automatically load all the results the user selects to view per page (if they say view 25 then load 25, if they say view 100 then load 100)
Instead of only numbers, have 'Next' and 'Previous' page buttons

Automatically preload the next page behind the scenes before the user clicks 'Next'. When the user clicks 'Next' then again load the following page behind the scenes
b) Filtering
Allow the user to filter

by a date range (Start Date and End Date)
by boosted transfers (yes vs. no) from fast liquidity
by transfer time (minimum and maximum)

The SDK currently doesn't support providing the total number of pages. Additionally, it doesn't currently support filtering by time, boost status, or time spent.

a) SDK has options for range?: { limit?: number; offset?: number } but not a specific return for total # of pages. However, you could get that by the number of rows returned when leaving the range option empty and dividing by total rows displayed per page. Would that work, @pjenviri ?
b)

For boosted transfers, we have status = CompletedFast. This would only filter for completed fast transactions but if that suffices, then the UI can sort on that @alexwhte.
For transfer time, we could just take execute_timestamp - xcall_timestamp for the returned transfers and then do an in-place sort on that, @pjenviri.

Pushed an update for "b)". cc. @alexwhte
@just-a-node, regarding "a)", did you mean to suggest that the UI should query all transfers (by iteratively calling getTransfers method to get array lists of transfers for all pages) and then calculate the total # pages before displaying the output? If so, I don't think this approach would work well. It could lead to performance issues, slower page load times, and increased backend workload.
For example, if the total number of transactions is 100k, we would need to query 1k times for each user.


feat: support node 18

This CL patches some files to fully support Node 18.

Please note that with node.js 17.0 the DNS resolution has been changed to default to IPv6 instead of IPv4. This could cause problems for users on dual-stack systems. For Firefox we have https://bugzilla.mozilla.org/show_bug.cgi?id=1769994 on file to get a better support. But not sure if Chrome might also be affected.

@whimboo @OrKoN I realized that I needed to submit my comments for you to see them... thanks @OrKoN....

@jrandolf maybe you can give a quick feedback on how this would work on a IPv6 only system? Would it still work in case of Chrome?

@jrandolf maybe you can give a quick feedback on how this would work on a IPv6 only system? Would it still work in case of Chrome?

The implementation basically hardcodes the previous behavior, so however Node handled IPv6 systems before, the current behavior is the same.
Specifically, the resolver just has preference for IPv4, but if it cannot resolve IPv4, it resolves to an IPv6 address.


Add /debug/pprof endpoints to metrics port

Including "net/http/pprof/" auto-registers profiling endpoints under
/debug/pprof with the default HTTP mux. Since the metrics port HTTP
server uses the default HTTP mux, these get added to the metrics HTTP
server, which seems fitting.
These endpoints are useful in debugging CPU and memory behaviors of
Trickster, and more.
Signed-off-by: Julius Volz<EMAIL_ADDRESS>

/cc @SuperQ


Bump plugin version to 1.1

Bump plugin version up to 1.1

Note: this change should be merged after:

https://github.com/GPUOpen-LibrariesAndSDKs/RadeonProRenderUE/pull/2
https://github.com/GPUOpen-LibrariesAndSDKs/RadeonProRenderUE/pull/3
https://github.com/GPUOpen-LibrariesAndSDKs/RadeonProRenderUE/pull/4
https://github.com/GPUOpen-LibrariesAndSDKs/RadeonProRenderUE/pull/5

So there are no "features" added here.  With the other plugins we do major.minor.checkin_number


No straightforward/stable way to consume lib/tsserverlibrary.js

TypeScript Version:  2.*.*-*
Code
This is in a project that needs to use tsserverlibrary.js:
test.ts:
import * as ts from "typescript/lib/tsserverlibrary";

Because tsserverlibrary.d.ts is not a module:
/// <reference ...
declare module "typescript/lib/tsserverlibrary" {
    export = ts;
}

This still fails due to the following line in tsserverlibrary.d.ts, which in an installed package, resolves to the nonexistent file node_modules/src/types.d.ts:
/// <reference path="../../src/server/types.d.ts" />

With a custom copy of tsserverlibrary.d.ts, const ts = require(... is a potential option, but options for consuming ts as the declared namespace instead of any are clumsy.
Expected behavior:
Consumer of the TypeScript Node package can import tsserverlibrary.js without issue.

We should make the .d.ts file a module; we do that as part of the build already for typescript.d.ts; a PR would be appreciated.

Thanks, @mhegazy! Any suggestions/details I should know on resolving the types.d.ts reference? There are reference tags down the tree that refer to .ts files as well. I assume the .js file export the ts global?
I'll look at the existing lib generation code and go from there.

@mhegazy Submitted a PR. Thanks!


Error on Make

Describe the bug
The make build fails
To Reproduce
Steps to reproduce the behavior:
1.run the make or make build command
the npm build exits with an error
Expected behavior
a running container
**Output of the error **
gyp info using<EMAIL_ADDRESS>gyp info using<EMAIL_ADDRESS>| linux | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb find Python Python is not set from command line or npm configuration
gyp verb find Python Python is not set from environment variable PYTHON
gyp verb find Python checking if "python3" can be used
gyp verb find Python - executing "python3" to get executable path
gyp verb find Python - "python3" is not in PATH or produced an error
gyp verb find Python checking if "python" can be used
gyp verb find Python - executing "python" to get executable path
gyp verb find Python - "python" is not in PATH or produced an error
gyp ERR! find Python
gyp ERR! find Python Python is not set from command line or npm configuration
gyp ERR! find Python Python is not set from environment variable PYTHON
gyp ERR! find Python checking if "python3" can be used
gyp ERR! find Python - "python3" is not in PATH or produced an error
gyp ERR! find Python checking if "python" can be used
gyp ERR! find Python - "python" is not in PATH or produced an error
gyp ERR! find Python
gyp ERR! find Python **********************************************************
gyp ERR! find Python You need to install the latest version of Python.
gyp ERR! find Python Node-gyp should be able to find and use Python. If not,
gyp ERR! find Python you can try one of the following options:
gyp ERR! find Python - Use the switch --python="/path/to/pythonexecutable"
gyp ERR! find Python   (accepted by both node-gyp and npm)
gyp ERR! find Python - Set the environment variable PYTHON
gyp ERR! find Python - Set the npm configuration variable python:
gyp ERR! find Python   npm config set python "/path/to/pythonexecutable"
gyp ERR! find Python For more information consult the documentation at:
gyp ERR! find Python https://github.com/nodejs/node-gyp#installation
gyp ERR! find Python **********************************************************
gyp ERR! find Python
gyp ERR! configure error
gyp ERR! stack Error: Could not find any Python installation to use
gyp ERR! stack     at PythonFinder.fail (/attack-navigator/nav-app/node_modules/node-gyp/lib/find-python.js:330:47)
gyp ERR! stack     at PythonFinder.runChecks (/attack-navigator/nav-app/node_modules/node-gyp/lib/find-python.js:159:21)
gyp ERR! stack     at PythonFinder. (/attack-navigator/nav-app/node_modules/node-gyp/lib/find-python.js:202:16)
gyp ERR! stack     at PythonFinder.execFileCallback (/attack-navigator/nav-app/node_modules/node-gyp/lib/find-python.js:294:16)
gyp ERR! stack     at exithandler (child_process.js:301:5)
gyp ERR! stack     at ChildProcess.errorhandler (child_process.js:313:5)
gyp ERR! stack     at ChildProcess.emit (events.js:198:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:246:12)
gyp ERR! stack     at onErrorNT (internal/child_process.js:415:16)
gyp ERR! stack     at process._tickCallback (internal/process/next_tick.js:63:19)
gyp ERR! System Linux <IP_ADDRESS>-microsoft-standard-WSL2
gyp ERR! command "/usr/local/bin/node" "/attack-navigator/nav-app/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd /attack-navigator/nav-app/node_modules/node-sass
gyp ERR! node -v v10.24.1
gyp ERR! node-gyp -v v8.4.1
gyp ERR! not ok
Build failed with error code: 1
npm WARN notsup Unsupported engine for<EMAIL_ADDRESS>wanted: {"node":">=12"} (current: {"node":"10.24.1","npm":"6.14.12"})
npm WARN notsup Not compatible with your version of node/npm<EMAIL_ADDRESS>npm WARN notsup Unsupported engine for<EMAIL_ADDRESS>wanted: {"node":">=12"} (current: {"node":"10.24.1","npm":"6.14.12"})
npm WARN notsup Not compatible with your version of node/npm<EMAIL_ADDRESS>npm WARN notsup Unsupported engine for<EMAIL_ADDRESS>wanted: {"node":"^12.13.0 || ^14.15.0 || >=16"} (current: {"node":"10.24.1","npm":"6.14.12"})
npm WARN notsup Not compatible with your version of node/npm<EMAIL_ADDRESS>npm WARN notsup Unsupported engine for<EMAIL_ADDRESS>wanted: {"node":"^12.13.0 || ^14.15.0 || >=16"} (current: {"node":"10.24.1","npm":"6.14.12"})
npm WARN notsup Not compatible with your version of node/npm<EMAIL_ADDRESS>npm WARN notsup Unsupported engine for<EMAIL_ADDRESS>wanted: {"node":"^12.13.0 || ^14.15.0 || >=16"} (current: {"node":"10.24.1","npm":"6.14.12"})
npm WARN notsup Not compatible with your version of node/npm<EMAIL_ADDRESS>npm WARN notsup Unsupported engine for<EMAIL_ADDRESS>wanted: {"node":">=12"} (current: {"node":"10.24.1","npm":"6.14.12"})
npm WARN notsup Not compatible with your version of node/npm<EMAIL_ADDRESS>npm WARN notsup Unsupported engine for<EMAIL_ADDRESS>wanted: {"node":">=12"} (current: {"node":"10.24.1","npm":"6.14.12"})
npm WARN notsup Not compatible with your version of node/npm<EMAIL_ADDRESS>npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/webpack-dev-server/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/watchpack-chokidar2/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>postinstall: node scripts/build.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR!

Still seeing the same.

Exact same issue.
There is probably a missing dependency or something and it would be really nice if a dev would take a quick look at tell us how were being stupid.


net: IPMask docs aren't great

The docs for net.IPMask say:
https://golang.org/pkg/net/#IPMask

An IP mask is an IP address.
type IPMask []byte

That's, uh, pretty brief.
We should say more because as-is my first reaction would be, "Well, then why don't I juse use an IP address?"
For Go 1.13 at least, but Go 1.12 would be fine too.
/cc @ianlancetaylor @mikioh

Honestly I'm not sure why we need IPMask in the net package at all.  If you don't happen to be writing a router IP masks are uninteresting.
Not that we shouldn't write better docs as long as we have it.

Is the following doc OK for IP Mask ?

IPMask
IP mask is a bit-mask corresponding to an IP address (to support subnets), a slice of bytes. Functions in this package accept either 4-byte or 16-byte slices as input

I can send a CL if the above doc is fine. Thanks.

@viswesr Thanks, but I think we can do better.  The docs should be brief and to the point.  What is the point of an IPMask?  Why would someone want a value of that type?


problems met when running etl job

I create a job about monitoring data in HIVE Datasets and have the ETL Jobs pickup and run. When I started the backend, I got the problem "Error: Could not find or load main class metadata.etl.Launcher" below:
[info] - application - total 1 jobs due, white list : null
[info] - application - running job: job id :21
[info] - application - Current running jobs :
[info] - application - Send message : (jobType:HIVE_DATASET_METADATA_ETL refIdType:DB refId: 61 whEtlJobId:  21 whEtlExecId:    4)
[debug] - application - run command : java -cp '/thomas/activator/activator-dist-1.3.12/libexec/activator-launch-1.3.12.jar' -Dconfig=/var/tmp/wherehows/exec/4.properties -DCONTEXT=HIVE_DATASET_METADATA_ETL metadata.etl.Launcher
[error] - application - *** Process + 17125 failed, status: 1
[error] - application - Error Details:
## Error: Could not find or load main class metadata.etl.Launcher
I need this service up and running and monitoring data flowing in the cluster. Can anybody help me out?

how to solve this error?


Get LatLng bounds of mapview (NE/SE/NW/SW)

Is your feature request related to a problem? Please describe.
Corner bounds are extremely useful when needing to query the viewport to get points within the view.
Does this feature exist in the Google Maps SDK for android and iOS? Please link the documentation for this feature.
Yes, using "visible region"
https://developers.google.com/maps/documentation/android-sdk/reference/com/google/android/libraries/maps/model/VisibleRegion?hl=en
Describe the solution you'd like
Either a getBounds function, or a way for all map events, such as on "didChange" to return bounds in addition to zoom level and center point lat/lng.
Additional context
Example  swift code on didChange event that gets this data:
    public func mapView(_ mapView: GMSMapView, didChange position: GMSCameraPosition) {
        self.notifyListeners("didChange", data: ["result": [
        "position": [
            "latitude": position.target.latitude,
            "longitude": position.target.longitude
        ],
        "bounds":[
            "farLeft": [
                "latitude": mapView.projection.visibleRegion().farLeft.latitude,
                "longitude": mapView.projection.visibleRegion().farLeft.longitude,
            ],
            "farRight":[
                "latitude": mapView.projection.visibleRegion().nearRight.latitude,
                "longitude": mapView.projection.visibleRegion().nearRight.longitude,
            ]
        ],
        "zoom": position.zoom,
        ]])
    }

Hey @J-Gonzalez , sounds good to me. I'm inclined towards the getBounds function approach as it seems straightforward to implement. Would you like to send a PR for this? You've the iOS parts figured out already and android seems similar.

Definitely would love to see this feature implemented as it's something we need on more then one of our projects.

Opened up PR  https://github.com/capacitor-community/capacitor-googlemaps-native/pull/81 that creates this functionality via a viewBounds() function.

Hello @hemangsk it looks like this enhancement exists on the v1 branch so it's not showing up when installing via npm which I imagine is pointing to the main branch.
Is this enhancement working? If so, is there a plan to merge into the main branch?
Working on a project currently that requires this capability. Thank you!


[WIP] Nits in the App secrets update

Tiny nits in the app secrets update: "or later" and a couple of comma splices.
What I wrote for another version of this was more explicit. I'm concerned that the current version doesn't tell devs exactly why/how AddUserSecrets is added, and it doesn't say that if CreateDefaultBuilder isn't used that they'll still need to do it manually.
Starting with ...

- Add the user secrets configuration source to the Startup constructor:

Add the user secrets configuration source with a call to [AddUserSecrets](/dotnet/api/microsoft.extensions.configuration.usersecretsconfigurationextensions.addusersecrets) in the Startup constructor:
[!code-csharp[](app-secrets/samples/1.1/UserSecrets/Startup.cs?name=snippet_StartupConstructor&highlight=5-8)]
::: moniker-end
::: moniker range=">= aspnetcore-2.0"
When a project calls [CreateDefaultBuilder](/dotnet/api/microsoft.aspnetcore.webhost.createdefaultbuilder) to initialize a new instance of the host with preconfigured defaults, [AddUserSecrets](/dotnet/api/microsoft.extensions.configuration.usersecretsconfigurationextensions.addusersecrets) is called when the [EnvironmentName](/dotnet/api/microsoft.aspnetcore.hosting.ihostingenvironment.environmentname) is [Development](/dotnet/api/microsoft.aspnetcore.hosting.environmentname.development):
[!code-csharp[](app-secrets/samples/2.1/UserSecrets/Program.cs?name=snippet_CreateWebHostBuilder&highlight=2)]
When CreateDefaultBuilder isn't called during host construction, add the user secrets configuration source with a call to [AddUserSecrets](/dotnet/api/microsoft.extensions.configuration.usersecretsconfigurationextensions.addusersecrets) in the Startup constructor:
[!code-csharp]
::: moniker-end

Snippet the call to CreateDefaultBuilder to show it (line 2 is highlighted) ...
#region snippet_CreateWebHostBuilder
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
    WebHost.CreateDefaultBuilder(args)
        .UseStartup<Startup>();
#endregion

... and the sample naming issue remains ("1.1" and "2.1" instead of "1.x" and "2.x").
If anything here looks good, I can mod this branch to make additional updates. Otherwise, nevermind. Just spit-ball'in here.

@guardrex I also really like what you proposed above for clarifying how AddUserSecrets is called. Go ahead with those changes too in this PR.

@scottaddie WRT paragraph on Line 189: Difficult to say everything in one sentence without it getting too long, so I went with two sentences: A general topic sentence that explains the "2.0 or later" and that the user secrets config source is added automatically. There's a second sentence that fleshes it out with the specifics on CreateDefaultBuilder, AddUserSecrets, etc.

One other point/question ...
::: moniker range="<= aspnetcore-1.1"
-[View or download sample code](https://github.com/aspnet/Docs/tree/master/aspnetcore/security/app-secrets/samples/1.1) ([how to download](xref:tutorials/index#how-to-download-a-sample))
+[View or download sample code](https://github.com/aspnet/Docs/tree/master/aspnetcore/security/app-secrets/samples/1.x) ([how to download](xref:tutorials/index#how-to-download-a-sample))
 ::: moniker-end
 ::: moniker range=">= aspnetcore-2.0"
-[View or download sample code](https://github.com/aspnet/Docs/tree/master/aspnetcore/security/app-secrets/samples/2.1) ([how to download](xref:tutorials/index#how-to-download-a-sample))
+[View or download sample code](https://github.com/aspnet/Docs/tree/master/aspnetcore/security/app-secrets/samples/2.x) ([how to download](xref:tutorials/index#how-to-download-a-sample))
 ::: moniker-end

If we do that on all of our topics, it's going to get more-and-more difficult to maintain as time rolls on. How about we just reference the samples folder. We'll never need to mess with these links again in this area of the topics ...
[View or download sample code](https://github.com/aspnet/Docs/tree/master/aspnetcore/security/app-secrets/samples) ([how to download](xref:tutorials/index#how-to-download-a-sample))

@guardrex I'm okay with pointing to the samples folder.

:smile: ... I DO like this ...
<xref:fundamentals/configuration/index>

... as I'll mention in my upcoming dissertation on the subject. (🤦♂ oh dear!)

Ok ... ready for :eyes:.

One nit ☝, and then this looks good to me.


Absolute URLs to SVGs (pieces/markers/arrows)

In previous versions you could reference a full url from the corresponding "svgs".
			sprite: { 				url: RESOURCES_URL + 'images/chess/setsnew/' + this.pieces + '/pieces.svg', 				size: 66, // the sprite size, defaults to 40x40px 				cache: true // cache the sprite inline, in the HTML 			},
Now the code is more restrictive and "forces" an intermediate path to exist:

pieces
extensions/markers
extensions/arrows

   pieces: {       type: PIECES_FILE_TYPE.svgSprite, // pieces are in an SVG sprite, no other type supported for now       file: "standard.svg", // the filename of the sprite inassets/pieces/      tileSize: 40 // the tile size in the sprite     },
Could you somehow afford a full url? In our case, the proposed structure is not interesting because we have more images related to the theme.
View commit: 167b4d7b7d233679df626987b642df4a7aab632f

OK, I understand your point. I would like to keep the props.assetsUrl for convenience, but we could change the code in a way, that, if an asset file starts with / or http, the assetsUrl is ignored. So that only relative Urls use the assertsUrl. Would that be OK for you?

Looking at the proposal, the first option includes a more complete solution, although I still doubt the need to include a fixed path such as /extensions/markers.
I would leave it up to everyone to define their path in props.sprite: 'extensions/markers/markers.svg'

You are right, the best solution is both
    getSpriteUrl() {
        if(Utils.isAbsoluteUrl(this.props.sprite)) {
            return this.props.sprite
        } else {
            return this.chessboard.props.assetsUrl + this.props.sprite
        }
    }

unfortunately not backwards compatible. But I will implement it und update a minor version number.

Publishing to https://registry.npmjs.org/ as<EMAIL_ADDRESS>


Fix intermittent loading issue

Hey folks, there is this bug reported here and I've been facing the same intermittently and debugging the project we found that the event listeners were being removed before the script finished loading.
Removing those lines of code the loading issue stops happening.

Hello! I was working on this with @Schlickmann and wanted to add my thoughts about the fix.
It's probably always the right thing to remove an event listener when a useEffect is done, but for some reason that's causing an infinite loading bug for us. I didn't understand the code well enough to pursue a more specific fix.
The "best" solution might be more involved than this, but this does seem to work. Additionally, I would think this won't leak very many event listeners, since subsequent loads will find the script tag already in the DOM. I would expect this to leak a finite amount of event listeners across repeated page navigation because of this.

Thank you for sending in this fix and for the analysis. Merging it to mitigate the issue for now. Will track the root-causing and providing the right solution separately.


upgraded to ember 2.14.1

@null-null-null

Sorry I didn't get this sooner, @bl4ckm0r3. I updated my email address recently, but forgot to change it in the notifications section too. Anyway, I recently updated to 2.15.0, so we should be good now.
BTW, since TF got acquired, do you know what's going to happen to ember-hook? Might be good to bring under somebody's personal account, or if Eventbrite wants it, to get it under theirs. Any thoughts about this?


M3 extension to add PWM support

First attempt to support m3nano PWM

Seems to crash with older boards...


Logo added to README

Closing #86
@Amelie-V requested these changes.
Testing out a little bit ...

I think it's cool now, I'm merging.


@orta => [Martsy] Fix crash due to NSTimer based retain cycle.

If a user would navigate back before the webview fully finished loading,
the VC would be retained by the timer and released once the timer was
invalidated, which in turn would lead to a crash if the VC was
referenced after invalidating the timer.
Fixes #557. (See there for more details.)
Tested on :iphone:

( will need a rebase )

Yeah, clearly it does now :smiling_imp:

Rebased!

Bump.

Merging it!


Increase test coverage

The problem
In order to avoid regression when adding new features we want to make sure that every code piece is properly unit tested. There are a couple areas where the test coverage is lacking. Let's fix this by adding unit tests for it. Goal is it to have ~95% test coverage across all projects.

I'd like to take this task.

Reached the goal 👏


only run ubuntu e2e tests on PR push, run all on main

Consolidates macOS e2e test runner now that we are programmatically determining the matrix and can do that
Runs macOS e2e tests on the normal (non-large) macOS runner, which takes longer but is fine since these no longer block
Runs Ubuntu e2e tests un-sharded on main, which is fine because these don't block (if this becomes annoying, we can easily return to sharding these on main)

(Trying again on #4052)
Test plan
CI

@dominiccooney WDYT about this?


#119

Add LanguageLocation class and combine language, location and circle modules into the region module

test this please

it will fail. :(
On Mon, May 11, 2015 at 7:33 PM, Frank Huster<EMAIL_ADDRESS>wrote:

test this please
—
Reply to this email directly or view it on GitHub
https://github.com/motech-implementations/mim/pull/230#issuecomment-101106784
.

I wanted to see what the results of the build were, the prior build had been erased...

This is a live look in at the server room:

I think this should build and pass now.  I had to do a ton of merging from @frankhuster code.  I then modified the datamodel to work around the cascade issue.  I then got everything working and was about to submit but .... I had to merge more of @frankhuster dang code.
Once the cascade issue is fixed the datamodel should be reverted.  Ideally instead of LangaugeLocation having a boolean defaultForCircle field, the Circle would point to it's default LanguageLocation.  This way having only one default is enforced in the datamodel.
cc @llavoie @koshalt @frankhuster

So as of now, we're not recording history for Circle & all?
If we're cool with that, then lgtm.
Otherwise, we can fix in a subsequent PR.

Should we create a tracking item to audit history tracking in the next
milestone?
On May 13, 2015 7:47 AM, "Frank Huster"<EMAIL_ADDRESS>wrote:

Merged #230 https://github.com/motech-implementations/mim/pull/230.
—
Reply to this email directly or view it on GitHub
https://github.com/motech-implementations/mim/pull/230#event-303944541.

There was another issue with platform around history tracking (the stack
overflow).  I put an issue in for it.
On Wed, May 13, 2015 at 7:47 AM, Frank Huster<EMAIL_ADDRESS>wrote:

So as of now, we're not recording history for Circle & all?
If we're cool with that, then lgtm.
Otherwise, we can fix in a subsequent PR.
—
Reply to this email directly or view it on GitHub
https://github.com/motech-implementations/mim/pull/230#issuecomment-101696174
.

I reopened the history tracking issues and moved them to sprint 3
On Wed, May 13, 2015 at 7:51 AM, kosh<EMAIL_ADDRESS>wrote:

Should we create a tracking item to audit history tracking in the next
milestone?
On May 13, 2015 7:47 AM, "Frank Huster"<EMAIL_ADDRESS>wrote:

Merged #230 https://github.com/motech-implementations/mim/pull/230.
—
Reply to this email directly or view it on GitHub
<https://github.com/motech-implementations/mim/pull/230#event-303944541
.

—
Reply to this email directly or view it on GitHub
https://github.com/motech-implementations/mim/pull/230#issuecomment-101699032
.


Poretools 0.6.0 times dies on R9.4 albacore based called fast5

 ~/venv/bin/poretools times basecalled/workspace/

channel filename        read_length     exp_starttime   unix_timestamp  duration        unix_timestamp_end      iso_timestamp   day     hour    minute
Traceback (most recent call last):
  File "/home/phelimb/venv/bin/poretools", line 9, in <module>
    load_entry_point('poretools==0.6.0', 'console_scripts', 'poretools')()
  File "/home/phelimb/venv/lib/python2.7/site-packages/poretools/poretools_main.py", line 533, in main
    args.func(parser, args)
  File "/home/phelimb/venv/lib/python2.7/site-packages/poretools/poretools_main.py", line 55, in run_subtool
    submodule.run(parser, args)
  File "/home/phelimb/venv/lib/python2.7/site-packages/poretools/times.py", line 20, in run
    start_time = fast5.get_start_time()
  File "/home/phelimb/venv/lib/python2.7/site-packages/poretools/Fast5File.py", line 543, in get_start_time
    return int(exp_start_time) + int(node.attrs['start_time'])
  File "h5py/_objects.pyx", line 54, in h5py._objects.with_phil.wrapper (/Net/fs1/home/phelimb/venv/build/h5py/h5py/_objects.c:2696)
  File "h5py/_objects.pyx", line 55, in h5py._objects.with_phil.wrapper (/Net/fs1/home/phelimb/venv/build/h5py/h5py/_objects.c:2654)
  File "/home/phelimb/venv/lib/python2.7/site-packages/h5py/_hl/attrs.py", line 58, in __getitem__
    attr = h5a.open(self._id, self._e(name))
  File "h5py/_objects.pyx", line 54, in h5py._objects.with_phil.wrapper (/Net/fs1/home/phelimb/venv/build/h5py/h5py/_objects.c:2696)
  File "h5py/_objects.pyx", line 55, in h5py._objects.with_phil.wrapper (/Net/fs1/home/phelimb/venv/build/h5py/h5py/_objects.c:2654)
  File "h5py/h5a.pyx", line 77, in h5py.h5a.open (/Net/fs1/home/phelimb/venv/build/h5py/h5py/h5a.c:2184)
KeyError: "Can't open attribute (Can't locate attribute: 'start_time')"

Similar error on yield_plot

But fasta and fastq working fine.

HI
Commit b16ed1a571acce090d2125a2db4051f8643e6518 should address this.
In the file you gave me there is a big discrepancy between the 'duration' field (100k) samples and the duration_template field (20k samples). I assume both are expressed in number of samples (and therefore need to be divided by sample rate, which I do now automatically in get_duration()), but the big difference is not explained. 20k is right assuming 250 bp/s sequencing.

👍


nemonapride (CHEBI:31899)

Please consider adding emonapride as a synonym to nemonapride (CHEBI:31899).

now added. thanks


Pretrained models for CPU

Hi jkjung,
Thanks for your work. I didn't see pretrained models on the repo. Would you be able to upload them? I want to just deploy them on CPU for some quick prototyping on videos.
Thanks again!

The trained model files are rather large.  I have them stored on my desktop PC.  If you provide a location (say, Google Drive) for me to upload the files, I could send those files to you.  Please also specify which models you'd like to test with, e.g. 'ssd_mobilenet_v1_egohands', etc.

Thanks, I will send you a dropbox request on your gmail, if that is okay!

Same here, i really appreciate that pretrained models, can you provide them to me too please?

@rutadesai I've just uploaded the following trained model files to your Dropbox folder.  Hope it helps.
JK Jung - ssd_inception_v2_egohands.tar.gz
JK Jung - ssdlite_mobilenet_v2_egohands.tar.gz
JK Jung - faster_rcnn_inception_v2_egohands.tar.gz
JK Jung - ssd_mobilenet_v1_egohands.tar.gz
JK Jung - ssd_mobilenet_v2_egohands.tar.gz

@Azazel17 If you provide a place/link for me to upload the files, I could do that for you too.

Thank you!! Really appreciate your help!

@jkjung-avt  Hi, Could you please upload ssd_mobilenet_v2_egohands.tar.gz; ssd_mobilenet_v2_egohands.tar.gz file  to my dropbox ?  Thanks again! : )

@lxy5513 I've just uploaded the file for you.

Thank you, Appreciate for your kindness!

can you please send me also this models? or provide a direct link?

@guermal  I don't keep the trained models around any more...  It doesn't take much time to train the models by yourself using a decent GPU.


Add text wrapping support to Text2d

Objective
Fixes #4344.
Solution
Add a new component Text2dBounds to Text2dBundle that specifies the maximum width and height of text. Text will wrap according to this size.

@infmagic2047, thanks for being so responsive to reviews :) Once the comments are addressed, you can press "Resolve conversation" on anything that's fully resolved so future reviewers can tell at a glance that there are no outstanding problems.

bors r+


multiarch support

This PR adds support to multi architectures and moves to Zig as toolchain for cross compiling.
The objective is to support the amd64 and arm64 as host architecture and the os/arch supported by fyne-cross  v1.3.0.
To test the images the fyne-cross version from https://github.com/fyne-io/fyne-cross/pull/148 can be used.
Notable changes

Move to Zig as toolchain for cross compiling
Update the OS for the base image to debian bullseye. Note:Zig defaults to glibc 2.19 for cross compiling, this should ensure backward compatibility with old linux distribution. Fixes: https://github.com/fyne-io/fyne-cross/issues/88
Add support to host multi architectures: amd64 and arm64
Add support to Windows arm64 target. Fixes: https://github.com/fyne-io/fyne-cross/issues/84

Supported targets
Table below reports the status of fyne-cross's supported cross compilation targets.
The supported architectures for the host are amd64and arm64.

amd64
arm64

android/386
:white_check_mark:
N/A

android/amd64
:white_check_mark:
N/A

android/arm
:white_check_mark:
N/A

android/arm64
:white_check_mark:
N/A

darwin/amd64
:white_check_mark:
:white_check_mark:

darwin/arm64
:white_check_mark:
:white_check_mark:

freebsd/amd64
:white_check_mark:
:white_check_mark:

freebsd/arm64
:white_check_mark:
:white_check_mark:

linux/amd64
:white_check_mark:
:white_check_mark:

linux/386
:white_check_mark:
:white_check_mark:

linux/arm
:white_check_mark:
:white_check_mark:

linux/arm64
:white_check_mark:
:white_check_mark:

windows/amd64
:white_check_mark:
:white_check_mark:

windows/arm64
:white_check_mark:
:white_check_mark:

windows/386
:white_check_mark:
:white_check_mark:

Note:

darwin images should work out of the box against MacOSX SDKs 11.3.
Other SDK versions could require a different min SDK version that can specified using the --macosx-version-min flag
android NDK is not available for linux/arm64, cross-compilation from arm64 hosts won't be supported in this initial release

Well done. Looking forward to seeing this completed :)

This is pretty cool. I have setup the fyne Mac M1 to build this branch and test it. The trees are in:

/Users/fyne/go/src/github.com/fyne-io/fyne-cross-images
/Users/fyne/go/src/github.com/fyne-io/fyne-cross

They both point to your branches at the moment (the prompt would point that out). I can report that the Linux image are actually working on ARM64 and can target other arch :-) I had to modify a bit the layout as you can see as I tried to use docker buildx command and it can only pick Dockerfile in a specific repository.
This is pretty exciting! Great work!

Great and thanks for testing!
I'll modify the layout to have one Dockerfile per folder.

This is looking pretty good! How do you want to proceed with the multi image? Do you want to do that in a separate PR or add a few lines for handling buildx/buildah? I have tried buildah and the images on Linux for Linux/Windows on ARM64 and AMD64. I still need to try the darwin image. I would not expect the Android one to work, but I might be wrong. Should I test Android image running on ARM64?

Should I test Android image running on ARM64?

As discussed in chat the android NDK is not available for linux/arm64, cross-compilation from arm64 hosts won't be supported in this initial release.